Réponse exemple
GET/v1/webhooks/deliveries/{id}Détail complet d'une livraison de webhook (payload envoyé + réponse reçue).Renvoie l'intégralité d'une tentative de livraison de webhook identifiée par son id. Contrairement aux listes de livraisons qui restent compactes, cette route expose les champs lourds : le payload JSON exactement tel qu'il a été signé et envoyé, la signature HMAC associée, ainsi que la réponse complète du endpoint cible (status_code, response_body, response_headers). C'est l'endpoint de référence pour déboguer un échec de livraison ou rejouer manuellement un événement.
La livraison est résolue strictement dans le périmètre du workspace de la clé API : la requête filtre sur workspace_id ET sur id. Une livraison appartenant à un autre workspace est donc indiscernable d'une livraison inexistante et renvoie un 404.
Authentification
Requiert une clé API valide possédant le scope webhooks:read. Une clé sans ce scope reçoit une erreur scope_missing (403). Les clés complètes (cof_live_ / cof_test_), restreintes (cof_rk_live_ / cof_rk_test_) et MCP (cof_mcp_live_ / cof_mcp_test_) sont acceptées, sous réserve de couvrir le scope requis.
Paramètres de requête
| Paramètre | Type | Emplacement | Description |
|---|---|---|---|
| id | string | Chemin (path) | Identifiant de la livraison de webhook à récupérer. Dernier segment de l'URL. |
Réponse
Renvoie l'objet livraison complet. Champs clés : webhook_id (endpoint cible) et event_id / event_type (événement source) ; payload (corps JSON signé envoyé) ; signature et signature_version (vérification HMAC côté destinataire) ; attempt_number et max_attempts (suivi des tentatives) ; status, status_code, response_body, response_headers, duration_ms, error_message (résultat de la livraison) ; et les horodatages scheduled_at, attempted_at, completed_at, next_retry_at, created_at.
| Champ | Type | Description |
|---|---|---|
| id | string | Identifiant de la livraison. |
| webhook_id | string | Endpoint webhook visé par la livraison. |
| event_id | string | Identifiant de l'événement source. |
| event_type | string | Type de l'événement (ex. transfer.completed). |
| payload | object | Corps JSON exact signé et transmis au endpoint. |
| signature | string | Signature HMAC du payload. |
| signature_version | string | Version du schéma de signature. |
| attempt_number | number | Numéro de la tentative courante. |
| max_attempts | number | Nombre maximal de tentatives prévues. |
| status | string | État de la livraison (ex. succeeded, failed, pending). |
| status_code | number | null | Code HTTP renvoyé par le endpoint cible. |
| response_body | string | null | Corps de la réponse du endpoint cible. |
| response_headers | object | null | En-têtes de la réponse du endpoint cible. |
| duration_ms | number | null | Durée de la requête de livraison en millisecondes. |
| error_message | string | null | Message d'erreur en cas d'échec de livraison. |
| scheduled_at | string | null | Date planifiée de la tentative. |
| attempted_at | string | null | Date de la tentative effective. |
| completed_at | string | null | Date de fin de la livraison. |
| next_retry_at | string | null | Date de la prochaine relance prévue. |
| created_at | string | Date de création de l'enregistrement. |
Erreurs
| Code | Quand | Résolution |
|---|---|---|
| 401 missing_api_key | En-tête Authorization absent. | Ajouter Authorization: Bearer cof_live_.... |
| 401 invalid_api_key | Clé invalide, mal préfixée ou introuvable. | Vérifier le format et la validité de la clé. |
| 403 scope_missing | La clé ne possède pas le scope webhooks:read. | Émettre une clé incluant le scope webhooks:read. |
| 404 not_found | Aucune livraison avec cet id dans le workspace. | Vérifier l'identifiant et le workspace de la clé. |
| 429 rate_limited | Quota de requêtes du workspace dépassé. | Attendre la fenêtre indiquée par l'en-tête Retry-After. |
| 500 internal_error | Erreur interne lors de la lecture en base. | Réessayer ; contacter le support si persistant (utiliser le request_id). |
Voir aussi
GET /v1/webhooks/deliveries— lister les livraisons (vue compacte).- GET /v1/webhooks/{id} — détail de l'endpoint webhook ciblé.
- POST /v1/webhooks/{id}/rotate-secret — faire tourner le secret de signature.