Skip to main content

Endpoints now supporting idempotency

· 2 min read

We are introducing idempotencyIdempotency A property of an API that guarantees calling it multiple times with the same inputs produces the same result, with no additional side effects beyond the first call. An idempotent endpoint can therefore be safely retried after network errors or timeouts without risking duplicate transactions or state changes. to a list of endpoints in the plug-in API. This is can be achieved by including the idempotency-ref header in the requests.

Effective:

  • 12 August 2024 on Sandbox
  • 20 August 2024 on Live

Using IdempotencyIdempotency A property of an API that guarantees calling it multiple times with the same inputs produces the same result, with no additional side effects beyond the first call. An idempotent endpoint can therefore be safely retried after network errors or timeouts without risking duplicate transactions or state changes. is optional. However, if you decide to use it, you need handle the new HTTP 409 error code IDEMPOTENT_REQUEST_IN_PROGRESS. Additionally, if an idempotent endpoint is called with an idempotency-ref header exceeding 8000 characters, an HTTP 413 Payload Too Large error should be returned. If an idempotent endpoint is called twice with the same idempotency-ref but with different payloads, an HTTP 422 Unprocessable Entity error should be returned.

Affected endpoints with idempotencyIdempotency A property of an API that guarantees calling it multiple times with the same inputs produces the same result, with no additional side effects beyond the first call. An idempotent endpoint can therefore be safely retried after network errors or timeouts without risking duplicate transactions or state changes.:

You can find more information about idempotency in our docs.