Skip to main content
The Booking Engine API returns JSON. The exact body shape depends on the status code.

Content type

Response codes

200 OK

The request was processed successfully. The body depends on the endpoint: a session, search availabilities, descriptions, a basket, a quote, or a confirmation.

204 No Content

The request succeeded and there is nothing to return. The session PATCH endpoints that update the context, filters, display, or sort order use it. So do the calls that add a room or an extra to the basket, clear the basket, delete the session, and log out a loyalty member. Provides an ongoing promotion also answers 204 when the hotel runs no promotion.

400 Bad Request

The request failed validation or violated a business rule. The body carries a Message and a Code; branch on Code to handle each case.
string
Human-readable description of what went wrong.
string
Machine-readable error code that identifies the failure.
The most common case is an invalid or expired session. Create a fresh session and replay the guest’s context:
Other failures use the same shape with a different Code, for example an invalid basket:

401 Unauthorized

The OAuth signature was missing, malformed, or rejected. Common causes:
  • The signature does not match the consumer or token secret.
  • The request timestamp drifted too far from the server clock.
  • The same nonce was reused.
The body carries a security error Message and Code. Verify the credentials and the signing implementation, and sync the server clock with NTP. See the Authentication page for the full signing process.

404 Not Found

The URL does not match any endpoint, or the resource does not exist. An unknown or expired sessionId is not a 404: it returns 400 with Code: InvalidSessionId. Handle a 404 from the status code alone and parse the body only when one is present. The Reference lists every endpoint with its full path.

500 and 502

A 5xx response signals an issue on the D-EDGE side, returned as a JSON error object with a Message and Code. These errors are usually transient. Retry safe GET calls with exponential backoff. If a 5xx persists, contact us.