Route

Operations

Get Route Directions

Aplica-se a: tipos de preço S0 e S1.

Retorna uma rota entre uma origem e um destino, passando por Marcos se eles forem especificados. A rota levará em consideração fatores como o tráfego atual e as velocidades de estrada típicas no dia solicitado da semana e hora do dia.

As informações retornadas incluem a distância, o tempo estimado de viagem e uma representação da geometria da rota. Informações de roteamento adicionais, como pedido otimizado de waypoint ou instruções Turn ativas também estão disponíveis, dependendo das opções selecionadas.

O serviço de roteamento fornece um conjunto de parâmetros para uma descrição detalhada do modelo de consumo específico do veículo. Verifique o modelo de consumo para obter uma explicação detalhada dos conceitos e dos parâmetros envolvidos.

Get Route Range

API de intervalo de rotas (Isochrone)

Aplica-se a: tipo de preço S1.

Esse serviço calculará um conjunto de locais que podem ser alcançados a partir do ponto de origem com base em combustível, energia, tempo ou orçamento de distância especificado. Um limite de polígono (ou Isochrone) é retornado em uma orientação no sentido anti-horário, bem como o centro de polígono preciso, que era o resultado do ponto de origem.

O polígono retornado pode ser usado para processamento adicional, como Pesquisar dentro de geometry para pesquisar em inglês, dentro do Isochrone fornecido.

Post Route Directions

Aplica-se a: tipos de preço S0 e S1.

Retorna uma rota entre uma origem e um destino, passando por Marcos se eles forem especificados. A rota levará em consideração fatores como o tráfego atual e as velocidades de estrada típicas no dia solicitado da semana e hora do dia.

As informações retornadas incluem a distância, o tempo estimado de viagem e uma representação da geometria da rota. Informações de roteamento adicionais, como pedido otimizado de waypoint ou instruções Turn ativas também estão disponíveis, dependendo das opções selecionadas.

O serviço de roteamento fornece um conjunto de parâmetros para uma descrição detalhada de um modelo de consumo específico do veículo. Verifique o modelo de consumo para obter uma explicação detalhada dos conceitos e dos parâmetros envolvidos.

Post Route Directions Batch

API do lote de direções de rota

Aplica-se a: tipo de preço S1.

A API do lote de direções de rota envia lotes de consultas para rotear a API de direções usando apenas uma única chamada à API. Você pode chamar a API do lote de direções de rota para executar de forma assíncrona (assíncrona) ou síncrona (sincronização). A API assíncrona permite que o chamador faça o lote até 700 consultas e sincronize a API de até 100 consultas.

Enviar solicitação de lote síncrono

A API síncrona é recomendada para solicitações de lote leves. Quando o serviço recebe uma solicitação, ele responderá assim que os itens do lote forem calculados e não haverá possibilidade de recuperar os resultados posteriormente. A API síncrona retornará um erro de tempo limite (uma resposta de 408) se a solicitação demorar mais de 60 segundos. O número de itens do lote é 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 solicitação de lote assíncrona

A API assíncrona é apropriada para processar grandes volumes de solicitações de rotas relativamente complexas

  • Ele permite a recuperação de resultados em uma chamada separada (são possíveis vários downloads).
  • A API assíncrona é otimizada para confiabilidade e não espera-se que haja um tempo limite.
  • O número de itens do lote é limitado a 700 para esta API.

Quando você faz uma solicitação usando a solicitação assíncrona, por padrão, o serviço retorna um código de resposta 202 ao longo de uma URL de redirecionamento no campo local do cabeçalho de resposta. Essa URL deve ser verificada periodicamente até que os dados de resposta ou informações de erro estejam disponíveis. As respostas assíncronas são armazenadas por 14 dias. A URL de redirecionamento retornará uma resposta 404 se for usada após o período de expiração.

Observe que a solicitação de lote assíncrona é uma solicitação de execução longa. Aqui está uma sequência típica de operações:

  1. O cliente envia uma solicitação em lote de direções POST de rota para o Azure Maps

  2. O servidor responderá com um dos seguintes:

    HTTP 202 Accepted -a solicitação de lote foi aceita.

    HTTP Error -erro ao processar sua solicitação em lote. Pode ser um 400 Bad Request ou qualquer outro código de Error status.

  3. Se a solicitação em lote tiver sido aceita com êxito, o Location cabeçalho na resposta conterá a URL para baixar os resultados da solicitação em lote. Esse URI de status é semelhante ao seguinte:

GET https://atlas.microsoft.com/batch/{batch-id}?api-version=1.0Observação:-Lembre-se de adicionar informações de autenticação (assinatura-chave/azure_auth-consulte segurança) ao URI de status antes de executá-lo.
4. O cliente emite uma GET solicitação na URL de download obtida na etapa 3 para baixar os resultados do lote.

POSTAR corpo para solicitação em lote

Para enviar as consultas de direções de rota , você usará uma POST solicitação em que o corpo da solicitação conterá a batchItems matriz no json formato e o Content-Type cabeçalho será definido como application/json . Aqui está um corpo de solicitação de exemplo contendo 3 consultas de direções de rota :

{
    "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" }
    ]
}

Uma consulta de direções de rota em um lote é apenas uma URL parcial sem o protocolo, a URL base, o caminho, a versão de API e a chave de assinatura. Ele pode aceitar qualquer um dos parâmetros de URIde direção de rota com suporte. Os valores de cadeia de caracteres na consulta direções de rota devem ter um escape adequado (por exemplo, "o caractere deve ter escape \ ) e também deve ser codificado com URL corretamente.

A API assíncrona permite que o chamador faça o lote até 700 consultas e sincronize a API de até 100 consultas, e o lote deve conter pelo menos uma consulta.

Baixar resultados do lote assíncrono

Para baixar os resultados do lote assíncrono, você emitirá uma GET solicitação para o ponto de extremidade de download do lote. Essa URL de download pode ser obtida no Location cabeçalho de uma POST solicitação de lote bem-sucedida e é semelhante ao seguinte:

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

Aqui está a sequência típica de operações para baixar os resultados do lote:

  1. O cliente envia uma GET solicitação usando a URL de download.

  2. O servidor responderá com um dos seguintes:

    HTTP 202 Accepted -a solicitação em lote foi aceita, mas ainda está sendo processada. Tente novamente em algum momento.

    HTTP 200 OK -solicitação em lote processada com êxito. O corpo da resposta contém todos os resultados do lote.

Modelo de resposta em lote

O conteúdo de dados retornado é semelhante para solicitações assíncronas e de sincronização. Ao baixar os resultados de uma solicitação de lote assíncrona, se o processamento do lote tiver terminado, o corpo da resposta conterá a resposta em lote. Essa resposta em lote contém um summary componente que indica o totalRequests que fazia parte da solicitação em lote original e successfulRequests , por exemplo, consultas que foram executadas com êxito. A resposta em lote também inclui uma batchItems matriz que contém uma resposta para cada consulta na solicitação em lote. O conterá batchItems os resultados na mesma ordem exata em que as consultas originais foram enviadas na solicitação em lote. Cada item em batchItems Contains statusCode e response Fields. Cada response batchItems um em é de um dos seguintes tipos:

  • RouteDirectionsResponse-Se a consulta foi concluída com êxito.

  • Error-Se a consulta tiver falhado. A resposta conterá um code e um message nesse caso.

Aqui está um exemplo de resposta em lote com 1 resultado bem-sucedido e 1 com falha :

{
    "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

Aplica-se a: tipo de preço S1.

O serviço de roteamento de matriz permite o cálculo de uma matriz de resumos de rota para um conjunto de rotas definidas pelos locais de origem e de destino usando uma solicitação POST assíncrona (assíncrona) ou síncrona (sincronização). Para cada origem determinada, o serviço calcula o custo de roteamento dessa origem para cada destino especificado. O conjunto de origens e o conjunto de destinos podem ser considerados como os cabeçalhos de coluna e linha de uma tabela e cada célula na tabela contém os custos de roteamento da origem para o destino para essa célula. Por exemplo, digamos que uma empresa de entrega de alimentos tenha 20 drivers e precise encontrar o driver mais próximo para pegar a entrega do restaurante. Para resolver esse caso de uso, eles podem chamar a API de rota de matriz.

Para cada rota, os tempos de viagem e as distâncias são retornados. Você pode usar os custos computados para determinar quais rotas detalhadas calcular usando a API de direções de rota.

O tamanho máximo de uma matriz para a solicitação assíncrona é 700 e para a solicitação de sincronização é 100 (o número de origens multiplicado pelo número de destinos).

Enviar solicitação de matriz de rota síncrona

Se seu cenário exigir solicitações síncronas e o tamanho máximo da matriz for menor ou igual a 100, talvez você queira fazer uma solicitação síncrona. O tamanho máximo de uma matriz para essa API é 100 (o número de origens multiplicado pelo número de destinos). Com essa restrição em mente, exemplos de dimensões de matriz possíveis são: 10x10, 6X8, 9x8 (não precisa ser quadrado).

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

Enviar solicitação de matriz de rota assíncrona

A API assíncrona é apropriada para processar grandes volumes de solicitações de roteamento relativamente complexas. Quando você faz uma solicitação usando a solicitação assíncrona, por padrão, o serviço retorna um código de resposta 202 ao longo de uma URL de redirecionamento no campo local do cabeçalho de resposta. Essa URL deve ser verificada periodicamente até que os dados de resposta ou informações de erro estejam disponíveis. Se waitForResults o parâmetro na solicitação for definido como true, o usuário receberá uma resposta de 200 se a solicitação for concluída em 120 segundos.

O tamanho máximo de uma matriz para essa API é 700 (o número de origens multiplicado pelo número de destinos). Com essa restrição em mente, exemplos de dimensões de matriz possíveis são: 50x10, 10x10, 28x25. 10x70 (não precisa ser quadrado).

As respostas assíncronas são armazenadas por 14 dias. A URL de redirecionamento retornará uma resposta 404 se for usada após o período de expiração.

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

Aqui está uma sequência típica de operações assíncronas:

  1. O cliente envia uma solicitação POST de matriz de rota para o Azure Maps

  2. O servidor responderá com um dos seguintes:

    HTTP 202 Accepted -a solicitação de matriz de rota foi aceita.

    HTTP Error -erro ao processar sua solicitação de matriz de rota. Isso pode ser uma solicitação inadequada 400 ou qualquer outro código de status de erro.

  3. Se a solicitação de rota de matriz foi aceita com êxito, o cabeçalho de local na resposta contém a URL para baixar os resultados da solicitação. Esse URI de status é semelhante ao seguinte:

  GET https://atlas.microsoft.com/route/matrix/{matrixId}?api-version=1.0?subscription-key={subscription-key}
  1. O cliente emite uma solicitação GET na URL de download obtida na etapa 3 para baixar os resultados

Baixar resultados da sincronização

Quando você faz uma solicitação POST para a API de sincronização de matriz de rota, o serviço retorna o código de resposta 200 para uma solicitação bem-sucedida e uma matriz de resposta. O corpo da resposta conterá os dados e não haverá possibilidade de recuperar os resultados posteriormente.

Baixar resultados assíncronos

Quando uma solicitação emite uma 202 Accepted resposta, a solicitação está sendo processada usando nosso pipeline assíncrono. Você receberá uma URL para verificar o progresso da solicitação assíncrona no cabeçalho de local da resposta. Esse URI de status é semelhante ao seguinte:

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

A URL fornecida pelo cabeçalho local retornará as respostas a seguir quando uma GET solicitação for emitida.

202 AcceptedA solicitação de matriz http foi aceita, mas ainda está sendo processada. Tente novamente em algum momento.

200 OKSolicitação de matriz http processada com êxito. O corpo da resposta contém todos os resultados.