IDEMPOTENCE
Relancez sans craindre les doublons.
Un réseau instable ne devrait pas créer deux devis. Envoyez une Idempotency-Key avec n’importe quel POST, PATCH ou DELETE : si la requête est répétée avec la même clé et le même corps, Cord renvoie la réponse d’origine, marquée Idempotent-Replayed, au lieu de l’exécuter deux fois. Si le corps a changé, la réponse est une erreur explicite.
- Fonctionne sur toutes les mutations de /api/v1
- La réponse rejouée est identique, octet par octet
- Même clé, autre corps : une erreur, jamais un doublon silencieux
# 1re tentative : le devis est créé
POST /api/v1/cotizaciones
Idempotency-Key: pedido-7781
← 200 { "data": { "folio": "COT-0150", … } }
# 2e tentative (coupure réseau) : même clé, même corps
POST /api/v1/cotizaciones
Idempotency-Key: pedido-7781
← 200 Idempotent-Replayed: true
{ "data": { "folio": "COT-0150", … } }
# la même réponse, octet par octet
# même clé, autre corps
← 422 { "error": "Esta clave de idempotencia ya se usó con otra petición.",
"code": "idempotency_key_reused" }
# la première requête est toujours en cours
← 409 { "code": "idempotency_in_progress" }