List Bookings
cal.list_bookings
ActionBusiness appsconnection required
Calls the Cal.com API with the connection's credentials.
List one cursor page of bookings, optionally narrowed to a single status, attendee, event type, team or time window.
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
12 fields, none 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 |
|---|---|---|---|---|---|
status Filter to one booking status. Cal.com accepts only one at a time; leave empty to walk every status. | string | No | — | one of "upcoming", "recurring", "past", "cancelled", "unconfirmed" | upcoming |
attendee_email Only bookings whose attendee has this email address. | string | No | — | email format | — |
attendee_name Only bookings whose attendee has this name. | string | No | — | — | — |
event_type_id Only bookings of this numeric event type id. | string | No | — | — | — |
team_id Only bookings that belong to this numeric team id. | string | No | — | — | — |
after_start Only bookings that start at or after this ISO-8601 UTC instant. | string | No | — | iso8601 format | 2026-03-07T10:00:00.000Z |
before_end Only bookings that end at or before this ISO-8601 UTC instant. | string | No | — | iso8601 format | — |
after_created_at Only bookings created at or after this ISO-8601 UTC instant. | string | No | — | iso8601 format | — |
before_created_at Only bookings created at or before this ISO-8601 UTC instant. | string | No | — | iso8601 format | — |
sort_start Sort direction on the booking start time. | string | No | — | one of "asc", "desc" | — |
cursor Opaque cursor from a previous run's next_cursor. Leave empty for the first page. | string | No | — | — | — |
limit How many bookings to return in this page. Cal.com allows 1 to 100 and defaults to 50. | number | No | — | 1–100 | 50 |
Example configuration
Every value below is the contract’s own example or default — nothing invented.
{
"after_start": "2026-03-07T10:00:00.000Z",
"limit": 50,
"status": "upcoming"
}Output
One shape.
result
| Field | Type | Example |
|---|---|---|
items The bookings on this page. | array | — |
count How many bookings this page carried. | number | 2 |
next_cursor Cursor for the next page, or empty on the last page. | string | — |
has_more True while Cal.com has further pages to hand back. | boolean | false |
{
"count": 2,
"has_more": false,
"items": [],
"next_cursor": ""
}Notes
- Cal.com filters by a single status. To cover several, run this node once per status and merge the results.
- Paging is cursor-based: feed next_cursor back into cursor until has_more is false.
See List Bookings 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.