Skip to main content
POST
Create a booking event type

Authorizations

Authorization
string
header
required

API key (fam_..., created under Settings → API Keys) or an OAuth 2.0 access token (fam_at_...). REST operations also require API Access for the credential's workspace. Keys can be restricted to scopes such as assistants:read, calls:write, campaigns:write, automations:read, dashboards:read, dashboards:write, leads:write, segments:write, loop:read, loop:write, phone_numbers:write, sip_trunks:write, knowledge:write, voices:read, billing:read, billing:write, settings:write, platform:read, platform:write; a *:write scope implies the matching *:read. Automation and dashboard endpoints also accept the legacy calls:* scope. Keys without scope restrictions have full access within the workspace's available capabilities.

Body

application/json
name
string
required
Maximum string length: 128
slug
string
required
Pattern: ^[a-z0-9-]{3,64}$
duration_min
integer
required
Required range: 5 <= x <= 480
timezone
string
required
Example:

"Europe/Berlin"

availability
object
required
Example:
description
string
Maximum string length: 2000
buffer_before_min
integer
default:0
buffer_after_min
integer
default:0
min_notice_min
integer
default:60
max_days_ahead
integer
default:30
slot_increment_min
integer | null
reminder_hours
integer | null
is_active
boolean
default:true
booking_fields
object[]

Custom booking questions, in display order. Name is always required; email_required and phone_required control the system contact fields.

Maximum array length: 30
phone_required
boolean
default:false

Require the visitor's phone number (E.164) to book. When false (default), phone is still asked but optional.

email_required
boolean
default:true

Whether an invitee email is required. Google Meet and Microsoft Teams always require a valid email.

sender_email_address_id
string<uuid> | null

Active verified email address belonging to this workspace. Null uses automatic workspace or inherited reseller SMTP, then the platform identity for eligible workspaces.

confirmation_email_subject
string | null

Custom initial confirmation subject; empty uses the standard subject. Supports the same booking variables as the message.

Maximum string length: 200
confirmation_email_body
string | null

Custom plain-text confirmation. Supported variables are returned by GET /booking-email-templates. Blank/null restores the localized standard message.

Maximum string length: 10000
email_templates
object | null

Complete replacement of the six additional guest/host email templates. Omit to preserve saved values; null or {} restores all six defaults. Confirmation uses the existing confirmation subject/body fields. GET /booking-email-templates returns standard templates and supported variables.

email_locale
enum<string> | null

Language of the standard booking email texts (guest and host) for this event type. null (default) uses each recipient's language. Custom subject/body text is sent as written.

Available options:
en,
de,
fr,
es,
null
guest_emails_enabled
boolean
default:true

Send emails to the invitee. false = no confirmation, cancellation, reschedule or reminder emails to guests and no invitations from the connected calendar (the guest is not added as an attendee); host notifications still send.

hour_cycle
enum<string>
default:24h

Time format for the weekly availability editor and host emails. Availability values remain HH:mm. Guest emails follow the guest's saved booking-page preference, falling back to this format for older bookings.

Available options:
12h,
24h

Response

The created event type.

data
object
required

An event type of the native booking engine. Each active event type has a public, embeddable booking page at /book/{workspace}/{slug}.