Problem details (RFC 9457) and every error code the API returns.
A request that fails answers with an HTTP status and a problem details body (RFC 9457), with the content type application/problem+json:
{
"type": "about:blank",
"title": "Conflict",
"status": 409,
"code": "booking.slot_taken",
"detail": "The table is booked at that time.",
"requestId": "3f2a9c01d4e5b6a7"
}
Field
status
The HTTP status, repeated.
title
The HTTP status text.
code
A stable, machine-readable code. Branch on this.
detail
What went wrong, for people. It may change at any time, so don't parse it.
errors
For validation failures: one entry per field, {location, message, value}, where location is like body.contact.phone.
requestId
The same as the X-Request-ID header. Quote it when you contact us.
Codes are only ever added, never changed or reused. Treat a code you don't know by its HTTP status.
The key or token is missing, unknown, revoked or expired, or belongs to the other environment.
403
auth.scope_missing
The credential lacks the scope the endpoint needs (detail names it).
403
auth.plan_feature
The venue's plan doesn't include the feature this scope needs.
403
auth.developer_access_off
Boozie has turned the venue's Developer access off.
403
auth.host_key_required
/hosts/me… with a venue key that holds hosts:read but isn't bound to a host. (Org keys and OAuth tokens can't hold hosts:read, so they get auth.scope_missing.)