Skip to main content
CalendarsVersion: v3

Create Calendar

POST/calendars

Create calendar in a location.

Authorizations

Authorizationstringheaderrequired

Bearer authentication header of the form Bearer <token>, where <token> is your access token.

Scope:calendars.write
Auth methods:OAuthPrivate Integration
Token type:Sub-Account Token

Request​

Headers

Versionstringrequired

API Version

Available optionsv3
Example:v3

Body

isActiveboolean

Should the created calendar be active or draft

Default:true
Example:true
notificationsobject[]deprecated

🚨 Deprecated! Please use 'Calendar Notifications APIs' instead.

locationIdstringrequired

Location ID

Example:ocQHyuzHvysMo5N5VsXc
groupIdstring

Group Id

Example:BqTwX8QFwXzpegMve9EQ
teamMembersobject[]

Team members are required for calendars of type: Round Robin, Collective, Class, Service. Personal calendar must have exactly one team member.

eventTypestring

Event type for round robin distribution

Available optionsRoundRobin_OptimizeForAvailabilityRoundRobin_OptimizeForEqualDistribution
Example:RoundRobin_OptimizeForAvailability
namestringrequired

Calendar name

Example:test calendar
descriptionstring

Calendar description

Example:this is used for testing
slugstring

Legacy calendar slug. The booking page does not read it: set widgetSlug to change the booking link.

Example:test1
widgetSlugstring

Booking link slug: the booking page URL ends with /widget/bookings/{widgetSlug}. Must be unique.

Example:test1
calendarTypestring

Calendar type

Available optionsround_robineventclass_bookingcollectiveservice_bookingpersonal
Example:round_robin
widgetTypestring

Calendar widget type. Choose "default" for "neo" and "classic" for "classic" layout.

Available optionsdefaultclassic
Example:classic
eventTitlestring

Title for calendar events

Default:{{contact.name}}
Example:{{contact.name}}
eventColorstring

Color for calendar events in hex format

Default:#039be5
Example:#039BE5
locationConfigurationsobject[]

Meeting location configuration for event calendar

slotDurationnumber

This controls the duration of the meeting

Possible values: >= 1

Default:30
Example:30
slotDurationUnitstring

Unit for slot duration.

Available optionsminshours
Example:mins
durationOptionsobject[]

Multiple duration options for the calendar. Bookers can select their preferred meeting length. Max 3 options. Exactly one must be marked as default.

slotIntervalnumber

Slot interval reflects the amount of time the between booking slots that will be shown in the calendar.

Possible values: >= 1

Default:30
Example:30
slotIntervalUnitstring

Unit for slot interval.

Available optionsminshours
Example:mins
slotBuffernumber

Buffer after each meeting: extra time blocked after an appointment, to wrap up. Unit: slotBufferUnit.

Example:15
slotBufferUnitstring

Unit for slot buffer.

Available optionsminshours
Example:mins
preBuffernumber

Buffer before each meeting: extra time blocked before an appointment, to get ready. Unit: preBufferUnit.

Example:10
preBufferUnitstring

Unit for pre-buffer.

Available optionsminshours
Example:mins
appoinmentPerSlotnumber

Maximum bookings per slot (per user). Maximum seats per slot in case of Class Booking Calendar.

Default:1
Example:1
appoinmentPerDaynumber

Daily booking limit (unset = no limit).

Example:8
allowBookingAfternumber

Minimum scheduling notice before a booking (unit: allowBookingAfterUnit). 0 = no minimum.

Example:4
allowBookingAfterUnitstring

Unit for minimum scheduling notice

Available optionshoursdaysweeksmonthsmins
Example:days
allowBookingFornumber

Booking window: how far ahead bookings are allowed (unit: allowBookingForUnit). 0 = no limit.

Example:30
allowBookingForUnitstring

Unit for controlling the duration for which booking would be allowed for

Available optionsdaysweeksmonths
Example:days
countAvailableDaysOnlyboolean

When true, only days with configured availability count toward the date range booking window

Default:false
Example:false
openHoursobject[]deprecated

While we will support this property for backward compatibility, it is recommended to use 'Availability' APIs instead.

enableRecurringboolean

Enable recurring appointments for the calendars. Please note that only one member should be added in the calendar to enable this

Default:false
Example:false
recurringobject

Recurring appointment configuration

formIdstring

Form ID to be used for booking

Example:YlWd2wuCAZQzh2cH1fVZ
stickyContactboolean

Enable sticky contact assignment

Example:true
isLivePaymentModeboolean

Whether payment mode is live

Example:false
autoConfirmboolean

Auto-confirm appointments

Default:true
Example:true
shouldSendAlertEmailsToAssignedMemberboolean

Send alert emails to assigned team member

Example:false
alertEmailstring

Alert email address

googleInvitationEmailsboolean

Send Google invitation emails

Default:false
Example:true
allowRescheduleboolean

Allow rescheduling of appointments

Default:true
Example:true
allowCancellationboolean

Allow cancellation of appointments

Default:true
Example:true
shouldAssignContactToTeamMemberboolean

Assign contact to team member on booking

Example:true
shouldSkipAssigningContactForExistingboolean

Skip assigning contact if contact already exists

Example:false
notesstring

Notes for the calendar

Example:Please arrive 10 minutes early.
pixelIdstring

Facebook Pixel ID for tracking

Example:1234567890
formSubmitTypestring

Action after form submission

Available optionsRedirectURLThankYouMessage
Example:ThankYouMessage
formSubmitRedirectURLstring

Redirect URL after form submission

Example:https://example.com/thank-you
formSubmitThanksMessagestring

Thank you message displayed after form submission

Example:Thank you for booking!
availabilityTypenumberdeprecated

While we will support this property for backward compatibility, it is not required anymore.

Available options01
Example:0
availabilitiesobject[]deprecated

While we will support this property for backward compatibility, it is recommended to use 'Availability' APIs instead.

guestTypestring

Type of guest allowed

Available optionscount_onlycollect_detail
Example:count_only
consentLabelstring

Consent label text

Example:I confirm that I want to receive content from this company using any contact information I provide.
calendarCoverImagestring

Calendar cover image URL

Example:https://path-to-image.com
lookBusyConfigobject

Look Busy Configuration

appointmentPerSlotnumber

Maximum bookings per slot (per user). Maximum seats per slot in case of Class Booking Calendar.

Default:1
Example:1
appointmentPerDaynumber

Daily booking limit: appointments that can be booked per day. Unset = no limit; 0 allows none.

Example:8

Response

Successful response

calendarobjectrequired

Calendar details