Erreurs
L'API Apertur utilise les codes de statut HTTP standards. Toutes les réponses d'erreur incluent un corps JSON avec les détails.
Format des erreurs
Chaque réponse d'erreur suit cette structure :
{
"statusCode": 400,
"error": "Bad Request",
"message": "delivery_mode is required"
}| Champ | Type | Description |
|---|---|---|
| statusCode | integer | Le code de statut HTTP |
| error | string | Nom court de l'erreur (par exemple, "Bad Request") |
| message | string | Description lisible de l'erreur |
Codes de statut HTTP
400Bad Request
Le corps ou les paramètres de la requête sont invalides.
Causes courantes
- •Champ requis manquant (par exemple, delivery_mode)
- •Valeur ou type de champ invalide
- •webhook_url manquant lorsque delivery_mode est webhook
401Unauthorized
L'authentification a échoué. La clé API est manquante ou invalide.
Causes courantes
- •En-tête Authorization absent
- •Jeton Bearer malformé
- •La clé API n'existe pas ou a été supprimée
403Forbidden
La clé API est valide mais n'a pas la permission pour cette action.
Causes courantes
- •La session appartient à un autre projet
- •Compte suspendu
- •Le plan ne permet pas cette fonctionnalité
404Not Found
La ressource demandée n'existe pas.
Causes courantes
- •Identifiant de session introuvable
- •Identifiant d'image introuvable
- •Chemin de route invalide
409Conflict
La requête entre en conflit avec l'état actuel de la ressource.
Causes courantes
- •La session est déjà terminée — impossible d'envoyer d'autres images
- •L'image a déjà été acquittée
410Gone
La ressource existait mais n'est plus disponible.
Causes courantes
- •La session a expiré
- •Toutes les images ont été acquittées (long polling terminé)
429Too Many Requests
La limite de débit pour cette clé API a été dépassée.
Causes courantes
- •Limite de requêtes par minute dépassée
- •Quota mensuel de sessions dépassé pour votre plan
500Internal Server Error
Une erreur inattendue s'est produite sur nos serveurs.
Causes courantes
- •Problème d'infrastructure transitoire — réessayez avec un délai exponentiel
- •Si le problème persiste, consultez notre page de statut
Gestion des erreurs dans le code
# Show both headers and body to inspect error responses
curl -v -X POST https://api.apertur.ca/v1/sessions \
-H "Authorization: Bearer aptr_xxxx" \
-H "Content-Type: application/json" \
-w "\nHTTP Status: %{http_code}\n" \
-d '{"delivery_mode": "webhook", "webhook_url": "https://your-app.com/webhook"}'
# Example error response (400):
# {"statusCode":400,"error":"Bad Request","message":"delivery_mode is required"}