Documentation · Dépannage
Erreurs de connexion API
Ce document couvre les problèmes de connexion API courants qui peuvent empêcher l'extension ADP Car Market Hub de récupérer les annonces de véhicules à partir de l'API AutoScout24. Il répertorie les causes probables, les contrôles de diagnostic et les étapes correctives.
Quand utiliser ce document
Lisez ce document lorsque :
- La page État du système signale une erreur de connexion ou affiche « Non connecté ».
- Les exécutions d'importation produisent zéro résultat et le journal contient des erreurs d'authentification ou HTTP.
- Les tentatives d'importation manuelle renvoient des messages d'erreur liés aux identifiants, aux jetons ou à des points de terminaison inaccessibles.
Aperçu
L'extension se connecte à l'API publique AutoScout24 en utilisant un flux d'identifiants client OAuth 2.0. Avant chaque requête API, elle demande un jeton d'accès au point de terminaison de jeton configuré et met en cache le jeton dans une valeur transitoire WordPress pour la durée de sa validité. Toutes les requêtes authentifiées incluent un jeton Bearer dans l'en-tête Authorization.
Les échecs de connexion peuvent se produire à trois niveaux :
- Configuration manquante ou invalide – les réglages requis sont vides ou incorrects.
- Échec de la demande de jeton – le point de terminaison de jeton a renvoyé une erreur ou était inaccessible.
- Échec de la requête API – le jeton a été obtenu mais un appel API ultérieur a échoué avec une erreur HTTP ou un corps de réponse invalide.
Prérequis
Les réglages suivants doivent être configurés dans l'administration de l'extension avant qu'une connexion puisse réussir :
| Réglage | Description |
|---|---|
| API Base URL | L'URL de base du point de terminaison de l'API AutoScout24. Ne doit pas inclure de barre oblique finale. |
| Client ID | Identifiant client OAuth 2.0 fourni par le fournisseur de l'API. |
| Client Secret | Secret client OAuth 2.0 fourni par le fournisseur de l'API. |
| Seller ID(s) | Un ou plusieurs ID de vendeur, séparés par des virgules. Utilisé pour identifier le compte vendeur. |
| Token URL (optionnel) | Surcharge pour l'URL du point de terminaison de jeton. Si laissé vide, l'extension la déduit de l'URL de base sous la forme {BASE_URL}/public/v1/clients/oauth/token. |
| Token Audience (optionnel) | Surcharge pour le paramètre OAuth audience. Si laissé vide, l'extension le déduit du protocole et de l'hôte de l'URL de base. |
Ces valeurs sont fournies par le service API. Vérifiez-les par rapport à votre compte API AutoScout24 ou aux identifiants fournis par le fournisseur d'intégration. Ne saisissez pas d'identifiants de test dans un environnement de production.
Étapes de diagnostic
Étape 1 : Vérifier la page État du système
- Dans l'administration WordPress, allez sur l'onglet Système et aide de l'extension.
- Regardez l'indicateur d'état de la connexion. - S'il affiche un message d'erreur spécifique, notez le code d'erreur et le texte du message. - S'il affiche « Non connecté – aucun Seller ID configuré dans les Réglages », passez à l'étape 2.
Étape 2 : Vérifier les réglages de l'extension
- Allez sur l'onglet Réglages de l'extension.
- Confirmez que API Base URL, Client ID, Client Secret et Seller ID(s) sont tous renseignés.
- Confirmez que l'URL de base n'a pas de barre oblique finale et correspond au format
https://…. - Si vous avez configuré une Token URL ou une Token Audience personnalisée, vérifiez qu'elles sont correctes.
- Enregistrez les réglages et testez à nouveau la connexion depuis la page État du système.
Étape 3 : Lire le fichier journal
Ouvrez le fichier journal de l'extension à l'adresse :
wp-content/uploads/as24ci-logs/adp-car-market-hub.log
Recherchez les entrées récentes contenant les codes d'erreur ou mots-clés suivants :
| Code d'erreur | Signification |
|---|---|
as24ci_missing_credentials | Le Client ID ou le Client Secret est vide. |
as24ci_missing_base_url | L'API Base URL est vide. |
as24ci_token_failed | Le point de terminaison de jeton a renvoyé un statut HTTP autre que 2xx ou un corps JSON invalide. |
as24ci_token_missing | Le point de terminaison de jeton a renvoyé une réponse 2xx mais le corps JSON ne contenait pas de champ access_token. |
as24ci_http_error | Une requête API authentifiée a renvoyé un statut HTTP autre que 2xx. L'entrée de journal inclut l'URL et le code de statut HTTP. |
as24ci_json_error | Une requête API a renvoyé une réponse 2xx mais le corps n'était pas un JSON valide. |
Note : le journal masque automatiquement les valeurs des identifiants. Vous verrez client_secret=*** et Bearer *** à la place des valeurs réelles.
Étape 4 : Tester la connectivité réseau
Si le journal confirme que l'extension a tenté une requête mais a reçu une erreur de connexion :
- Confirmez que votre serveur peut atteindre le point de terminaison de l'API externe. Utilisez un outil tel que
curlouwp shell(WP-CLI) pour effectuer une requête HTTP de test depuis le serveur. - Vérifiez que votre environnement d'hébergement ne bloque pas les connexions HTTPS sortantes sur le port 443.
- Vérifiez qu'un pare-feu, un proxy ou une extension de sécurité ne bloque pas les appels
wp_remote_postouwp_remote_get. - Confirmez que le domaine du point de terminaison de l'API est correctement résolu depuis votre serveur (résolution DNS).
Étape 5 : Vérifier les identifiants expirés ou renouvelés
Si la connexion fonctionnait auparavant et s'est arrêtée :
- Confirmez auprès du fournisseur de l'API ou dans les réglages de votre compte que le Client ID et le Client Secret sont toujours valides et n'ont pas été renouvelés ou révoqués.
- Supprimez la valeur transitoire du jeton d'accès mis en cache. La clé transitoire est
as24ci_access_token. Vous pouvez la supprimer depuis l'administration WordPress via Outils → Supprimer les transients (nécessite une extension de gestion des transients) ou en exécutantdelete_transient('as24ci_access_token')via WP-CLI. - Testez à nouveau la connexion.
Référence de configuration
| Réglage | Où configurer | Notes |
|---|---|---|
| API Base URL | Onglet Réglages de l'extension | Requis. Pas de barre oblique finale. |
| Client ID | Onglet Réglages de l'extension | Requis. |
| Client Secret | Onglet Réglages de l'extension | Requis. Stocké dans wp_options. |
| Seller ID(s) | Onglet Réglages de l'extension | Requis. Séparés par des virgules pour plusieurs vendeurs. |
| Token URL | Onglet Réglages de l'extension | Optionnel. Se rabat sur {BASE_URL}/public/v1/clients/oauth/token. |
| Token Audience | Onglet Réglages de l'extension | Optionnel. Se rabat sur {scheme}://{host} de l'URL de base. |
Notes opérationnelles
- Le jeton d'accès est mis en cache dans une valeur transitoire WordPress (
as24ci_access_token) pour la durée signalée par le champexpires_indans la réponse du jeton, moins 60 secondes comme marge de sécurité. - Toutes les requêtes API utilisent un délai d'expiration HTTP de 30 secondes. Sur les hébergements mutualisés avec des limites de délai d'expiration basses, les requêtes peuvent échouer. Vérifiez ce comportement dans la version actuelle de l'extension avant la publication.
- L'extension utilise
wp_remote_postetwp_remote_get, qui respectent les filtres et réglages de l'API HTTP de WordPress. Toute extension ou configuration qui modifie ou désactive l'API HTTP de WordPress peut affecter la connectivité. - L'API Market Hub (utilisée pour les données de comparaison de prix) utilise une URL de base distincte (
https://api.car-market-hub.ad-promotion.ch/v1). L'accès à celle-ci est régi par la licence de votre extension, et non par une clé saisie séparément — il n'y a pas de clé API Hub gérée par le client. Les problèmes de connexion avec les données Market Hub n'affectent pas l'importation principale AutoScout24. Voir Problèmes d'analyses de marché.
Dépannage
| Symptôme | Cause probable | Contrôle |
|---|---|---|
| « Non connecté – aucun Seller ID configuré » | Le champ Seller IDs est vide | Ajoutez au moins un ID de vendeur dans les Réglages |
| « Missing API credentials » dans le journal | Le Client ID ou le Secret est vide | Renseignez les identifiants dans les Réglages |
| « No API Base URL configured » dans le journal | Le champ Base URL est vide | Saisissez l'URL de base correcte dans les Réglages |
| La demande de jeton échoue avec HTTP 401 | Client ID ou Secret incorrect | Vérifiez les identifiants auprès du fournisseur de l'API |
| La demande de jeton échoue avec HTTP 403 | Le client peut manquer d'autorisations pour le point de terminaison | Vérifiez l'abonnement à l'API ou contactez le fournisseur |
| La demande de jeton expire | Le serveur ne peut pas atteindre le point de terminaison de jeton | Vérifiez l'accès réseau sortant depuis le serveur |
| La requête API échoue avec HTTP 401 | Le jeton est expiré ou invalide | Supprimez la valeur transitoire as24ci_access_token et réessayez |
| La requête API échoue avec HTTP 404 | L'URL de base ou le chemin est incorrect | Vérifiez l'URL de base et la version de l'API avec le fournisseur |
as24ci_json_error | L'API a renvoyé un format non-JSON (page d'erreur HTML de proxy ou CDN) | Vérifiez les problèmes de proxy, de pare-feu ou de CDN |
| Le test de connexion réussit mais les importations renvoient zéro véhicule | Le Seller ID est correct mais n'a pas d'annonces actives ou en ligne | Vérifiez que les annonces sont actives dans AutoScout24 |