HTTP Status Code Summary
In general:- Codes in the
2xxrange indicate success. - Codes in the
4xxrange indicate an error that failed given the information provided (e.g., a required parameter was omitted, booking creation failed, etc.). - Codes in the
5xxrange 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 graceful5xx 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.
Rate limiting
We return a 429 Too Many Requests response when you’ve exceeded a rate limit. Consult theRetry-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
statusfield. - For validation errors (
422), theerrorsarray contains detailed information for each invalid field. - For other types of errors (e.g., business logic or authorization), the
errorsarray is omitted.
Error codes
The following is a list of domain-specific error codes you may encounter. Generic validation errors returnVALIDATION_ERROR with an errors array describing each invalid field.