POST qui créent une ressource nécessitent un en-tête Idempotency-Key. Cette clé permet de retenter une requête après un délai d’attente ou une coupure de connexion sans créer deux fois la même ressource.
Générer les clés
Utilisez une nouvelle valeur imprévisible, par exemple un UUID v4, pour chaque création logique. Conservez-la avec l’opération jusqu’à la réception d’une réponse définitive.Node.js
Règles de nouvelle tentative
- Retentez la même opération avec la même clé et exactement le même corps.
- La répétition d’une opération terminée renvoie la réponse d’origine et l’en-tête
Idempotent-Replayed: true. - La réutilisation d’une clé avec un corps différent renvoie
409 idempotency_error. - Un doublon simultané pendant le traitement de la première requête renvoie
409 conflict_error; attendez brièvement puis retentez la même requête. - Les clés sont conservées pendant 24 heures.
PATCH, PUT, GET et DELETE ne nécessitent pas cet en-tête. Consultez Erreurs pour une stratégie de nouvelle tentative bornée.