Method: computeRouteMatrix

Recebe uma lista de origens e destinos e retorna um stream com informações de rota para cada combinação de origem e destino.

OBSERVAÇÃO: esse método exige a especificação de uma máscara de campo de resposta na entrada. É possível fornecer a máscara de campo de resposta usando o parâmetro de URL $fields ou fields, ou o cabeçalho HTTP/gRPC X-Goog-FieldMask. Consulte os cabeçalhos e parâmetros de URL disponíveis. O valor é uma lista separada por vírgulas de caminhos de campo. Consulte esta documentação detalhada sobre como criar os caminhos de campo.

Por exemplo, neste método:

  • Máscara de campo de todos os campos disponíveis (para inspeção manual): X-Goog-FieldMask: *
  • Máscara de campo de durações, distâncias, status, condição e índices de elementos de rotas (exemplo de configuração de produção): X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration

É fundamental incluir status na máscara de campo. Caso contrário, todas as mensagens vão parecer OK. O Google desaconselha o uso da máscara de campo de resposta com caractere curinga (*) porque:

  • Selecionar apenas os campos necessários ajuda nosso servidor a salvar ciclos de computação, o que nos permite retornar o resultado com uma latência menor.
  • Selecionar apenas os campos necessários para o job de produção garante um desempenho de latência estável. Podemos adicionar mais campos de resposta no futuro, e esses novos campos podem exigir tempo de computação extra. Se você selecionar todos os campos ou todos os campos no nível superior, poderá haver uma queda no desempenho, porque qualquer campo novo adicionado será automaticamente incluído na resposta.
  • Selecionar apenas os campos necessários resulta em um tamanho de resposta menor e, portanto, em um maior rendimento da rede.

Solicitação HTTP

POST https://routespreferred.googleapis.com/v1alpha:computeRouteMatrix

O URL usa a sintaxe de transcodificação gRPC.

Corpo da solicitação

O corpo da solicitação contém dados com a seguinte estrutura:

Representação JSON
{
  "origins": [
    {
      object (RouteMatrixOrigin)
    }
  ],
  "destinations": [
    {
      object (RouteMatrixDestination)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "departureTime": string
}
Campos
origins[]

object (RouteMatrixOrigin)

Obrigatório. Matriz de origens, que determina as linhas da matriz de resposta. Várias restrições de tamanho se aplicam à cardinalidade de origens e destinos:

  • O número de elementos (origens × destinos) não pode ser maior que 625 em nenhum caso.
  • O número de elementos (origens × destinos) não pode ser maior que 100 se routingPreference for definido como TRAFFIC_AWARE_OPTIMAL.
  • O número de waypoints (origens + destinos) especificados como placeId não pode ser maior que 50.
destinations[]

object (RouteMatrixDestination)

Obrigatório. Matriz de destinos, que determina as colunas da matriz de resposta.

travelMode

enum (RouteTravelMode)

Opcional. Especifica o modo de transporte.

routingPreference

enum (RoutingPreference)

Opcional. Especifica como calcular a rota. O servidor tenta usar a preferência de roteamento selecionada para calcular a rota. Se a preferência de roteamento resultar em um erro ou uma latência extra longa, um erro será retornado. Só é possível especificar essa opção quando travelMode é DRIVE ou TWO_WHEELER. Caso contrário, a solicitação vai falhar.

departureTime

string (Timestamp format)

Opcional. O horário de partida. Se você não definir esse valor, o padrão será o horário em que você fez a solicitação. Se você definir esse valor para um horário que já ocorreu, a solicitação vai falhar.

Um carimbo de data/hora no formato RFC3339 UTC "Zulu", com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

Corpo da resposta

Se a solicitação for bem-sucedida, o corpo da resposta incluirá um fluxo de instâncias de RouteMatrixElement.

Escopos de autorização

Requer o seguinte escopo OAuth:

  • https://www.googleapis.com/auth/maps-platform.routespreferred

Para mais informações, consulte a Visão geral do OAuth 2.0.