Skip to main content

HTTP Status Code Summary

In general:
  • Codes in the 2xx range indicate success.
  • Codes in the 4xx range indicate an error that failed given the information provided (e.g., a required parameter was omitted, booking creation failed, etc.).
  • Codes in the 5xx range indicate an error with Restoo’s servers (these are rare).

Handling errors

API clients must expect and gracefully handle transient server errors and rate limits. We recommend baking graceful 5xx and 429 retries into your integration from the beginning so errors are handled automatically. You must define an automatic retry logic strategy in order to integrate with Restoo, limiting automatic retries to 24 hs and/or 10 times with exponential back off.
We may disable your integration if we detect abuse of the Restoo API.

Rate limiting

We return a 429 Too Many Requests response when you’ve exceeded a rate limit. Consult the Retry-After response header to determine how long to wait (in seconds) before retrying the request. For a sense of scale, the first rate limit you’ll commonly encounter is currently 120 requests per 1 minute period per IP address.

Error objects

Restoo API responses use standardized error objects to provide consistent and predictable error handling across all endpoints. These objects follow the RFC 9457 specification for Problem Details for HTTP APIs. Errors are returned as JSON objects using the following media type:

Reference

string
required
A URI identifier that categorizes the error type. When set to about:blank, it indicates a generic, non-specific error type.
string
required
A short, human-readable summary of the problem type.
integer
required
The HTTP status code generated by the origin server for this occurrence of the problem.
string
required
A short, machine-readable string that identifies the specific error condition. This field is specific to the Restoo API and allows client applications to handle errors programmatically.
string
required
A human-readable explanation providing additional details about this specific occurrence of the problem.
Error[]
For validation errors, provides a detailed description of each parameter that failed validation.
Object

Notes

  • All error responses return an HTTP status code matching the status field.
  • For validation errors (422), the errors array contains detailed information for each invalid field.
  • For other types of errors (e.g., business logic or authorization), the errors array is omitted.

Error codes

The following is a list of domain-specific error codes you may encounter. Generic validation errors return VALIDATION_ERROR with an errors array describing each invalid field.

Authentication & partner errors (HTTP 422)

Feature errors (HTTP 403)

Booking not found (HTTP 404)

Booking business errors (HTTP 409)

List bookings errors (HTTP 409)