SoftSolzSoftSolz
HomeAPI GuideAPI ReferenceWidget Tester

Idempotency

Safely retry mutating requests with an Idempotency-Key.

Every mutating request accepts an optional Idempotency-Key header. Send a unique value (a UUID is ideal) and SoftSolz guarantees the operation runs at most once, even if the request is retried.

bash
curl -X POST https://app.softsolz.uk/api/v1/services/forms/forms/contact-us/submit \
-H "Authorization: Bearer sk_live_your_key" \
-H "Idempotency-Key: 7d3f0c2a-9b1e-4c5d-8a6f-2e0b1c3d4f5a" \
-H "Content-Type: application/json" \
-d '{"data":{"email":"a@example.com"}}'
  • Replaying the same key with the same body returns the original result.
  • Replaying the same key with a different body returns 409 with code: idempotency_key_conflict.
  • If a request with the same key is still running, the retry returns 409 with code: idempotency_request_in_progress. Wait a moment and retry with the same key.
  • Keys are retained for 24 hours.
  • Responses that contain a secret (for example an end-user session token) are never stored. Retrying such a call with the same key runs it again and returns a fresh result.

Generate a fresh key per logical operation

Reuse the same key only when retrying the exact same call - not for a new, distinct operation.