Skip to main content
A booking is an order whose lines reserve a labour for set booking times. These endpoints create, preview, change and delete bookings, update their information, lines and billing preferences, and read their invoices, payments, fulfillments, KPIs, custom objects and PDFs. This area has 33 endpoints, each available in all seven SDKs.
Deleting a booking deletes whatever order has that id, of any type. Check the id before you call it. The delete returns no body, and a later read of the id returns 404.

At a glance

Before you call

Register your API credentials once when your app starts, as shown in Authentication. Every SDK sample on these pages then gets its client in one line. With cURL, send the access token in an Authorization header: Authorization: Bearer $ACCESS_TOKEN.

Things to know

  • Reads, updates and delete under /booking/{booking_id} work on any order. They do not check the order’s type. Change a booking and Preview a booking change accept only a booking-type order.
  • Each line of a new booking needs a labour and its booking times. The rest of the body is the order body, under order: account_id, name and lines.
  • Most request bodies go under order; the change bodies go under booking. The line billing update takes order.line.item_properties, not billing_preferences.
  • Updates return the whole booking under order. Some single reads use their own keys: order_line, custom_object, item_fulfillment, order_kpis and payment; the rest return under order.
  • Listings page by cursor. Records are under data; pass limit and the previous page’s pagination.next_cursor as cursor, and stop when has_more is false.
  • There is no per-booking notes listing. List booking notes returns the notes of every order, and /booking/{booking_id}/notes is refused.