Route

Operations

Get Route Directions

Se aplica a: planes de tarifa S0 y S1.

Devuelve una ruta entre un origen y un destino, pasando por puntos de referencia si se especifican. La ruta tendrá en cuenta factores como el tráfico actual y las velocidades de carretera típicas en el día solicitado de la semana y la hora del día.

La información devuelta incluye la distancia, el tiempo de desplazamiento estimado y una representación de la geometría de ruta. También está disponible información de enrutamiento adicional, como instrucciones optimizadas de orden de punto de referencia o turno por turno, en función de las opciones seleccionadas.

El servicio de enrutamiento proporciona un conjunto de parámetros para una descripción detallada del modelo de consumo específico del vehículo. Consulte Modelo de consumo para obtener una explicación detallada de los conceptos y parámetros implicados.

Get Route Range

API de intervalo de rutas (Isocrone)

Se aplica a: plan de tarifa S1.

Este servicio calculará un conjunto de ubicaciones a las que se puede acceder desde el punto de origen en función del presupuesto de combustible, energía, tiempo o distancia especificado. Se devuelve un límite de polígono (o Isócrono) en una orientación en sentido contrario a las agujas del reloj, así como el centro de polígono preciso que fue el resultado del punto de origen.

El polígono devuelto se puede usar para un procesamiento posterior, como Buscar dentro de la geometría para buscar puntos de interés dentro del isócromo proporcionado.

Post Route Directions

Se aplica a: planes de tarifa S0 y S1.

Devuelve una ruta entre un origen y un destino, pasando por puntos de referencia si se especifican. La ruta tendrá en cuenta factores como el tráfico actual y las velocidades de carretera típicas en el día solicitado de la semana y la hora del día.

La información devuelta incluye la distancia, el tiempo de desplazamiento estimado y una representación de la geometría de ruta. También está disponible información de enrutamiento adicional, como instrucciones optimizadas de orden de punto de referencia o turno por turno, en función de las opciones seleccionadas.

El servicio de enrutamiento proporciona un conjunto de parámetros para una descripción detallada de un modelo de consumo específico del vehículo. Consulte Modelo de consumo para obtener una explicación detallada de los conceptos y parámetros implicados.

Post Route Directions Batch

Route Directions Batch API

Se aplica a: plan de tarifa S1.

Route Directions Batch API envía lotes de consultas a Route Directions API mediante una sola llamada API. Puede llamar a Route Directions Batch API para ejecutarse de forma asincrónica (asincrónica) o sincrónica (sincronización). La API asincrónica permite al autor de la llamada procesar por lotes hasta 700 consultas y sincronizar la API hasta 100.

Enviar solicitud por lotes sincrónica

La API sincrónica se recomienda para las solicitudes por lotes ligeras. Cuando el servicio recibe una solicitud, responderá en cuanto se calcule el lote de elementos y no habrá ninguna posibilidad de recuperar los resultados más adelante. La API sincrónica devolverá un error de tiempo de espera (una respuesta 408) si la solicitud tarda más de 60 segundos. El número de elementos por lotes está limitado a 100 para esta API.

POST https://atlas.microsoft.com/route/directions/batch/sync/json?api-version=1.0&subscription-key={subscription-key}

Enviar solicitud asincrónica por lotes

La API asincrónica es adecuada para procesar grandes volúmenes de solicitudes de ruta relativamente complejas.

  • Permite la recuperación de resultados en una llamada independiente (se pueden realizar varias descargas).
  • La API asincrónica está optimizada para la confiabilidad y no se espera que se agote el tiempo de espera.
  • El número de elementos por lotes está limitado a 700 para esta API.

Cuando realiza una solicitud mediante una solicitud asincrónica, el servicio devuelve de forma predeterminada un código de respuesta 202 a lo largo de una dirección URL de redireccionamiento en el campo Ubicación del encabezado de respuesta. Esta dirección URL se debe comprobar periódicamente hasta que estén disponibles los datos de respuesta o la información de error. Las respuestas asincrónicas se almacenan durante 14 días. La dirección URL de redireccionamiento devuelve una respuesta 404 si se usa después del período de expiración.

Tenga en cuenta que la solicitud por lotes asincrónica es una solicitud de ejecución larga. Esta es una secuencia típica de operaciones:

  1. El cliente envía una solicitud de Route Directions Batch POST a Azure Mapas

  2. El servidor responderá con uno de los siguientes elementos:

    HTTP: 202 Accepted se ha aceptado la solicitud por lotes.

    HTTP: Error se ha producido un error al procesar la solicitud de Batch. Podría ser o cualquier 400 Bad Request otro Error código de estado.

  3. Si la solicitud por lotes se aceptó correctamente, el encabezado de la respuesta contiene la Location dirección URL para descargar los resultados de la solicitud por lotes. Este URI de estado tiene el siguiente aspecto:

GET https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0 Nota:- Recuerde agregar información de AUTH (subscription-key/azure_auth - ConsulteSeguridad ) al URI de estado antes de ejecutarlo.
4. El cliente emite una GET solicitud en la dirección URL de descarga obtenida en el paso 3 para descargar los resultados del lote.

Cuerpo de POST para la solicitud por lotes

Para enviar las consultas de direcciones de ruta, usará una solicitud en la que el cuerpo de la solicitud contendrá la matriz en formato y el encabezado se POST batchItems json Content-Type establecerá en application/json . Este es un cuerpo de solicitud de ejemplo que contiene 3 consultas de direcciones de ruta:

{
    "batchItems": [
        { "query": "?query=47.620659,-122.348934:47.610101,-122.342015&travelMode=bicycle&routeType=eco&traffic=false" },
        { "query": "?query=40.759856,-73.985108:40.771136,-73.973506&travelMode=pedestrian&routeType=shortest" },
        { "query": "?query=48.923159,-122.557362:32.621279,-116.840362" }
    ]
}

Una consulta de direcciones de ruta en un lote es simplemente una dirección URL parcial sin el protocolo, la dirección URL base, la ruta de acceso, la versión de api y la clave de suscripción. Puede aceptar cualquiera de los parámetros de URI de direcciones de ruta admitidos. Los valores de cadena de la consulta de direcciones de ruta deben tener el escape correcto (por ejemplo, " el carácter debe tener caracteres de escape con ) y también debe estar correctamente codificado en \ url.

La API asincrónica permite al autor de la llamada procesar por lotes hasta 700 consultas y sincronizar la API hasta 100, y el lote debe contener al menos 1 consulta.

Descarga de resultados asincrónicos por lotes

Para descargar los resultados del lote asincrónico, emitirá una solicitud al GET punto de conexión de descarga por lotes. Esta dirección URL de descarga se puede obtener del encabezado de una solicitud por Location POST lotes correcta y tiene un aspecto similar al siguiente:

https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key}

Esta es la secuencia típica de operaciones para descargar los resultados del lote:

  1. El cliente envía una GET solicitud mediante la dirección URL de descarga.

  2. El servidor responderá con uno de los siguientes elementos:

    HTTP: 202 Accepted se aceptó la solicitud por lotes, pero todavía se está procesando. Inténtelo de nuevo en algún momento.

    HTTP: 200 OK solicitud por lotes procesada correctamente. El cuerpo de la respuesta contiene todos los resultados del lote.

Modelo de respuesta por lotes

El contenido de datos devuelto es similar para las solicitudes asincrónicas y de sincronización. Al descargar los resultados de una solicitud de lote asincrónico, si el lote ha terminado de procesarse, el cuerpo de la respuesta contiene la respuesta del lote. Esta respuesta por lotes contiene un componente que indica que formaban parte de la solicitud por lotes original y, por ejemplo, las consultas que se summary totalRequests successfulRequests ejecutaron correctamente. La respuesta por lotes también incluye una batchItems matriz que contiene una respuesta para cada consulta de la solicitud por lotes. contendrá los resultados exactamente en el mismo orden en que se enviaron las consultas originales batchItems en la solicitud por lotes. Cada elemento de batchItems contiene los campos y statusCode response . Cada response de es de uno de los siguientes batchItems tipos:

  • RouteDirectionsResponse - Si la consulta se completó correctamente.

  • Error : si la consulta no se pudo realizar. En este caso, la code respuesta contendrá y message .

Este es un ejemplo de respuesta por lotes con 1 resultado correcto y 1 con error:

{
    "summary": {
        "successfulRequests": 1,
        "totalRequests": 2
    },
    "batchItems": [
        {
            "statusCode": 200,
            "response": {
                "routes": [
                    {
                        "summary": {
                            "lengthInMeters": 1758,
                            "travelTimeInSeconds": 387,
                            "trafficDelayInSeconds": 0,
                            "departureTime": "2018-07-17T00:49:56+00:00",
                            "arrivalTime": "2018-07-17T00:56:22+00:00"
                        },
                        "legs": [
                            {
                                "summary": {
                                    "lengthInMeters": 1758,
                                    "travelTimeInSeconds": 387,
                                    "trafficDelayInSeconds": 0,
                                    "departureTime": "2018-07-17T00:49:56+00:00",
                                    "arrivalTime": "2018-07-17T00:56:22+00:00"
                                },
                                "points": [
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.34892
                                    },
                                    {
                                        "latitude": 47.62094,
                                        "longitude": -122.3485
                                    },
                                    {
                                        "latitude": 47.62095,
                                        "longitude": -122.3476
                                    }
                                ]
                            }
                        ],
                        "sections": [
                            {
                                "startPointIndex": 0,
                                "endPointIndex": 40,
                                "sectionType": "TRAVEL_MODE",
                                "travelMode": "bicycle"
                            }
                        ]
                    }
                ]
            }
        },
        {
            "statusCode": 400,
            "response":
            {
                "error":
                {
                    "code": "400 BadRequest",
                    "message": "Bad request: one or more parameters were incorrectly specified or are mutually exclusive."
                }
            }
        }
    ]
}
Post Route Matrix

Se aplica a: plan de tarifa S1.

El servicio de enrutamiento de matriz permite calcular una matriz de resúmenes de ruta para un conjunto de rutas definidas por las ubicaciones de origen y destino mediante una solicitud POST asincrónica (asincrónica) o sincrónica (sync). Para cada origen determinado, el servicio calcula el costo del enrutamiento desde ese origen a cada destino determinado. El conjunto de orígenes y el conjunto de destinos se pueden pensar como encabezados de columna y fila de una tabla y cada celda de la tabla contiene los costos de enrutamiento desde el origen al destino de esa celda. Por ejemplo, supongamos que una empresa de entrega de comida tiene 20 conductores y necesitan encontrar el controlador más cercano para recoger la entrega en el restaurante. Para resolver este caso de uso, pueden llamar a Matrix Route API.

Para cada ruta, se devuelven los tiempos de desplazamiento y las distancias. Puede usar los costos calculados para determinar qué rutas detalladas calcular mediante Route Directions API.

El tamaño máximo de una matriz para la solicitud asincrónica es 700 y para la solicitud de sincronización es 100 (el número de orígenes multiplicado por el número de destinos).

Enviar solicitud de matriz de rutas sincrónica

Si el escenario requiere solicitudes sincrónicas y el tamaño máximo de la matriz es menor o igual que 100, es posible que desee realizar una solicitud sincrónica. El tamaño máximo de una matriz para esta API es 100 (el número de orígenes multiplicado por el número de destinos). Con esa restricción en mente, los ejemplos de posibles dimensiones de matriz son: 10x10, 6x8, 9x8 (no es necesario que sea cuadrado).

POST https://atlas.microsoft.com/route/matrix/sync/json?api-version=1.0&subscription-key={subscription-key}

Enviar solicitud asincrónica de matriz de rutas

La API asincrónica es adecuada para procesar grandes volúmenes de solicitudes de enrutamiento relativamente complejas. Cuando realiza una solicitud mediante una solicitud asincrónica, el servicio devuelve de forma predeterminada un código de respuesta 202 a lo largo de una dirección URL de redireccionamiento en el campo Ubicación del encabezado de respuesta. Esta dirección URL se debe comprobar periódicamente hasta que estén disponibles los datos de respuesta o la información de error. Si el parámetro de la solicitud se establece en true, el usuario recibirá una respuesta 200 si la solicitud ha finalizado waitForResults en menos de 120 segundos.

El tamaño máximo de una matriz para esta API es 700 (el número de orígenes multiplicado por el número de destinos). Con esa restricción en mente, los ejemplos de posibles dimensiones de matriz son: 50x10, 10x10, 28x25. 10 x 70 (no es necesario que sea cuadrado).

Las respuestas asincrónicas se almacenan durante 14 días. La dirección URL de redireccionamiento devuelve una respuesta 404 si se usa después del período de expiración.

POST https://atlas.microsoft.com/route/matrix/json?api-version=1.0&subscription-key={subscription-key}

Esta es una secuencia típica de operaciones asincrónicas:

  1. El cliente envía una solicitud POST de matriz de rutas a Azure Mapas

  2. El servidor responderá con uno de los siguientes elementos:

    HTTP: 202 Accepted se ha aceptado la solicitud de matriz de rutas.

    HTTP: Error se ha producido un error al procesar la solicitud de matriz de rutas. Esto puede ser una solicitud 400 bad o cualquier otro código de estado de error.

  3. Si la solicitud de ruta de matriz se aceptó correctamente, el encabezado Location de la respuesta contiene la dirección URL para descargar los resultados de la solicitud. Este URI de estado es similar al siguiente:

  GET https://atlas.microsoft.com/route/matrix/{matrixId}?api-version=1.0?subscription-key={subscription-key}
  1. El cliente emite una solicitud GET en la dirección URL de descarga obtenida en el paso 3 para descargar los resultados

Descargar resultados de sincronización

Cuando realiza una solicitud POST para Route Matrix Sync API, el servicio devuelve 200 código de respuesta para una solicitud correcta y una matriz de respuesta. El cuerpo de la respuesta contendrá los datos y no habrá ninguna posibilidad de recuperar los resultados más adelante.

Descargar resultados asincrónicos

Cuando una solicitud emite una 202 Accepted respuesta, la solicitud se procesa mediante nuestra canalización asincrónica. Se le dará una dirección URL para comprobar el progreso de la solicitud asincrónica en el encabezado de ubicación de la respuesta. Este URI de estado es similar al siguiente:

  GET https://atlas.microsoft.com/route/matrix/{matrixId}?api-version=1.0?subscription-key={subscription-key}

La dirección URL proporcionada por el encabezado de ubicación devolverá las siguientes respuestas cuando GET se emita una solicitud.

HTTP: 202 Accepted se aceptó la solicitud de matriz, pero todavía se está procesando. Inténtelo de nuevo en algún momento.

HTTP: 200 OK solicitud de matriz procesada correctamente. El cuerpo de la respuesta contiene todos los resultados.