Calendly API - Scheduling & Booking Automation avatar
Calendly API - Scheduling & Booking Automation

Pricing

from $0.01 / 1,000 results

Go to Apify Store
Calendly API - Scheduling & Booking Automation

Calendly API - Scheduling & Booking Automation

Automate your Calendly scheduling with the official API. List event types, manage scheduled events, check availability, sync invitee data, and create webhook subscriptions. Perfect for CRM integration, appointment automation, and availability management.

Pricing

from $0.01 / 1,000 results

Rating

0.0

(0)

Developer

John Rippy

John Rippy

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 days ago

Last modified

Share

API Integration

This actor connects to an external API service. You'll need valid API credentials from the service provider.


API Integration

This actor connects to an external API service. You'll need valid API credentials from the service provider.


Automate Calendly scheduling workflows. List event types, manage scheduled events, check availability, get user info, and sync booking data. Perfect for CRM integration, appointment automation, and availability management.

Features

User & Organization

  • Get Current User - Retrieve authenticated user info
  • List Organization Memberships - Get org members and roles
  • Get Organization Membership - Retrieve specific membership

Event Types

  • List Event Types - Get all your event types (meetings, calls, etc.)
  • Get Event Type - Retrieve specific event type details

Scheduled Events

  • List Scheduled Events - Query upcoming/past bookings
  • Get Scheduled Event - Retrieve event details
  • Cancel Scheduled Event - Cancel with optional reason

Invitees

  • List Event Invitees - Get invitees for a scheduled event
  • Get Invitee - Retrieve invitee details

Availability

  • List Available Times - Get open slots for an event type
  • List Busy Times - Get user's busy periods

Routing Forms

  • List Routing Forms - Get routing forms for qualification
  • Get Routing Form - Retrieve form details
  • List Routing Form Submissions - Get form responses

Webhooks

  • List Webhooks - Get webhook subscriptions
  • Create Webhook - Subscribe to events (invitee.created, etc.)
  • Delete Webhook - Remove subscription

Quick Start

{
"input": "your input here"
}

Demo Mode

Set demoMode: true to test with sample data (no charges). When you're ready for real results, set demoMode: false or omit it.

{
"demoMode": true,
...
}

Input Parameters

ParameterTypeRequiredDescription
taskstringYesOperation to perform
accessTokenstringYes*Personal access token (*not needed for demoMode)
userUristringNoUser URI for filtering
organizationUristringNoOrganization URI
eventTypeUristringNoEvent type URI
scheduledEventUristringNoScheduled event URI
inviteeUristringNoInvitee URI
startTimestringNoStart time (ISO 8601)
endTimestringNoEnd time (ISO 8601)
statusstringNoEvent status (active/canceled)
cancelReasonstringNoReason for cancellation
webhookCallbackUrlstringNoURL for webhook delivery
webhookEventsarrayNoEvents to subscribe to
maxResultsintegerNoMax results (default: 100)
resultWebhookUrlstringNoURL to send results
demoModebooleanNoRun with sample data (default: true)

Output Format

Results are saved to the default dataset:

User Info

{
"task": "get_current_user",
"success": true,
"user": {
"uri": "https://api.calendly.com/users/XXXXXXXX",
"name": "John Smith",
"email": "john@company.com",
"scheduling_url": "https://calendly.com/johnsmith",
"timezone": "America/New_York",
"current_organization": "https://api.calendly.com/organizations/XXXXXXXX"
}
}

Event Types

{
"task": "list_event_types",
"success": true,
"eventTypes": [
{
"uri": "https://api.calendly.com/event_types/XXXXXXXX",
"name": "30 Minute Meeting",
"active": true,
"duration": 30,
"kind": "solo",
"scheduling_url": "https://calendly.com/johnsmith/30min"
}
],
"total": 5
}

Scheduled Events

{
"task": "list_scheduled_events",
"success": true,
"scheduledEvents": [
{
"uri": "https://api.calendly.com/scheduled_events/XXXXXXXX",
"name": "30 Minute Meeting",
"status": "active",
"start_time": "2025-01-15T10:00:00Z",
"end_time": "2025-01-15T10:30:00Z",
"location": {
"type": "zoom",
"join_url": "https://zoom.us/j/123456789"
}
}
],
"total": 12
}

Pricing

This actor uses pay-per-event billing: Pay-per-result pricing:

OperationCost
Get user info$0.01
List event types$0.02
Get event type$0.01
List scheduled events$0.02
Get scheduled event$0.01
Cancel event$0.02
List invitees$0.02
List available times$0.02
List busy times$0.01
List org memberships$0.01
Routing form operations$0.02
Webhook operations$0.02

Use Cases

CRM Integration

  • Sync new bookings to Salesforce/HubSpot
  • Update deal stages when meetings are scheduled
  • Track meeting outcomes

Sales Automation

  • Notify sales reps of new bookings
  • Auto-qualify leads from routing forms
  • Track booking conversion rates

Customer Success

  • Monitor client meeting frequency
  • Alert on cancellations
  • Track onboarding calls

Operations

  • Sync availability with other calendars
  • Monitor team utilization
  • Generate scheduling reports

Common Problems & Solutions

"Invalid API key" error

Cause: Your API key is wrong, expired, or doesn't have the right permissions. Fix: Double-check your API key. Make sure you copied it exactly without extra spaces.

"Rate limit exceeded" error

Cause: You've hit the API's rate limits. Fix: Wait a few minutes, then try again. Consider reducing the number of concurrent requests.

Empty or incomplete results

Cause: The target may have anti-scraping protection or the data doesn't exist. Fix:

  • Check if the URL/search query is correct
  • Try with different parameters
  • Some sites may block automated access

Demo data showing instead of real results

Cause: demoMode is still set to true. Fix: Set demoMode: false and provide your API key(s).


Built by John Rippy | Actor Arsenal