Calendly
List your Calendly scheduled events and the invitees booked on them, and cancel events — using the Calendly API v2.
Standard-library Python only (no external packages). The tool authenticates with
a single Calendly Personal Access Token sent as Authorization: Bearer, so
no live OAuth flow is required.
Operations
| operation | Calendly endpoint | params |
|---|---|---|
me |
GET /users/me |
— |
list_events |
GET /scheduled_events?user=<uri> |
user (optional), statusFilter, count |
list_invitees |
GET /scheduled_events/{uuid}/invitees |
event (required), statusFilter, count |
cancel_event |
POST /scheduled_events/{uuid}/cancellation |
event (required), reason (optional) |
Notes:
- /scheduled_events must be scoped to a user (or organization). If you omit
user, the tool calls GET /users/me first and lists your events.
- event accepts either a bare event UUID or the full event URI returned by
list_events (e.g. https://api.calendly.com/scheduled_events/<uuid>).
- statusFilter is active or canceled for both list operations.
apiKey setup
- Sign in to Calendly.
- Go to Integrations & apps → API & Webhooks (
https://calendly.com/integrations/api_webhooks). - Under Personal Access Tokens, generate a token.
- Pass that token as the
apiKeyinput. It is sent asAuthorization: Bearer <token>.
Examples
List your upcoming (active) events, newest page of 10:
operation = list_events
apiKey = <your token>
statusFilter = active
count = 10
See who is booked on a specific event, then cancel it with a reason:
operation = list_invitees
apiKey = <your token>
event = https://api.calendly.com/scheduled_events/AAAAAAAAAAAAAAAA
operation = cancel_event
apiKey = <your token>
event = AAAAAAAAAAAAAAAA
reason = Rescheduling to next week
Output
Both result (the raw Calendly JSON payload as a string) and status (the HTTP
status code) are published, referenceable downstream as {{run.result}} and
{{run.status}}.
Publishes
The keys a later task may reference as {{taskName.key}}. Referencing anything not listed here resolves to nothing at run time.
errorresultstatus
Input Properties
Every property this tool accepts, from its own tool.iml.
| Property | Type | Required | Default | Description |
|---|---|---|---|---|
apiKey |
string | yes | — | Calendly Personal Access Token (sent as 'Authorization: Bearer'). Create one at https://calendly.com/integrations/api_webhooks under 'Personal Access Tokens'. |
operation |
string | yes | — | One of: me, list_events, list_invitees, cancel_event |
user |
string | no | — | User resource URI to scope list_events (e.g. https://api.calendly.com/users/XXXX). Optional — when omitted, list_events resolves the current user via /users/me. |
event |
string | no | — | Scheduled event UUID or full event URI. Required for list_invitees and cancel_event. |
statusFilter |
string | no | — | Optional status filter. For list_events: 'active' or 'canceled'. For list_invitees: 'active' or 'canceled'. |
count |
string | no | — | Optional page size for list operations (1-100; Calendly default 20). |
reason |
string | no | — | Optional cancellation reason text for cancel_event. |