Daily coaching call prep cards in Slack from Kajabi and Calendly

By General Input

Every weekday at 6am, post one Slack prep card per Calendly coaching call with the client's Kajabi purchase history, current offers, and three tailored talking points.

Integrations

  • Kajabi
  • Calendly
  • Slack Bot

Type

Agentic Task

Categories

  • Sales
  • Customer Support

Build me an agent workflow that runs on a cron every weekday at 6am in my local timezone and posts one prep card per coaching call to my Slack channel #coaching-prep. The point is that I walk into every 1:1 already knowing who's on the call, what they've bought from me, and what I should bring up.

Step 1 — pull today's meetings from Calendly. Use Calendly's List Scheduled Events to get every meeting scheduled for the current day (min_start_time = start of today, max_start_time = end of today, status = active) for my Calendly user. For each event, call List Event Invitees to get the invitee's name, email, and any answers they filled out on the booking form. If there are zero meetings today, exit cleanly without posting anything to Slack.

Step 2 — enrich each invitee against Kajabi. For every invitee email, call Kajabi's List Contacts with filter[email] set to that email. If a contact exists, follow the customer relationship on that contact to Get Customer Details, then call List Customer's Offers to pull every offer the customer currently has access to. Capture purchase history, currently owned offers and courses, and any notes attached to the contact or customer record. If the email does not match a Kajabi contact, don't fail — flag them as 'no Kajabi record, treat as a new lead' and continue.

Step 3 — compose one prep card per meeting. Each card should include: who's on the call (name, meeting time, and meeting type), what they currently own (offers and courses from Kajabi), a short one-line read on where they seem to be in the customer journey (e.g. new lead, first-purchase buyer, active student, high-value repeat buyer), two or three adjacent offers they haven't bought yet that would be natural next steps given what they own, and three tailored talking points I can bring up on the call. Keep it tight — this channel needs to stay scannable when 4-6 calls stack up in a day.

Step 4 — post to Slack. Use the Slack bot Send a Message action to post each prep card as its own message in #coaching-prep. Use Slack mrkdwn formatting (bold section headers, bullet points), and order the messages by meeting start time so the earliest call is at the top of the channel that morning. If any single invitee enrichment fails, still post that card with whatever context you have plus a short note that Kajabi lookup failed — don't skip the meeting.

Guardrails: read-only across Calendly and Kajabi, no writes anywhere except sending Slack messages. If Calendly returns no meetings for today, exit silently. If Kajabi's Public API isn't reachable at all (auth or 5xx), still post the Calendly meetings with a note that Kajabi enrichment was unavailable this morning.

Related prompts

Explore more prompts
A brand asset library your marketing team actually searchesTurn Mailjet email clicks into ranked HubSpot follow-upsClean out the Looker dashboards and Looks nobody opensLiveKit live operations console for room moderationWake up dormant Keap leads with a researched reasonLiveChat coverage board for planning next week's shiftsPhone routing control panel for LiveKit voice agentsLinkedIn Ads budget pacing dashboard for every client accountGive your team Looker numbers without buying more seatsPause marketing emails to escalated customers, then restore them