Turn Calendly bookings into prepped Keap records and Slack briefs

When someone books on Calendly, we update and tag their Keap record, add a prep task, and send the rep a Slack brief that flags existing customers.

Agentic Task
CalendlyKeapSlack BotSalesOperationsMeeting WorkflowsLead EnrichmentData Sync
PromptCreate

Watch Calendly for new scheduled events and turn each new booking into a fully prepared Keap record plus a Slack prep brief for the rep who owns the call. Use a Calendly poll trigger on new scheduled events so this runs within minutes of someone booking.

When a booking comes in, use Calendly's Get Event Invitee to pull the invitee's full name, email address, the event type they booked, and their answers to the booking questions. Those intake answers are the most valuable part of the brief, so keep them close to verbatim rather than paraphrasing them away.

Before writing anything into Keap, work out whether this person is already known to us. Use Keap's List Contacts filtered by their email address. If a contact comes back, use Keap's List orders to pull their order history so we know whether they are an existing paying customer and what they have already bought. Treat anyone with at least one past order as an existing customer.

Then upsert the invitee into Keap with Create or Update a Contact, matched on email address so we never create a duplicate. Note that contact upsert is a Keap v1 capability: v1 resource ids are integers and v2 resource ids are strings, so do not carry an id returned by one version into a call against the other.

Apply a Keap tag reflecting the meeting type using Apply Tag, for example "Discovery Call Booked" for a discovery event type versus "Demo Booked" for a demo. If the invitee turned out to be an existing customer with past orders, still apply the meeting type tag but skip any new lead tag.

Write the intake answers onto the record with Create a Note, so the booking questions and their answers live on the contact where the rep will actually look for them. Include the event type and the scheduled time in that note.

Add a Keap task with Create a Task due the morning of the call, assigned to the call owner, spelling out what to prepare. Make the task specific to this booking rather than generic, for example reviewing a particular answer they gave or pulling their account's order history.

Finally, send the assigned rep a Slack message using Slack Bot's Send a Message containing a short prep brief. Cover who booked and their company or role if the booking answers reveal it, what they said they want, whether they are an existing Keap contact with past orders, and the two or three questions worth asking on this specific call. If the invitee is an existing customer, say so prominently at the very top of the brief along with what they have already bought, so nobody runs a cold discovery script at a current customer. Keep the brief short enough to read on a phone on the way into the meeting.

What does this prompt do?

  • Picks up every new Calendly booking within minutes and pulls the invitee's name, email, meeting type, and the answers they gave on your booking form.
  • Creates or updates their Keap contact matched on email address, tags them by meeting type, saves their booking answers as a note, and adds a task due the morning of the call.
  • Checks whether they are already a customer with past orders, and if they are, flags it at the top of the brief and skips the new lead tag.
  • Sends the assigned rep a short Slack prep brief: who booked, what they said they want, their history with you, and two or three questions worth asking.

What do I need to use this?

  • A Calendly account, ideally with a few booking questions on your event types so there are intake answers to capture
  • A Keap account where your contacts, tags, notes, and tasks live
  • A Slack workspace, plus the channel or person who should receive each prep brief
  • The tag names you already use for each meeting type, for example Discovery Call Booked and Demo Booked

How can I customize it?

  • Change which tag maps to which meeting type, and add new tags as you create new event types.
  • Send briefs to a shared sales channel instead of a direct message, or route each one to whoever owns the booking.
  • Adjust when the prep task is due and what it asks the rep to prepare before the call.

FAQs

Will this create duplicate contacts in Keap?
No. Everyone is matched on their email address first, so an existing contact gets updated in place and only genuinely new people are created.
What happens when an existing customer books a call?
They get called out at the very top of the brief, along with what they have already bought, and the new lead tag is skipped. The idea is that no rep should ever run a cold discovery script at a current customer.
How soon after someone books does the brief arrive?
Calendly is checked for new bookings on a short repeating cycle, so the Keap record and the Slack brief are usually ready within a few minutes of the booking.
Does this work if my booking form has no custom questions?
Yes. You still get the contact created or updated, the meeting type tag, the task, and the brief. The brief is just thinner because there are no intake answers to summarize.
Can it treat different meeting types differently?
Yes. The meeting type drives which tag gets applied, so a discovery call and a demo can be tagged and prepped differently.

Related templates

Review desk for portal forms your team still fills in by hand

Stage a batch of filings overnight, then approve each completed form from a screenshot before anything is ever submitted.

Kernel
Google Sheets
Slack Bot
App
Client-by-client cold email pipeline review for agencies

Pick a client and a date range to see sent, replies, meetings booked and the real deal value your cold email produced, campaign by campaign.

Instantly
HubSpot
Slack Bot
App
Audit what Intercom's Fin AI actually resolved before you pay

Review every conversation Fin closed as resolved, judge which ones actually stuck, and see what the gap is worth against your bill.

Intercom
Google Sheets
Slack Bot
App
One triage console for every Jira service desk queue

Merge your IT, HR and Facilities queues into one list ranked by SLA time left, then reply, change status and escalate without ever opening Jira.

Jira Service Management
Jira
Slack Bot
App
Run your Webflow site translations from one review desk

See every page's translation status at a glance, edit translations side by side with the English, and publish only what your team has actually approved.

Webflow
JigsawStack
Slack Bot
+1
App
Legal contract intake desk your teams use instead of email

One place for sales and ops to request an NDA or vendor agreement, watch its status, and let legal launch the contract in a single click.

Ironclad
Slack Bot
General Input Database
App

Stop walking into booked calls cold.

Every Calendly booking lands in Keap tagged, noted, and tasked, with a prep brief already waiting in Slack.