Create booking
Book the quoted slot
/v1/ bookingsHeaders
AuthorizationBearer tokenRequiredYour app key. Authentication
idempotency-keystringYour key for this booking attempt: 1-128 printable ASCII characters, no spaces (a UUID or your own order id). Repeating the exact same request with the same key returns the same booking.
Body
quoteIdstringRequiredShort-lived quote id from create_quote (prefix qte_). Copy it exactly. It expires; request a new quote if it does.
customerCustomerInputRequiredcustomer.namestring (up to 120 characters)RequiredFull name as the customer wants it on the booking.
customer.emailstring (up to 254 characters)RequiredEmail address (plain ASCII, e.g. sam@example.com).
customer.phonestringPhone number, digits with optional leading + and separators.
consentConsentInputRequiredconsent.humanConfirmedbooleanRequiredSet true ONLY after the human customer read what they are agreeing to (quote.summary to book; the new time and price to move a booking) and said yes. Never assume or invent consent.
consent.statementstring (up to 500 characters)RequiredThe customer's own reply agreeing (to the booking, or to the move), copied word for word. Required: it is kept as the consent record. Never write it yourself.
notesstring (up to 500 characters)Anything the customer wants the business to know. Optional.
partnerRefstring (up to 64 characters)Your own reference for this booking (conversation id, order id). It is echoed back on the booking and in webhooks.
Responses
- 201
A booking: its status, time, price, the customer's consent record and what to do next.
Booking - 404
No such id, or it is not visible to this key.
NotFound - 409
The price is no longer the one quoted: show the new one and get a fresh yes. | The way this is confirmed (instantly or by the business) is no longer the one quoted: show the new quote and get a fresh yes. | The slot was taken or can no longer be booked:
alternativeslists nearby openings. | This Idempotency-Key, or this quote, already produced a booking for a different request. - 410
The quote's hold has lapsed: create a new quote.
QuoteExpired - 422
The customer's explicit consent is missing: stop and ask the human.
ConsentRequired