Skip to content
NewSee how
Improvement

Google Calendar connector explains Workspace admin approval up front

The Google Calendar connector now shows setup steps for Workspace admin approval up front, instead of leading to a consent screen that could only fail.

If your company uses Google Workspace, connecting a calendar sometimes needs your admin's sign-off first. The connector now tells you that before you hit a dead end.

What changed

Connecting Google Calendar used to send every user straight to a standard consent screen, regardless of whether their Google account was a personal account or a Workspace account managed by an organization. For Workspace accounts where an admin has not pre-approved FirstSales, that consent screen would fail, and the failure did not explain what was actually wrong or what to do about it. You would click connect, land on a page that looked like it should work, and then get stopped with no clear next step.

That kind of failure is especially frustrating because nothing about it looks like a permissions issue from the user's side. The screen looks the same whether your account can connect or not, so there was no way to tell in advance whether the attempt was going to succeed.

Now, when the connector detects that a Workspace admin approval step applies, it shows you setup instructions before you attempt the connection: what approval your admin needs to grant and where to point them. This replaces a confusing failed consent screen with a clear explanation of the actual blocker. Instead of discovering the problem by failing, you find out about it upfront and get pointed toward the actual fix.

This detection happens automatically based on your Google account type, so you do not need to know in advance whether your organization requires admin approval. The connector figures that out and adjusts what it shows you accordingly.

This change is specific to the connection step itself. Nothing about how the calendar behaves once it is connected has changed: the same booking behavior, the same syncing with your Autopilot campaigns, and the same calendar link generation apply exactly as they did before. The only difference is what you see before that connection succeeds, and how clearly it explains what is standing in the way when a Workspace restriction applies.

How to use it

Go to your calendar connector settings and start connecting Google Calendar as you normally would. If your account is on Google Workspace and needs admin approval, you will see the setup guidance before the connection attempt, explaining what is needed.

Share that guidance with your Workspace admin so they can grant the necessary approval. This is typically a step your admin performs in your organization's Google Workspace administration console, approving FirstSales as an application allowed to request calendar access. Once approval is in place, come back and connect your calendar again; it will proceed through the standard consent flow from there, the same one a personal Google account would use.

If your Google account is personal or already has the needed approval, you will not see this extra step. You go straight to the normal consent screen, same as before, and connect your calendar in a single pass.

If you are not sure whether your organization has already approved FirstSales, the guidance shown to you is a safe way to check: if approval is already in place, the connection will simply proceed without any friction after you follow the standard consent screen. If it is not yet approved, you now have the specific information your admin needs, rather than a vague failure to bring to them.

If you manage FirstSales for a team where several people will each be connecting their own calendars under the same Google Workspace organization, it is worth getting the admin approval sorted out once, up front, rather than letting each teammate discover the requirement individually. Once your organization's admin has approved FirstSales, every user on that Workspace domain should be able to connect without hitting the approval step again.

Why it matters

A failed connection with no explanation just looks broken. Knowing upfront that an admin needs to approve access first turns a dead end into an actionable next step, and it saves you from repeatedly retrying a connection that was never going to succeed without that approval. Repeated failed attempts also waste time you could spend getting the actual approval sorted out with your admin sooner.

Calendar connection matters directly to how Autopilot books meetings. If a prospect wants to schedule a call, the campaign's calendar link is what makes that possible without manual back-and-forth. A calendar that never successfully connects because of an unexplained Workspace restriction means that booking flow does not work at all, silently, until someone figures out why. Surfacing the real cause up front means that gap gets closed faster.

This also reduces the amount of troubleshooting that ends up landing on support, since the explanation for a Workspace approval requirement is now visible to the user directly, rather than something that needs to be diagnosed after the fact from a failed connection report.

It is also a better first experience for anyone new to FirstSales who happens to work at a company with a locked-down Google Workspace. First impressions during setup matter, and an unexplained failure on one of the first things a new user tries to connect can make the whole product feel unreliable, even when the actual issue has nothing to do with the product itself.

Admin approval requirements are common across many organizations that take application access seriously, so this is not a rare edge case limited to a handful of accounts. A meaningful share of Workspace users trying to connect a calendar for the first time were likely running into this exact wall without any explanation of what was happening. Making the requirement visible up front turns what used to be a silent drop-off point into a step users can actually clear with the right information in hand.

This kind of upfront clarity matters most for anyone whose entire booking workflow depends on a connected calendar working correctly. If Autopilot cannot see your real availability, a prospect could be shown a time that is not actually open, or a meeting request could go unanswered because there was never a working connection behind it in the first place. Solving the approval friction early, before you rely on the calendar for a live campaign, avoids discovering the gap at a moment when a prospect is actually trying to book time with you.

Availability

This applies to any FirstSales workspace connecting Google Calendar through a Google Workspace account.

All updates

Outreach that keeps going after you log off.Leads, emails, follow-ups and replies, handled.

Connect unlimited mailboxes and let AI agents find leads, write each email and follow up. Or send your own templates in manual mode. From $29/mo.

$1 for 3 days · Cancel anytime · No contract

Install with AI

Your coding agent sets up the FirstSales CLI and skills for you.

Prompt for Claude Code

I'm setting up FirstSales (https://firstsales.io), an AI outbound sales platform: campaigns, contacts, a reply inbox, deliverability and lead signals. Help me get my workspace sending real, good emails end to end, from Claude Code.

Read these first so you know how FirstSales works:
- Developer docs and API: https://developer.firstsales.io
- CLI: https://www.npmjs.com/package/@firstsales.io/cli
- Skills for coding agents: https://github.com/firstsalesio/firstsales-skills (read README.md and GUIDE.md)

Setup
1. Install the CLI: npm install -g @firstsales.io/cli
2. Install the FirstSales skills:
   claude plugin marketplace add firstsalesio/firstsales-skills
   claude plugin install firstsales@firstsales
3. Ask me if I already have a FirstSales account. If not, send me to https://app.firstsales.io to sign up.
4. Ask me to create an API key under Settings → API → API Keys, with only the scopes we need.
   Never ask me to paste the key into this chat. Tell me to run this in my own terminal, so the key stays hidden:
   read -rs FS_KEY && firstsales auth login --api-key "$FS_KEY"; unset FS_KEY
5. Run `firstsales whoami` and tell me which workspace and organisation we are connected to.

Then ask me about my business: what I sell, who I sell to (roles, company size, countries), my best customers, and what I use today for outbound (tools, lists, mailboxes). Walk me through:
1. Teaching FirstSales my business: website, offer, proof points and case studies in the knowledge base, so the AI writes like someone who knows the product.
2. Connecting my sending mailboxes and checking my sending domain: SPF, DKIM, DMARC and warm-up. If anything is unhealthy, tell me the exact DNS record to add.
3. Bringing in contacts: import my CSV or CRM export into a clean list, remove duplicates and bad emails, and block domains I must never email (customers, competitors, my own).
4. Building my first campaign: the right list, senders, steps and timing. Write the sequence with me, show me the drafts, and do not launch until I say yes.
5. Setting up Signals if it fits: find people engaging with LinkedIn posts about topics my buyers care about, and turn them into leads.
6. Inviting my team and giving each person the right access.

Once campaigns run, show me how to work the reply inbox from here: which replies need an answer, draft responses in my voice, and move good conversations into deals. If I use Cal.com, connect it so follow-ups can offer my booking link (not the first email).

Throughout, as you learn about my business, proactively suggest and help create:
- Reply templates for the questions and objections my prospects are likely to raise, based on my product, site and codebase if you can see them.
- Campaign ideas and segments worth testing, with the reason for each.

Safety rules:
- Show every change as a dry run (--dry-run) first and wait for my yes. Never send emails, launch campaigns or delete anything without my yes.
- Tell me before anything that spends credits, and how many.

Be opinionated. If the docs give a sensible default, just use it. Don't make me choose between five options.