Toute erreur a la même forme : un code stable, un message lisible en français et l’identifiant de la requête.
La forme d’une erreur
Le corps d’une réponse en erreur est { "error": { "code", "message", "request_id", "details"? } } :
code : stable, c’est lui que votre code doit tester ;
message : explication en français, à journaliser ou à montrer, mais dont le texte peut changer ;
request_id : identifiant de la requête, aussi dans l’en-tête X-Request-Id de toute réponse, erreur ou non ;
details : présent pour certaines erreurs seulement (champs invalides, droit exigé).
Journalisez X-Request-Id avec vos erreurs et citez-le si vous nous écrivez (contact@regroupe-immo.fr) : il nous permet de retrouver la requête.
Les codes
400 · Requête invalide
Code
Cause
Que faire
validation_error
Paramètre invalide, manquant ou incohérent : aucun secteur ou deux, cercle incomplet, identifiant mal formé… details liste les champs en cause (path, message).
Corrigez la requête ; ne la renvoyez pas telle quelle.
bad_request
Requête refusée au traitement (valeurs incohérentes).
Corrigez la requête.
invalid_cursor
Curseur illisible, obtenu avec un autre tri ou sur un autre point d’entrée.
Renvoyez le next_cursor reçu, tel quel, avec le même sort.
since_too_old
since remonte à plus de 30 jours.
Importez le secteur, puis suivez le flux à partir de sa tête.
api_key_in_url
Clé passée dans l’adresse.
Passez-la dans l’en-tête Authorization, et remplacez-la : elle a pu être journalisée.
401 · Clé refusée
Ces réponses portent l’en-tête WWW-Authenticate: Bearer realm="regroupe-immo".