Skip to main content
The meetergo Platform API lets you integrate scheduling directly into your application. Create users, manage availability, handle bookings, and connect calendars—all programmatically.

Base URL

All API requests should be made to:
https://api.meetergo.com/v4

Interactive Documentation

Explore the full API with our interactive Swagger UI:

API Specification

Browse endpoints, see schemas, and test API calls

API Access Levels

meetergo offers two types of API access:

Personal Access Token

Growth plan and aboveAccess your own user data for personal automations like Zapier, CRM syncs, or Google Sheets integrations.Get your token →

Platform API Key

Enterprise / API PlatformFull access for building multi-tenant applications, creating users programmatically, and white-label integrations.Contact sales →
See Authentication for detailed comparison and permissions.

Core API Resources

ResourceDescription
UserThe root resource for a schedulable person. All other resources are associated with a User.
Meeting TypeA template defining the rules for a meeting, such as its title and duration. When a time slot is booked, it’s booked against a specific Meeting Type.
AvailabilityDefines a user’s schedule. Composed of a recurring weekly template with date-based exceptions (holidays, custom hours). The meetergo engine uses this to calculate bookable time slots.
BookingRepresents a meeting scheduled on a user’s calendar. Links a Meeting Type to a specific time slot with attendee information.

Authentication

The API uses API keys for authentication. Include your key in the Authorization header:
Authorization: Bearer ak_live:<uuid>:<secret>
Most endpoints also require the x-meetergo-api-user-id header:
x-meetergo-api-user-id: <user-uuid>
API keys are shown only once when created. Store them securely—you cannot retrieve them later.
See Authentication for complete details.

Quick Example

Create a fully functional platform user in a single API call:
curl -X POST "https://api.meetergo.com/v4/user" \
  -H "Authorization: Bearer ak_live:uuid:secret" \
  -H "Content-Type: application/json" \
  -d '{
    "email": "[email protected]",
    "givenName": "John",
    "familyName": "Smith",
    "timezone": "Europe/London"
  }'
Response:
{
  "userId": "550e8400-e29b-41d4-a716-446655440000",
  "availabilityId": "660e8400-e29b-41d4-a716-446655440001",
  "meetingTypeId": "770e8400-e29b-41d4-a716-446655440002",
  "bookingUrl": "https://cal.meetergo.com/john-smith/30min-meeting",
  "companyId": "880e8400-e29b-41d4-a716-446655440003"
}
The user is immediately ready for bookings! The bookingUrl can be shared with customers right away.

Rate Limits

Limit TypeValue
Standard rate100 requests/minute per API key
Burst allowanceUp to 200 requests
When rate limited, you’ll receive 429 Too Many Requests. Implement exponential backoff for retries.

Error Handling

CodeMeaning
200Success
201Created
400Bad Request - Invalid input
401Unauthorized - Invalid API key
403Forbidden - Insufficient permissions
404Not Found
429Rate Limited
500Server Error

Error Response Format

{
  "statusCode": 400,
  "message": "Validation failed",
  "errors": [
    {
      "field": "email",
      "message": "Invalid email format"
    }
  ]
}

Support