Advanced error handling and responses

Transient Response

In rare instances, you could receive a transient response. This is a temporary response that has no side effects and can be retried. For example:

  • A race condition may occur when two requests with the same idempotency key are sent at the same time. One will eventually be processed while the other will return a transient response.
  • Your original request was accepted but we do not have a response ready due to some unexpected behavior on our servers, in which case a transient response will be returned.

Retries and exponential backoff

Use an exponential backoff strategy when retrying transactions to avoid flooding the API and running into rate-limiting.

Recommendations for retrying idempotent requests

Response CodeRecommendationComments
2xxDo not retryThe original request was completed successfully. Any subsequent retry will provide the same result as the original successful request and will have no further effects.

- This does not apply to the "202 Accepted" response code.
202RetryIt's an unusual scenario and you may rarely face this response, it means that your request was accepted, but we don't have a ready answer yet.

- We recommend the exponential backoff strategy in that case.
4xxDo not retryThere is a problem with the request, one of the following:

- Invalid parameter combination
- No permission to access the resource
- Resource is in a state that does not allow the requested change
5xxRetryThis response may be caused by some unexpected issue on our side and it is usually temporary.

- We recommend the exponential backoff strategy in that case.

Retry flow sequence diagram

2xx Examples

202 Accepted


5xx Examples

500 Internal Server Error


502 Bad Gateway


What’s Next