Report running late
const url = 'https://example.kwickbooking.com/public/v1/bookings/example/running-late';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"phone":"07911 123456","minutesLate":20,"venueId":null}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.kwickbooking.com/public/v1/bookings/example/running-late \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "phone": "07911 123456", "minutesLate": 20, "venueId": null }'Tells the venue a guest with a confirmed booking today will arrive late. Up to an hour is noted on the booking and the venue’s live diary, and the table is held until then plus the venue’s grace period. More than an hour goes to the venue’s team, who will be in touch. Send an Idempotency-Key header.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Request Bodyrequired
Section titled “Request Bodyrequired”POST /public/v1/bookings/{reference}/running-late: the phone on the booking and how many minutes late.
object
Example
{ "phone": "07911 123456", "minutesLate": 20, "venueId": null}Responses
Section titled “Responses”OK
The answer to an amend or cancel: amended, cancelled or already_cancelled with the booking; unavailable with alternatives; or needs_venue with the enquiry raised for staff.
object
A booking as a caller who proved reference and phone may see it: its own details and the guest’s first name, nothing else about the guest.
object
A booking’s deposit: whether one applies, how much, and none, awaiting_payment or paid.
object
Another time, day or venue that fits when the asked one doesn’t.
object
A booking type that fits a time, with its length and deposit.
object
A deposit as a guest would hear it.
object
Example
{ "outcome": "noted", "booking": { "reference": "48271936", "venueId": "01920000-0000-7000-8000-000000000001", "venueName": "Soho", "date": "2026-10-16", "time": "20:00", "partySize": 4, "bookingType": "Table booking", "state": "confirmed", "guestFirstName": "Sam", "deposit": { "required": false, "amountPence": 0, "amountDisplay": null, "status": "none" }, "expectedArrival": null }, "alternatives": [], "enquiryId": null, "depositTopUp": null, "summary": "Thanks, Soho knows you're about 20 minutes late (expected 20:15)."}Validation failed (https://developers.kwickblocks.ai/problems/validation-failed); Idempotency-Key required (https://developers.kwickblocks.ai/problems/idempotency-key-required)
RFC 9457 problem details. type is a URI with a page describing the problem.
object
Safe to read to a guest.
A machine-readable code on the widget’s routes.
Examples
Validation failed
{ "type": "https://developers.kwickblocks.ai/problems/validation-failed", "title": "Validation failed", "status": 400, "detail": "Some of the details weren't valid. Please check them and try again."}Idempotency-Key required
{ "type": "https://developers.kwickblocks.ai/problems/idempotency-key-required", "title": "Idempotency-Key required", "status": 400, "detail": "This request needs an Idempotency-Key header."}Invalid or missing integration key (https://developers.kwickblocks.ai/problems/invalid-key)
RFC 9457 problem details. type is a URI with a page describing the problem.
object
Safe to read to a guest.
A machine-readable code on the widget’s routes.
Examples
Invalid or missing integration key
{ "type": "https://developers.kwickblocks.ai/problems/invalid-key", "title": "Invalid or missing integration key", "status": 401, "detail": "This integration key isn't valid. Ask the venue's admin for a new one."}Capability not granted (https://developers.kwickblocks.ai/problems/capability-missing)
RFC 9457 problem details. type is a URI with a page describing the problem.
object
Safe to read to a guest.
A machine-readable code on the widget’s routes.
Examples
Capability not granted
{ "type": "https://developers.kwickblocks.ai/problems/capability-missing", "title": "Capability not granted", "status": 403, "detail": "This integration key isn't allowed to do that. Ask the venue's admin to add the capability."}Booking not found (https://developers.kwickblocks.ai/problems/booking-not-found)
RFC 9457 problem details. type is a URI with a page describing the problem.
object
Safe to read to a guest.
A machine-readable code on the widget’s routes.
Examples
Booking not found
{ "type": "https://developers.kwickblocks.ai/problems/booking-not-found", "title": "Booking not found", "status": 404, "detail": "I couldn't find a booking with that reference and phone number."}Booking can’t be changed (https://developers.kwickblocks.ai/problems/booking-not-changeable); Idempotency-Key conflict (https://developers.kwickblocks.ai/problems/idempotency-conflict)
RFC 9457 problem details. type is a URI with a page describing the problem.
object
Safe to read to a guest.
A machine-readable code on the widget’s routes.
Examples
Booking can't be changed
{ "type": "https://developers.kwickblocks.ai/problems/booking-not-changeable", "title": "Booking can't be changed", "status": 409, "detail": "This booking can't be changed any more."}Idempotency-Key conflict
{ "type": "https://developers.kwickblocks.ai/problems/idempotency-conflict", "title": "Idempotency-Key conflict", "status": 409, "detail": "That Idempotency-Key was already used for a different request."}Too many requests (https://developers.kwickblocks.ai/problems/rate-limited); Too many attempts (https://developers.kwickblocks.ai/problems/lookup-throttled)
RFC 9457 problem details. type is a URI with a page describing the problem.
object
Safe to read to a guest.
A machine-readable code on the widget’s routes.
Examples
Too many requests
{ "type": "https://developers.kwickblocks.ai/problems/rate-limited", "title": "Too many requests", "status": 429, "detail": "There have been too many requests. Please try again in a minute."}Too many attempts
{ "type": "https://developers.kwickblocks.ai/problems/lookup-throttled", "title": "Too many attempts", "status": 429, "detail": "Too many attempts. Please try again later."}