Surveillez l'utilisation de votre clé avant d'atteindre une limite
Surveiller vos en-têtes de quota au fil de l'eau vous indique quand une limite approche, bien avant qu'une requête ne soit effectivement refusée.
Les champs d'adresse en texte libre recueillent toutes sortes d'habitudes de formatage : espaces superflus, majuscules incohérentes, abréviations développées de manière inégale et, parfois, un caractère parasite collé depuis ailleurs. Rien de tout cela ne fait nécessairement échouer une requête de géocodage, mais nettoyer la saisie au préalable améliore généralement la qualité des correspondances.
Supprimez les espaces en début et en fin de chaîne et réduisez les espaces répétés à un seul. Retirez les caractères de contrôle et la ponctuation parasite qui n'a manifestement rien à faire dans une adresse. Ne touchez pas au contenu réel de l'adresse, car l'endpoint de géocodage direct est conçu pour analyser du texte libre et n'a pas besoin que vous le découpiez vous-même en champs distincts de rue, de ville et de code postal.
GET /v1/forward?q=221b baker st, london&limit=1L'endpoint résoudra généralement quand même une saisie peu formatée comme celle-ci, car il est conçu pour traiter du texte d'adresse réel plutôt qu'un modèle rigide, mais une chaîne plus propre réduit les risques de correspondance ambiguë ou de faible confiance sur des données réellement désordonnées.
Une requête qui utilise des abréviations courantes, comme « St » pour « Street » ou « Ave » pour « Avenue », n'a pas besoin d'être développée avant l'envoi.
GET /v1/forward?q=500 5th Ave, New York&limit=1Développer vous-même chaque abréviation avant d'envoyer la requête représente un travail supplémentaire qui change rarement le résultat, car l'endpoint gère déjà les abréviations standard lors de l'analyse d'un texte d'adresse ordinaire. Concentrez vos efforts de nettoyage sur les saisies réellement défectueuses, comme les sauts de ligne collés ou les artefacts d'encodage, plutôt que de réécrire des abréviations qui n'ont jamais posé problème.
Si vous savez déjà dans quel pays une adresse devrait se trouver, grâce à une adresse de facturation enregistrée ou à l'orientation régionale d'un site, transmettez-le avec le paramètre countries pour limiter les correspondances ambiguës avec des lieux portant un nom similaire ailleurs dans le monde.
GET /v1/forward?q=Springfield Main Street&countries=US&limit=3Trop nettoyer une adresse en supprimant tout ce qui semble inhabituel peut retirer des informations dont le géocodeur avait réellement besoin. Un numéro d'appartement ou de logement, une indication d'étage ou un nom de bâtiment accolé à une adresse postale est un contenu significatif et non du bruit, même s'il ne ressemble pas au reste de l'adresse. Limitez votre nettoyage aux espaces, à l'encodage et aux caractères manifestement parasites, et laissez intact tout ce qui pourrait plausiblement faire partie de l'adresse.
La normalisation réduit les mauvaises correspondances, elle ne les élimine pas entièrement. Vérifiez toujours le champ de confiance du résultat plutôt que de supposer qu'un résultat renvoyé est automatiquement correct simplement parce que la requête a abouti.
Nettoyer la chaîne saisie avant de l'envoyer ne change pas le nombre de requêtes que coûte la recherche : c'est toujours une requête par adresse. Ce qui change, ce sont les chances que la requête envoyée renvoie un résultat utile, plutôt que de nécessiter une seconde tentative corrigée qui coûterait une seconde requête.
Bien normaliser dès le départ signifie moins de recherches gaspillées et des données plus propres en aval. Consultez la documentation du géocodage direct pour l'ensemble des paramètres pris en charge, y compris countries et limit.