Reemplazo compatible de TomTom Search
Los endpoints Geocode, Reverse Geocode y Fuzzy Search de TomTom responden en tomtom.mygeocode.com con la misma estructura de summary y results, incluido el campo freeformAddress que muestran la mayoría de las integraciones.
Cambia un nombre de host
| Host original |
|
|---|---|
| Usa en su lugar | tomtom.mygeocode.com |
| Parámetro de la clave | key (opcional: cualquier dirección recibe 2.500 solicitudes al día sin clave; pon aquí tu clave de My Geocode para tener crédito, paquetes y un historial de uso) |
curl "https://api.tomtom.com/search/2/geocode/Avenida%20Paulista%201578%20S%C3%A3o%20Paulo.json?key=YOUR_TOMTOM_KEY"curl "https://tomtom.mygeocode.com/search/2/geocode/Avenida%20Paulista%201578%20S%C3%A3o%20Paulo.json?key=YOUR_MYGEOCODE_KEY"Por qué se cambia la gente
El nivel gratuito de TomTom es de 2.500 transacciones al día, igual que el nuestro, pero allí una transacción puede costar varios créditos. Aquí cada llamada es una solicitud, y el uso de pago tiene una opción de tarifa fija.
La misma cuota gratuita, con clave o sin ella. Las solicitudes a tomtom.mygeocode.com cuentan para las mismas 2.500 solicitudes gratuitas al día que tu dirección, o tu clave, recibe en nuestros propios endpoints. Por encima de eso, crédito prepago a 0,0001 € por solicitud, o 50 € al mes por una clave Unlimited. Para registrarte solo necesitas una dirección de correo electrónico.
Endpoints
| Ruta en tomtom.mygeocode.com | Qué hace | Respaldado por |
|---|---|---|
/search/2/geocode/{query}.json | Geocode | Geocodificación directa |
/search/2/structuredGeocode.json?countryCode=...&streetName=... | Geocodificación estructurada | Geocodificación directa |
/search/2/reverseGeocode/{lat},{lon}.json | Geocodificación inversa | Geocodificación inversa |
/search/2/search/{query}.json?typeahead=true | Búsqueda aproximada con typeahead | Autocompletado de direcciones |
Ejemplo de respuesta
Esto es lo que devuelve la solicitud anterior. Los nombres de campo, el anidamiento y los tipos siguen a TomTom. Solo los datos que hay detrás son nuestros.
{
"summary": {
"query": "avenida paulista 1578 sao paulo",
"queryType": "NON_NEAR",
"queryTime": 21,
"numResults": 1,
"offset": 0,
"totalResults": 1,
"fuzzyLevel": 1
},
"results": [
{
"type": "Point Address",
"id": "mg.br.addr.7d1a55f2",
"score": 11.98,
"address": {
"streetNumber": "1578",
"streetName": "Avenida Paulista",
"municipalitySubdivision": "Bela Vista",
"municipality": "São Paulo",
"countrySecondarySubdivision": "São Paulo",
"countrySubdivision": "São Paulo",
"countrySubdivisionCode": "SP",
"postalCode": "01310-200",
"countryCode": "BR",
"country": "Brasil",
"countryCodeISO3": "BRA",
"freeformAddress": "Avenida Paulista 1578, Bela Vista, São Paulo, SP 01310-200",
"localName": "São Paulo"
},
"position": { "lat": -23.561414, "lon": -46.655881 },
"viewport": {
"topLeftPoint": { "lat": -23.560514, "lon": -46.656881 },
"btmRightPoint": { "lat": -23.562314, "lon": -46.654881 }
}
}
]
}Detalles y diferencias
No se necesita clave para las primeras 2.500 solicitudes al día. Para usar una clave de My Geocode, ponla donde iba tu clave de TomTom: el parámetro de consulta key. La cabecera X-API-Key, Authorization: Bearer y la autenticación HTTP Basic (con la clave como nombre de usuario) también funcionan en todos los hosts, así que las bibliotecas cliente que se autentican a su manera siguen funcionando sin cambios.
- Se enrutan la geocodificación de texto libre, la estructurada y la inversa, además del endpoint de búsqueda.
- Las respuestas conservan la estructura
summaryyresultsde TomTom. - Batch Search funciona de las dos maneras.
POST /search/2/batch/sync.jsonresponde hasta 100batchItemsa la vez con la estructura de TomTom (statusCodeyresponsepor elemento,summary).POST /search/2/batch.jsonacepta hasta 10.000, responde 202 con una cabeceraLocation, y el resultado se obtiene desde ahí. Cada elemento del lote cuenta como una solicitud, igual que los cuenta TomTom; un lote mayor que lo que queda de la cuota se rechaza entero con el 429 de TomTom, y obtener un resultado almacenado no cuenta nada.
Si tu cliente depende de un campo o de un comportamiento que no aparece aquí, dínoslo. Las carencias de compatibilidad se corrigen rápido porque suelen ser pequeñas.
Otros hosts compatibles
- Google Maps
- Bing Maps
- HERE
- Mapbox
- Geocode.Farm
- Nominatim (OSM)
- OpenCage
- LocationIQ
- Geoapify
- MapQuest
- Geocodio
- PositionStack
- ip-api
- ipinfo
- ipstack
- Open-Elevation
Cómo funcionan los hosts compatibles, el resumen y los reemplazos compatibles de bibliotecas JavaScript.