The Fireblocks API supports idempotent requests (multiple requests which have the same result as making a single request). This is helpful when you don’t get a response or the API call isn’t completed successfully.
Idempotency key
Notes
- You can use idempotency keys with POST requests. Using
Idempotency-Key
in your request header for GET and DELETE will not work as they are inherently idempotent.- The
<key>
value in your idempotent request can have a maximum of 40 characters.
To submit an idempotent request, you must add Idempotency-Key: <key>
to the header of your POST request.
Resubmission of the same request with the same idempotency key will not trigger the same operation, but will instead return the original response. This ensures a transaction request with the same idempotency key is not executed multiple times if you try to re-submit it due to network errors or delays experienced for a prior submission.
Fireblocks stores the responses for all requests with the Idempotency-Key
header and resends them for every request with the same idempotency key for 24 hours. After 24 hours, you will need a new key.
Transaction Idempotency
When creating transactions, Fireblocks strongly recommends using the externalTxId
parameter in the Create Transaction API call. This parameter ensures that the transaction is idempotent. If another transaction request is made with the same externalTxId
value, it will be rejected with an HTTP 400 code an error message .
Learn more about the externalTxId
parameter here