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 Slug | Used In | Purpose |
|---|---|---|
churchwiseai-demo | src/app/book/page.tsx (via calLink prop), sales-playbook-church.md | 30-min church demo — the primary ChurchWiseAI sales call |
funeralwiseai-demo | src/app/funeralwiseai/page.tsx, src/app/funeralwiseai/book/page.tsx, src/app/s/[slug]/page.tsx (funeral preview), src/components/templates/ServiceBusinessTemplate.tsx | 30-min funeral home demo |
vetwiseai-demo | src/app/vetwiseai/page.tsx, src/app/vetwiseai/book/page.tsx | 30-min vet clinic demo |
wiseaiagency-demo | src/app/wiseaiagency/page.tsx, src/app/wiseaiagency/playground/components/ConversionCTA.tsx, /api/chatbot/unified/route.ts | Agency-level demo — custom/enterprise engagements |
Verification needed before first campaign send:
-
churchwiseai-demoexists at cal.com/john-moelker/churchwiseai-demo → verify 200 -
funeralwiseai-demoexists at cal.com/john-moelker/funeralwiseai-demo → verify 200 -
vetwiseai-demoexists at cal.com/john-moelker/vetwiseai-demo → verify 200 -
wiseaiagency-demoexists at cal.com/john-moelker/wiseaiagency-demo → verify 200
Per-Vertical Event Type Recommendations
Current State vs. Recommended
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 Slug | Vertical | Duration | Purpose |
|---|---|---|---|
church-discovery-15min | Church | 15 min | Quick discovery call for pastors who saw the demo but aren't sure if it fits. Lower barrier than full 30-min demo. |
church-onboarding-call | Church | 45 min | Post-purchase setup call for new church customers. |
funeral-configuration-review | Funeral | 30 min | Post-setup configuration review at day 13 (referenced in lifecycle-emails-funeral.ts). |
vet-configuration-review | Vet | 30 min | Post-setup configuration review at day 13 (referenced in lifecycle-emails-vet.ts). |
agency-consultation | Agency | 60 min | Custom engagement scoping for multi-location or enterprise clients. |
Event Type Naming Conventions
Follow these rules when creating new Cal.com event types:
- Slug format:
{vertical}-{purpose}-{duration}— kebab-case, no underscores - Vertical prefixes:
church,funeral,vet,sermonwise,pewsearch,agency - Purpose words:
demo,discovery,onboarding,configuration-review,consultation - 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:
churchwiseai-demo— verify it exists; if not, create itfuneralwiseai-demo— verify it exists (referenced throughoutfuneralwiseai/pages)vetwiseai-demo— verify it exists (referenced throughoutvetwiseai/pages)wiseaiagency-demo— verify it exists (referenced in playground and agency pages)
How to verify: Visit each URL directly:
- https://cal.com/john-moelker/churchwiseai-demo
- https://cal.com/john-moelker/funeralwiseai-demo
- https://cal.com/john-moelker/vetwiseai-demo
- https://cal.com/john-moelker/wiseaiagency-demo
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.
| Slug | Cal.com Event Type ID |
|---|---|
churchwiseai-demo | TBD — confirm via API |
funeralwiseai-demo | TBD — confirm via API |
vetwiseai-demo | TBD — confirm via API |
wiseaiagency-demo | TBD — confirm via API |