The Booking API is available now for public scheduling workflows.
What this guide covers
- How to authenticate and call booking endpoints safely.
- How to list services, read availability, and complete booking flow.
- When to use Booking API directly vs MCP integration.
Booking API vs MCP
- Use Booking API when you build your own backend/client integration and want direct HTTP control.
- Use MCP when your client is MCP-native and should call tools like list_services and get_availability.
- Both paths are designed around the same booking logic and conflict checks.
If you want a ready-to-embed conversational flow for customer booking, review Booking Chat Agent.
Authentication
- Create API credentials in Settings → API Clients.
- Request a token from /oauth/token using client credentials.
- Call Booking API with Authorization: Bearer <token>.
Scopes used by booking workflows: org:read, availability:read, appointments:write.
Endpoint map
GET /api/v1/services- List services for your organization.GET /api/v1/availability- Read available slots by service and date.POST /api/v1/appointments/hold- Create a temporary hold before confirmation.POST /api/v1/appointments/confirm- Confirm a hold and create the appointment.POST /api/v1/appointments/reschedule- Reschedule an existing appointment by appointment_id.POST /api/v1/appointments/cancel- Cancel an existing appointment by appointment_id.
Recommended sequence
- List services and let user pick one.
- Fetch availability for chosen service.
- Create hold for selected slot.
- Confirm booking with contact details.
- If needed, reschedule or cancel later using appointment_id from your integration state.
Reliability notes
- Use idempotency for create/confirm calls to avoid duplicates on retries.
- Treat holds as temporary and confirm quickly.
- Handle 401/403/404 and conflict responses explicitly in client UX.
Scope note
Current public APIs focus on booking operations. Management APIs are planned for a later phase.