Connect via API Key
Open Developer Settings in Cal.com
Sign in at app.cal.com and go to Settings → Developer → API Keys.
Create an API key
Click Add, give the key a name (e.g. Nous), choose a never-expiring or long-lived expiration, and copy the
cal_live_… token shown.POST https://api.cal.com/v2/webhooks and registers the subscription for you. A Webhook ✓ badge appears on the Cal.com card once it’s live.
What gets logged
Nous subscribes to three Cal.com triggers:| Cal.com trigger | Activity on contact |
|---|---|
BOOKING_CREATED | meeting_scheduled |
BOOKING_CANCELLED | meeting_cancelled |
BOOKING_RESCHEDULED | meeting_scheduled (new time) |
BOOKING_CREATED.
Backfill on CSV import
When you import contacts via CSV, Nous automatically queries Cal.com for each contact’s past bookings:meeting_scheduled (or meeting_cancelled if cancelled) on the contact’s timeline. Backfilled events share the same external_id format as webhook events, so a meeting that already exists in the activity log won’t be duplicated when the webhook later fires for it.
Disconnect
Removing the connection in Settings → Integrations → Cal.com → Remove also deletes the webhook subscription on Cal.com (DELETE /v2/webhooks/<id>), so you won’t have a zombie subscription on Cal.com’s side.
See the Cal.com webhook reference for payload details and signature verification.