The API uses HTTP response codes to indicate success or failure of a request.
That means, the 2xx range indicates success; the 4xx range indicates validation errors or problems with the provided parameters, whereas the 5xx range indicates errors on our side.
Exceptions confirm the rule… Generally, you can expect a JSON response, when making an API call.
However, due to internal technical reasons, in the 4xx and 5xx range HTML responses can occur, see the 4xx example response.
Responses in the 2xx range
This is the standard response for a successful HTTP request.
The request has been fulfilled and resulted in a new resource being created, e.g a cart.
The server successfully processed the request, but is not returning any content. Typically used as a response to a successful DELETE request.
Responses in the 4xx range
The server cannot or will not process the request due to something that is perceived to be a client error, e.g. a non-number is sent to the server, but a number was expected.
The request was valid, but the server is refusing to respond to it, e.g. the request is not signed with OAuth, an incorrect signature is used or the client is refused because it is lacking permissions.
The requested resource or item could not be found, but may be available in future, e.g. a product has been requested, that is not available.
Method Not Allowed
A request was made of a resource using a request method not supported by that resource, e.g. using a POST on a resource that requires a GET.
The content negotiation between client and server failed. As ePages uses the Accept header to specify the API version, it requires the client to send exactly this header for the respective version of the REST API. So for the currently existing version v1, this is Accept: application/vnd.epages.v1+json. The server response for the content-type is always application/json unless stated otherwise.
The request could not be processed because of a conflict in the request, e.g. using a PATCH on an order, that is in edit mode.
The resource requested is no longer available and will not be available again, e.g. when a cart became an order.
Too Many Requests
Too many requests have been sent to the API in a given amount of time. The API call limit has been exceeded, see also API call limit.
Responses in the 5xx range
Internal Server Error
A generic error message that is given, when an unexpected condition was encountered and a no more specific message is suitable.
The server was acting as a gateway or proxy and received an invalid response from the upstream server, e.g. internal ePages services not available. Generally, this is only a temporary state.
The server is currently unavailable, e.g. the REST API is unavailable. Generally, this is only a temporary state.