Schedule meetings without the hassle. Never get double booked. Calendly works with your calendar to automate appointment scheduling.
12 actions Leo can use in the apps and agents it builds for you: 9 that read Calendly data, 3 that create or update it.
Get a list of Webhook Subscriptions for an Organization or User via GET /webhook_subscriptions. Requires organizationUri when scope is organization, or userUri when scope is user. Run List Organization Memberships first to obtain an organization or user URI. Example: call with scope set to organization and organizationUri set to https://api.calendly.com/organizations/AAAAAAAAAAAAAAAA to return that organization's webhook subscriptions.
List the availability schedules of the given user via GET /user_availability_schedules. Run List Organization Memberships first to obtain a user URI. Example: call with user set to https://api.calendly.com/users/AAAAAAAAAAAAAAAA to return that user's named availability schedules (e.g. Working Hours) with their weekly rules.
List the members of a Calendly organization via GET /organization_memberships, returning each membership's user URI, role, and email. Use this as the companion lookup action for user and organization URIs consumed by other tools. Supports optional role and email filters plus pagination. Example: called with no props, returns the authenticated user's memberships such as { user: { name: "Jane Doe", uri: "https://api.calendly.com/users/AAAAAAAAAAAAAAAA" }, organization: "https://api.calendly.com/organizations/BBBBBBBBBBBBBBBB", role: "owner" } — pass those URIs as the user/organization props in other actions.
List the groups within a Calendly organization via GET /groups (requires organization admin/owner privilege). Use this to discover valid Group UUIDs for scoping List Events to a specific group. Run List Organization Memberships first to obtain an organization URI. Example: call with organization set to https://api.calendly.com/organizations/AAAAAAAAAAAAAAAA to get groups such as { name: "Sales Team", uri: "https://api.calendly.com/groups/BBBBBBBBBBBBBBBB" }; pass the trailing BBBBBBBBBBBBBBBB segment as the Group UUID to List Events.
List scheduled Calendly events. Scope the results by providing at most one of Organization URI, User URI, or Group UUID; if none is provided, events for the authenticated user are returned (supplying more than one raises a configuration error). Narrow the results further with an invitee email to return only events scheduled with that invitee. Filter by date range using Min Start Time and/or Max Start Time, both ISO 8601 datetimes in UTC (e.g. 2026-08-01T00:00:00Z). Each returned event includes a uri; the trailing UUID segment is the event UUID used by downstream actions such as Get Event, List Event Invitees, Get Event Invitee, and Cancel Event. Example: called with no props, returns the authenticated user's upcoming events, each like { name: "30 Minute Meeting", uri: "https://api.calendly.com/scheduled_events/a1b2c3d4-e5f6-7890-abcd-ef1234567890", status: "active" }.
Retrieve the event types available to a user or organization via GET /event_types. Use this to discover valid event type URIs and UUIDs for scheduling flows. Provide either an Organization URI or a User URI; if neither is provided the authenticated user is used. Use List Organization Memberships to find user and organization URIs. Example: called with no props, returns the authenticated user's event types such as { name: "30 Minute Meeting", uuid: "AAAAAAAAAAAAAAAA" } — pass that uuid as the owner prop in Create a Scheduling Link.
List the invitees for a scheduled event via GET /scheduled_events/{uuid}/invitees. Run List Events first to obtain the event UUID. Example: call with eventId set to a1b2c3d4-e5f6-7890-abcd-ef1234567890 and status set to active to return only that event's non-canceled invitees, each with a uri whose trailing segment is the invitee UUID used by Get Event Invitee and Create Invitee No Show.
Retrieve the full invitee resource (including email, name, status, reschedule_url, and no_show) via GET /scheduled_events/{event_uuid}/invitees/{invitee_uuid}. Use the returned reschedule_url to direct an invitee to self-reschedule. Run List Events to find event UUIDs, then List Event Invitees to find invitee UUIDs. Example: with eventUuid set to a1b2c3d4-e5f6-7890-abcd-ef1234567890 and inviteeUuid set to f7e6d5c4-b3a2-1098-fedc-ba9876543210, returns that invitee's email, name, and status: "active".
Gets information about a scheduled event via GET /scheduled_events/{uuid}. Provide either the Event UUID (from List Events) or the full Event URL. Example: with eventId set to a1b2c3d4-e5f6-7890-abcd-ef1234567890, returns the event's name, start/end times, status, and location.
Creates a single-use scheduling link for an event type via POST /scheduling_links. Run List Event Types first to obtain the event type UUID. Example: with owner set to https://api.calendly.com/event_types/AAAAAAAAAAAAAAAA's UUID and maxEventCount set to 1, returns a booking URL like https://calendly.com/d/ABC-123/30-minute-meeting that can be scheduled once before expiring.
Marks an invitee as a no-show via POST /invitee_no_shows. Use when an invitee didn't attend a scheduled event and you want to flag it in Calendly. Run List Events first to obtain the event UUID, then select the invitee from the dropdown (populated from List Event Invitees). Example: with eventId set to a1b2c3d4-e5f6-7890-abcd-ef1234567890, selecting invitee "Jane Doe" marks her as a no-show for that event.
Cancel a scheduled Calendly event. Posts to POST /scheduled_events/{uuid}/cancellation. Run List Events first to obtain the event UUID. Example: with eventUuid set to a1b2c3d4-e5f6-7890-abcd-ef1234567890 and reason set to Schedule conflict - rescheduling needed, the event is canceled and all invitees are notified.
Leo connects Calendly to the ERP your business already runs on: the records it reads in Calendly land in your ERP, and what changes in the ERP flows back.
Authorize Calendly once, in a couple of clicks. Leo only gets the permissions you grant.
In plain language: the dashboard, portal or agent you want across Calendly and your ERP. No code, no mapping spreadsheets.
Leo builds it, you review, it goes live. Agents run on a schedule or on events, under the guardrails you set.