Bookings

This endpoint is used for managing bookings

Get bookings

get
/bookings

Returns an array of all bookings which the authenticated user is authorised to view. The response will be paginated.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
actual_guestsstringOptional

Filter by the number of actual_guests. You can filter by a range of actual guests, eg 1-10 for any bookings with an actual_guests between 1 and 10. You can also pass through more than one range, for example, 1-4,10-15 will bring back bookings between 1 to 4 and between 10 to 15.

Example: 1-10
assigned_areastring[]Optional

Filters on bookings that are assigned to the given area ID. If a comma-separated list is passed, bookings assigned to any of the given area IDs will be returned. Alternatively, to filter on whether bookings have an assigned area or not, use true or false.

Example: 5cab10d8f44d3861c8c3819d
assigned_tostring[]Optional

Filters on bookings that are assigned to the given user ID. If a comma-separated list is passed, bookings assigned to any of the given user IDs will be returned. To filter on bookings that are not assigned to a user, use none.

Example: 5cab111386510d011b597b3f
referenceintegerOptional

Filters on bookings that have the given booking reference ID.

Example: 12345
created_datestring · dateOptional

Filters on bookings that were created on the given date.

Example: 2019-01-01
created_date_fromstring · dateOptional

Filters on bookings that were created on or after the given date.

Example: 2019-01-01
created_date_tostring · dateOptional

Filters on bookings that were created on or before the given date

Example: 2019-03-01
current_stagestringOptional

Filters on bookings that have the given current_stage.

Example: Arrived
datestring · dateOptional

Filters on bookings that take place on the given date.

Example: 2019-01-01
date_fromstring · dateOptional

Filters on bookings that take place on or after the given date.

Example: 2019-01-01
date_tostring · dateOptional

Filters on bookings that take place on or before the given date.

Example: 2019-01-01
emailstringOptional

Filters on bookings that have the given email address.

Example: [email protected]
auto_confirmedbooleanOptional

Filters on bookings that were auto-confirmed.

walk_inbooleanOptional

Filters on bookings that were walk-ins.

follow_upstring · dateOptional

Filters on bookings that have a follow up of the given date.

Example: 2019-01-01
follow_up_fromstring · dateOptional

Filters on bookings that have a follow up email scheduled to be sent on or after the given date.

Example: 2019-01-01
follow_up_tostring · dateOptional

Filters on bookings that have a follow up email scheduled to be sent on or before the given date.

Example: 2019-03-01
has_preordersbooleanOptional

Filters on bookings that have preorders.

labelsstring[]Optional

Filters on bookings that have the given labels. If a comma-separated list is passed, bookings which have any of the given labels will be returned.

Example: ["Need to call"]
last_updatedstring · dateOptional

Filters on bookings which were last updated on the given date.

Example: 2019-01-01
last_updated_fromstring · dateOptional

Filters on bookings which were last updated on or after the given date.

Example: 2019-01-01
last_updated_tostring · dateOptional

Filters on bookings which were last updated on or before the given date.

Example: 2019-01-03
notificationsstring[]Optional

Filters on bookings which have the given notification. If a comma-separated list is passed, bookings which have all of the given notifications will be returned.

Example: ["new_messages"]
num_peoplestringOptional

Filters on bookings which have the given number of guests. You can optionally pass through a range, for example 6 TO 10 would filter on bookings containing between 6 and 10 guests.

Example: 10
offerstring[]Optional

Filters on bookings which have the given offer. This filter accepts a single offer ID, or multiple offer IDs separated by a comma to filter on bookings containing any of the given offers. To filter on bookings with no offer, use none.

partner_sourcestringOptional

Filters on bookings which have the given partner_source.

Example: christmas_page
phonestringOptional

Filters on bookings which have the given telephone number.

Example: 01234567890
preorders_statusstring · enumOptional

Filters on bookings which have the given status for preorders.

Example: completePossible values:
private_hirebooleanOptional

Filters on bookings which are private hire.

querystringOptional

Filter on bookings which have a full_name, email, company or phone similar to the search query.

Example: @example.com
start_timestringOptional

Filters on bookings which have the given start time. This filter can also accept a range of times, for example 12:00 TO 15:30 will filter bookings starting between 12pm and 3:30pm.

Example: 13:15
status_changed_datestring · dateOptional

Filters on bookings where the status was changed on the given date.

Example: 2019-01-01
status_changed_date_fromstring · dateOptional

Filters on bookings where the status was changed on or after the given date.

Example: 2019-01-01
status_changed_date_tostring · dateOptional

Filters on bookings where the status was changed on or before the given date.

Example: 2019-03-01
timestringOptional

Filters on bookings that take place between the given time range, taking into account both the start time and the end time of the booking.

Example: 12:00 TO 13:00
typestring[]Optional

Filters on bookings that have the given booking type ID. If a comma-separated list is passed, bookings with any of the given booking type IDs will be returned.

Example: 5cab0bcbfcf59f7fd26bedd9
customer_idstring[]Optional

Filters on bookings that are associated with the given customer ID. If a comma-separated list is passed, bookings associated with any of the given customer IDs will be returned.

Example: 5cab0c245ca3d2d984a4b938
venue_idstring[]Optional

Filters on bookings that are for the given venue ID. If a comma-separated list is passed, bookings for any of the given venue IDs will be returned. To filter bookings with no assigned venue, use none.

Example: 5cab0c7ba7a3f443a918f1b7
waitlistedbooleanOptional

Filters on bookings that have been waitlisted.

zonestringOptional

Filters on bookings that have been assigned to an area in the given zone ID. If a comma-separated list is passed, bookings assigned to an area in any of the given zone IDs will be returned.

Example: 5cab0cd477dd1224215c668a
include_preordersbooleanOptional

Decide whether to include the pre-orders of the bookings in the response. This defaults to false.

limitinteger · min: 1 · max: 30Optional

Limit the response to the specified number of records.

Default: 30Example: 30
sortstring[]Optional

The fields which the results should be sorted by. If this value is not specified, the records will be sorted in order of relevance to the query parameter. If the query parameter is not specified, records will be sorted in order of their created_date. To sort in decending order, prefix the field name with a '-' character.

Example: -last_updated
pagestringOptional

The page number to retrieve results for. Learn more about pagination

Default: 1Example: 2
Responses
chevron-right
200

Bookings were successfully retrieved.

application/json
get
/bookings

Get a booking

get
/bookings/{bookingId}

Returns details about a specific booking

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
bookingIdstringRequired

The ID of the booking you want to retrieve

Responses
get
/bookings/{bookingId}
get
/bookings/{bookingId}/links

Returns an array of URLs for customer-facing actions relating to a booking

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
bookingIdstringRequired

The ID of the booking you want to retrieve links for

Responses
chevron-right
200

The booking links were successfully retrieved.

application/json
calendarstringOptional

Link to download a calendar (.ics) attachment for a booking

Example: https://api.designmynight.com/v4/bookings/5d445200a3605e2bb7495514/calendar
cancelstringOptional

Link for a customer to cancel their booking

Example: https://bookings.designmynight.com/cancel-booking?booking_id=5d445200a3605e2bb7495514&access_key=ACCESS_KEY_KERE
changestringOptional

Link for a customer to change their booking

Example: https://bookings.designmynight.com/change-your-booking?booking_id=5d445200a3605e2bb7495514&access_key=ACCESS_KEY_KERE
preorderstringOptional

Link for a customer to pre-order for their booking (if enabled)

Example: https://bookings.designmynight.com/place-your-order?booking_id=5d445200a3605e2bb7495514
manage_preorderstringOptional

Link for a customer to manage pre-orders for their booking (if enabled)

Example: https://bookings.designmynight.com/manage-your-order?booking_id=5d445200a3605e2bb7495514
paymentstringOptional

Link for a customer to pay any outstanding deposits for their booking

Example: https://bookings.designmynight.com/secure-your-booking?booking_id=5d445200a3605e2bb7495514
sign_contractstringOptional

Link for a customer to sign the contract attached to their booking

Example: https://collins-customer.designmynight.com/sign-contract/5d445200a3605e2bb7495514?signature=URL_SIGNATURE_HERE
get
/bookings/{bookingId}/links

Get assigned areas (tables) for a booking

get
/bookings/{bookingId}/assigned-areas

Returns an array of areas which the booking is assigned to

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
bookingIdstringRequired

The ID of the booking you want to retrieve assigned areas for

Responses
chevron-right
200

The assigned areas were successfully retrieved.

application/json
get
/bookings/{bookingId}/assigned-areas

Replaces the assigned areas of the booking

post
/bookings/{bookingId}/assigned-areas

Unassigns all areas from the booking and assigns the given ones. This request accepts an array of bookable area IDs, which you can retrieve using the Venues endpoint.

A validation error will be returned if you attempt to assign area(s) to a booking which doesn't have a venue, or if you attempt to assign area(s) which don't belong to the attached venue. Keep in mind that the request won't return an error response if you attempt to assign an area which is already assigned to the booking.

If you're looking to append assigned areas rather than replace, see Appending assigned areas.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
bookingIdstringRequired

The ID of the booking you want to assign areas for

Body
areasstring[]Optional

Array of bookable area IDs

Example: 55243ccd787279304031501d
Responses
chevron-right
200

The assigned areas for this booking were successfully replaced with the given areas.

application/json
post
/bookings/{bookingId}/assigned-areas

Appends to the assigned areas of the booking

put
/bookings/{bookingId}/assigned-areas

Assigns the given areas to the booking, whilst keeping the areas which are already assigned.

This request accepts an array of bookable area IDs, which you can retrieve using the Venues endpoint.

A validation error will be returned if you attempt to assign area(s) to a booking which doesn't have a venue, or if you attempt to assign area(s) which don't belong to the attached venue. Keep in mind that the request won't return an error response if you attempt to assign an area which is already assigned to the booking.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
bookingIdstringRequired

The ID of the booking you want to assign areas for

Body
areasstring[]Optional

Array of bookable area IDs

Example: 55243ccd787279304031501d
Responses
chevron-right
200

The given areas were successfully assigned to the booking

application/json
put
/bookings/{bookingId}/assigned-areas

Unassigns all areas from the booking

delete
/bookings/{bookingId}/assigned-areas

Unassigns all areas from the booking. This request won't return an error response if the booking doesn't have any assigned areas.

If you're looking to unassign a particular area, see Unassigning an area

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
bookingIdstringRequired

The ID of the booking you want to unassign areas for

Responses
chevron-right
200

All areas were successfully unassigned from the booking

application/json
delete
/bookings/{bookingId}/assigned-areas

Unassigns an area from the booking

delete
/bookings/{bookingId}/assigned-areas/{assignedAreaId}

Unassigns the given area from the booking.

This request will return an error response if you attempt to unassign an area which is not assigned to the booking.

If you're looking to unassign all areas, see Unassigning all areas

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
bookingIdstringRequired

The ID of the booking you want to unassign an area for

assignedAreaIdstringRequired

The ID of the area you want to unassign

Responses
chevron-right
200

The given area was successfully unassigned from the booking

application/json
delete
/bookings/{bookingId}/assigned-areas/{assignedAreaId}

Get notifications

get
/bookings/{bookingId}/notifications

Returns an array of all notifications for this booking. This includes read notifications. If you only want to see unread notifications, you can use the status filter.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
statusstringOptional

Filter by the status of the booking. By default, both read and unread notifications will be returned. Use this filter to return only read or unread notifications.

typestringOptional

Filter by the type of notification.

Responses
chevron-right
200

Notifications were successfully retrieved

application/json
get
/bookings/{bookingId}/notifications

Get a notification

get
/bookings/{bookingId}/notifications/{notificationId}

Returns the notification by the given ID.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Responses
chevron-right
200

Notification was successfully retrieved

application/json
get
/bookings/{bookingId}/notifications/{notificationId}

Update a notification

put
/bookings/{bookingId}/notifications/{notificationId}

Updates the given booking notification

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
statusstring · enumOptional

The status of the message. Unread messages have the status new and read messages have the status read.

Possible values:
Responses
chevron-right
200

Notification was successfully updated

application/json
put
/bookings/{bookingId}/notifications/{notificationId}

Last updated

Was this helpful?