Utilisez ce guide lorsqu’une requête adressée à l’API de Pleo échoue. Identifiez l’erreur ci-dessous et suivez les vérifications correspondantes.
Pour les détails des points de terminaison, les portées requises et les exemples de requêtes, consultez la documentation développeur de Pleo.
Avant de commencer le dépannage
| Vérifier | Confirmer |
|---|---|
| API | Utilisez-vous la nouvelle API ou l’ancienne API ? |
| URL de base et environnement | L’hôte correspond-il à l’API et à l’environnement souhaité (staging ou production) ? |
| Authentification | Quelle méthode d’authentification et quel type d’identifiants utilisez-vous ? |
| Correspondance des identifiants | Les identifiants correspondent-ils à l’API et à l’environnement ? N’utilisez jamais des identifiants de staging avec la production, ni des identifiants de production avec le staging. |
Erreurs d’API
400 / 422 — Invalid request
La requête est invalide ou ne passe pas la validation.
- Lisez le corps de la réponse pour identifier les champs manquants ou les valeurs invalides.
- Comparez votre requête avec la documentation du point de terminaison. Vérifiez les champs requis, la structure de la requête, les formats de date et les valeurs autorisées.
- Corrigez le problème identifié et réessayez la requête.
401 - Échec de l’authentification
La requête n’a pas pu être authentifiée.
- Faites correspondre les identifiants à l’API et à l’environnement. Vérifiez l’hôte de la requête par rapport à la documentation développeur. Ne mélangez pas les identifiants de la nouvelle API et de l’ancienne API, ni les identifiants de staging et de production.
- Vérifiez l’en-tête d’autorisation (`Authorization`). Les nouvelles clés d’API utilisent l’authentification Basic, avec la clé comme nom d’utilisateur et un mot de passe vide. Les jetons d’accès OAuth utilisent l’authentification Bearer. Suivez la documentation de l’ancienne API pour les jetons hérités. Supprimez les espaces ou sauts de ligne accidentels dans les identifiants.
- Vérifiez le statut des identifiants. Confirmez qu’ils n’ont pas expiré ou été révoqués. Pour OAuth, utilisez le jeton d’accès (et non le jeton d’actualisation) et vérifiez que le flux d’actualisation du jeton fonctionne correctement.
403 - Autorisations ou accès à l’entreprise
La requête a été authentifiée, mais l’accès n’est pas autorisé.
- Vérifiez les portées. Comparez les portées attribuées à vos identifiants avec celles requises par le point de terminaison. Si vous ne pouvez pas les consulter, demandez à la personne qui gère les identifiants de les confirmer.
- Vérifiez l’entreprise et l’environnement. Les identifiants doivent correspondre à l’entreprise ou à l’entité dont vous demandez les données, ainsi qu’à l’environnement que vous appelez.
- Vérifiez la disponibilité du point de terminaison. Confirmez dans la documentation développeur que le point de terminaison prend en charge votre méthode d’authentification et votre cas d’utilisation.
Si ces éléments correspondent mais que l’accès est toujours refusé, contactez l’Équipe support pour confirmer l’Accès à l’API de l’entreprise. Précisez si les mêmes identifiants fonctionnent sur d’autres points de terminaison.
404 - Point de terminaison ou ressource introuvable
Le point de terminaison ou la ressource demandée est introuvable.
- Comparez l’URL de base, la version de l’API et le chemin du point de terminaison avec la documentation développeur.
- Confirmez que l’identifiant de la ressource correspond bien à la ressource que vous souhaitiez demander.
- Vérifiez que la ressource appartient à l’entreprise et à l’environnement associés aux identifiants. Ne mélangez pas les identifiants de staging et de production.
Une ressource peut renvoyer une erreur 404 même si elle existe dans Pleo, lorsqu’elle appartient à une autre entreprise ou à un autre environnement.
409 - Opération en conflit
La requête est en conflit avec une opération ou un état existant.
- Lisez la réponse d’erreur et vérifiez si la même opération a déjà été soumise. Vérifiez la réponse précédente ou l’opération qui en résulte avant de l’envoyer à nouveau.
- Suivez les recommandations relatives aux conflits et à l’idempotence du point de terminaison dans la documentation développeur.
429 - Requêtes trop nombreuses
Votre intégration envoie des requêtes trop fréquemment.
- Vérifiez les en-têtes de réponse pour obtenir des indications sur les nouvelles tentatives ou les limites de taux.
- Réduisez la fréquence des requêtes et évitez les nouvelles tentatives immédiates en boucle rapprochée.
- Utilisez un backoff exponentiel en suivant les recommandations du point de terminaison concernant les nouvelles tentatives.
Si le problème persiste avec un faible volume de requêtes, indiquez votre fréquence de requêtes et votre comportement en matière de nouvelles tentatives lorsque vous contactez l’Équipe support.
5xx - Erreur côté serveur
Une erreur côté serveur est survenue. Récupérez la réponse d’erreur et les détails de la requête indiqués dans la section « Besoin d’aide supplémentaire ? » et contactez l’Équipe support. Précisez si l’erreur s’est produite une seule fois ou de manière répétée.
Problèmes de livraison des webhooks
Si les événements webhook ne parviennent pas à votre intégration ou ne sont pas traités par celle-ci :
- Vérifiez l’accessibilité. Votre point de terminaison récepteur doit être accessible publiquement via HTTPS et ne doit pas bloquer les requêtes provenant de Pleo.
- Vérifiez les journaux de livraison. Recherchez la tentative de livraison, le statut de la réponse et le temps de réponse. Renvoyez rapidement une réponse 2xx, conformément aux exigences de la documentation webhook.
- Vérifiez la validation de la signature. Utilisez le corps de la requête dans le format requis par la documentation webhook, y compris le corps brut lorsque cela est spécifié.
- Gérez les livraisons en double en toute sécurité. Dédoublonnez en utilisant l’identifiant d’événement ou de webhook spécifié dans la documentation.
Après avoir effectué une modification, vérifiez la livraison suivante. Si elle échoue toujours, incluez l’identifiant d’abonnement, l’identifiant d’événement ou de webhook, l’horodatage de livraison, le statut de réponse du point de terminaison et les journaux nettoyés lorsque vous contactez l’Équipe support.
Vous avez encore besoin d’aide ?
Si les vérifications appropriées ne résolvent pas le problème, contactez le Support Pleo en fournissant :
- Le contexte de la requête : surface API, hôte, environnement, point de terminaison, méthode HTTP et identifiant d’entreprise ou d’organisation.
- L’horodatage : date, heure et fuseau horaire, ainsi que l’identifiant de requête ou de corrélation, si disponible.
- Les détails de l’erreur : statut de la réponse et corps de la réponse nettoyé.
- Les détails de la requête : en-têtes et charge utile nettoyés ; type d’identifiants et identifiant de clé d’API si pertinent, mais jamais le code secret.
- Ce que vous avez essayé : étapes pour reproduire le problème, comportement attendu et comportement constaté, ainsi que les vérifications déjà effectuées.
Pour les problèmes liés aux webhooks, incluez également les détails de livraison mentionnés ci-dessus.
Cet article a-t-il été utile ?
C'est super !
Merci pour votre commentaire
Désolé ! Nous n'avons pas pu vous être utile
Merci pour votre commentaire
Commentaires envoyés
Nous apprécions vos efforts et nous allons corriger l'article