Skip to main content
POST
Creates a booking for an event type. Bookings go through the same flow as the public Lunacal booking page, so every event type variant — including packages and subscriptions — is handled correctly.
Call Get availability first and pick a returned slot for start and end.

Body

integer
required
ID of the event type to book.
string
required
Slot start time in ISO 8601.
string
required
Slot end time in ISO 8601.
string
required
Attendee’s IANA time zone, e.g. America/New_York.
object
required
Answers to the event type’s booking form. Field names depend on the event type’s booking fields.
string
Language for notifications, e.g. en.
object
Custom key-value data stored with the booking.
Whether the booking is made through a private (hashed) link.
The private link hash, if hasHashedBookingLink is true.
string
UID of an existing booking to reschedule. When set, that booking is moved to the new slot instead of a new booking being created.
string
Reason for rescheduling. Use with rescheduleUid.

Response

Returns the created or rescheduled booking. It has the same shape as items in List bookings, plus full attendee, reference, and conferencing details.

Rescheduling

To move an existing booking, send rescheduleUid and rescheduleReason with the new start and end. The original booking is cancelled and a new one is created at the new time.