X-Convoy-Idempotency-Key header and this can be used to de-duplicate
events sent by Convoy. In the next two sections, we will talk about how to configure
idempotency keys for both incoming and outgoing projects and how to de-duplicate events sent or received.
Product Manual
Idempotency
Idempotent HTTP requests refer to the characteristic of certain HTTP methods that
allows them to be safely and repeatedly executed without altering the state of the server
beyond the initial request. These methods include GET, HEAD, PUT, and DELETE, while POST
stands apart as a non-idempotent member. With convoy, you can now deduplicate events by
specifying parts of the request for convoy to use as the idempotency key.
While POST requests aren’t normally non-idempotent, the introduction of an Idempotency
key passed via a header can be used to de-duplicate them. When sending out webhook
requests we set the
For request header key:
For request query param key:
Using the key(s) you provide convoy will generate a SHA256 checksum, and use it to check for duplicates, this same key will be sent to your endpoint which can also be used to de-duplicate events. Any duplicate event will be marked as a duplicate and be discarded.
As expected if you send the same idempotency key in a request it would create the event but no event delivery will be sent.