Integrations

Right arrow

Calendly

Calendly + Upfirst integration

Automate appointment booking and lead qualification by connecting Upfirst's AI receptionist to Calendly via Zapier for seamless scheduling

table of contents

Upfirst is an AI receptionist that connects to Calendly in two ways: through Custom Actions (live API calls during a call, authenticated with a personal access token) and through Zapier (post-call automation). The integration is built around three jobs: send a scheduling link mid-call, check whether a caller already has a meeting booked, and notify the right person after the call.

Does Upfirst integrate with Calendly?

Yes. Two options:

  • Custom Actions hit Calendly's v2 REST API at api.calendly.com. The receptionist can look up scheduled events, generate single-use scheduling links, and read availability data while the call is happening.
  • Zapier handles post-call automation. Send a Calendly invitation, notify the assigned user when a meeting gets scheduled, or push call context into another tool.

One thing worth knowing: Calendly's API doesn't let you create a booking directly. Bookings happen on Calendly's hosted scheduling pages. The Upfirst-Calendly workflow is about finding info and sending links, not booking from the API.

What Calendly is

Calendly is the scheduling tool people use to let prospects, customers, and colleagues book time without back-and-forth email. Event Types define availability rules. Scheduling Links route invitees to those Event Types. The Calendly app handles the booking page, conflict checks, reminders, and post-event webhooks.

Sales reps, account managers, financial advisors, lawyers, and consultants use Calendly as the booking surface for their phone follow-ups. Upfirst sits in front, taking the inbound call and steering callers to the right Calendly link.

What Upfirst can do with Calendly

Check whether the caller already has a meeting booked

If a caller mentions an upcoming meeting, the receptionist can hit GET /scheduled_events filtered by their email. A match returns the meeting details: time, Event Type, host. The receptionist confirms what's already on the calendar instead of having the caller wait for a follow-up.

Send a personalized scheduling link via SMS

When a caller wants to book, the receptionist can text them a Calendly link using Upfirst's built-in Send Texts feature. For a one-off personalized link (instead of the public Event Type URL), Upfirst can call POST /scheduling_links via Custom Action to mint a single-use link tied to the right host and Event Type, then text it.

Read out a host's next-available windows mid-call

If the caller wants to know "when can I see Alex next?", Upfirst queries the Event Type's availability and reads back the next few open windows. The receptionist offers them verbally and texts a scheduling link so the caller can confirm. Calendly handles the actual booking.

Notify the host when a call ends with booking intent

If a call ends with the caller saying they'll book, an after-call Custom Action sends the call summary, transcript, and intent wherever you want: Slack, an email to the host, a CRM note. The host walks into the booked meeting already briefed.

Calendly API calls Upfirst can make

  • GET /users/me and GET /users/{uuid} for host info
  • GET /event_types and GET /event_types/{uuid}
  • GET /event_type_available_times for upcoming open windows
  • GET /scheduled_events filtered by invitee, host, or status
  • GET /scheduled_events/{uuid}/invitees for who's on a meeting
  • POST /scheduling_links to mint a single-use, host-specific link
  • DELETE /scheduled_events/{uuid}/cancellation to cancel a meeting

Setting up the Calendly integration

Custom Actions

  1. In Calendly, go to your integrations > API and webhooks page and generate a personal access token. Copy it. (Note: Calendly doesn't store the token. Save it somewhere safe; you can't retrieve it later.)
  2. In Upfirst, go to Agent > Custom actions and add a new action.
  3. Pick when it runs: During call for invitee lookups, availability reads, or scheduling-link generation. After call works for notifying a host or logging the call.
  4. Set the request. Example endpoint: https://api.calendly.com/scheduled_events?invitee_email=#{{email}} for an invitee check. For a one-off link, POST to https://api.calendly.com/scheduling_links with the host and Event Type in the body. Auth: Authorization: Bearer YOUR_TOKEN.
  5. Pick which fields the receptionist gets back (event time, host, status, URI). Test it. Save.

Zapier

  1. Create a Zap. Trigger: Upfirst > Call Completed.
  2. Pick a Calendly action. Available options include sending an invitation, adding an invitee to an event, and looking up scheduled events.
  3. Map the call fields to Calendly fields.
  4. Add filters so only the calls that signaled "wants to book" trigger the workflow.
  5. Test and turn the Zap on.

A typical Calendly workflow: invitee lookup during the call to surface existing meetings, scheduling-link send via SMS for new bookings, host notification after the call ends. Calendly handles the booking page itself.

Try our AI answering service free for 14 weeks

No credit card required. Just sign up, forward your calls, and experience the magic of never missing another call again.

Try for free