Overview
Add Calendly to any ModuleX agent or workflow. Scheduling-platform integration for Calendly: events, invitees, event types, scheduling links, availability, organization members, groups, and webhook subscriptions. All against api.calendly.com.
Categories : Scheduling & Events · Productivity · Calendar · Productivity · Meetings · Auth : OAuth 2.0, Personal Access Token · Actions : 11
Authentication
OAuth 2.0
Personal Access Token
OAuth 2.0 Authentication Authenticate using Calendly OAuth 2.0 flow Required Credentials Field Description Required Format Client ID Calendly App Client ID Yes -Client Secret Calendly App Client Secret Yes -
OAuth Configuration
Authorization URL : https://auth.calendly.com/oauth/authorize
Token URL : https://auth.calendly.com/oauth/token
Scopes : default
Personal Access Token Authenticate using a Calendly Personal Access Token Required Credentials Field Description Required Format Calendly Personal Access Token Your Calendly Personal Access Token Yes -
Available Actions
get_current_user — Get information about the currently authenticated Calendly user including name, email, and organization
list_events — List scheduled events for a user or organization with filtering options
Parameters User URI to filter events. Defaults to the authenticated user.
Organization URI to filter events
Filter by event status (‘active’ or ‘canceled’)
Minimum start time (ISO 8601)
Maximum start time (ISO 8601)
Number of results to return (max 100) (Default: 20)
Sort order (‘start_time:asc’ or ‘start_time:desc’)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"count" : {
"default" : 0 ,
"title" : "Count" ,
"type" : "integer"
},
"next_page_token" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Next Page Token"
},
"next_page" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Next Page"
},
"events" : {
"items" : {
"additionalProperties" : true ,
"type" : "object"
},
"title" : "Events" ,
"type" : "array"
}
},
"required" : [
"success"
],
"title" : "ListEventsOutput" ,
"type" : "object"
}
get_event — Get detailed information about a specific scheduled event
list_event_invitees — List all invitees for a specific scheduled event
Parameters Filter by invitee status (‘active’ or ‘canceled’)
Number of results to return (max 100) (Default: 20)
Sort order (‘created_at:asc’ or ‘created_at:desc’)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"count" : {
"default" : 0 ,
"title" : "Count" ,
"type" : "integer"
},
"next_page_token" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Next Page Token"
},
"next_page" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Next Page"
},
"invitees" : {
"items" : {
"additionalProperties" : true ,
"type" : "object"
},
"title" : "Invitees" ,
"type" : "array"
}
},
"required" : [
"success"
],
"title" : "ListEventInviteesOutput" ,
"type" : "object"
}
list_event_types — List all event types for a user or organization
Parameters User URI to filter event types
Organization URI to filter event types
Number of results to return (max 100) (Default: 20)
Sort order (‘name:asc’ or ‘name:desc’)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"count" : {
"default" : 0 ,
"title" : "Count" ,
"type" : "integer"
},
"next_page_token" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Next Page Token"
},
"next_page" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Next Page"
},
"event_types" : {
"items" : {
"additionalProperties" : true ,
"type" : "object"
},
"title" : "Event Types" ,
"type" : "array"
}
},
"required" : [
"success"
],
"title" : "ListEventTypesOutput" ,
"type" : "object"
}
create_scheduling_link — Create a single-use scheduling link for an event type
Parameters URI or UUID of the event type
Maximum events that can be scheduled with this link (Default: 1)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"booking_url" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Booking Url"
},
"owner" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Owner"
},
"owner_type" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Owner Type"
}
},
"required" : [
"success"
],
"title" : "CreateSchedulingLinkOutput" ,
"type" : "object"
}
create_invitee_no_show — Mark an invitee as a no-show for a scheduled event
Parameters URI of the invitee to mark as no-show
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"resource" : {
"anyOf" : [
{
"additionalProperties" : true ,
"type" : "object"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Resource"
}
},
"required" : [
"success"
],
"title" : "CreateInviteeNoShowOutput" ,
"type" : "object"
}
list_user_availability_schedules — List availability schedules for a specific user
Parameters Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"schedules" : {
"items" : {
"additionalProperties" : true ,
"type" : "object"
},
"title" : "Schedules" ,
"type" : "array"
},
"count" : {
"default" : 0 ,
"title" : "Count" ,
"type" : "integer"
}
},
"required" : [
"success"
],
"title" : "ListUserAvailabilitySchedulesOutput" ,
"type" : "object"
}
list_organization_members — List members of an organization
Parameters Organization URI. Defaults to the authenticated user’s organization.
Number of results to return (max 100) (Default: 20)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"count" : {
"default" : 0 ,
"title" : "Count" ,
"type" : "integer"
},
"next_page_token" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Next Page Token"
},
"next_page" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Next Page"
},
"members" : {
"items" : {
"additionalProperties" : true ,
"type" : "object"
},
"title" : "Members" ,
"type" : "array"
}
},
"required" : [
"success"
],
"title" : "ListOrganizationMembersOutput" ,
"type" : "object"
}
list_groups — List groups within an organization
Parameters Organization URI to list groups for
Number of results to return (max 100) (Default: 20)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"count" : {
"default" : 0 ,
"title" : "Count" ,
"type" : "integer"
},
"next_page_token" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Next Page Token"
},
"next_page" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Next Page"
},
"groups" : {
"items" : {
"additionalProperties" : true ,
"type" : "object"
},
"title" : "Groups" ,
"type" : "array"
}
},
"required" : [
"success"
],
"title" : "ListGroupsOutput" ,
"type" : "object"
}
list_webhook_subscriptions — List webhook subscriptions for an organization or user
Parameters Scope (‘organization’ or ‘user’)
User URI (required if scope is ‘user’)
Number of results to return (max 100) (Default: 20)
Sort order (‘created_at:asc’ or ‘created_at:desc’)
Response {
"additionalProperties" : false ,
"properties" : {
"success" : {
"title" : "Success" ,
"type" : "boolean"
},
"error" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Error"
},
"count" : {
"default" : 0 ,
"title" : "Count" ,
"type" : "integer"
},
"next_page_token" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Next Page Token"
},
"next_page" : {
"anyOf" : [
{
"type" : "string"
},
{
"type" : "null"
}
],
"default" : null ,
"title" : "Next Page"
},
"webhooks" : {
"items" : {
"additionalProperties" : true ,
"type" : "object"
},
"title" : "Webhooks" ,
"type" : "array"
}
},
"required" : [
"success"
],
"title" : "ListWebhookSubscriptionsOutput" ,
"type" : "object"
}
Limits & Quotas
Auto-resolves missing user / organization filters via a side
call to /users/me (same as legacy). This costs one extra request
per call but matches Calendly’s expected pattern when the operator
doesn’t pass a filter explicitly.
Count parameters are clamped to 100 (Calendly’s max page size).
owner / user parameters accept either a bare UUID or a full
Calendly URI; bare UUIDs are promoted to the canonical
https://api.calendly.com/<resource>/<uuid> form.
Failures (non-2xx, exceptions) surface as success=False + error.
Links