Decline Booking
cal.decline_booking
ActionBusiness appsconnection required
Calls the Cal.com API with the connection's credentials.
Reject a booking that is waiting for confirmation, with an optional reason for the requester.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- API key
- Providers
- Cal.com
- Secret shape
- the Cal.com API key (cal_live_… / cal_test_…), or {"api_key": "…"}
- Config it needs
- base_url
- Resolved by
- config.connection_id, else node.connection_id
Configuration
2 fields, 1 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.
| Field | Type | Required | Default | Constraints | Example |
|---|---|---|---|---|---|
booking_uid The booking's uid, as it appears in Cal.com and in every webhook payload (not the numeric bookingId). | string | Yes | — | — | 2NtaeaVcKfpmSZ4CthFdfk |
reason Why the request is being declined. Cal.com sends this to the person who asked for the booking. | string | No | — | — | — |
Example configuration
Every value below is the contract’s own example or default — nothing invented.
{
"booking_uid": "2NtaeaVcKfpmSZ4CthFdfk"
}Output
One shape.
result
| Field | Type | Example |
|---|---|---|
booking The booking Cal.com returned, with id, uid, title, status, start, end, duration, eventTypeId, attendees and hosts. Empty when the uid named a recurring booking — see recurrences. | object | — |
recurrences Every occurrence, when the uid named a recurring booking. Empty for a normal booking. | array | — |
is_recurring True when Cal.com answered with a list of occurrences rather than a single booking, so the next node reads the right key. | boolean | false |
count How many bookings this result carries. | number | 1 |
{
"booking": {},
"count": 1,
"is_recurring": false,
"recurrences": []
}See Decline Booking run in a workflow.
In a technical demo we add the Cal.com connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.