Référence APIRelancer une livraison de webhook échouée
POST/v1/webhooks/deliveries/{id}/retry

Relancer une livraison de webhook échouée

Force la remise en file d'une livraison de webhook bloquée en échec en remettant son compteur de tentatives à zéro.

2 min de lectureTélécharger en PDF

Réponse exemple

{
"id": "whd_3kf8d2m1a9",
"status": "pending",
"max_attempts": 5,
"next_retry_at": "2026-06-05T14:32:08.512Z",
"attempt_number": 0,
"queued_for_retry": true
}
POST/v1/webhooks/deliveries/{id}/retryRemet en file une livraison de webhook non aboutie pour qu'elle soit renvoyée par le worker cron.

Force la relance d'une livraison de webhook restée bloquée en échec ou abandonnée. Contrairement à l'endpoint de replay (qui renvoie toujours la livraison, quel que soit son statut), cet endpoint n'agit que sur les livraisons non abouties : il bascule la livraison en statut pending, fixe next_retry_at à l'instant courant et réinitialise le compteur de tentatives (attempt_number remis à 0). Le cron de distribution reprend ensuite automatiquement la livraison. La livraison ciblée doit appartenir au workspace de la clé API : elle est recherchée sur workspace_id et id.

Authentification

Cet endpoint exige une clé API valide disposant du scope webhooks:manage. Une clé sans ce scope reçoit une erreur scope_missing (403). L'appel est soumis au quota d'écriture (write) du workspace et respecte la clé d'idempotence si elle est fournie via l'en-tête Idempotency-Key.

Paramètres de chemin

ChampTypeRequisDescription
idstringOuiIdentifiant de la livraison de webhook à relancer, extrait du chemin de l'URL (segment précédant /retry).

Cet endpoint n'attend aucun corps de requête. Toute donnée envoyée dans le corps est ignorée.

Réponse

En cas de succès, la réponse renvoie la livraison mise à jour avec les champs id, status (désormais pending), next_retry_at (horodatage ISO 8601 de la prochaine tentative, fixé à l'instant courant), attempt_number (remis à 0) et max_attempts (nombre maximal de tentatives configuré). Le champ booléen queued_for_retry vaut toujours true pour confirmer que la livraison a bien été remise en file.

ChampTypeDescription
idstringIdentifiant de la livraison relancée.
statusstringNouveau statut de la livraison, toujours pending après relance.
next_retry_atstringHorodatage ISO 8601 de la prochaine tentative (instant courant).
attempt_numberintegerCompteur de tentatives, réinitialisé à 0.
max_attemptsintegerNombre maximal de tentatives configuré pour cette livraison.
queued_for_retrybooleanToujours true : confirme la remise en file de la livraison.

Erreurs

CodeQuandRésolution
404 not_foundAucune livraison ne correspond à cet id dans le workspace de la clé API.Vérifiez l'identifiant et que la livraison appartient bien au workspace de la clé utilisée.
409 validation_errorLa livraison est déjà en statut success : on ne relance pas une livraison aboutie.Utilisez l'endpoint de replay pour renvoyer volontairement une livraison déjà réussie.
403 scope_missingLa clé API ne possède pas le scope webhooks:manage.Émettez ou utilisez une clé disposant du scope webhooks:manage.
401 invalid_api_keyClé API absente, invalide, expirée ou révoquée.Vérifiez l'en-tête Authorization et la validité de la clé.
429 rate_limitedLe quota d'écriture du workspace est dépassé.Patientez la durée indiquée par l'en-tête Retry-After avant de réessayer.
500 internal_errorErreur lors de la lecture ou de la mise à jour de la livraison en base.Réessayez ; si l'erreur persiste, contactez le support avec le request_id retourné.

Voir aussi