Beam logo

Idempotent Request

Beam API supports idempotency for safely retrying requests without accidentally performing the same operation twice. When creating or updating an object, use an idempotency key. Then, if a connection error occurs, you can safely repeat the request without risk of creating a second object or performing the update twice.

Please note that this would only affect POST and PATCH APIs. All GET, DELETE and PUT are idempotent by design so you should not need to provide the idempotency key as it is guaranteed to have no effect.

Idempotency keys are set as headers in Beam's API. To perform an idempotent request, provide an additional x-beam-idempotency-key element to the request options. It is a unique key that the server uses to recognize subsequent retries of the same request. How you create unique keys is up to you, but we suggest using V4 UUIDs, or another random string with enough entropy to avoid collisions. Idempotency keys are up to 255 characters long.

We store idempotency keys up to 12 hours. After that, the same key can be reused and we view it as a completely new request.