> This page is for Agent Handler.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.merge.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.merge.dev/_mcp/server.

# Calendly

**Authentication:** OAuth or personal access token. See [Magic Link](/merge-agent-handler/features/magic-link) for the runtime auth flow, or [Application credentials](/merge-agent-handler/admin-setup/add-oauth-credentials) to bring your own OAuth app.

## Sample use cases

* List every booking on my calendar for this week, grouped by event type.
* Find no-shows from last month and tag them in our CRM.
* Pull the conversion rate for the `Discovery Call` event type over the last 30 days.

## Available Tools

#### get\_event\_type\_available\_times

Get available time slots for an event type within a date range. Returns bookable times with availability status. Requires event type URI, start/end times.

#### delete\_invitee\_data

Permanently delete all invitee data by email for GDPR compliance. Irreversible. Requires Enterprise plan. Requires invitee email address.

#### delete\_scheduled\_event\_data

Permanently delete scheduled event data by UUID for GDPR compliance. Irreversible. Requires Enterprise plan. Requires event UUID.

#### list\_event\_type\_availability\_schedules

List availability schedules for event type showing user and schedule URIs. Returns all schedules linked to event type. Requires event type UUID.

#### update\_event\_type\_availability\_schedule

Update event type availability schedule by UUID. Change which availability schedule is used. Requires schedule UUID and new availability schedule URI.

#### create\_event\_type

Create one-on-one event type with name, duration, description, locations, color, and URL slug. Returns created event type with URI and settings.

#### create\_one\_off\_event\_type

Create single-use event type with specific dates/range. Requires name, host URI, duration. Optional: timezone, dates, location. Returns event type URI.

#### update\_event\_type

Update event type by UUID. Can modify name, duration, description, locations, color, position, URL slug. Returns updated event type.

#### list\_event\_types

List event types for a user with pagination. Returns name, duration, URL, booking method, and kind. Requires user URI, supports filters.

#### get\_event\_type

Get event type details by UUID including name, duration, URL, kind, booking method, custom questions, and settings. Requires UUID.

#### list\_group\_relationships

List group relationships in organization showing user-group associations. Supports filters by user or group. Requires organization UUID. Returns relationships with pagination.

#### list\_event\_invitees

List invitees for an event with filters (email, status). Returns name, email, timezone, custom answers, UTM data, cancel/reschedule URLs. Requires event UUID.

#### get\_invitee

Get invitee details by UUID including name, email, status, timezone, custom answers, UTM data, cancel/reschedule URLs. Requires event and invitee UUIDs.

#### mark\_invitee\_no\_show

Mark invitee as no-show for meeting they didn't attend. Updates invitee status. Requires invitee UUID. Returns updated invitee with no-show status.

#### invite\_user\_to\_organization

Send email invitation for user to join organization. Requires email and organization UUID. Returns invitation details with status.

#### list\_organization\_invitations

List organization invitations with filters (email, status). Returns invitee email, status, timestamps. Supports pagination. Requires org UUID.

#### get\_organization\_invitation

Get invitation details by UUID including email, status, timestamps, and organization. Requires invitation UUID.

#### revoke\_organization\_invitation

Cancel pending invitation by UUID. Prevents user from joining organization. Immediate and irreversible. Requires invitation UUID.

#### list\_organization\_memberships

List organization members with roles (owner/admin/user). Supports email filter and pagination. Requires organization UUID.

#### get\_organization\_membership

Get membership details by UUID including user info, role (owner/admin/user), and timestamps. Requires membership UUID.

#### delete\_organization\_membership

Remove user from organization by membership UUID. Immediate and irreversible. Requires owner/admin permissions. Cannot remove last owner.

#### list\_routing\_forms

List routing forms for an organization. Returns form name, status, published state, questions, and routing logic. Supports pagination. Requires org URI.

#### get\_routing\_form

Get routing form by UUID including name, status, questions, answer options, routing logic, and branching rules. Requires form UUID.

#### list\_routing\_form\_submissions

List submissions for a routing form. Returns submitter info, answers, routing result, and timestamps. Supports pagination. Requires form URI.

#### get\_routing\_form\_submission

Get submission by UUID including submitter info, question responses, routing result, and timestamps. Requires submission UUID.

#### list\_scheduled\_events

List scheduled events with filters (user, org, email, status, time range). Returns event details, times, location, hosts, invitees. Supports pagination.

#### get\_scheduled\_event

Get scheduled event by UUID including name, times, status, location, hosts, invitees, and cancellation details. Requires event UUID.

#### cancel\_scheduled\_event

Cancel a scheduled event by UUID and notify invitees. Requires event UUID, optional cancellation reason. Immediate and irreversible.

#### create\_event\_invitee

Book meeting programmatically for invitee. Requires event UUID, email, name. Optional: timezone, custom answers, guests, UTM params. Returns invitee details.

#### create\_scheduling\_link

Create single-use scheduling link for an event type. Link expires after one booking or 90 days. Requires event type URI. Returns booking URL.

#### list\_user\_availability\_schedules

List user's availability schedules including name, timezone, rules, and default status. Returns all schedules for user. Requires user UUID.

#### get\_user\_availability\_schedule

Get availability schedule by UUID including name, timezone, rules, intervals, and default status. Requires schedule UUID.

#### get\_user\_busy\_times

Get user's busy times within date range showing start/end times. Max 7-day range. Requires user URI, start/end times in ISO 8601 format.

#### get\_current\_user

Get authenticated user's profile including name, email, timezone, scheduling URL, and organization. No parameters required.

#### get\_user

Get user profile by UUID including name, email, scheduling URL, timezone, and organization. Requires user UUID.