Skip to main content

Cal.com Event Types — Audit & Per-Vertical Mapping

Last updated: 2026-05-04 Calendar: cal.com/john-moelker Owner: john@churchwiseai.com


Existing Event Types (Discovered from Codebase Audit)

The following Cal.com event types are referenced in the codebase as of 2026-05-04. These are hardcoded URLs in source files — they must exist in the Cal.com dashboard for booking links to work.

Event Type SlugUsed InPurpose
churchwiseai-demosrc/app/book/page.tsx (via calLink prop), sales-playbook-church.md30-min church demo — the primary ChurchWiseAI sales call
funeralwiseai-demosrc/app/funeralwiseai/page.tsx, src/app/funeralwiseai/book/page.tsx, src/app/s/[slug]/page.tsx (funeral preview), src/components/templates/ServiceBusinessTemplate.tsx30-min funeral home demo
vetwiseai-demosrc/app/vetwiseai/page.tsx, src/app/vetwiseai/book/page.tsx30-min vet clinic demo
wiseaiagency-demosrc/app/wiseaiagency/page.tsx, src/app/wiseaiagency/playground/components/ConversionCTA.tsx, /api/chatbot/unified/route.tsAgency-level demo — custom/enterprise engagements

Verification needed before first campaign send:

  • churchwiseai-demo exists at cal.com/john-moelker/churchwiseai-demo → verify 200
  • funeralwiseai-demo exists at cal.com/john-moelker/funeralwiseai-demo → verify 200
  • vetwiseai-demo exists at cal.com/john-moelker/vetwiseai-demo → verify 200
  • wiseaiagency-demo exists at cal.com/john-moelker/wiseaiagency-demo → verify 200

Per-Vertical Event Type Recommendations

The codebase currently has ONE event type per vertical (the demo call). As outreach scales, the founder may want additional event types per vertical for different use cases.

Current: One-size-fits-all 30-min demo per vertical.

Recommended additions (founder creates manually in Cal.com when ready):

Recommended SlugVerticalDurationPurpose
church-discovery-15minChurch15 minQuick discovery call for pastors who saw the demo but aren't sure if it fits. Lower barrier than full 30-min demo.
church-onboarding-callChurch45 minPost-purchase setup call for new church customers.
funeral-configuration-reviewFuneral30 minPost-setup configuration review at day 13 (referenced in lifecycle-emails-funeral.ts).
vet-configuration-reviewVet30 minPost-setup configuration review at day 13 (referenced in lifecycle-emails-vet.ts).
agency-consultationAgency60 minCustom engagement scoping for multi-location or enterprise clients.

Event Type Naming Conventions

Follow these rules when creating new Cal.com event types:

  1. Slug format: {vertical}-{purpose}-{duration} — kebab-case, no underscores
  2. Vertical prefixes: church, funeral, vet, sermonwise, pewsearch, agency
  3. Purpose words: demo, discovery, onboarding, configuration-review, consultation
  4. Duration suffix: Optional — add when multiple durations exist for the same purpose (e.g., demo-15min, demo-30min)

Per-Vertical Event Type Configuration Notes

church — churchwiseai-demo

Description for Cal.com: "30-min ChurchWiseAI Demo — See your church's personalized AI chatbot and voice agent live. I'll walk you through how it works and answer any questions."

Questions to collect:

  • Church name
  • Denomination / tradition
  • Average Sunday attendance (range: <50 / 50–150 / 150–500 / 500+)
  • Biggest communication challenge right now (free text)

Confirmation email: Should reference the personalized demo link if they came from outreach. Use the preview_url from outreach_contacts if available.


funeral — funeralwiseai-demo

Description for Cal.com: "30-min FuneralWiseAI Demo — See how the AI handles after-hours family calls for your funeral home. I'll walk you through a real demo configured for your home."

Questions to collect:

  • Funeral home name
  • Number of locations (1 / 2–5 / 5+)
  • Current after-hours setup (answering service / staff on-call / voicemail / other)
  • Biggest pain point with after-hours contact (free text)

Tone note: Confirmation email should be dignified and composed — no "Exciting!" language.


vet — vetwiseai-demo

Description for Cal.com: "30-min VetWiseAI Demo — See how the AI handles after-hours calls and symptom triage for your clinic. I'll walk through a demo configured for your practice."

Questions to collect:

  • Clinic name
  • Species treated (dogs/cats / exotic / equine / mixed)
  • Current after-hours setup (answering service / on-call staff / voicemail / other)
  • Biggest after-hours challenge (free text)

agency — wiseaiagency-demo

Description for Cal.com: "30-min WiseAI Agency Demo — Custom AI voice + chatbot for local businesses. We'll discuss your industry, locations, and what a custom build would look like."

Questions to collect:

  • Business name and industry
  • Number of locations
  • Primary use case (after-hours / appointment booking / triage / other)
  • Current phone/chat setup

Founder Action Required

The following event types must be created manually in Cal.com before the outreach campaigns can send:

  1. churchwiseai-demo — verify it exists; if not, create it
  2. funeralwiseai-demo — verify it exists (referenced throughout funeralwiseai/ pages)
  3. vetwiseai-demo — verify it exists (referenced throughout vetwiseai/ pages)
  4. wiseaiagency-demo — verify it exists (referenced in playground and agency pages)

How to verify: Visit each URL directly:

If any return 404, create the event type in your Cal.com dashboard before the first outreach campaign batch sends.


Integration with church_voice_agents (DB)

The cal_event_type_id column in church_voice_agents (and the corresponding column in tenant_voice_agents for non-church verticals) stores the Cal.com event type ID (a numeric ID, not the slug). The voice agent uses this to book appointments during calls.

To find your event type IDs:

GET https://api.cal.com/v2/event-types
Authorization: Bearer {cal_api_key}

For per-vertical voice agent provisioning, each vertical's demo tenant row needs the correct cal_event_type_id for that vertical's event type.

Current known event type IDs: Not yet documented — add here after verifying with Cal.com API.

SlugCal.com Event Type ID
churchwiseai-demoTBD — confirm via API
funeralwiseai-demoTBD — confirm via API
vetwiseai-demoTBD — confirm via API
wiseaiagency-demoTBD — confirm via API