Idempotence
Le réseau lâche. Quand un POST expire, impossible de savoir si Skoup l’a reçu. Réessayer à
l’aveugle pourrait créer deux fois la même tâche.
Envoyez un en-tête Idempotency-Key sur chaque POST et les nouvelles tentatives deviennent sans
risque :
curl https://api.skoup.ai/v1/brands/br_2xKq8Fh3LmN9pQrT4vWy6Z/tasks \
-H "Authorization: Bearer skoup_test_4eC39HqLyjWDarjtT1zdp7dc" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: 5b0e2c7a-9f1d-4f5e-8a2b-1c3d4e5f6a7b" \
-d '{"title": "Ajouter le GTIN sur la fiche Gravel 500", "kind": "technical"}'Fonctionnement
- La première requête portant une clé donnée s’exécute normalement, et sa réponse — code et corps, erreurs comprises — est conservée 24 heures.
- Toute nouvelle tentative avec la même clé et le même corps renvoie la réponse conservée, sans
réexécuter la requête. La réponse rejouée porte l’en-tête
Idempotent-Replayed: true. - Une tentative avec la même clé mais un autre corps échoue en
422idempotency_key_reused: une clé identifie une opération.
Les clés sont propres à la clé API qui les envoie. Utilisez un UUID v4 aléatoire par opération, généré avant la première tentative et réutilisé pour les suivantes.
GET, PATCH et DELETE sont idempotents par nature et ignorent l’en-tête.
Last updated on