Cal.com booking to Apollo enrichment to Slack pre-meeting brief

When a new Cal.com booking is created, an agent enriches the attendee with Apollo and posts a pre-call brief to Slack at least 30 minutes before the meeting.

Agentic Task
Cal.comApolloSlackSalesLead EnrichmentMeeting WorkflowsNotifications & Alerts
PromptCreate

Build me an agent workflow that briefs me on every new Cal.com booking before the meeting starts.

Trigger: poll Cal.com for new bookings (event type new_booking).

When a new booking fires, the agent should:

1. Call Cal.com Get a Booking with the booking id from the trigger to pull the full attendee record (name, email), the event type and title, the meeting start time, the meeting description, and any intake form responses.

2. Run Apollo People Enrichment on the attendee email to gather job title, seniority, department, LinkedIn URL, location, and any recent role changes.

3. Derive the company domain from the attendee email (skip free-mail domains like gmail.com, outlook.com, yahoo.com) and run Apollo Organization Enrichment on that domain to gather industry, employee count, headquarters, funding events, and tech stack.

4. Run Apollo People Search scoped to that organization to surface 2 to 3 other relevant decision-makers I should know about. Default seniority filter: director, vp, c_suite, founder. Default departments: the same department as the attendee plus any obvious buying-committee adjacencies (e.g. if attendee is in sales, also pull revops and marketing leadership).

5. Draft a concise pre-call brief in Slack mrkdwn with these sections: TL;DR (one line on who they are and what the company does), About the person (title, seniority, tenure, recent role changes), About the company (industry, size, funding, tech stack signals worth referencing), Suggested talking points (3 bullets grounded in the enrichment data), Other people to know (the 2 to 3 contacts from People Search with title and LinkedIn). Keep it under ~250 words. Include the meeting time and a link back to the Cal.com booking.

6. Post the brief via Slack Send a Message. Default destination: a #sales-prep channel, but make the channel or user id easy to change. Timing: if the meeting is more than 30 minutes away, schedule the post so it lands 30 minutes before start; if it is closer than 30 minutes, post immediately.

Edge cases the agent should handle gracefully: missing or unmatched Apollo enrichment (post a lighter brief that says enrichment did not match), free-mail domains (skip Organization Enrichment and People Search, post a person-only brief), internal bookings where the attendee email is on my own domain (skip the workflow), and rescheduled or cancelled bookings (do not double-post).

Output: a single Slack message per booking, posted at least 30 minutes before the meeting starts.

What does this prompt do?

  • Watches Cal.com for new bookings and pulls the attendee email, company, and meeting context.
  • Runs Apollo People Enrichment on the attendee and Apollo Organization Enrichment on the company domain to gather title, seniority, employee count, industry, funding, and tech stack.
  • Uses Apollo People Search to surface 2 to 3 other relevant decision-makers at the same company.
  • Drafts a concise pre-call brief with who they are, what the company does, signals worth referencing, talking points, and other contacts to mention, then posts it to Slack at least 30 minutes before the meeting starts.

What do I need to use this?

  • A Cal.com account with API access so the workflow can read new bookings.
  • An Apollo account with API access for People Enrichment, Organization Enrichment, and People Search.
  • A Slack workspace connection with permission to send messages to the channel or DM where briefs should land.

How can I customize it?

  • Change the lead time. The default posts 30 minutes before the meeting; teams often switch to 1 hour or end of previous business day.
  • Choose the Slack destination. Send to a #sales-prep channel, DM the meeting host, or route by event type (demo vs. discovery).
  • Tune the People Search query. Adjust seniority, departments, or titles to match the buying committee you actually care about.
  • Filter which bookings get briefed. Skip internal meetings, free-tier consults, or events under a certain duration.

FAQs

Does this work for every new Cal.com booking?
By default yes, but you can have the agent skip bookings based on event type, attendee domain, or meeting duration. Internal meetings and personal calendar events are easy to filter out.
What if the attendee email is a personal address like Gmail?
Apollo People Enrichment can still match on name plus other signals, but Organization Enrichment needs a company domain. The agent falls back to a lighter brief when no company can be resolved.
How does the agent guarantee the brief lands 30 minutes before the meeting?
When a booking is detected, the agent computes the difference between now and the meeting start. If it is more than 30 minutes away, it schedules the Slack post for T minus 30; if it is closer, it posts immediately so the rep still gets notice.
Can the brief go to a DM instead of a channel?
Yes. Configure the Slack Send a Message step to target the host's user ID instead of a channel, or branch by event owner so each rep gets their own briefs.
Will this consume Apollo credits on every booking?
People Enrichment and Organization Enrichment consume credits per match. People Search does not. You can cap usage by skipping bookings from existing customers or domains you have already enriched recently.

Related templates

Auto-fix your calendar when a flight slips, and flag what's at risk

When your flight moves, your calendar times get corrected automatically and you get a Slack note naming the meetings you're about to miss.

Google Calendar
AviationStack
Slack
Agentic Task
Trace phishing emails to the sending IP and report abuse

Every 15 minutes, forwarded phishing reports get traced back to the server that really sent them, with a verdict in Slack and the worst senders reported.

AbuseIPDB
Gmail
Slack
Agentic Task
Turn procurement portal tenders into CRM deals each morning

Every weekday at 7am, sign in to the tender portals you track, filter new notices against your bid criteria, and open a deal for the ones worth chasing.

Anchor Browser
Google Sheets
HubSpot
+1
Agentic Task
Turn each week's football fixtures into a venue staffing plan

Every Monday, rank the week's matches by expected demand, put the big ones on your venue calendar, and post a rota-ready summary to Slack.

API-Sports
Google Calendar
Slack
Agentic Task
Turn 5 star Yotpo reviews into a weekly marketing content queue

Every Tuesday we pull your best new reviews, draft social captions, email testimonials and product page quotes, then stage them in Notion for approval.

Yotpo
Notion
Slack
Agentic Task
Catch bad shipping addresses before you buy the label

Every weekday morning, unfulfilled orders get an address check: harmless typos fixed automatically, risky addresses held with a note to the customer.

Shippo
Shopify
Gmail
+1
Agentic Task

Walk into every meeting already briefed.

Connect Cal.com, Apollo, and Slack once, and Geni posts a pre-call brief before every booking.