> ## Documentation Index
> Fetch the complete documentation index at: https://docs.suprsend.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Idempotent Requests

> Learn how to avoid duplicate API requests with idempotency key.

SuprSend supports making requests idempotent to ensure that requests can be retried safely without duplicate processing. If SuprSend receives and processes a request with an `idempotency_key`, it will skip processing requests with same `idempotency_key` for next 24 hours. You can use this key to track webhooks related to workflow notifications.

To make an idempotent request, pass `idempotency_key` in the workflow instance. Idempotency-key should be unique that you generate for each request. You may use any string up to 255 characters in length as an idempotency-key. Ensure that you don’t add any space in start and end of the key as it will be trimmed.

Here are some common approaches for assigning idempotency-keys:

* **Generate a random UUID** for each request.
* **Construct the idempotency-key by combining relevant information about the request**. This can include parameters, identifiers, or specific contextual details that are meaningful within your application. e.g., you could concatenate the user ID, action, and timestamp to form an idempotency-key like `user147-new-comment-1687437670`
* **Request-specific Identifier**: If your request already contains a unique identifier, such as an order ID or a job ID, you can use that identifier directly as the idempotency-key.
