Traitez la réponse
Distinguez les corps de réponse et les diagnostics
Les erreurs400, 401, 422 et les erreurs applicatives par défaut utilisent des Problem Details. Le corps contient traceId ; lorsqu’il est émis par Immoteur, l’en-tête X-Trace-Id porte le même identifiant de corrélation. Conservez les identifiants disponibles avec le code de statut, l’endpoint et l’heure de la requête. Ne supposez pas qu’une réponse 403 ou 404 contient ce corps ou ces en-têtes.
La réponse 409 est un corps application/json de configuration qui contient message, configurationUrl et documentationUrl ; elle ne promet pas de trace ID. Suivez configurationUrl ou ouvrez API → Accès aux données dans le dashboard, puis envoyez une nouvelle requête. La réponse 429 est également différente : son type de contenu est application/json et son corps est { "message": "Too Many Requests" }. Attendez Retry-After avant de reprendre.
Lisez les en-têtes de limite et de diagnostic
Les valeurs de limite sont ordonnées par seconde, minute, puis jour. Elles dépendent de votre abonnement : lisez la réponse plutôt que de coder des valeurs d’exemple en dur.Reprenez les échecs temporaires en sécurité
Une indisponibilité503 du limiteur utilise application/json avec { "message": "Rate limit service unavailable" } et un délai Retry-After. Respectez ce délai avant de réessayer ; la réponse d’indisponibilité actuellement observée indique une seconde. Pour les autres réponses 5xx transitoires ou les erreurs réseau, utilisez un backoff avec un nombre de réessais borné. Journalisez les trace IDs disponibles, le code de statut et le contexte de la requête pour analyser un échec persistant. Ne réessayez pas 400, 401, 403, 409, 404 ou 422 avant d’avoir appliqué la correction indiquée plus haut.
Utilisez curl --include pendant l’intégration pour consulter les en-têtes et le corps de réponse :