Route - Post Route Directions Batch

Use para enviar um lote de consultas para a API Obter Instruções de Rota em uma única solicitação assíncrona.

A Post Route Directions Batch API é uma solicitação HTTP POST que envia lotes de consultas para a API Obter Instruções de Rota usando uma única solicitação assíncrona. Você pode chamar Route Directions Batch a API para executar de forma assíncrona (assíncrona) ou síncrona (sincronização). A API assíncrona permite que o chamador lote até 700 consultas e sincronize a API até 100 consultas. Para chamar a Post Route Directions Batch API em uma solicitação síncrona, consulte Sincronização do Lote de Direções de Rota pós-rota.

Enviar Solicitação de Lote Assíncrona

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

  • Ele permite a recuperação de resultados em uma chamada separada (vários downloads são possíveis).
  • A API assíncrona é otimizada para confiabilidade e não se espera que haja um tempo limite.
  • O número de itens de lote é limitado a 700 para essa 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 as informações de erro estejam disponíveis. As respostas assíncronas são armazenadas por 14 dias. A URL de redirecionamento retorna uma resposta 404 se usada após o período de expiração.

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

  1. O cliente envia uma solicitação do Lote POST de Trajeto de Rota para Azure Mapas.
POST https://atlas.microsoft.com/route/directions/batch/json?api-version=1.0&subscription-key={subscription-key}
  1. O servidor responderá com um dos seguintes:

    HTTP 202 Accepted – A solicitação do Lote foi aceita.

    HTTP Error - Ocorreu um erro ao processar sua solicitação do Lote. Isso pode ser um 400 Bad Request ou qualquer outro Error código status.

  2. Se a solicitação em lote foi aceita com êxito, o Location cabeçalho na resposta contém a URL para baixar os resultados da solicitação em lote. Este URI status é semelhante ao seguinte:

GET https://atlas.microsoft.com/route/directions/batch/{batch-id}?api-version=1.0&subscription-key={subscription-key} 
  1. O cliente emite uma GET solicitação na URL de download obtida na Etapa 3 para baixar os resultados do lote.

Corpo POST para solicitação de lote

Para enviar as consultas de trajeto 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 que contém três consultas de trajeto 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 trajeto de rota em um lote é apenas uma URL parcial sem o protocolo, a URL base, o caminho, a api-version e a subscription-key. Ele pode aceitar qualquer um dos parâmetros de URI de trajeto de rota com suporte. Os valores de cadeia de caracteres na consulta de trajeto de rota devem ser escapados corretamente (por exemplo, " caractere deve ser escapado com \ ) e também deve ser codificado corretamente em URL.

A API assíncrona permite que o chamador faça o lote de até 700 consultas e sincronize a API até 100 consultas, e o lote deve conter pelo menos 1 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 em lote. Essa URL de download pode ser obtida do Location cabeçalho de uma solicitação em lote bem-sucedida POST e se parece com o seguinte:

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

Esta é a sequência típica de operações para baixar os resultados do lote:

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

  2. O servidor responderá com um dos seguintes:

    HTTP 202 Accepted – A solicitação do Lote foi aceita, mas ainda está sendo processada. Tente novamente em algum tempo.

    HTTP 200 OK – Solicitação do 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 em lote assíncrona, se o lote tiver concluído o processamento, 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 de lote original e, por successfulRequestsexemplo, 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 batchItems conterá os resultados exatamente na mesma ordem em que as consultas originais foram enviadas na solicitação de lote. Cada item em batchItems contém statusCode campos e response . Cada response um em batchItems é de um dos seguintes tipos:

  • RouteDirections - Se a consulta for concluída com êxito.

  • Error - Se a consulta falhou. 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 https://atlas.microsoft.com/route/directions/batch/json?api-version=1.0

Parâmetros de URI

Nome Em Obrigatório Tipo Description
format
path True

JsonFormat

Formato desejado da resposta. Há suporte apenas para o formato json.

api-version
query True

string

Número de versão da API de Mapas Azure.

Cabeçalho da solicitação

Nome Obrigatório Tipo Description
x-ms-client-id

string

Especifica qual conta destina-se ao uso em conjunto com o modelo de segurança Microsoft Entra ID. Ele representa uma ID exclusiva para a conta Azure Mapas e pode ser recuperado da API de Conta do plano de gerenciamento Azure Mapas. Para usar Microsoft Entra ID segurança no Azure Mapas consulte os artigos a seguir para obter diretrizes.

Corpo da solicitação

Nome Tipo Description
batchItems

BatchRequestItem[]

A lista de consultas a serem processadas.

Respostas

Nome Tipo Description
200 OK

RouteDirectionsBatchResult

Solicitação em lote processada com êxito. O corpo da resposta contém todos os resultados do lote.

202 Accepted

Com suporte apenas para solicitação assíncrona. Solicitação Aceita: a solicitação foi aceita para processamento. Use a URL no Cabeçalho de Localização para tentar novamente ou acessar os resultados.

Headers

Location: string

Other Status Codes

ErrorResponse

Erro inesperado.

Segurança

AADToken

Esses são os fluxos Microsoft Entra OAuth 2.0. Quando emparelhado com o controle de acesso baseado em função do Azure, ele pode ser usado para controlar o acesso às APIs REST Azure Mapas. Os controles de acesso baseados em função do Azure são usados para designar o acesso a uma ou mais Azure Mapas conta de recurso ou sub-recursos. Qualquer usuário, grupo ou entidade de serviço pode receber acesso por meio de uma função interna ou uma função personalizada composta por uma ou mais permissões para Azure Mapas APIs REST.

Para implementar cenários, recomendamos exibir conceitos de autenticação. Em resumo, essa definição de segurança fornece uma solução para modelar aplicativos por meio de objetos capazes de acessar o controle em APIs e escopos específicos.

Observações

  • Essa definição de segurança requer o uso do x-ms-client-id cabeçalho para indicar a qual Azure Mapas recurso ao qual o aplicativo está solicitando acesso. Isso pode ser adquirido da API de gerenciamento de Mapas.

O Authorization URL é específico para a instância de nuvem pública do Azure. As nuvens soberanas têm URLs de autorização exclusivas e configurações de Microsoft Entra ID. * O controle de acesso baseado em função do Azure é configurado no plano de gerenciamento do Azure por meio de portal do Azure, PowerShell, CLI, SDKs do Azure ou APIs REST. * O uso do SDK da Web Azure Mapas permite a configuração baseada em configuração de um aplicativo para vários casos de uso.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Nome Description
https://atlas.microsoft.com/.default https://atlas.microsoft.com/.default

subscription-key

Essa é uma chave compartilhada provisionada quando você Create uma conta Azure Mapas no portal do Azure ou usando o PowerShell, a CLI, os SDKs do Azure ou a API REST.

Com essa chave, qualquer aplicativo pode acessar toda a API REST. Em outras palavras, essa chave pode ser usada como uma chave master na conta em que elas são emitidas.

Para aplicativos expostos publicamente, nossa recomendação é usar a abordagem de aplicativos cliente confidenciais para acessar Azure Mapas APIs REST para que sua chave possa ser armazenada com segurança.

Type: apiKey
In: query

SAS Token

Esse é um token de assinatura de acesso compartilhado criado a partir da operação Listar SAS no recurso Azure Mapas por meio do plano de gerenciamento do Azure por meio de portal do Azure, PowerShell, CLI, SDKs do Azure ou APIs REST.

Com esse token, qualquer aplicativo está autorizado a acessar com controles de acesso baseados em função do Azure e controle refinado à expiração, taxa e regiões de uso para o token específico. Em outras palavras, o Token SAS pode ser usado para permitir que os aplicativos controlem o acesso de maneira mais segura do que a chave compartilhada.

Para aplicativos expostos publicamente, nossa recomendação é configurar uma lista específica de origens permitidas no recurso de conta do Mapa para limitar o abuso de renderização e renovar regularmente o Token SAS.

Type: apiKey
In: header

Exemplos

Successfully submit a route direction batch request

Sample Request

POST https://atlas.microsoft.com/route/directions/batch/json?api-version=1.0

{
  "batchItems": [
    {
      "query": "?query=47.639987,-122.128384:47.621252,-122.184408:47.596437,-122.332000&routeType=fastest&travelMode=car&maxAlternatives=99"
    },
    {
      "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"
    }
  ]
}

Sample Response

{
  "batchItems": [
    {
      "statusCode": 400,
      "response": {
        "error": {
          "code": "400 BadRequest",
          "message": "maxAlternatives parameter value should be between 0 and 5 inclusive"
        }
      }
    },
    {
      "statusCode": 200,
      "response": {
        "formatVersion": "0.0.12",
        "routes": [
          {
            "summary": {
              "lengthInMeters": 1754,
              "travelTimeInSeconds": 386,
              "trafficDelayInSeconds": 0,
              "departureTime": "2019-06-21T22:56:23+00:00",
              "arrivalTime": "2019-06-21T23:02:49+00:00"
            },
            "legs": [
              {
                "summary": {
                  "lengthInMeters": 1754,
                  "travelTimeInSeconds": 386,
                  "trafficDelayInSeconds": 0,
                  "departureTime": "2019-06-21T22:56:23+00:00",
                  "arrivalTime": "2019-06-21T23:02:49+00:00"
                },
                "points": [
                  {
                    "latitude": 47.62094,
                    "longitude": -122.34892
                  },
                  {
                    "latitude": 47.62094,
                    "longitude": -122.3485
                  },
                  {
                    "latitude": 47.62095,
                    "longitude": -122.3476
                  },
                  {
                    "latitude": 47.60995,
                    "longitude": -122.34174
                  },
                  {
                    "latitude": 47.61011,
                    "longitude": -122.342
                  }
                ]
              }
            ],
            "sections": [
              {
                "startPointIndex": 0,
                "endPointIndex": 44,
                "sectionType": "TRAVEL_MODE",
                "travelMode": "bicycle"
              }
            ]
          }
        ]
      }
    },
    {
      "statusCode": 200,
      "response": {
        "formatVersion": "0.0.12",
        "routes": [
          {
            "summary": {
              "lengthInMeters": 1772,
              "travelTimeInSeconds": 1276,
              "trafficDelayInSeconds": 0,
              "departureTime": "2019-06-21T22:56:23+00:00",
              "arrivalTime": "2019-06-21T23:17:38+00:00"
            },
            "legs": [
              {
                "summary": {
                  "lengthInMeters": 1772,
                  "travelTimeInSeconds": 1276,
                  "trafficDelayInSeconds": 0,
                  "departureTime": "2019-06-21T22:56:23+00:00",
                  "arrivalTime": "2019-06-21T23:17:38+00:00"
                },
                "points": [
                  {
                    "latitude": 40.75982,
                    "longitude": -73.98493
                  },
                  {
                    "latitude": 40.7601,
                    "longitude": -73.98483
                  },
                  {
                    "latitude": 40.75984,
                    "longitude": -73.98417
                  },
                  {
                    "latitude": 40.76047,
                    "longitude": -73.9837
                  },
                  {
                    "latitude": 40.77095,
                    "longitude": -73.9736
                  },
                  {
                    "latitude": 40.77114,
                    "longitude": -73.97356
                  }
                ]
              }
            ],
            "sections": [
              {
                "startPointIndex": 0,
                "endPointIndex": 47,
                "sectionType": "TRAVEL_MODE",
                "travelMode": "pedestrian"
              }
            ]
          }
        ]
      }
    }
  ],
  "summary": {
    "successfulRequests": 2,
    "totalRequests": 3
  }
}
operation-Location: URL to download the results of the long-running batch request.

Definições

Nome Description
BatchRequest

Esse tipo representa o corpo da solicitação para o serviço do Lote.

BatchRequestItem

Objeto de solicitação em lote

DelayMagnitude

A magnitude do atraso causado pelo incidente. Esses valores correspondem aos valores do campo de resposta ty da API Obter Detalhes do Incidente de Tráfego.

DrivingSide

Indica direção à esquerda versus à direita no ponto da manobra.

EffectiveSetting

Parâmetro efetivo ou dados usados ao chamar essa API de Rota.

ErrorAdditionalInfo

As informações adicionais do erro de gerenciamento de recursos.

ErrorDetail

Os detalhes do erro.

ErrorResponse

Resposta de erro

GuidanceInstructionType

Tipo da instrução, por exemplo, girar ou alterar a forma de estrada.

GuidanceManeuver

Um código que identifica a manobra.

JsonFormat

Formato desejado da resposta. Há suporte apenas para o formato json.

JunctionType

O tipo da junção em que a manobra ocorre. Para rotatórias maiores, duas instruções separadas são geradas para entrar e sair da rotatória.

LatLongPair

Um local representado como latitude e longitude.

Response

O resultado da consulta. RouteDirections se a consulta for concluída com êxito, ErrorResponse caso contrário.

ResponseSectionType

Tipos de seção da resposta de rota relatada

ResponseTravelMode

Modo de viagem para a rota calculada. O valor será definido other como se o modo de transporte solicitado não for possível nesta seção

Route
RouteDirectionsBatchItem

Um item retornado da chamada de serviço do Lote de Trajeto de Rota.

RouteDirectionsBatchResult

Esse objeto é retornado de uma chamada de serviço do Lote de Trajeto de Rota bem-sucedida.

RouteGuidance

Contém elementos relacionados a diretrizes. Esse campo está presente somente quando as diretrizes foram solicitadas e estão disponíveis.

RouteInstruction

Um conjunto de atributos que descrevem uma manobra, por exemplo, "Vire para a direita", "Mantenha a esquerda", "Pegue a balsa", "Pegue a auto-estrada", "Chegar".

RouteInstructionGroup

Grupos uma sequência de elementos de instrução relacionados uns aos outros. O intervalo de sequência é restrito com firstInstructionIndex e lastInstructionIndex. Quando as mensagens de texto legíveis por humanos são solicitadas para orientação (instructionType=text ou tagged), o instructionGroup tem uma mensagem de resumo retornada quando disponível.

RouteLeg

Uma descrição de uma parte de uma rota, composta por uma lista de pontos. Cada ponto de passagem adicional fornecido na solicitação resultará em uma etapa adicional na rota retornada.

RouteLegSummary

Objeto summary para a seção de rota.

RouteOptimizedWaypoint

Objeto de ponto de passagem otimizado.

RouteReport

Relata as configurações efetivas usadas na chamada atual.

RouteSection

As seções de rota contêm informações adicionais sobre partes de uma rota. Cada seção contém pelo menos os elementos startPointIndex, endPointIndexe sectionType.

RouteSectionTec

Detalhes do evento de tráfego, usando definições no padrão TPEG2-TEC . Pode conter effectCode e causa elementos.

RouteSectionTecCause

A causa do evento de tráfego. Pode conter elementos mainCauseCode e subCauseCode. Pode ser usado para definir iconografia e descrições.

RouteSummary

Objeto Summary

SimpleCategory

Tipo do incidente. No momento, pode ser JAM, ROAD_WORK, ROAD_CLOSURE ou OTHER. Consulte "tec" para obter informações detalhadas.

Summary

Resumo dos resultados da solicitação em lote

BatchRequest

Esse tipo representa o corpo da solicitação para o serviço do Lote.

Nome Tipo Description
batchItems

BatchRequestItem[]

A lista de consultas a serem processadas.

BatchRequestItem

Objeto de solicitação em lote

Nome Tipo Description
query

string

Esse parâmetro contém uma cadeia de caracteres de consulta usada para executar uma operação de geocodificação não estruturada. A cadeia de caracteres de consulta será passada textualmente para a API de pesquisa para processamento.

DelayMagnitude

A magnitude do atraso causado pelo incidente. Esses valores correspondem aos valores do campo de resposta ty da API Obter Detalhes do Incidente de Tráfego.

Nome Tipo Description
0

string

Desconhecida.

1

string

Secundário.

2

string

Moderado.

3

string

Principal.

4

string

Indefinido, usado para fechamentos de estradas e outros atrasos indefinidos.

DrivingSide

Indica direção à esquerda versus à direita no ponto da manobra.

Nome Tipo Description
LEFT

string

Lado esquerdo.

RIGHT

string

Lado direito.

EffectiveSetting

Parâmetro efetivo ou dados usados ao chamar essa API de Rota.

Nome Tipo Description
key

string

Nome do parâmetro usado.

value

string

Valor do parâmetro usado.

ErrorAdditionalInfo

As informações adicionais do erro de gerenciamento de recursos.

Nome Tipo Description
info

object

As informações adicionais.

type

string

O tipo de informação adicional.

ErrorDetail

Os detalhes do erro.

Nome Tipo Description
additionalInfo

ErrorAdditionalInfo[]

As informações adicionais do erro.

code

string

O código de erro.

details

ErrorDetail[]

Os detalhes do erro.

message

string

A mensagem de erro.

target

string

O destino do erro.

ErrorResponse

Resposta de erro

Nome Tipo Description
error

ErrorDetail

O objeto de erro.

GuidanceInstructionType

Tipo da instrução, por exemplo, girar ou alterar a forma de estrada.

Nome Tipo Description
DIRECTION_INFO

string

Informações de direção.

LOCATION_ARRIVAL

string

Local de chegada.

LOCATION_DEPARTURE

string

Local de partida.

LOCATION_WAYPOINT

string

Localização do ponto de passagem.

ROAD_CHANGE

string

Mudança de estrada.

TURN

string

Transformar.

GuidanceManeuver

Um código que identifica a manobra.

Nome Tipo Description
ARRIVE

string

Você chegou.

ARRIVE_LEFT

string

Você chegou. Seu destino é à esquerda.

ARRIVE_RIGHT

string

Você chegou. Seu destino está à direita.

BEAR_LEFT

string

Urso à esquerda.

BEAR_RIGHT

string

Acerte-se.

DEPART

string

Deixar.

ENTER_FREEWAY

string

Pegue a rodovia.

ENTER_HIGHWAY

string

Pegue a estrada.

ENTER_MOTORWAY

string

Pegue a auto-estrada.

ENTRANCE_RAMP

string

Pegue a rampa.

FOLLOW

string

Seguir.

KEEP_LEFT

string

Mantenha a esquerda.

KEEP_RIGHT

string

Mantenha-se bem.

MAKE_UTURN

string

Faça uma reviravolta.

MOTORWAY_EXIT_LEFT

string

Pegue a saída à esquerda.

MOTORWAY_EXIT_RIGHT

string

Pegue a saída à direita.

ROUNDABOUT_BACK

string

Vá ao redor da rotatória.

ROUNDABOUT_CROSS

string

Cruze a rotatória.

ROUNDABOUT_LEFT

string

Na rotatória, pegue a saída à esquerda.

ROUNDABOUT_RIGHT

string

Na rotatória, pegue a saída à direita.

SHARP_LEFT

string

Vire afiado para a esquerda.

SHARP_RIGHT

string

Vire para a direita.

STRAIGHT

string

Mantenha-se em linha reta.

SWITCH_MAIN_ROAD

string

Alterne para a estrada main.

SWITCH_PARALLEL_ROAD

string

Alterne para a estrada paralela.

TAKE_EXIT

string

Pegue a saída.

TAKE_FERRY

string

Pegue a balsa.

TRY_MAKE_UTURN

string

Tente fazer uma reviravolta.

TURN_LEFT

string

Vire para a esquerda.

TURN_RIGHT

string

Vire para a direita.

WAYPOINT_LEFT

string

Você chegou ao ponto de passagem. Está à esquerda.

WAYPOINT_REACHED

string

Você chegou ao ponto de passagem.

WAYPOINT_RIGHT

string

Você chegou ao ponto de passagem. Está à direita.

JsonFormat

Formato desejado da resposta. Há suporte apenas para o formato json.

Nome Tipo Description
json

string

O formato de intercâmbio de dados de notação de objeto JavaScript

JunctionType

O tipo da junção em que a manobra ocorre. Para rotatórias maiores, duas instruções separadas são geradas para entrar e sair da rotatória.

Nome Tipo Description
BIFURCATION

string

Bifurcação

REGULAR

string

regular

ROUNDABOUT

string

Rotunda

LatLongPair

Um local representado como latitude e longitude.

Nome Tipo Description
latitude

number

Propriedade Latitude

longitude

number

Propriedade Longitude

Response

O resultado da consulta. RouteDirections se a consulta for concluída com êxito, ErrorResponse caso contrário.

Nome Tipo Description
error

ErrorDetail

O objeto de erro.

formatVersion

string

Propriedade Format Version

optimizedWaypoints

RouteOptimizedWaypoint[]

Sequência otimizada de pontos de passagem. Ele mostra o índice da sequência de waypoint fornecida pelo usuário para a lista original e otimizada. Por exemplo, uma resposta:

<optimizedWaypoints>
<waypoint providedIndex="0" optimizedIndex="1"/>
<waypoint providedIndex="1" optimizedIndex="2"/>
<waypoint providedIndex="2" optimizedIndex="0"/>
</optimizedWaypoints>

significa que a sequência original é [0, 1, 2] e a sequência otimizada é [1, 2, 0]. Como o índice começa em 0, o original é "primeiro, segundo, terceiro" enquanto o otimizado é "segundo, terceiro, primeiro".

report

RouteReport

Relata as configurações efetivas usadas na chamada atual.

routes

Route[]

Matriz de rotas

ResponseSectionType

Tipos de seção da resposta de rota relatada

Nome Tipo Description
CARPOOL

string

Seções da rota que exigem o uso de pistas de carona (HOV/Veículo de Alta Ocupação).

CAR_TRAIN

string

Seções da rota que são carros ou trens.

COUNTRY

string

Seções que indicam em quais países/regiões a rota está.

FERRY

string

Seções da rota que são balsas.

MOTORWAY

string

Seções da rota que são auto-estradas.

PEDESTRIAN

string

Seções da rota que são adequadas apenas para pedestres.

TOLL_ROAD

string

Seções da rota que exigem um pedágio a ser pago.

TOLL_VIGNETTE

string

Seções da rota que exigem uma vinheta de pedágio para estar presente.

TRAFFIC

string

Seções da rota que contêm informações de tráfego.

TRAVEL_MODE

string

Seções em relação ao parâmetro travelModede solicitação .

TUNNEL

string

Seções da rota que são túneis.

URBAN

string

Seções da rota que estão localizadas em áreas urbanas.

ResponseTravelMode

Modo de viagem para a rota calculada. O valor será definido other como se o modo de transporte solicitado não for possível nesta seção

Nome Tipo Description
bicycle

string

As rotas retornadas são otimizadas para bicicletas, incluindo o uso de ciclovias.

bus

string

As rotas retornadas são otimizadas para ônibus, incluindo o uso de faixas somente de ônibus. Funcionalidade BETA.

car

string

As rotas retornadas são otimizadas para carros.

motorcycle

string

As rotas retornadas são otimizadas para motocicletas. Funcionalidade BETA.

other

string

O modo de transporte especificado não é possível nesta seção

pedestrian

string

As rotas retornadas são otimizadas para pedestres, incluindo o uso de calçadas.

taxi

string

As rotas retornadas são otimizadas para táxis. Funcionalidade BETA.

truck

string

As rotas retornadas são otimizadas para veículos comerciais, como para caminhões.

van

string

As rotas retornadas são otimizadas para vans. Funcionalidade BETA.

Route

Nome Tipo Description
guidance

RouteGuidance

Contém elementos relacionados a diretrizes. Esse campo está presente somente quando as diretrizes foram solicitadas e estão disponíveis.

legs

RouteLeg[]

Matriz de pernas

sections

RouteSection[]

Matriz de seções

summary

RouteSummary

Objeto Summary

RouteDirectionsBatchItem

Um item retornado da chamada de serviço do Lote de Trajeto de Rota.

Nome Tipo Description
response

Response

O resultado da consulta. RouteDirections se a consulta for concluída com êxito, ErrorResponse caso contrário.

statusCode

integer

Solicitação HTTP status código.

RouteDirectionsBatchResult

Esse objeto é retornado de uma chamada de serviço do Lote de Trajeto de Rota bem-sucedida.

Nome Tipo Description
batchItems

RouteDirectionsBatchItem[]

Matriz que contém os resultados do lote.

summary

Summary

Resumo dos resultados da solicitação em lote

RouteGuidance

Contém elementos relacionados a diretrizes. Esse campo está presente somente quando as diretrizes foram solicitadas e estão disponíveis.

Nome Tipo Description
instructionGroups

RouteInstructionGroup[]

Grupos uma sequência de elementos de instrução relacionados uns aos outros.

instructions

RouteInstruction[]

Uma lista de instruções que descrevem manobras.

RouteInstruction

Um conjunto de atributos que descrevem uma manobra, por exemplo, "Vire para a direita", "Mantenha a esquerda", "Pegue a balsa", "Pegue a auto-estrada", "Chegar".

Nome Tipo Description
combinedMessage

string

Uma mensagem legível para a manobra combinada com a mensagem da próxima instrução. Às vezes, é possível combinar duas instruções sucessivas em uma única instrução facilitando a execução. Quando esse for o caso, o sinalizador possibleCombineWithNext será verdadeiro. Por exemplo:

10. Turn left onto Einsteinweg/A10/E22 towards Ring Amsterdam
11. Follow Einsteinweg/A10/E22 towards Ring Amsterdam

O sinalizador possibleCombineWithNext na instrução 10 é verdadeiro. Isso indica aos clientes de diretrizes codificadas que ele pode ser combinado com a instrução 11. As instruções serão combinadas automaticamente para clientes que solicitam diretrizes legíveis por humanos. O campo combinedMessage contém a mensagem combinada:

Turn left onto Einsteinweg/A10/E22 towards Ring Amsterdam
then follow Einsteinweg/A10/E22 towards Ring Amsterdam.
countryCode

string

Código de país ISO 3166-1 alfa-3 de 3 caracteres. Por exemplo, EUA.

drivingSide

DrivingSide

Indica direção à esquerda versus à direita no ponto da manobra.

exitNumber

string

O número de uma saída da rodovia tomada pela manobra atual. Se uma saída tiver vários números de saída, eles serão separados por "," e possivelmente agregados por "-", por exemplo, "10, 13-15".

instructionType

GuidanceInstructionType

Tipo da instrução, por exemplo, girar ou alterar a forma de estrada.

junctionType

JunctionType

O tipo da junção em que a manobra ocorre. Para rotatórias maiores, duas instruções separadas são geradas para entrar e sair da rotatória.

maneuver

GuidanceManeuver

Um código que identifica a manobra.

message

string

Uma mensagem legível para a manobra.

point

LatLongPair

Um local representado como latitude e longitude.

pointIndex

integer

O índice do ponto na lista de "pontos" de polilinha correspondente ao ponto da instrução.

possibleCombineWithNext

boolean

Opcionalmente, é possível combinar a instrução com a próxima. Isso pode ser usado para criar mensagens como "Virar para a esquerda e depois virar para a direita".

roadNumbers

string[]

Os números das estradas dos próximos segmentos de estrada significativos após a manobra, ou das estradas a serem seguidas. Exemplo: ["E34", "N205"]

roundaboutExitNumber

string

Isso indica qual saída tomar em uma rotatória.

routeOffsetInMeters

integer

Distância do início da rota até o ponto da instrução.

signpostText

string

O texto em uma placa que é mais relevante para a manobra ou para a direção que deve ser seguida.

stateCode

string

Uma subdivisão (por exemplo, estado) do país, representada pela segunda parte de um código ISO 3166-2 . Isso só está disponível para alguns países/regiões, como EUA, Canadá e México.

street

string

Nome da rua do próximo segmento de estrada significativo após a manobra, ou da rua que deve ser seguida.

travelTimeInSeconds

integer

Tempo estimado de viagem até o ponto correspondente a routeOffsetInMeters.

turnAngleInDecimalDegrees

integer

Indica a direção de uma instrução. Se junctionType indicar uma instrução de turno:

  • 180 = U-turn
  • [-179, -1] = Curva à esquerda
  • 0 = Em linha reta (uma volta de '0 graus')
  • [1, 179] = Curva à direita

Se junctionType indicar uma instrução de bifurcação:

  • <0 - mantenha a esquerda
  • >0 – manter a direita

RouteInstructionGroup

Grupos uma sequência de elementos de instrução relacionados uns aos outros. O intervalo de sequência é restrito com firstInstructionIndex e lastInstructionIndex. Quando as mensagens de texto legíveis por humanos são solicitadas para orientação (instructionType=text ou tagged), o instructionGroup tem uma mensagem de resumo retornada quando disponível.

Nome Tipo Description
firstInstructionIndex

integer

Índice da primeira instrução nas instruções e pertencente a esse grupo.

groupLengthInMeters

integer

Comprimento do grupo.

groupMessage

string

Mensagem de resumo quando as mensagens de texto legíveis por humanos são solicitadas para orientação (instructionType=text ou tagged).

lastInstructionIndex

integer

Índice da última instrução nas instruções e pertencente a esse grupo.

RouteLeg

Uma descrição de uma parte de uma rota, composta por uma lista de pontos. Cada ponto de passagem adicional fornecido na solicitação resultará em uma etapa adicional na rota retornada.

Nome Tipo Description
points

LatLongPair[]

Matriz de pontos

summary

RouteLegSummary

Objeto summary para a seção de rota.

RouteLegSummary

Objeto summary para a seção de rota.

Nome Tipo Description
arrivalTime

string

A hora de chegada estimada para a rota ou a perna. A hora está em UTC.

batteryConsumptionInkWh

number

Consumo estimado de energia elétrica em quilowatts-hora (kWh) usando o Modelo de Consumo Elétrico. Incluído se vehicleEngineType estiver definido como elétrico e constantSpeedConsumptionInkWhPerHundredkm for especificado. O valor de batteryConsumptionInkWh inclui a energia elétrica recuperada e, portanto, pode ser negativo (o que indica ganho de energia). Se maxChargeInkWh e currentChargeInkWh forem especificados, a recuperação será limitada para garantir que o nível de carga da bateria nunca exceda maxChargeInkWh. Se nem maxChargeInkWh nem currentChargeInkWh forem especificados, a recuperação não treinada será assumida no cálculo de consumo.

departureTime

string

A hora de partida estimada para a rota ou a perna. A hora está em UTC.

fuelConsumptionInLiters

number

Consumo estimado de combustível em litros usando o Modelo de Consumo de Combustão. Incluído se vehicleEngineType estiver definido como combustão e constantSpeedConsumptionInLitersPerHundredkm for especificado. O valor não será negativo.

historicTrafficTravelTimeInSeconds

integer

Tempo estimado de viagem calculado usando dados históricos de tráfego dependentes do tempo. Incluído somente se computeTravelTimeFor = tudo for usado na consulta.

lengthInMeters

integer

Propriedade Length In Meters

liveTrafficIncidentsTravelTimeInSeconds

integer

Tempo estimado de viagem calculado usando dados de velocidade em tempo real. Incluído somente se computeTravelTimeFor = tudo for usado na consulta.

noTrafficTravelTimeInSeconds

integer

Tempo estimado de viagem calculado como se não houvesse atrasos na rota devido às condições de tráfego (por exemplo, congestionamento). Incluído somente se computeTravelTimeFor = tudo for usado na consulta.

trafficDelayInSeconds

integer

Atraso estimado em segundos causado pelos incidentes em tempo real de acordo com as informações de tráfego. Para rotas planejadas com hora de partida no futuro, os atrasos são sempre 0. Para retornar tempos de viagem adicionais usando diferentes tipos de informações de tráfego, o parâmetro compute TravelTimeFor=all precisa ser adicionado.

travelTimeInSeconds

integer

Propriedade tempo de viagem estimado em segundos que inclui o atraso devido ao tráfego em tempo real. Observe que mesmo quando traffic=false travelTimeInSeconds ainda inclui o atraso devido ao tráfego. Se DepartAt estiver no futuro, o tempo de viagem será calculado usando dados de tráfego histórico dependentes do tempo.

RouteOptimizedWaypoint

Objeto de ponto de passagem otimizado.

Nome Tipo Description
optimizedIndex

integer

Índice de ponto de passagem otimizado do sistema.

providedIndex

integer

Índice de ponto de passagem fornecido pelo usuário.

RouteReport

Relata as configurações efetivas usadas na chamada atual.

Nome Tipo Description
effectiveSettings

EffectiveSetting[]

Parâmetros efetivos ou dados usados ao chamar essa API de Rota.

RouteSection

As seções de rota contêm informações adicionais sobre partes de uma rota. Cada seção contém pelo menos os elementos startPointIndex, endPointIndexe sectionType.

Nome Tipo Description
delayInSeconds

integer

Atraso em segundos causado pelo incidente.

effectiveSpeedInKmh

integer

Velocidade efetiva do incidente em km/h, média em todo o seu comprimento.

endPointIndex

integer

Índice do último ponto (deslocamento 0) na rota à qual esta seção se aplica.

magnitudeOfDelay

DelayMagnitude

A magnitude do atraso causado pelo incidente. Esses valores correspondem aos valores do campo de resposta ty da API Obter Detalhes do Incidente de Tráfego.

sectionType

ResponseSectionType

Tipos de seção da resposta de rota relatada

simpleCategory

SimpleCategory

Tipo do incidente. Atualmente, pode ser JAM, ROAD_WORK, ROAD_CLOSURE ou OTHER. Confira "tec" para obter informações detalhadas.

startPointIndex

integer

Índice do primeiro ponto (deslocamento 0) na rota à qual esta seção se aplica.

tec

RouteSectionTec

Detalhes do evento de tráfego, usando definições no padrão TPEG2-TEC . Pode conter effectCode e causa elementos.

travelMode

ResponseTravelMode

Modo de viagem para a rota calculada. O valor será definido other como se o modo de transporte solicitado não for possível nesta seção

RouteSectionTec

Detalhes do evento de tráfego, usando definições no padrão TPEG2-TEC . Pode conter effectCode e causa elementos.

Nome Tipo Description
causes

RouteSectionTecCause[]

Matriz de causas

effectCode

integer

O efeito no fluxo de tráfego. Contém um valor na tabela tec001:EffectCode, conforme definido no padrão TPEG2-TEC . Pode ser usado para eventos de tráfego de código de cor de acordo com a gravidade.

RouteSectionTecCause

A causa do evento de tráfego. Pode conter elementos mainCauseCode e subCauseCode. Pode ser usado para definir iconografia e descrições.

Nome Tipo Description
mainCauseCode

integer

A main causa do evento de tráfego. Contém um valor na tabela tec002:CauseCode, conforme definido no padrão TPEG2-TEC .

subCauseCode

integer

A sub-utilização do evento de tráfego. Contém um valor na tabela de sub-causa definida pelo mainCauseCode, conforme definido no padrão TPEG2-TEC .

RouteSummary

Objeto Summary

Nome Tipo Description
arrivalTime

string

A hora de chegada estimada para a rota ou a perna. A hora está em UTC.

departureTime

string

A hora de partida estimada para a rota ou a perna. A hora está em UTC.

lengthInMeters

integer

Propriedade Length In Meters

trafficDelayInSeconds

integer

Atraso estimado em segundos causado pelos incidentes em tempo real de acordo com as informações de tráfego. Para rotas planejadas com hora de partida no futuro, os atrasos são sempre 0. Para retornar tempos de viagem adicionais usando diferentes tipos de informações de tráfego, o parâmetro compute TravelTimeFor=all precisa ser adicionado.

travelTimeInSeconds

integer

Propriedade tempo de viagem estimado em segundos que inclui o atraso devido ao tráfego em tempo real. Observe que mesmo quando traffic=false travelTimeInSeconds ainda inclui o atraso devido ao tráfego. Se DepartAt estiver no futuro, o tempo de viagem será calculado usando dados de tráfego histórico dependentes do tempo.

SimpleCategory

Tipo do incidente. No momento, pode ser JAM, ROAD_WORK, ROAD_CLOSURE ou OTHER. Consulte "tec" para obter informações detalhadas.

Nome Tipo Description
JAM

string

Engarrafamento.

OTHER

string

Outros.

ROAD_CLOSURE

string

Fechamento da estrada.

ROAD_WORK

string

Trabalho de estrada.

Summary

Resumo dos resultados da solicitação em lote

Nome Tipo Description
successfulRequests

integer

Número de solicitações bem-sucedidas no lote

totalRequests

integer

Número total de solicitações no lote