Authenticate with the Calendly API v2 using a Bearer token (personal access token or OAuth 2.0 access token) in the Authorization header on requests to api.calendly.com.
Retrieve the URI of the target event type by calling GET /event_types and locating the event type by its slug or name in the response.
POST to /scheduling_links with a JSON body containing the max_event_count (set to 1 for single-use) and the event_type URI obtained in the previous step.
Extract the booking_url from the response and deliver it to the candidate; single-use links that have not been used expire after 90 days per current docs.
Listen for the invitee.created webhook event to detect when the link has been used and mark it consumed in your system.
Known gotchas
The Calendly API v1 was permanently shut down on August 27, 2025; all integrations must use v2 at api.calendly.com with Bearer token auth.
Single-use links are tied to a specific event type URI — passing a wrong or archived event type URI returns a 400 error.
The API does not schedule events on behalf of invitees; it only produces a booking URL that the invitee must open to complete scheduling.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp