atmon docs

REFERENCE/TOOLKITS/CALENDLY.MD

Calendly

Meeting scheduling. Look up event types and booked meetings, read invitee and availability data, and hand out booking links.

PropertyValue
Slugcalendly
Definition version0.1.0
Base URLhttps://api.calendly.com
Auth schemesoauth2, api_key
Action tools31
By class23 read, 3 write, 5 destructive
Triggers0
Provider rate limitnot declared, so outbound calls are unpaced

Measured routing accuracy

62 golden cases replayed through the router over the whole index: measured over corpus ea4f12ad2948 (65 toolkits, 2283 tools indexed and 13 declared uncallable), 31 cases written by hand and 31 cases from the paraphrase pass. A case counts as top-1 when its gold tool ranked first and top-8 when it reached the slate at all.

MeasureCasesShare
top-128/6245.2%
top-856/6290.3%

The sweep is offline: the reranker is a deterministic identity fake that returns candidates in the order retrieval produced them, so top-1 measures retrieval order rather than a reranked slate. just eval-live measures the same cases through the live reranker.

Authentication

Connect an entity with ConnectionsService.InitiateConnection, naming this toolkit's slug. Credentials stay in the connections vault; callers hold connected-account ids only.

oauth2

PropertyValue
Authorization URLhttps://auth.calendly.com/oauth/authorize
Token URLhttps://auth.calendly.com/oauth/token
Refresh tokensyes, the refresh daemon renews ahead of expiry

api_key

PropertyValue
Placementheader
NameAuthorization
Rendered asBearer {key}

Submit the key with ConnectionsService rather than putting it in a request; it is sealed at rest and never returned.

Tools

31 action tools. The catalog-wide slug is calendly.<tool>, which is what search_tools returns and call_tool takes.

calendly.get_current_user

Get the connected Calendly account's own profile: name, email, scheduling_url, timezone, and the uri fields for the user and their organization that other Calendly tools filter by. Use when the user asks about their own Calendly account, booking link, or time zone, or before calling a tool that needs the user's or organization's uri.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /users/me.

Takes no arguments.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.avatar_urlstring
resource.created_atstring
resource.current_organizationstring
resource.emailstring
resource.namestring
resource.scheduling_urlstring
resource.slugstring
resource.timezonestring
resource.uristring

Also retrieved by: "what's my calendly account", "show my scheduling link", "what time zone is my calendly set to", "pull up my own calendly profile", "what's my booking page url".

calendly.get_user

Look up another Calendly user's profile by user uuid: name, email, scheduling_url, and time zone. Use when the user asks about a teammate's Calendly account or booking page rather than their own; for the connected account itself use get_current_user.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /users/{{params.user_uuid}}.

Arguments:

ArgumentTypeRequiredNotes
user_uuidstringyesCalendly user uuid, the last path segment of a user's uri field from get_current_user or list_organization_memberships.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.avatar_urlstring
resource.current_organizationstring
resource.emailstring
resource.namestring
resource.scheduling_urlstring
resource.slugstring
resource.timezonestring
resource.uristring

Also retrieved by: "look up a teammate's calendly profile", "what's sam's booking link", "find someone else's scheduling page", "check a coworker's calendly time zone".

calendly.list_event_types

List a Calendly user or organization's event types: the meeting templates people book against (30-minute call, demo, office hours), with each one's name, duration, scheduling_url, and active state. Use when the user asks what kinds of meetings they offer or wants the booking link for a specific meeting type. Calendly event types are read-only through this API; there is no create or update tool.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /event_types.

Arguments:

ArgumentTypeRequiredNotes
activebooleannoFilter to only active (true) or only inactive (false) event types.
countintegernoResults per page, default 20.
organizationstringnoFull Calendly organization uri to list event types for.
page_tokenstringnoToken from a previous page's pagination.next_page_token.
userstringnoFull Calendly user uri to list event types for. Omit and set organization instead to list every event type in the org.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
collectionarray of object
collection[].activeboolean
collection[].colorstring
collection[].durationinteger
collection[].kindstring
collection[].namestring
collection[].scheduling_urlstring
collection[].slugstring
collection[].uristring
paginationobject
pagination.next_page_tokenstring

Also retrieved by: "what meeting types do I offer", "show me my calendly booking templates", "what can people book with me", "what's the link for my demo call", "list the kinds of calls people can schedule with me", "what event types does the team have set up".

calendly.get_event_type

Get one Calendly event type's full details by uuid: name, duration, scheduling_url, description, and booking questions. Use after list_event_types or when the user already names a specific meeting type they want details on, such as before create_scheduling_link or list_event_type_available_times.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /event_types/{{params.event_type_uuid}}.

Arguments:

ArgumentTypeRequiredNotes
event_type_uuidstringyesEvent type uuid from list_event_types.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.activeboolean
resource.description_plainstring
resource.durationinteger
resource.kindstring
resource.namestring
resource.scheduling_urlstring
resource.slugstring
resource.uristring

Also retrieved by: "what does this meeting type include", "pull up the details for that booking template", "what questions does that meeting type ask", "show me the setup for that specific event type".

calendly.list_event_type_available_times

List the open booking slots for a Calendly event type within a time window (at most 7 days). Use when the user asks when someone is free to meet, what times a meeting type has open, or before pointing someone at a booking link. For a person's raw busy blocks instead of open slots use list_user_busy_times.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /event_type_available_times.

Arguments:

ArgumentTypeRequiredNotes
end_timestringyesWindow end, ISO 8601. Calendly limits this window to 7 days from start_time.
event_typestringyesFull Calendly event type uri from list_event_types or get_event_type.
start_timestringyesWindow start, ISO 8601, e.g. "2026-08-01T00:00:00Z".

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
collectionarray of object
collection[].invitees_remaininginteger
collection[].scheduling_urlstring
collection[].start_timestring
collection[].statusstring

Also retrieved by: "when is sam free for a demo call this week", "what slots are open for the intro call", "show me the openings on that booking template", "when can someone book that meeting type".

calendly.list_scheduled_events

List Calendly meetings that have been booked for a user or organization, active or canceled, in a time range. Use when the user asks what's on their Calendly schedule, wants to find a booked meeting to look at or cancel, or asks who has booked time with them recently.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /scheduled_events.

Arguments:

ArgumentTypeRequiredNotes
countintegernoResults per page, default 20.
invitee_emailstringnoFilter to events booked by this invitee email.
max_start_timestringnoOnly events starting before this ISO 8601 time.
min_start_timestringnoOnly events starting at or after this ISO 8601 time.
organizationstringnoFull Calendly organization uri to list scheduled events for.
page_tokenstringnoToken from a previous page's pagination.next_page_token.
statusstring, one of active, cancelednoFilter by event status. Omit to return both.
userstringnoFull Calendly user uri to list scheduled events for.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
collectionarray of object
collection[].end_timestring
collection[].event_typestring
collection[].invitees_counterobject
collection[].invitees_counter.activeinteger
collection[].invitees_counter.totalinteger
collection[].locationobject
collection[].location.join_urlstring
collection[].location.typestring
collection[].namestring
collection[].start_timestring
collection[].statusstring
collection[].uristring
paginationobject
pagination.next_page_tokenstring

Also retrieved by: "what's on my calendly schedule this week", "who's booked time with me lately", "show me my upcoming calendly meetings", "what calls do I have booked", "pull up everything scheduled through calendly".

calendly.get_scheduled_event

Get one booked Calendly meeting's full details by event uuid: time, location or join link, event type, and invitee counts. Use after list_scheduled_events or when the user already has a specific meeting's uuid, such as before cancel_scheduled_event or list_event_invitees.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /scheduled_events/{{params.event_uuid}}.

Arguments:

ArgumentTypeRequiredNotes
event_uuidstringyesScheduled event uuid from list_scheduled_events.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.end_timestring
resource.event_typestring
resource.invitees_counterobject
resource.invitees_counter.activeinteger
resource.invitees_counter.totalinteger
resource.locationobject
resource.location.join_urlstring
resource.location.typestring
resource.namestring
resource.start_timestring
resource.statusstring
resource.uristring

Also retrieved by: "what time is that booked meeting", "pull up the details on that calendly call", "what's the join link for that meeting", "show me info on a specific booked session".

calendly.cancel_scheduled_event

Cancel a booked Calendly meeting by event uuid, notifying every invitee. Use when the user wants to cancel, call off, or remove a meeting someone booked on their calendar. Unrecoverable: a cancelled Calendly event cannot be reinstated, only rebooked.

Class destructive (held by the mutation gate until the call's own arguments carry "confirm": true). No scopes beyond the connection's defaults. Calls POST /scheduled_events/{{params.event_uuid}}/cancellation.

Arguments:

ArgumentTypeRequiredNotes
event_uuidstringyesScheduled event uuid to cancel.
reasonstringnoOptional free-text reason shown to invitees in the cancellation notice.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.canceled_bystring
resource.canceler_typestring
resource.reasonstring

Also retrieved by: "call off that booked meeting", "cancel the session someone scheduled with me", "get rid of that calendly booking", "I need to cancel a call someone set up".

calendly.list_event_invitees

List the people who booked a specific Calendly meeting, with each person's email, status, and their answers to the event type's booking questions. Use when the user asks who is coming to a meeting, who booked a slot, or wants a specific attendee's answers.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /scheduled_events/{{params.event_uuid}}/invitees.

Arguments:

ArgumentTypeRequiredNotes
countintegernoResults per page, default 20.
emailstringnoFilter to one invitee's email.
event_uuidstringyesScheduled event whose invitees to list.
page_tokenstringnoToken from a previous page's pagination.next_page_token.
statusstring, one of active, cancelednoFilter by invitee status. Omit to return both.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
collectionarray of object
collection[].cancel_urlstring
collection[].emailstring
collection[].namestring
collection[].questions_and_answersarray of object
collection[].questions_and_answers[].answerstring
collection[].questions_and_answers[].questionstring
collection[].reschedule_urlstring
collection[].statusstring
collection[].timezonestring
collection[].uristring
paginationobject
pagination.next_page_tokenstring

Also retrieved by: "who booked that meeting", "show me everyone coming to that call", "who signed up for that time slot", "what did the attendee answer on the booking form".

calendly.get_event_invitee

Get one Calendly meeting invitee's full details by event uuid and invitee uuid: email, status, time zone, and booking-question answers. Use after list_event_invitees or when the user already has a specific attendee's uuid.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /scheduled_events/{{params.event_uuid}}/invitees/{{params.invitee_uuid}}.

Arguments:

ArgumentTypeRequiredNotes
event_uuidstringyesScheduled event the invitee belongs to.
invitee_uuidstringyesInvitee uuid from list_event_invitees.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.emailstring
resource.namestring
resource.questions_and_answersarray of object
resource.questions_and_answers[].answerstring
resource.questions_and_answers[].questionstring
resource.statusstring
resource.timezonestring
resource.uristring

Also retrieved by: "what did that specific person answer when they booked", "pull up one attendee's booking details", "check a single invitee's info for that meeting".

Generate a single-use Calendly booking link for one event type, good for exactly one booking. Use when the user wants to send someone a one-time link to book a specific meeting type, as an alternative to sharing the reusable scheduling_url. Calendly books the meeting itself only when the recipient completes this link; no tool creates a meeting directly.

Class write (writes, no confirmation needed). No scopes beyond the connection's defaults. Calls POST /scheduling_links.

Arguments:

ArgumentTypeRequiredNotes
event_typestringyesFull Calendly event type uri from list_event_types or get_event_type.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.booking_urlstring
resource.ownerstring
resource.owner_typestring

Also retrieved by: "make a one-time booking link for that meeting type", "send someone a single-use link to book a call", "generate a fresh scheduling link for the demo", "I need a one-off link for this specific booking template".

calendly.list_webhook_subscriptions

List the webhook subscriptions registered on a Calendly organization or user, with each one's callback url, subscribed events, and state. Use when the user asks what Calendly integrations or notification hooks are set up, or before delete_webhook_subscription.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /webhook_subscriptions.

Arguments:

ArgumentTypeRequiredNotes
countintegernoResults per page, default 20.
organizationstringyesFull Calendly organization uri the subscriptions belong to.
page_tokenstringnoToken from a previous page's pagination.next_page_token.
scopestring, one of organization, useryesList org-wide subscriptions or only the connected user's own.
userstringnoFull Calendly user uri, required when scope is "user".

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
collectionarray of object
collection[].callback_urlstring
collection[].eventsarray of string
collection[].scopestring
collection[].statestring
collection[].uristring
paginationobject
pagination.next_page_tokenstring

Also retrieved by: "what calendly hooks do we have set up", "show me every webhook connected to calendly", "what integrations are listening for booking events".

calendly.create_webhook_subscription

Register a new Calendly webhook subscription: a callback url that Calendly posts to when chosen events fire (invitee.created, invitee.canceled, routing_form_submission.created). Use when the user wants to hook up, connect, or subscribe an endpoint to Calendly booking or cancellation events.

Class write (writes, no confirmation needed). No scopes beyond the connection's defaults. Calls POST /webhook_subscriptions.

Arguments:

ArgumentTypeRequiredNotes
eventsarray of stringyesWhich event types to subscribe to.
organizationstringyesFull Calendly organization uri the subscription is scoped to.
scopestring, one of organization, useryesReceive events for the whole organization or only one user.
signing_keystringnoOptional secret Calendly signs each delivery with.
urlstringyesHTTPS endpoint Calendly should post events to.
userstringnoFull Calendly user uri, required when scope is "user".

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.callback_urlstring
resource.eventsarray of string
resource.statestring
resource.uristring

Also retrieved by: "hook up an endpoint to calendly booking events", "subscribe a url to invitee cancellations", "connect our system to get notified on new bookings", "set up a webhook for calendly cancellations".

calendly.get_webhook_subscription

Get one Calendly webhook subscription's full details by uuid: callback url, subscribed events, and current state. Use after list_webhook_subscriptions or when the user already has a specific subscription's uuid.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /webhook_subscriptions/{{params.webhook_uuid}}.

Arguments:

ArgumentTypeRequiredNotes
webhook_uuidstringyesWebhook subscription uuid from list_webhook_subscriptions.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.callback_urlstring
resource.eventsarray of string
resource.statestring
resource.uristring

Also retrieved by: "what events is that webhook subscribed to", "pull up details on one calendly hook", "check the state of a specific webhook subscription".

calendly.delete_webhook_subscription

Remove a Calendly webhook subscription by uuid, stopping event deliveries to its callback url for good. Use when the user wants to unsubscribe, disconnect, or turn off a Calendly notification hook. Unrecoverable; recreate it with create_webhook_subscription if needed again.

Class destructive (held by the mutation gate until the call's own arguments carry "confirm": true). No scopes beyond the connection's defaults. Calls DELETE /webhook_subscriptions/{{params.webhook_uuid}}.

Arguments:

ArgumentTypeRequiredNotes
webhook_uuidstringyesWebhook subscription uuid to remove.

Also retrieved by: "turn off that calendly webhook", "unsubscribe that endpoint from booking events", "remove a hook we no longer need", "disconnect that integration from calendly".

calendly.get_organization

Get a Calendly organization's own details by uuid: its uri and name. Use before organization-scoped tools like list_organization_memberships or list_routing_forms when the user's organization uri is not already known from get_current_user.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /organizations/{{params.organization_uuid}}.

Arguments:

ArgumentTypeRequiredNotes
organization_uuidstringyesOrganization uuid, the last path segment of current_organization.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.namestring
resource.uristring

Also retrieved by: "what's our calendly organization called", "pull up our team's calendly org details", "check the name on our calendly workspace".

calendly.list_organization_memberships

List the people who belong to a Calendly organization, with each person's role and profile. Use when the user asks who is on their Calendly team, wants a headcount, or needs a teammate's membership uuid before removing them.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /organization_memberships.

Arguments:

ArgumentTypeRequiredNotes
countintegernoResults per page, default 20.
emailstringnoFilter to one member's email.
organizationstringyesFull Calendly organization uri to list members of.
page_tokenstringnoToken from a previous page's pagination.next_page_token.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
collectionarray of object
collection[].rolestring
collection[].uristring
collection[].userobject
collection[].user.emailstring
collection[].user.namestring
collection[].user.uristring
paginationobject
pagination.next_page_tokenstring

Also retrieved by: "who's on our calendly team", "show me everyone with access to our calendly org", "what's our calendly headcount", "list the members of our scheduling team".

calendly.get_organization_membership

Get one Calendly organization membership's full details by uuid: the member's role and profile. Use after list_organization_memberships or when the user already has a specific member's membership uuid, such as before remove_organization_membership.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /organization_memberships/{{params.membership_uuid}}.

Arguments:

ArgumentTypeRequiredNotes
membership_uuidstringyesOrganization membership uuid from list_organization_memberships.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.rolestring
resource.uristring
resource.userobject
resource.user.emailstring
resource.user.namestring
resource.user.uristring

Also retrieved by: "what role does that person have on our calendly team", "pull up one teammate's calendly membership", "check a specific member's standing on the team".

calendly.remove_organization_membership

Remove a person from a Calendly organization by membership uuid, revoking their access to the team's shared scheduling. Use when the user wants to offboard, remove, or kick a teammate off the Calendly organization. They keep their own personal Calendly account; only organization membership is revoked.

Class destructive (held by the mutation gate until the call's own arguments carry "confirm": true). No scopes beyond the connection's defaults. Calls DELETE /organization_memberships/{{params.membership_uuid}}.

Arguments:

ArgumentTypeRequiredNotes
membership_uuidstringyesOrganization membership uuid to remove.

Also retrieved by: "take someone off our calendly team", "offboard a teammate from calendly", "kick that person out of our calendly org".

calendly.invite_organization_member

Invite someone to join a Calendly organization by email. Use when the user wants to add, invite, or onboard a new teammate onto the shared Calendly team. The invitee must accept before get_organization_invitation shows a completed status.

Class write (writes, no confirmation needed). No scopes beyond the connection's defaults. Calls POST /organizations/{{params.organization_uuid}}/invitations.

Arguments:

ArgumentTypeRequiredNotes
emailstringyesInvitee's email address.
organization_uuidstringyesOrganization uuid to invite the person into.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.emailstring
resource.last_sent_atstring
resource.statusstring
resource.uristring

Also retrieved by: "invite a new teammate to our calendly org", "add someone to the shared calendly team", "send an invite to join our calendly workspace".

calendly.list_organization_invitations

List pending, accepted, and declined invitations to a Calendly organization. Use when the user asks who has been invited to their Calendly team but hasn't joined yet, or wants an invitation's uuid before revoke_organization_invitation.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /organizations/{{params.organization_uuid}}/invitations.

Arguments:

ArgumentTypeRequiredNotes
countintegernoResults per page, default 20.
emailstringnoFilter to one invitee's email.
organization_uuidstringyesOrganization uuid whose invitations to list.
page_tokenstringnoToken from a previous page's pagination.next_page_token.
statusstring, one of pending, accepted, declinednoFilter by invitation status.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
collectionarray of object
collection[].emailstring
collection[].last_sent_atstring
collection[].statusstring
collection[].uristring
paginationobject
pagination.next_page_tokenstring

Also retrieved by: "who's been invited but hasn't joined calendly yet", "show pending invites to our calendly team", "what invitations are still outstanding".

calendly.get_organization_invitation

Get one Calendly organization invitation's status by uuid: pending, accepted, or declined, and when it was last sent. Use after list_organization_invitations or when the user asks whether a specific invite has been accepted yet.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /organizations/{{params.organization_uuid}}/invitations/{{params.invitation_uuid}}.

Arguments:

ArgumentTypeRequiredNotes
invitation_uuidstringyesInvitation uuid from list_organization_invitations.
organization_uuidstringyesOrganization the invitation belongs to.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.emailstring
resource.last_sent_atstring
resource.statusstring
resource.uristring

Also retrieved by: "has that person accepted their calendly invite yet", "check the status of one pending invitation", "see whether that specific invite was accepted or declined".

calendly.revoke_organization_invitation

Cancel a pending Calendly organization invitation by uuid before the invitee accepts it. Use when the user wants to withdraw, cancel, or take back an invite they sent to join their Calendly team. Unrecoverable; send invite_organization_member again if the user changes their mind.

Class destructive (held by the mutation gate until the call's own arguments carry "confirm": true). No scopes beyond the connection's defaults. Calls DELETE /organizations/{{params.organization_uuid}}/invitations/{{params.invitation_uuid}}.

Arguments:

ArgumentTypeRequiredNotes
invitation_uuidstringyesInvitation uuid to revoke.
organization_uuidstringyesOrganization the invitation belongs to.

Also retrieved by: "cancel that pending calendly invite", "take back an invitation before they join", "withdraw an invite we sent by mistake".

calendly.list_user_availability_schedules

List a Calendly user's availability schedules: the named weekly windows (e.g. "Working Hours") that decide when their event types can be booked. Use when the user asks what hours they're bookable, or wants a schedule's uuid before get_user_availability_schedule.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /user_availability_schedules.

Arguments:

ArgumentTypeRequiredNotes
userstringyesFull Calendly user uri whose availability schedules to list.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
collectionarray of object
collection[].defaultboolean
collection[].namestring
collection[].timezonestring
collection[].uristring

Also retrieved by: "what hours am I bookable", "show me my calendly working hours setup", "what schedules control when people can book me".

calendly.get_user_availability_schedule

Get one Calendly availability schedule's full weekly rules by uuid: which days and hours it makes someone bookable, in their own time zone. Use after list_user_availability_schedules or when the user asks exactly what hours a named schedule covers.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /user_availability_schedules/{{params.schedule_uuid}}.

Arguments:

ArgumentTypeRequiredNotes
schedule_uuidstringyesAvailability schedule uuid from list_user_availability_schedules.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.namestring
resource.rulesarray of object
resource.rules[].intervalsarray of object
resource.rules[].typestring
resource.rules[].wdaystring
resource.timezonestring
resource.uristring

Also retrieved by: "what days does that schedule cover", "pull up the details of my working hours setup", "what time zone is that availability schedule in".

calendly.list_user_busy_times

List the blocks of time a Calendly user is already busy in a window (at most 7 days), from booked Calendly events and connected external calendars alike. Use when the user asks when someone is free or busy. For a meeting type's actual open booking slots instead of raw busy blocks use list_event_type_available_times.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /user_busy_times.

Arguments:

ArgumentTypeRequiredNotes
end_timestringyesWindow end, ISO 8601. Calendly limits this window to 7 days from start_time.
start_timestringyesWindow start, ISO 8601, e.g. "2026-08-01T00:00:00Z".
userstringyesFull Calendly user uri whose busy times to list.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
collectionarray of object
collection[].end_timestring
collection[].eventstring
collection[].start_timestring
collection[].typestring

Also retrieved by: "when is sam already busy this week", "show me the blocked time on someone's calendar", "what times is that person unavailable".

calendly.list_routing_forms

List a Calendly organization's routing forms: the qualifying questionnaires that route a visitor to the right event type or person before they book. Use when the user asks what intake forms or booking questionnaires exist, or wants a form's uuid before list_routing_form_submissions.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /routing_forms.

Arguments:

ArgumentTypeRequiredNotes
countintegernoResults per page, default 20.
organizationstringyesFull Calendly organization uri to list routing forms for.
page_tokenstringnoToken from a previous page's pagination.next_page_token.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
collectionarray of object
collection[].namestring
collection[].statusstring
collection[].uristring
paginationobject
pagination.next_page_tokenstring

Also retrieved by: "what intake forms do we have set up", "show me our booking questionnaires", "what routing forms exist for qualifying leads".

calendly.get_routing_form

Get one Calendly routing form's structure by uuid: its questions and routing status. Use after list_routing_forms or when the user asks what a specific intake form actually asks, or wants its uri before list_routing_form_submissions.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /routing_forms/{{params.routing_form_uuid}}.

Arguments:

ArgumentTypeRequiredNotes
routing_form_uuidstringyesRouting form uuid from list_routing_forms.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.namestring
resource.questionsarray of object
resource.questions[].labelstring
resource.questions[].requiredboolean
resource.questions[].typestring
resource.questions[].uristring
resource.statusstring
resource.uristring

Also retrieved by: "what questions does that intake form ask", "pull up the structure of our qualifying questionnaire", "show me exactly what that intake questionnaire is made of".

calendly.list_routing_form_submissions

List the responses people have submitted to a Calendly routing form, with each submission's answers and where it routed the visitor. Use when the user asks what came in through an intake form, or wants a specific submission's answers.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /routing_form_submissions.

Arguments:

ArgumentTypeRequiredNotes
countintegernoResults per page, default 20.
formstringyesFull Calendly routing form uri from get_routing_form.
page_tokenstringnoToken from a previous page's pagination.next_page_token.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
collectionarray of object
collection[].questions_and_answersarray of object
collection[].questions_and_answers[].answerstring
collection[].questions_and_answers[].questionstring
collection[].resultobject
collection[].result.typestring
collection[].result.valuestring
collection[].submitted_atstring
collection[].uristring
paginationobject
pagination.next_page_tokenstring

Also retrieved by: "what came in through our intake form", "show me the responses to that routing form", "who filled out the qualifying questionnaire".

calendly.get_routing_form_submission

Get one Calendly routing form submission's full answers and outcome by uuid. Use after list_routing_form_submissions or when the user already has a specific submission's uuid and wants its answers or where it routed the visitor.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /routing_form_submissions/{{params.submission_uuid}}.

Arguments:

ArgumentTypeRequiredNotes
submission_uuidstringyesRouting form submission uuid from list_routing_form_submissions.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
resourceobject
resource.questions_and_answersarray of object
resource.questions_and_answers[].answerstring
resource.questions_and_answers[].questionstring
resource.resultobject
resource.result.typestring
resource.result.valuestring
resource.submitted_atstring
resource.uristring

Also retrieved by: "what did that person answer on the intake form", "pull up one specific form submission", "where did that particular response end up getting routed".

calendly.delete_invitee_data

Permanently erase every Calendly invitee record tied to one or more email addresses, across every past and future booking. Use only for a GDPR-style right-to-be-forgotten data deletion request, never to simply cancel someone's meeting; for that use cancel_scheduled_event. Unrecoverable and irreversible.

Class destructive (held by the mutation gate until the call's own arguments carry "confirm": true). No scopes beyond the connection's defaults. Calls POST /data_compliance/deletion/invitees.

Arguments:

ArgumentTypeRequiredNotes
emailsarray of stringyesEmail addresses whose invitee data to erase permanently.

Also retrieved by: "permanently wipe someone's calendly data for a privacy request", "erase all booking records tied to that email for good", "handle a right-to-be-forgotten request for calendly".