API Distances Matriz | Time and distance of trip

Pautas para desarrolladores
Antes de empezar
Es un servicio de API HTTP que está diseñado para calcular todas las combinaciones posibles entre el punto de partida y el destino y permite considerar la congestión del tráfico y un modo de transporte específico. Esta API de tiempo de viaje está disponible en cualquier parte del mundo y garantiza un nivel similar de precisión y respuesta con las mejores herramientas análogas, como la API de matriz de distancias de Google.

En esta documentación de la API Distance Matrix, encontrará una introducción sobre el uso del producto y material de referencia sobre los parámetros disponibles.

¿Qué se puede hacer con la matriz de distancias de la API?

Este producto garantiza a los desarrolladores un cálculo del tiempo de viaje y la distancia entre algunos puntos. Por lo tanto, los diferentes tipos de servicios de entrega y mensajería, como la entrega de alimentos, productos y medicamentos, tienen importantes beneficios gracias a su uso. Además, puede utilizar nuestra API en la planificación de rutas, la logística y el transporte, así como en el desarrollo de software, el sector inmobiliario y los servicios domésticos y empresariales.

En particular, el producto es muy útil para las aplicaciones de taxi. Permite calcular el tiempo de entrega del automóvil respetando los atascos y la congestión.

Para elegir la ruta más corta del servicio de entrega de alimentos desde cafeterías y restaurantes, nuestra API de tiempo de viaje calcula el tiempo de entrega desde cada restaurante a la dirección del cliente teniendo en cuenta la congestión de la carretera.

¿Por qué usar la API Distance Matrix?

Puede utilizar nuestro producto para encontrar el punto de destino más cercano al punto de origen o para cualquier otro propósito. La API devolverá la duración y la distancia de la ruta más rápida o corta de cada elemento. A su vez, cada elemento es un par origen-destino.

Esta solución funciona en todo el mundo y está disponible para los modos de viaje en automóvil, a pie, en bicicleta y en transporte público.

Si el tráfico en tiempo real no afecta significativamente a su negocio, puede ahorrar tiempo y aumentar el rendimiento del producto utilizando su versión sin supervisión del tráfico. Para un gran volumen de cálculo, puede considerar nuestra API de matriz de distancia asincrónica.

Cómo usar la matriz de distancia de la API

Usted proporciona los datos de entrada (direcciones o coordenadas) para los que desee hacer una estimación. Recibirás una respuesta en formato JSON y la respuesta contendrá información sobre la duración de cada sección de ruta construida. El tiempo de viaje calculado para una sección de ruta siempre tiene en cuenta las condiciones actuales del tráfico y la previsión del tráfico.

Por ejemplo, hay tres ubicaciones de inicio A, B y C, y tres ubicaciones de destino E, B y D. La API de distancia devuelve la matriz de duraciones en segundos y distancias en metros entre las ubicaciones. No devuelve geometrías de ruta.
origenes/destinos
E
B
D
UN
A a E
A a B
A a D
B
B a E
B a B = 0
B a D
C
C a E
C a B
C a D
Es posible que el tiempo y la distancia entre los puntos no sean simétricos, ya que las rutas pueden diferir según la dirección debido a las calles de sentido único o a las restricciones de giro. Por ejemplo, de A a B puede tener una duración diferente a la de B a A.

En las siguientes secciones encontrará información más detallada basada en ejemplos de API de Distance Matrix.

Parámetros de solicitud

La solicitud de la API Distance Matrix se creó específicamente para que fuera similar al formato de solicitud de la API de Google Distance Matrix. Puedes obtener más información en Migrar a la API Distancematrix.ai página.
Una solicitud de API de Distance Matrix tiene el siguiente formulario:
OBTENER:
https://api.distancematrix.ai/maps/api/distancematrix/json?origins=<origin_location_1|origin_location_2|...|origin_location_n>&destinations=<destination_location_1|destination_location_2|...|destination_location_n>&key=<your_access_token>
Copied!
Un ejemplo de solicitud de la matriz de distancias de la API:
OBTENER:
https://api.distancematrix.ai/maps/api/distancematrix/json?origins=51.4822656,-0.1933769&destinations=51.4994794,-0.1269979&key=<your_access_token>
Copied!

Parámetros requeridos

orígenes: un punto de partida para calcular la distancia y el tiempo de viaje. Puede indicar una o más ubicaciones separadas por el carácter vertical (|) en forma de dirección o coordenadas de latitud/longitud:
1. Si pasa una dirección, el servicio geocodifica la cadena y la convierte en una coordenada de latitud/longitud para calcular la distancia. Esta coordenada puede ser diferente de la que devuelve la API de geocodificación (por ejemplo, la entrada de un edificio en lugar de su centro).
Show example
Ocultar ejemplo
Example of request with Addresse:
OBTENER:
https://api.distancematrix.ai/maps/api/distancematrix/json?origins=Westminster Abbey, 20 Deans Yd, Westminster, London SW1P 3PA, United Kingdom&destinations=St John's Church, North End Rd, Fulham, London SW6 1PB, United Kingdom&key=<your_access_token>
Copied!
Respuesta
BODY
{
    "destination_addresses": [
        "St John's Church, North End Rd, London SW6 1PB, United Kingdom"
    ],
    "origin_addresses": [
        "Westminster Abbey, 20 Deans Yd, London SW1P 3PA, United Kingdom"
    ],
    "rows": [
        {
            "elements": [
                {
                    "distance": {
                        "text": "7.3 km",
                        "value": 7346
                    },
                    "duration": {
                        "text": "23 mins",
                        "value": 1401
                    },
                    "origin": "Westminster Abbey, 20 Deans Yd, Westminster, London SW1P 3PA, United Kingdom",
                    "destination": "St John's Church, North End Rd, Fulham, London SW6 1PB, United Kingdom",
                    "status": "OK"
                }
            ]
        }
    ],
    "status": "OK"
}
Copied!
2. Si pasa las coordenadas de latitud/longitud, se utilizan sin cambios para calcular la distancia. Asegúrese de que no haya espacio entre los valores de latitud y longitud.
Mostrar ejemplo
Ocultar ejemplo
Ejemplo de solicitud con coordenadas:
OBTENER:
https://api.distancematrix.ai/maps/api/distancematrix/json?origins=51.4822656,-0.1933769&destinations=51.4994794,-0.1269979&key=<your_access_token>
Copied!
Respuesta
CUERPO
{
    "destination_addresses": [
        "Westminster Abbey, London SW1P 3PA, UK"
    ],
    "origin_addresses": [
        "Chapel, London SW6 1BA, UK"
    ],
    "rows": [
        {
            "elements": [
                {
                    "distance": {
                        "text": "7.6 km",
                        "value": 7567
                    },
                    "duration": {
                        "text": "22 mins",
                        "value": 1359
                    },
                    "origin": "51.4822656,-0.1933769",
                    "destination": "51.4994794,-0.1269979",
                    "status": "OK"
                }
            ]
        }
    ],
    "status": "OK"
}
Copied!
  • destinos: una o más ubicaciones para usar como destino final para calcular la distancia y el tiempo de viaje. Las opciones del parámetro de destino son las mismas que las del parámetro original, tal y como se ha descrito anteriormente.
  • clave: la clave de API de su aplicación.

Parámetros opcionales

  • modo (el predeterminado es conducir): especifica el modo de transporte que se utilizará al calcular la distancia. Los valores válidos y otros detalles de la solicitud se especifican en el Modos de viaje sección de este documento.
  • idioma: idioma que se utiliza para devolver los resultados.
    • __wf_reserved_heredar
      Consulta la lista de idiomas compatibles.
    • __wf_reserved_heredar
      Si no se proporciona el idioma, la API intenta usar el idioma preferido, tal como se especifica en el encabezado Accept-Language, o el idioma nativo del dominio desde el que se envía la solicitud.
    • __wf_reserved_heredar
      La API hace todo lo posible para proporcionar una dirección física que sea legible tanto para el usuario como para los lugareños. Para lograr ese objetivo, devuelve las direcciones postales en el idioma local, transliteradas a un script que el usuario pueda leer si es necesario, respetando el idioma preferido. Todas las demás direcciones se devuelven en el idioma preferido. Todos los componentes de la dirección se devuelven en el mismo idioma, que se elige del primer componente.
    • __wf_reserved_heredar
      Si un nombre no está disponible en el idioma preferido, la API usa la coincidencia más cercana.
    • __wf_reserved_heredar
      El idioma preferido tiene una pequeña influencia en el conjunto de resultados que la API decide devolver y en el orden en que se devuelven. El geocodificador interpreta las abreviaturas de forma diferente según el idioma, como las abreviaturas de los tipos de calles o los sinónimos que pueden ser válidos en un idioma pero no en otro. Por ejemplo, utca y tér son sinónimos de calle en húngaro.
Mostrar idiomas
Ocultar idiomas
Código de idioma
Idioma
Código de idioma
Idioma
af
afrikáans
ja
japonés
m2
albanesa
kn
canarés
soy
amárico
kk
Kazajo
soy
árabe
km
Jemer
por qué
armenio
ko
coreano
az
Azerbaiyano
cielo
Kirguís
eu
vasco
lo
Lao
estar
Bielorruso
lv
letón
bn
bengalí
lt
lituano
bs
bosnio
km
macedónio
bolsa
búlgaro
ms
malayo
mi
birmano
ml
Malayalam
ca
catalán
señor
marathi
zh
chino
mn
mongol
zh-CN
Chino (simplificado)
nuevo
nepalés
zh-HK
Chino (Hong Kong)
no
noruego
zh-TW
Chino (tradicional)
pl
polaco
hora
croata
pt
portugués
cs
checa
pt-BR
Portugués (Brasil)
da
danés
pt-PT
Portugués (Portugal)
nl
holandesa
pa
panyabí
es
Inglés
o
rumano
en-AU
Inglés (australiano)
ru
rusa
en-GB
Inglés (Gran Bretaña)
sr
serbio
et
estonio
es
cingalés
fa
farsi
sk
eslovaco
fi
finlandés
sl
esloveno
filmar
filipino

española
para
francesa
es-419
Español (Latinoamérica)
FR-CA
Francés (Canadá)
sw
swahili
gl
gallego
sv
sueco
ka
georgiano

Tamil
de
alemán
te
Telugu
el
griego
la
tailandés
pistola
Gujarati
tr
turca
es
hebreo
Reino Unido
ucraniana
hola
hindi
nuestro
Urdu
hu
húngara
nosotros
Uzbeko
es
islandés
vi
vietnamita
identificación
indonesio
zu
zulú
eso
italiano


  • evitar: introduce restricciones en la ruta. Los valores válidos se especifican en Restricciones sección de este documento. Solo se puede especificar una restricción.
  • unidades: especifica el sistema de unidades que se utilizará al expresar la distancia como texto. Consulte el Sistemas de unidades sección de este documento para obtener más información.
  • arrival_time: especifica la hora de llegada deseada para las solicitudes de tránsito, en segundos desde la medianoche del 1 de enero de 1970, UTC. Puedes especificar departure_time o arrival_time, pero no ambos. Tenga en cuenta que arrival_time debe especificarse como un entero.
Mostrar ejemplo
Ocultar ejemplo
Ejemplo de solicitud con arrival_time:
OBTENER:
https://api.distancematrix.ai/maps/api/distancematrix/json?origins=51.507033,-0.1277161&destinations=52.486243,-1.890401&arrival_time=now&transit_mode=bus&mode=transit&key=<your_access_token>
Copied!
Respuesta
CUERPO
{
    "destination_addresses": [
        "Raw Network, Sherborne B16 8FN, United Kingdom"
    ],
    "origin_addresses": [
        "Giaralis Karavasilis Tsavdaridis, 49 The Mall, London N14 6LR, United Kingdom"
    ],
    "rows": [
        {
            "elements": [
                {
                    "distance": {
                        "text": "166.4 km",
                        "value": 166409
                    },
                    "duration": {
                        "text": "4 hour 2 mins",
                        "value": 14524
                    },
                    "origin": "51.507033,-0.1277161",
                    "destination": "52.486243,-1.890401",
                    "status": "OK"
                }
            ]
        }
    ],
    "status": "OK"
}
Copied!
  • departure_time: la hora de salida deseada. Puede especificar la hora como un entero en segundos desde la medianoche del 1 de enero de 1970 (UTC). Como alternativa, puede especificar un valor de ahora, que establece la hora de salida en la hora actual (corrija al segundo más cercano). La hora de salida se debe establecer en la hora actual o en algún momento futuro. No puede estar en el pasado. Los resultados de una solicitud determinada pueden variar con el tiempo debido a los cambios en la red de carreteras, las condiciones medias del tráfico actualizadas y la naturaleza distribuida del servicio. Los resultados también pueden variar entre rutas casi equivalentes en cualquier momento o frecuencia. La hora de salida se puede especificar en dos casos:
    • __wf_reserved_heredar
      Para las solicitudes en las que el modo de viaje es tránsito: si lo desea, puede especificar uno de los modos departure_time o arrival_time. Si no se especifica ninguna hora, la hora de salida se establece de forma predeterminada en la hora actual (es decir, la hora de salida se establece de forma predeterminada en la hora actual).
    • __wf_reserved_heredar
      Para las solicitudes en las que el modo de viaje es conducir: puedes especificar la hora de salida para recibir una ruta y una duración del viaje (campo de respuesta: duration_in_traffic) que tengan en cuenta las condiciones del tráfico. La hora de salida debe configurarse en la hora actual o en algún momento futuro. No puede estar en el pasado.
* Nota: Si no se especifica la hora de salida, la elección de la ruta y la duración se basan en la red de carreteras y en las condiciones del tráfico en función del tiempo promedio. Los resultados de una solicitud determinada pueden variar con el tiempo debido a los cambios en la red de carreteras, las condiciones medias del tráfico actualizadas y la naturaleza distribuida del servicio. Los resultados también pueden variar entre rutas casi equivalentes en cualquier momento o frecuencia.
Mostrar ejemplo
Ocultar ejemplo
Ejemplo de solicitud con departure_time:
OBTENER:
https://api.distancematrix.ai/maps/api/distancematrix/json?origins=51.507033,-0.1277161&destinations=52.486243,-1.890401&departure_time=now&key=<your_access_token>
Copied!
Respuesta
CUERPO
{
    "destination_addresses": [
        "Raw Network, Sherborne B16 8FN, United Kingdom"
    ],
    "origin_addresses": [
        "Giaralis Karavasilis Tsavdaridis, 49 The Mall, London N14 6LR, United Kingdom"
    ],
    "rows": [
        {
            "elements": [
                {
                    "distance": {
                        "text": "207.3 km",
                        "value": 207323
                    },
                    "duration": {
                        "text": "2 hour 27 mins",
                        "value": 8844
                    },
                    "duration_in_traffic": {
                        "text": "2 hour 29 mins",
                        "value": 8968
                    },
                    "origin": "51.507033,-0.1277161",
                    "destination": "52.486243,-1.890401",
                    "status": "OK"
                }
            ]
        }
    ],
    "status": "OK"
}
Copied!
  • traffic_model (el valor predeterminado es best_guess): especifica las suposiciones que se deben usar al calcular el tiempo de tráfico. Esta configuración afecta al valor devuelto en el campo duration_in_traffic de la respuesta, que contiene el tiempo previsto de tráfico según los promedios históricos. El parámetro traffic_model solo se puede especificar para las solicitudes en las que el modo de viaje sea conducir y en las que la solicitud incluya una hora de salida. Los valores disponibles para este parámetro son:
    • __wf_reserved_heredar
      best_guess (predeterminado) indica que la duration_in_traffic devuelta debe ser la mejor estimación del tiempo de viaje, dado lo que se sabe sobre las condiciones históricas del tráfico y el tráfico en tiempo real. El tráfico en tiempo real adquiere más importancia cuanto más se acerca la hora de salida a la fecha actual.
    • __wf_reserved_heredar
      pesimistic indica que la duration_in_traffic devuelta debería ser mayor que el tiempo de viaje real la mayoría de los días, aunque algunos días con condiciones de tráfico particularmente malas pueden superar este valor. Afecta al campo de la respuesta distance_in_traffic_model y devuelve la ruta más corta.
    • __wf_reserved_heredar
      optimista indica que la duración del tráfico devuelto debería ser inferior al tiempo de viaje real la mayoría de los días, aunque algunos días con condiciones de tráfico particularmente buenas pueden superar este valor. Afecta al campo de la respuesta distance_in_traffic_model y devuelve la ruta más corta.
Mostrar ejemplo
Ocultar ejemplo
Ejemplo de solicitud con traffic_model:
OBTENER:
https://api.distancematrix.ai/maps/api/distancematrix/json?origins=51.507033,-0.1277161&destinations=52.486243,-1.890401&traffic_model=pessimistic&departure_time=now&key=<your_access_token>
Copied!
Respuesta
CUERPO
{
    "destination_addresses": [
        "Raw Network, Sherborne B16 8FN, United Kingdom"
    ],
    "origin_addresses": [
        "Giaralis Karavasilis Tsavdaridis, 49 The Mall, London N14 6LR, United Kingdom"
    ],
    "rows": [
        {
            "elements": [
                {
                    "distance": {
                        "text": "207.3 km",
                        "value": 207323
                    },
                    "duration": {
                        "text": "2 hour 27 mins",
                        "value": 8844
                    },
                    "duration_in_traffic": {
                        "text": "4 hour 0 mins",
                        "value": 14400
                    },
                    "distance_in_traffic_model": {
                        "text": "118 miles",
                        "value": 189274
                    },
                    "origin": "51.507033,-0.1277161",
                    "destination": "52.486243,-1.890401",
                    "status": "OK"
                }
            ]
        }
    ],
    "status": "OK"
}
Copied!
  • transit_mode: especifica uno o más modos de tránsito preferidos. Este parámetro solo se puede especificar para las solicitudes en las que el modo es de tránsito. El parámetro admite los siguientes argumentos:
    • __wf_reserved_heredar
      bus indica que la ruta calculada debería preferir viajar en autobús.
    • __wf_reserved_heredar
      metro indica que la ruta calculada debería preferir viajar en metro.
    • __wf_reserved_heredar
      tren indica que la ruta calculada debería preferir viajar en tren.
    • __wf_reserved_heredar
      tranvía indica que la ruta calculada debería preferir viajar en tranvía y tren ligero.
    • __wf_reserved_heredar
      rail indica que la ruta calculada debería preferir viajar en tren, tranvía, tren ligero y metro. Esto equivale a transit_mode=train|tram|subway.
Mostrar ejemplo
Ocultar ejemplo
Ejemplo de solicitud con transit_mode:
OBTENER:
https://api.distancematrix.ai/maps/api/distancematrix/json?origins=51.507033,-0.1277161&destinations=52.486243,-1.890401&transit_mode=bus|train|tram|subway&mode=transit&departure_time=now&key=<your_access_token>
Copied!
Respuesta
CUERPO
{
    "destination_addresses": [
        "Raw Network, Sherborne B16 8FN, United Kingdom"
    ],
    "origin_addresses": [
        "Giaralis Karavasilis Tsavdaridis, 49 The Mall, London N14 6LR, United Kingdom"
    ],
    "rows": [
        {
            "elements": [
                {
                    "distance": {
                        "text": "207.3 km",
                        "value": 207323
                    },
                    "duration": {
                        "text": "2 hour 27 mins",
                        "value": 8844
                    },
                    "duration_in_traffic": {
                        "text": "2 hour 29 mins",
                        "value": 8968
                    },
                    "origin": "51.507033,-0.1277161",
                    "destination": "52.486243,-1.890401",
                    "status": "OK"
                }
            ]
        }
    ],
    "status": "OK"
}
Copied!

Modos de viaje

Para el cálculo de las distancias, puede especificar el modo de transporte que va a utilizar. De forma predeterminada, las distancias se calculan para el modo de conducción. Se admiten los siguientes modos de viaje:
  • conducir (predeterminado) indica el cálculo de la distancia utilizando la red de carreteras.
  • caminar solicita el cálculo de la distancia para caminar por senderos y aceras peatonales (cuando esté disponible).
  • el ciclismo solicita el cálculo de la distancia para andar en bicicleta por carriles bici y calles preferidas (cuando esté disponible).
  • el tránsito solicita el cálculo de la distancia a través de rutas de transporte público (cuando estén disponibles). Si configuras el modo como tránsito, debes especificar una hora de salida o una hora de llegada. Si no se especifica ninguna hora, la hora de salida se establece de forma predeterminada en la hora actual (es decir, la hora de salida se establece de forma predeterminada en la hora actual). También debes incluir un transit_mode.
Mostrar ejemplo
Ocultar ejemplo
Ejemplo de solicitud con modos de viaje:
OBTENER:
https://api.distancematrix.ai/maps/api/distancematrix/json?origins=51.4822656,-0.1933769&destinations=51.4994794,-0.1269979&mode=walking&departure_time=now&key=<your_access_token>
Copied!
Respuesta
CUERPO
{
    "destination_addresses": [
        "Westminster Abbey, London SW1P 3PA, UK"
    ],
    "origin_addresses": [
        "Chapel, London SW6 1BA, UK"
    ],
    "rows": [
        {
            "elements": [
                {
                    "distance": {
                        "text": "5.7 km",
                        "value": 5699
                    },
                    "duration": {
                        "text": "1 hour 12 mins",
                        "value": 4379
                    },
                    "origin": "51.4822656,-0.1933769",
                    "destination": "51.4994794,-0.1269979",
                    "status": "OK"
                }
            ]
        }
    ],
    "status": "OK"
}
Copied!

Traffic information

Traffic information is use when todo Se aplica lo siguiente (estas son las condiciones necesarias para recibir el campo duration_in_traffic en la respuesta de Distance Matrix):
  • El parámetro del modo de viaje es conducir o no está especificado (conducir es el modo de viaje predeterminado).
  • La solicitud incluye un parámetro departure_time válido. El departure_time se puede establecer en la hora actual o en otro momento.
Si lo desea, puede incluir el parámetro traffic_model en la solicitud para especificar las suposiciones que se utilizarán para calcular el tiempo de tráfico.
Show example
Ocultar ejemplo
Example of request with traffic information:
OBTENER:
https://api.distancematrix.ai/maps/api/distancematrix/json?origins=51.4822656,-0.1933769&destinations=51.4994794,-0.1269979&mode=driving&departure_time=now&key=<your_access_token>
Copied!
Respuesta
BODY
{
    "destination_addresses": [
        "Westminster Abbey, London SW1P 3PA, UK"
    ],
    "origin_addresses": [
        "Chapel, London SW6 1BA, UK"
    ],
    "rows": [
        {
            "elements": [
                {
                    "distance": {
                        "text": "7.6 km",
                        "value": 7567
                    },
                    "duration": {
                        "text": "22 mins",
                        "value": 1359
                    },
                    "duration_in_traffic": {
                        "text": "23 mins",
                        "value": 1395
                    },
                    "origin": "51.4822656,-0.1933769",
                    "destination": "51.4994794,-0.1269979",
                    "status": "OK"
                }
            ]
        }
    ],
    "status": "OK"
}
Copied!

Restricciones

Se pueden calcular las distancias que cumplan con ciertas restricciones. Las restricciones se indican mediante el uso del parámetro avoid y un argumento para ese parámetro que indica la restricción que se debe evitar. Se admiten las siguientes restricciones:
  • evitar=peajes
  • evitar=autopistas
  • avoid=ferries
  • avoid=interior
* Nota: la adición de restricciones no excluye las rutas que incluyen la función restringida; simplemente sesga el resultado hacia rutas más favorables.
Show example
Ocultar ejemplo
Example of request with restrictions:
OBTENER:
https://api.distancematrix.ai/maps/api/distancematrix/json?origins=51.4822656,-0.1933769&destinations=51.4994794,-0.1269979&mode=driving&departure_time=now&avoid=ferries&key=<your_access_token>
Copied!
Respuesta
BODY
{
    "destination_addresses": [
        "Westminster Abbey, London SW1P 3PA, UK"
    ],
    "origin_addresses": [
        "Chapel, London SW6 1BA, UK"
    ],
    "rows": [
        {
            "elements": [
                {
                    "distance": {
                        "text": "7.6 km",
                        "value": 7567
                    },
                    "duration": {
                        "text": "22 mins",
                        "value": 1359
                    },
                    "duration_in_traffic": {
                        "text": "26 mins",
                        "value": 1568
                    },
                    "origin": "51.4822656,-0.1933769",
                    "destination": "51.4994794,-0.1269979",
                    "status": "OK"
                }
            ]
        }
    ],
    "status": "OK"
}
Copied!

Sistemas de unidades

Los resultados de la matriz de distancia contienen texto dentro de los campos de distancia para indicar la distancia de la ruta calculada. Se puede especificar el sistema de unidades que se va a utilizar:
  • units=metric (predeterminado) devuelve las distancias en kilómetros y metros.
  • units=imperial devuelve las distancias en millas y pies.
Mostrar ejemplo
Ocultar ejemplo
Ejemplo de solicitud con sistema de unidades:
OBTENER:
https://api.distancematrix.ai/maps/api/distancematrix/json?origins=51.4822656,-0.1933769&destinations=51.4994794,-0.1269979&departure_time=now&units=imperial&key=<your_access_token>
Copied!
Respuesta
CUERPO
{
    "destination_addresses": [
        "Westminster Abbey, London SW1P 3PA, UK"
    ],
    "origin_addresses": [
        "Chapel, London SW6 1BA, UK"
    ],
    "rows": [
        {
            "elements": [
                {
                    "distance": {
                        "text": "4.7 mi",
                        "value": 7567
                    },
                    "duration": {
                        "text": "22 mins",
                        "value": 1359
                    },
                    "duration_in_traffic": {
                        "text": "26 mins",
                        "value": 1568
                    },
                    "origin": "51.4822656,-0.1933769",
                    "destination": "51.4994794,-0.1269979",
                    "status": "OK"
                }
            ]
        }
    ],
    "status": "OK"
}
Copied!
* Nota: esta configuración del sistema de unidades solo afecta al texto que se muestra en los campos de distancia. Los campos de distancia también contienen valores que siempre se expresan en metros.

Ejemplo de respuesta

La respuesta contiene una matriz de objetos de filas, cada fila contiene un origen emparejado con cada destino. Cada elemento del objeto de la matriz contiene las propiedades de una sola variante de ruta. Para obtener una descripción detallada de los elementos, consulte la sección Elementos de respuesta de la matriz de distancia.
Respuesta
CUERPO
{
    "destination_addresses": [
        "Westminster Abbey, London SW1P 3PA, UK"
    ],
    "origin_addresses": [
        "Chapel, London SW6 1BA, UK"
    ],
    "rows": [
        {
            "elements": [
                {
                    "distance": {
                        "text": "7.6 km",
                        "value": 7567
                    },
                    "duration": {
                        "text": "22 mins",
                        "value": 1359
                    },
                    "origin": "51.4822656,-0.1933769",
                    "destination": "51.4994794,-0.1269979",
                    "status": "OK"
                }
            ]
        }
    ],
    "status": "OK"
}
Copied!

Elementos de respuesta de la matriz de distancia

Las respuestas de Distance Matrix contienen los siguientes elementos raíz:
  • el estado contiene los metadatos de la solicitud. Consulte Códigos de estado abajo.
  • origin_addresses contiene una matriz de direcciones devueltas por la API desde tu solicitud original. El geocodificador las formatea y las localiza de acuerdo con el parámetro de idioma que se transfirió con la solicitud.
  • destination_addresses contiene una matriz de direcciones devueltas por la API desde tu solicitud inicial. Al igual que con origin_addresses, están localizadas si es necesario.
  • las filas contienen una matriz de elementos, que a su vez contienen elementos de estado, duración y distancia.

Códigos de estado

Los campos de estado del objeto de respuesta contienen el estado de la solicitud y pueden contener información de depuración útil. La API Distance Matrix muestra un campo de estado de nivel superior con información sobre la solicitud en general, así como un campo de estado para cada campo de elemento con información sobre ese emparejamiento origen-destino en particular.

Códigos de estado de nivel superior

  • Aceptar indica que la respuesta contiene un resultado válido.
  • INVALID_REQUEST indica que la solicitud proporcionada no es válida.
  • MAX_ELEMENTS_EXCEEDED indica que el producto de origen y destino supera el límite por consulta.
  • OVER_DAILY_LIMIT indica cualquiera de las siguientes opciones:
    • __wf_reserved_heredar
      Falta la clave de API o no es válida.
    • __wf_reserved_heredar
      La facturación no se ha activado en tu cuenta.
    • __wf_reserved_heredar
      Se ha superado un límite de uso autoimpuesto.
    • __wf_reserved_heredar
      El método de pago proporcionado ya no es válido (por ejemplo, una tarjeta de crédito ha caducado).
  • OVER_QUERY_LIMIT indica que el servicio ha recibido demasiadas solicitudes de tu aplicación dentro del período de tiempo permitido.
  • REQUEST_DENIED indica que el servicio denegó el uso del servicio Distance Matrix por parte de su aplicación.
  • UNKNOWN_ERROR indica que no se pudo procesar una solicitud de Distance Matrix debido a un error del servidor. La solicitud puede realizarse correctamente si lo vuelve a intentar.

Códigos de estado a nivel de elemento

  • OK indica la respuesta y contiene un resultado válido.
  • NOT_FOUND indica que el origen o el destino de este emparejamiento no se pudieron geocodificar.
  • ZERO_RESULTS indica que no se encontró ninguna ruta entre el origen y el destino.
  • MAX_ROUTE_LENGTH_EXCEEDED indica que la ruta solicitada es demasiado larga y no se puede procesar.

Mensajes de error

Si el código de estado de nivel superior no es correcto, es posible que haya un campo error_message adicional en el objeto de respuesta Distance Matrix. Este campo contiene información más detallada sobre los motivos detrás del código de estado dado.

Filas

Cuando la API Distance Matrix devuelve resultados, los coloca dentro de una matriz de filas JSON. Incluso si no se devuelven resultados (por ejemplo, cuando los orígenes o los destinos no existen), sigue devolviendo una matriz vacía.

Las filas se ordenan según los valores del parámetro de origen de la solicitud. Cada fila corresponde a un origen y cada elemento de esa fila corresponde a una combinación del origen con un valor de destino.

Cada matriz de filas contiene una o más entradas de elementos, que a su vez contienen la información sobre un único emparejamiento origen-destino.

Elementos

La información sobre cada emparejamiento origen-destino se devuelve en una entrada de elemento. Un elemento contiene los siguientes campos:
  • estado: Consulte Códigos de estado para obtener una lista de los posibles códigos de estado.
  • duración: el tiempo que se tarda en recorrer esta ruta, expresado en segundos (el campo de valor) y como texto.
  • duration_in_traffic: el tiempo que se tarda en recorrer esta ruta, según las condiciones del tráfico actuales e históricas.
  • distancia: la distancia total de esta ruta, expresada en metros (valor) y como texto. El valor textual usa el sistema de unidades especificado con el parámetro de unidad de la solicitud original o la región de origen.
  • distance_in_traffic_model: la distancia más corta necesaria para recorrer esta ruta, según las condiciones del tráfico actuales e históricas.
PREGUNTAS MÁS FRECUENTES

How to use distance API?

Using a distance API like Distancematrix.ai is typically a straightforward process. Here are the basic steps for using the API:

  • Register to the platform and obtain an API key. The API key is a unique identifier that allows you to access the API.
  • Choose your API product: The Distancematrix.ai API provides several methods for different types of distance calculations, such as distance between two points, distance matrix for multiple origins and destinations, and travel time estimates. Choose the best way to use the API that suits your needs.
  • Set your parameters: Depending on the product you choose, you will need to set parameters such as the origins and destinations (in the form of addresses or lat-long coordinates), transportation mode (driving, walking, etc.), and other options such as avoiding tolls or highways.
  • Send your request: Once you have set your parameters, you can send a request to the API distance matrix using your API key. The API will process your request and return the distance results and travel times in the format specified in your request.
  • Cache and use the results: Finally, you can parse the results returned by the API and use them in your application or website. The API can return results in JSON, which can be easily converted into various formats, including XML and CSV.

The specific steps for using the Distancematrix.ai API may vary depending on your programming language or framework. However, we provide detailed Distance Matrix API documentation and sample code to help you get started.

What is the difference between an API distance matrix and other APIs?

API distance matrix, map distance API, and direction matrix API are all types of APIs that provide distance-related data, but they have some peculiarities.
An API distance matrix is designed to calculate the distances between multiple origins and destinations. It provides a matrix of distances that can be used to calculate travel time or optimize routes for delivery or logistics. This type of API is useful for businesses that need to plan and optimize travel routes or logistics operations.

A map distance API, on the other hand, provides distance-related data for a specific geographic area, such as the distance between two points on a map. This type of API is useful for applications that need to display distance-related data on a map, such as a fitness tracker or a travel app.

A direction matrix API, such as Google Maps Directions API, provides turn-by-turn directions between two or more points. It includes information such as the distance, estimated travel time, and the route to take. This type of API is useful for applications that require navigation or routing capabilities, such as a ride-sharing app or a GPS device.

In summary, while distance matrix API, map distance API, and direction matrix API all provide distance-related data, they are optimized for different use cases. The Distance Matrix API by Distancematrix.ai currently includes distance matrix and geocoding products. We don't provide maps or directions solutions right now. However, you can use the data in your business to optimize travel routes or logistics operations, this data is for applications that need to display distance-related data on a map, and for applications that require navigation or routing capabilities.

Fácil de integrar la API Distance Matrix
Comenzar
Cómo migrar a DistanceMatrix
__wf_reserved_heredar
No es necesario realizar ningún pago por adelantado.
Empieza gratis y obtén al instante
acceso a todos los Distancematrix.ai
productos y características