Method: computeRoutes

Retorna o trajeto principal, juntamente com trajetos alternativos opcionais, considerando um conjunto de pontos de referência terminais e intermediários.

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 um 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 a documentação detalhada sobre como construir 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 da duração, distância e polilinha no nível do trajeto (um exemplo de configuração de produção): X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline

O Google não recomenda o uso da máscara de campo de resposta curinga (*) ou a especificação da máscara de campo no nível superior (routes) pelos seguintes motivos:

  • 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 uma resposta menor e, portanto, em maior capacidade de rede.

Solicitação HTTP

POST https://routes.googleapis.com/directions/v2:computeRoutes

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
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "intermediates": [
    {
      object (Waypoint)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "polylineQuality": enum (PolylineQuality),
  "polylineEncoding": enum (PolylineEncoding),
  "departureTime": string,
  "arrivalTime": string,
  "computeAlternativeRoutes": boolean,
  "routeModifiers": {
    object (RouteModifiers)
  },
  "languageCode": string,
  "regionCode": string,
  "units": enum (Units),
  "optimizeWaypointOrder": boolean,
  "requestedReferenceRoutes": [
    enum (ReferenceRoute)
  ],
  "extraComputations": [
    enum (ExtraComputation)
  ],
  "trafficModel": enum (TrafficModel),
  "transitPreferences": {
    object (TransitPreferences)
  }
}
Campos
origin

object (Waypoint)

Obrigatório. Ponto de referência da origem.

destination

object (Waypoint)

Obrigatório. Ponto de referência do destino.

intermediates[]

object (Waypoint)

Opcional. Um conjunto de waypoints ao longo do trajeto (excluindo pontos de terminal), para parada ou passagem. Até 25 waypoints intermediários são permitidos.

travelMode

enum (RouteTravelMode)

Opcional. Especifica o meio 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 em uma latência extralonga, 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.

polylineQuality

enum (PolylineQuality)

Opcional. Especifica sua preferência pela qualidade da polilinha.

polylineEncoding

enum (PolylineEncoding)

Opcional. Especifica a codificação preferencial para a polilinha.

departureTime

string (Timestamp format)

Opcional. A hora de partida. Se você não definir esse valor, ele será usado como padrão para o horário em que a solicitação foi feita. OBSERVAÇÃO: só é possível especificar um departureTime no passado quando RouteTravelMode está definido como TRANSIT. As viagens de transporte público estão disponíveis para até 7 dias no passado ou 100 dias no futuro.

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

arrivalTime

string (Timestamp format)

Opcional. O horário de chegada. OBSERVAÇÃO: só poderá ser definido quando RouteTravelMode for definido como TRANSIT. É possível especificar departureTime ou arrivalTime, mas não ambos. As viagens de transporte público estão disponíveis para até 7 dias no passado ou 100 dias no futuro.

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

computeAlternativeRoutes

boolean

Opcional. Especifica se é necessário calcular rotas alternativas além da rota. Nenhum trajeto alternativo é retornado para solicitações que têm waypoints intermediários.

routeModifiers

object (RouteModifiers)

Opcional. Um conjunto de condições a serem atendidas que afetam a forma como os trajetos são calculados.

languageCode

string

Opcional. O código de idioma BCP-47, como "pt-BR" ou "en-US". Para saber mais, consulte Identificador de localidade Unicode. Consulte Compatibilidade de idiomas para ver a lista de idiomas compatíveis. Quando você não fornece esse valor, o idioma de exibição é inferido com base no local da solicitação de trajeto.

regionCode

string

Opcional. O código de região, especificado como um valor ccTLD ("domínio de nível superior") de dois caracteres. Para mais informações, consulte Domínios de nível superior com códigos de país.

units

enum (Units)

Opcional. Especifica as unidades de medida para os campos de exibição. Esses campos incluem o campo instruction em NavigationInstruction. As unidades de medida usadas para trajeto, trecho, distância do passo e duração não são afetadas por esse valor. Se você não informar esse valor, as unidades de exibição serão inferidas a partir do local da primeira origem.

optimizeWaypointOrder

boolean

Opcional. Se definida como verdadeira, o serviço tentará minimizar o custo total do trajeto reordenando os waypoints intermediários especificados. A solicitação falhará se algum dos waypoints intermediários for um via. Use ComputeRoutesResponse.Routes.optimized_intermediate_waypoint_index para encontrar a nova ordem. Se ComputeRoutesResponseroutes.optimized_intermediate_waypoint_index não for solicitado no cabeçalho X-Goog-FieldMask, a solicitação falhará. Se optimizeWaypointOrder for definido como falso, ComputeRoutesResponse.optimized_intermediate_waypoint_index estará vazio.

requestedReferenceRoutes[]

enum (ReferenceRoute)

Opcional. Especifica quais rotas de referência serão calculadas como parte da solicitação, além da rota padrão. Um trajeto de referência tem um objetivo de cálculo diferente do trajeto padrão. Por exemplo, um cálculo de trajeto de referência de FUEL_EFFICIENT considera vários parâmetros que gerariam um trajeto econômico ideal.

extraComputations[]

enum (ExtraComputation)

Opcional. Uma lista de cálculos extras que podem ser usados para concluir a solicitação. Observação: esses cálculos extras podem retornar campos extras na resposta. Esses campos extras também precisam ser especificados na máscara de campo a ser retornada na resposta.

trafficModel

enum (TrafficModel)

Opcional. Especifica as suposições a serem usadas no cálculo do tempo no trânsito. Essa configuração afeta o valor retornado no campo de duração no Route e no RouteLeg, que contém o tempo previsto no trânsito com base nas médias históricas. TrafficModel só está disponível para solicitações que definiram RoutingPreference como TRAFFIC_AWARE_OPTIMAL e RouteTravelMode como DRIVE. O padrão será BEST_GUESS se o tráfego for solicitado e TrafficModel não for especificado.

transitPreferences

object (TransitPreferences)

Opcional. Especifica preferências que influenciam o trajeto retornado para rotas TRANSIT. OBSERVAÇÃO: só é possível especificar um transitPreferences quando RouteTravelMode está definido como TRANSIT.

Corpo da resposta

v2.computeRoute a mensagem de resposta.

Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:

Representação JSON
{
  "routes": [
    {
      object (Route)
    }
  ],
  "fallbackInfo": {
    object (FallbackInfo)
  },
  "geocodingResults": {
    object (GeocodingResults)
  }
}
Campos
routes[]

object (Route)

Contém uma matriz de rotas computadas (até três) quando você especifica compute_alternatives_routes e apenas uma rota quando não faz isso. Quando essa matriz contém várias entradas, a primeira é o trajeto mais recomendado. Se a matriz estiver vazia, isso significa que nenhum trajeto foi encontrado.

fallbackInfo

object (FallbackInfo)

Em alguns casos, quando o servidor não consegue computar os resultados da rota com todas as preferências de entrada, ele pode optar por usar uma forma de computação diferente. Quando o modo substituto é usado, esse campo contém informações detalhadas sobre a resposta substituta. Caso contrário, este campo não será definido.

geocodingResults

object (GeocodingResults)

Contém informações de resposta de geocodificação para waypoints especificados como endereços.

PolylineQuality

Um conjunto de valores que especifica a qualidade da polilinha.

Enums
POLYLINE_QUALITY_UNSPECIFIED Nenhuma preferência de qualidade de polilinha especificada. O valor padrão é OVERVIEW.
HIGH_QUALITY Especifica uma polilinha de alta qualidade, que é composta usando mais pontos do que OVERVIEW, ao custo do aumento do tamanho da resposta. Use esse valor quando precisar de mais precisão.
OVERVIEW Especifica uma polilinha de visão geral, composta por um pequeno número de pontos. Use este valor para exibir uma visão geral do trajeto. O uso dessa opção tem uma latência de solicitação menor em comparação com o uso da opção HIGH_QUALITY.

PolylineEncoding

Especifica o tipo preferido de polilinha a ser retornado.

Enums
POLYLINE_ENCODING_UNSPECIFIED Nenhuma preferência de tipo de polilinha especificada. O valor padrão é ENCODED_POLYLINE.
ENCODED_POLYLINE Especifica uma polilinha codificada usando o algoritmo de codificação de polilinha.
GEO_JSON_LINESTRING Especifica uma polilinha usando o formato LineString GeoJSON

ReferenceRoute

Uma rota de referência compatível no ComputeRoutesRequest.

Enums
REFERENCE_ROUTE_UNSPECIFIED Não utilizado. Solicitações com esse valor falham.
FUEL_EFFICIENT Trajeto de baixo consumo de combustível. Os trajetos identificados com esse valor são determinados como otimizados para parâmetros como o consumo de combustível.

ExtraComputation

Cálculos extras a serem realizados ao concluir a solicitação.

Enums
EXTRA_COMPUTATION_UNSPECIFIED Não utilizado. As solicitações que tiverem esse valor falharão.
TOLLS Informações sobre pedágios dos trajetos.
FUEL_CONSUMPTION Consumo estimado de combustível para os trajetos.
TRAFFIC_ON_POLYLINE Polilinhas com base no trânsito nos trajetos
HTML_FORMATTED_NAVIGATION_INSTRUCTIONS NavigationInstructions apresentado como uma string de texto HTML formatada. Este conteúdo deve ser lido no estado em que se encontra. Este conteúdo é apenas para exibição. Não o analise programaticamente.

Rota

Contém um trajeto, que consiste em uma série de segmentos de estrada conectados que unem waypoints iniciais, finais e intermediários.

Representação JSON
{
  "routeLabels": [
    enum (RouteLabel)
  ],
  "legs": [
    {
      object (RouteLeg)
    }
  ],
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "description": string,
  "warnings": [
    string
  ],
  "viewport": {
    object (Viewport)
  },
  "travelAdvisory": {
    object (RouteTravelAdvisory)
  },
  "optimizedIntermediateWaypointIndex": [
    integer
  ],
  "localizedValues": {
    object (RouteLocalizedValues)
  },
  "routeToken": string
}
Campos
routeLabels[]

enum (RouteLabel)

Rótulos do Route que são úteis para identificar propriedades específicas do trajeto e comparar com outras.

legs[]

object (RouteLeg)

Um conjunto de trechos (segmentos de caminho entre waypoints) que compõem o trajeto. Cada trecho corresponde à viagem entre dois Waypoints que não são via. Por exemplo, um trajeto sem waypoints intermediários tem apenas um trecho. Um trajeto que inclui um waypoint intermediário que não é via tem dois trechos. Um trajeto que inclui um waypoint intermediário via tem um trecho. A ordem dos trechos corresponde à ordem dos waypoints de origin a intermediates e destination.

distanceMeters

integer

A distância de viagem do trajeto, em metros.

duration

string (Duration format)

O tempo necessário para navegar no trajeto. Se você definir routingPreference como TRAFFIC_UNAWARE, esse valor será igual a staticDuration. Se você definir routingPreference como TRAFFIC_AWARE ou TRAFFIC_AWARE_OPTIMAL, esse valor será calculado considerando as condições de trânsito.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

staticDuration

string (Duration format)

A duração da viagem no trajeto sem considerar as condições de trânsito.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

polyline

object (Polyline)

A polilinha geral do trajeto. Esta é uma polilinha combinada de todas as legs.

description

string

Uma descrição do trajeto.

warnings[]

string

Uma matriz de avisos a serem mostrados durante a exibição do trajeto.

viewport

object (Viewport)

A caixa delimitadora da janela de visualização da polilinha.

travelAdvisory

object (RouteTravelAdvisory)

Informações adicionais sobre o trajeto.

optimizedIntermediateWaypointIndex[]

integer

Se você definir optimizeWaypointOrder como verdadeiro, esse campo conterá a ordem otimizada dos waypoints intermediários. Caso contrário, este campo ficará vazio. Por exemplo, se você fornecer uma entrada de Origem: LA; waypoints intermediários: Dallas, Bangor, Phoenix; Destino: Nova York e a ordem otimizada do waypoint intermediário for Phoenix, Dallas, Bangor, esse campo conterá os valores [2, 0, 1]. O índice começa com 0 para o primeiro waypoint intermediário fornecido na entrada.

localizedValues

object (RouteLocalizedValues)

Representações de texto das propriedades da Route.

routeToken

string

Um token de rota seguro para a Web e codificado em base64 que pode ser transmitido ao SDK do Navigation. Ele permite que esse SDK reconstrua a rota durante a navegação e, em caso de reencaminhamento, honra a intenção original de quando você criou a rota chamando v2.computeRoutes. Os clientes devem tratar esse token como um blob opaco. Não compare seu valor entre solicitações. Esse token pode ser alterado mesmo que a mesma rota seja retornada. OBSERVAÇÃO: Route.route_token só está disponível para solicitações que definiram ComputeRoutesRequest.routing_preference como TRAFFIC_AWARE ou TRAFFIC_AWARE_OPTIMAL. Route.route_token não é compatível com solicitações que têm waypoints do tipo Via.

RouteLabel

Rótulos do Route que são úteis para identificar propriedades específicas do trajeto e comparar com outras.

Enums
ROUTE_LABEL_UNSPECIFIED Padrão: não usado.
DEFAULT_ROUTE O padrão "melhor" retornada para o cálculo da rota.
DEFAULT_ROUTE_ALTERNATE Uma alternativa ao padrão "melhor" trajeto. Rotas como essa serão retornadas quando computeAlternativeRoutes for especificado.
FUEL_EFFICIENT Trajeto de baixo consumo de combustível. Os trajetos identificados com esse valor são determinados como otimizados para parâmetros econômicos, como consumo de combustível.

RouteLeg

Contém um trecho entre waypoints diferentes de via.

Representação JSON
{
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "steps": [
    {
      object (RouteLegStep)
    }
  ],
  "travelAdvisory": {
    object (RouteLegTravelAdvisory)
  },
  "localizedValues": {
    object (RouteLegLocalizedValues)
  },
  "stepsOverview": {
    object (StepsOverview)
  }
}
Campos
distanceMeters

integer

A distância de viagem do trecho do trajeto, em metros.

duration

string (Duration format)

O tempo necessário para navegar no trecho. Se o route_preference for definido como TRAFFIC_UNAWARE, esse valor será igual a staticDuration. Se route_preference for TRAFFIC_AWARE ou TRAFFIC_AWARE_OPTIMAL, esse valor será calculado considerando as condições de trânsito.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

staticDuration

string (Duration format)

A duração da viagem ao longo do trecho, calculada sem considerar as condições de trânsito.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

polyline

object (Polyline)

A polilinha geral deste trecho que inclui a polilinha de cada step.

startLocation

object (Location)

O local de início deste trecho. Esse local pode ser diferente do origin fornecido. Por exemplo, quando o origin fornecido não está perto de uma via, isso é um ponto na via.

endLocation

object (Location)

O local final deste trecho. Esse local pode ser diferente do destination fornecido. Por exemplo, quando o destination fornecido não está perto de uma via, isso é um ponto na via.

steps[]

object (RouteLegStep)

Uma matriz de etapas denotando segmentos neste trecho. Cada etapa representa uma instrução de navegação.

travelAdvisory

object (RouteLegTravelAdvisory)

Contém as informações adicionais sobre as quais o usuário deve ser informado, como possíveis restrições de zona de trânsito, em um trecho de trajeto.

localizedValues

object (RouteLegLocalizedValues)

Representações de texto das propriedades da RouteLeg.

stepsOverview

object (StepsOverview)

Informações gerais sobre as etapas descritas neste RouteLeg. Esse campo só é preenchido para trajetos de TRANSPORTE.

Polilinha

Encapsula uma polilinha codificada.

Representação JSON
{

  // Union field polyline_type can be only one of the following:
  "encodedPolyline": string,
  "geoJsonLinestring": {
    object
  }
  // End of list of possible types for union field polyline_type.
}
Campos
Campo de união polyline_type. Encapsula o tipo de polilinha. O padrão éencoded_polyline. polyline_type pode ser apenas de um dos tipos a seguir:
encodedPolyline

string

A codificação de strings da polilinha usando o algoritmo de codificação de polilinha

geoJsonLinestring

object (Struct format)

Especifica uma polilinha usando o formato LineString GeoJSON.

RouteLegStep

Contém um segmento de um RouteLeg. Uma etapa corresponde a uma única instrução de navegação. Os trechos do trajeto são compostos por degraus.

Representação JSON
{
  "distanceMeters": integer,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelAdvisory": {
    object (RouteLegStepTravelAdvisory)
  },
  "localizedValues": {
    object (RouteLegStepLocalizedValues)
  },
  "transitDetails": {
    object (RouteLegStepTransitDetails)
  },
  "travelMode": enum (RouteTravelMode)
}
Campos
distanceMeters

integer

A distância de viagem desta etapa, em metros. Em algumas circunstâncias, este campo pode não ter um valor.

staticDuration

string (Duration format)

A duração da viagem por esta etapa sem levar em consideração as condições de trânsito. Em algumas circunstâncias, este campo pode não ter um valor.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

polyline

object (Polyline)

A polilinha associada a esta etapa.

startLocation

object (Location)

O local de início desta etapa.

endLocation

object (Location)

O local final desta etapa.

navigationInstruction

object (NavigationInstruction)

Instruções de navegação.

travelAdvisory

object (RouteLegStepTravelAdvisory)

Contém as informações adicionais sobre as quais o usuário deve ser informado, como possíveis restrições de zona de tráfego, em uma etapa de trecho.

localizedValues

object (RouteLegStepLocalizedValues)

Representações de texto das propriedades da RouteLegStep.

transitDetails

object (RouteLegStepTransitDetails)

Detalhes referentes a esta etapa, se o meio de transporte for TRANSIT.

travelMode

enum (RouteTravelMode)

O meio de transporte usado nesta etapa.

Maneuver

Um conjunto de valores que especifica a ação de navegação a ser realizada na etapa atual (por exemplo, virar à esquerda, mesclar ou reto).

Enums
MANEUVER_UNSPECIFIED Não utilizado.
TURN_SLIGHT_LEFT Vire levemente para a esquerda.
TURN_SHARP_LEFT Vire acentuada para a esquerda.
UTURN_LEFT Faça uma curva à esquerda.
TURN_LEFT Vire à esquerda.
TURN_SLIGHT_RIGHT Vire levemente para a direita.
TURN_SHARP_RIGHT Vire acentuada para a direita.
UTURN_RIGHT Faça uma curva para a direita.
TURN_RIGHT Vire à direita.
STRAIGHT Vá direto.
RAMP_LEFT Pegue a rampa da esquerda.
RAMP_RIGHT Pegue a rampa da direita.
MERGE Entre no tráfego.
FORK_LEFT Pegue a bifurcação da esquerda.
FORK_RIGHT Pegue a bifurcação da direita.
FERRY Pegue a balsa.
FERRY_TRAIN Pegue o trem que leva até a balsa.
ROUNDABOUT_LEFT Vire à esquerda na rotatória.
ROUNDABOUT_RIGHT Vire à direita na rotatória.
DEPART Manobra inicial.
NAME_CHANGE Usado para indicar uma mudança no nome da rua.

RouteLegStepTravelAdvisory

Contém as informações adicionais que o usuário precisa saber, como possíveis restrições de zona de tráfego em uma etapa de trecho.

Representação JSON
{
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Campos
speedReadingIntervals[]

object (SpeedReadingInterval)

OBSERVAÇÃO: este campo não está preenchido no momento.

RouteLegStepLocalizedValues

Representações de texto de determinadas propriedades.

Representação JSON
{
  "distance": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  }
}
Campos
distance

object (LocalizedText)

Distância de viagem representada em forma de texto.

staticDuration

object (LocalizedText)

Duração sem considerar as condições de trânsito, representada em forma de texto.

RouteLegStepTransitDetails

Outras informações para o RouteLegStep relacionadas aos trajetos TRANSIT.

Representação JSON
{
  "stopDetails": {
    object (TransitStopDetails)
  },
  "localizedValues": {
    object (TransitDetailsLocalizedValues)
  },
  "headsign": string,
  "headway": string,
  "transitLine": {
    object (TransitLine)
  },
  "stopCount": integer,
  "tripShortText": string
}
Campos
stopDetails

object (TransitStopDetails)

Informações sobre as paradas de chegada e partida da etapa.

localizedValues

object (TransitDetailsLocalizedValues)

Representações de texto das propriedades da RouteLegStepTransitDetails.

headsign

string

Especifica a direção de deslocamento nessa linha, conforme marcada no veículo ou no ponto de partida. Geralmente, a direção é a estação terminal.

headway

string (Duration format)

Especifica o horário esperado como uma duração entre as partidas no mesmo ponto, nesse horário. Por exemplo, se o intervalo for igual a 600 segundos, aguarde 10 minutos caso perca o ônibus.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

transitLine

object (TransitLine)

Informações sobre a linha de transporte público usada nesta etapa.

stopCount

integer

O número de paradas da partida até a parada de chegada. Essa contagem inclui a parada de chegada, mas exclui a parada de partida. Por exemplo, se o seu trajeto sai da parada A, passa pelas paradas B e C e chega à parada D, a stopCount retorna 3.

tripShortText

string

O texto que aparece em horários e placas para identificar uma viagem de transporte público para os passageiros. O texto deve identificar exclusivamente uma viagem no dia do serviço. Por exemplo, "538" é o tripShortText do trem da Amtrak que sai de San Jose, CA às 15h10, nos dias úteis, para Sacramento, CA.

TransitStopDetails

Detalhes sobre as paradas de transporte público do RouteLegStep.

Representação JSON
{
  "arrivalStop": {
    object (TransitStop)
  },
  "arrivalTime": string,
  "departureStop": {
    object (TransitStop)
  },
  "departureTime": string
}
Campos
arrivalStop

object (TransitStop)

Informações sobre a parada de chegada para a etapa.

arrivalTime

string (Timestamp format)

O horário previsto de chegada para a etapa.

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

departureStop

object (TransitStop)

Informações sobre a parada de partida da etapa.

departureTime

string (Timestamp format)

O horário estimado de partida da etapa.

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

TransitStop

Informações sobre uma parada de transporte público.

Representação JSON
{
  "name": string,
  "location": {
    object (Location)
  }
}
Campos
name

string

O nome da parada de transporte público.

location

object (Location)

O local da parada expresso em coordenadas de latitude/longitude.

TransitDetailsLocalizedValues

Descrições localizadas de valores para RouteTransitDetails.

Representação JSON
{
  "arrivalTime": {
    object (LocalizedTime)
  },
  "departureTime": {
    object (LocalizedTime)
  }
}
Campos
arrivalTime

object (LocalizedTime)

Horário na representação de texto formatada com um fuso horário correspondente.

departureTime

object (LocalizedTime)

Horário na representação de texto formatada com um fuso horário correspondente.

LocalizedTime

Descrição localizada do tempo.

Representação JSON
{
  "time": {
    object (LocalizedText)
  },
  "timeZone": string
}
Campos
time

object (LocalizedText)

O horário especificado como uma string em um determinado fuso horário.

timeZone

string

Contém o fuso horário. O valor é o nome do fuso horário, conforme definido no banco de dados de fuso horário IANA, por exemplo, "América/Nova_York".

TransitLine

Contém informações sobre a linha de transporte público usada nesta etapa.

Representação JSON
{
  "agencies": [
    {
      object (TransitAgency)
    }
  ],
  "name": string,
  "uri": string,
  "color": string,
  "iconUri": string,
  "nameShort": string,
  "textColor": string,
  "vehicle": {
    object (TransitVehicle)
  }
}
Campos
agencies[]

object (TransitAgency)

A empresa de transporte público que opera essa linha.

name

string

O nome completo dessa linha de transporte público. Por exemplo, "8 Avenue Local".

uri

string

o URI da linha de transporte público, conforme fornecido pela empresa de transporte público.

color

string

A cor usada com frequência na sinalização dessa linha. Representado no formato hexadecimal.

iconUri

string

URI do ícone associado a essa linha.

nameShort

string

O nome curto desta linha de transporte público. Esse nome normalmente será um número de linha, como "M7" ou "355".

textColor

string

A cor usada com frequência no texto da sinalização dessa linha. Representado no formato hexadecimal.

vehicle

object (TransitVehicle)

O tipo de veículo que opera nessa linha de transporte público.

TransitAgency

Uma empresa de transporte público que opera uma linha de transporte público.

Representação JSON
{
  "name": string,
  "phoneNumber": string,
  "uri": string
}
Campos
name

string

O nome desta empresa de transporte público.

phoneNumber

string

O número de telefone formatado específico da localidade da empresa de transporte público.

uri

string

O URI da empresa de transporte público.

TransitVehicle

Informações sobre um veículo usado em trajetos de transporte público.

Representação JSON
{
  "name": {
    object (LocalizedText)
  },
  "type": enum (TransitVehicleType),
  "iconUri": string,
  "localIconUri": string
}
Campos
name

object (LocalizedText)

O nome deste veículo, em letras maiúsculas.

type

enum (TransitVehicleType)

O tipo de veículo usado.

iconUri

string

URI de um ícone associado a esse tipo de veículo.

localIconUri

string

O URI do ícone associado a esse tipo de veículo, com base na sinalização de transporte local.

TransitVehicleType

O tipo de veículo dos trajetos de transporte público.

Enums
TRANSIT_VEHICLE_TYPE_UNSPECIFIED Não utilizado.
BUS Ônibus
CABLE_CAR Um veículo que opera por meio de um cabo, normalmente terrestre. Bondes aéreos podem ser do tipo GONDOLA_LIFT.
COMMUTER_TRAIN Trem metropolitano.
FERRY Balsa.
FUNICULAR Um veículo puxado por cabo em declives acentuados. Um funicular geralmente consiste em dois vagões que funcionam como contrapesos um para o outro.
GONDOLA_LIFT Um bonde aéreo.
HEAVY_RAIL Vagões pesados.
HIGH_SPEED_TRAIN Trem de alta velocidade.
INTERCITY_BUS Ônibus intermunicipal.
LONG_DISTANCE_TRAIN Trem de longa distância.
METRO_RAIL Trilho para veículos leves.
MONORAIL Monotrilho.
OTHER Todos os outros veículos.
RAIL Trem
SHARE_TAXI Um transporte compartilhado é um veículo que pode deixar e coletar passageiros em qualquer ponto de sua rota.
SUBWAY Veículo leve subterrâneo.
TRAM Veículo leve acima do chão.
TROLLEYBUS Ônibus elétrico.

RouteLegTravelAdvisory

Contém as informações adicionais sobre as quais o usuário precisa ser informado em uma etapa de trecho, como possíveis restrições de zona de tráfego.

Representação JSON
{
  "tollInfo": {
    object (TollInfo)
  },
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Campos
tollInfo

object (TollInfo)

Contém informações sobre pedágios no RouteLeg específico. Esse campo só é preenchido quando há pedágios na RouteLeg. Se este campo estiver definido, mas o subcampo ajudar a fazer a estimativa de preço não estiver preenchido, esperamos que a estrada tenha pedágios, mas não será possível saber um preço estimado. Se esse campo não existir, não haverá pedágio no RouteLeg.

speedReadingIntervals[]

object (SpeedReadingInterval)

Intervalos de leitura de velocidade que detalham a densidade de tráfego. Aplicável no caso das preferências de roteamento TRAFFIC_AWARE e TRAFFIC_AWARE_OPTIMAL. Os intervalos cobrem toda a polilinha da RouteLeg sem sobreposição. O ponto de início de um intervalo especificado é o mesmo que o ponto de término do intervalo anterior.

Exemplo:

polyline: A ---- B ---- C ---- D ---- E ---- F ---- G
speedReadingIntervals: [A,C), [C,D), [D,G).

RouteLegLocalizedValues

Representações de texto de determinadas propriedades.

Representação JSON
{
  "distance": {
    object (LocalizedText)
  },
  "duration": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  }
}
Campos
distance

object (LocalizedText)

Distância de viagem representada em forma de texto.

duration

object (LocalizedText)

Duração considerando as condições de trânsito representadas em forma de texto. Observação: se você não solicitou informações de tráfego, esse valor será igual a "staticDuration".

staticDuration

object (LocalizedText)

Duração sem considerar as condições de trânsito, representada em forma de texto.

StepsOverview

Fornece informações gerais sobre uma lista de RouteLegSteps.

Representação JSON
{
  "multiModalSegments": [
    {
      object (MultiModalSegment)
    }
  ]
}
Campos
multiModalSegments[]

object (MultiModalSegment)

Informações resumidas sobre diferentes segmentos multimodais do RouteLeg.steps. Esse campo não será preenchido se o RouteLeg não tiver segmentos multimodais nas etapas.

MultiModalSegment

Fornece informações resumidas sobre diferentes segmentos multimodais do RouteLeg.steps. Um segmento multimodal é definido como uma ou mais RouteLegStep contíguas que têm o mesmo RouteTravelMode. Esse campo não será preenchido se o RouteLeg não tiver segmentos multimodais nas etapas.

Representação JSON
{
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelMode": enum (RouteTravelMode),
  "stepStartIndex": integer,
  "stepEndIndex": integer
}
Campos
navigationInstruction

object (NavigationInstruction)

NavigationInstruções para o segmento multimodal.

travelMode

enum (RouteTravelMode)

O meio de transporte do segmento multimodal.

stepStartIndex

integer

O índice RouteLegStep correspondente que é o início de um segmento multimodal.

stepEndIndex

integer

O índice RouteLegStep correspondente que é o final de um segmento multimodal.

Janela de visualização

Uma janela de visualização de latitude e longitude, representada como dois pontos diagonalmente opostos low e high. Uma janela de visualização é considerada uma região fechada, ou seja, inclui seus limites. Os limites de latitude devem variar entre -90 e 90 graus, e os limites de longitude devem variar entre -180 e 180 graus. Os vários casos incluem:

  • Se low = high, a janela de visualização consistirá nesse único ponto.

  • Se low.longitude > high.longitude, o intervalo de longitude será invertido (a janela de visualização cruza a linha de 180 graus de longitude).

  • Se low.longitude = -180 graus e high.longitude = 180 graus, a janela de visualização incluirá todas as longitudes.

  • Se low.longitude = 180 graus e high.longitude = -180 graus, o intervalo de longitude está vazio.

  • Se low.latitude > high.latitude, o intervalo de latitude está vazio.

Tanto low quanto high precisam ser preenchidos, e a caixa representada não pode ficar vazia (conforme especificado pelas definições acima). Uma janela de visualização vazia resultará em erro.

Por exemplo, esta janela de visualização abrange totalmente Nova York:

{ "low": { "latitude": 40.477398, "longitude": -74.259087 }, "high": { "latitude": 40.91618, "longitude": -73.70018 } }

Representação JSON
{
  "low": {
    object (LatLng)
  },
  "high": {
    object (LatLng)
  }
}
Campos
low

object (LatLng)

Obrigatório. O ponto baixo da janela de visualização.

high

object (LatLng)

Obrigatório. O ponto alto da janela de visualização.

RouteLocalizedValues

Representações de texto de determinadas propriedades.

Representação JSON
{
  "distance": {
    object (LocalizedText)
  },
  "duration": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  },
  "transitFare": {
    object (LocalizedText)
  }
}
Campos
distance

object (LocalizedText)

Distância de viagem representada em forma de texto.

duration

object (LocalizedText)

Duração considerando as condições de trânsito, representada em forma de texto. Observação: se você não solicitou informações de tráfego, esse valor será igual a staticDuration.

staticDuration

object (LocalizedText)

Duração sem considerar as condições de trânsito, representada em forma de texto.

transitFare

object (LocalizedText)

Tarifa de transporte público representada em formato de texto.

GeocodingResults

Contém GeocodedWaypoints para waypoints de origem, destino e intermediários. Preenchido apenas para waypoints do endereço.

Representação JSON
{
  "origin": {
    object (GeocodedWaypoint)
  },
  "destination": {
    object (GeocodedWaypoint)
  },
  "intermediates": [
    {
      object (GeocodedWaypoint)
    }
  ]
}
Campos
origin

object (GeocodedWaypoint)

Ponto de referência geocodificado de origem.

destination

object (GeocodedWaypoint)

Ponto de referência geocodificado de destino.

intermediates[]

object (GeocodedWaypoint)

Uma lista de pontos de referência geocodificados intermediários, cada um contendo um campo de índice que corresponde à posição baseada em zero do ponto de referência, na ordem em que foram especificados na solicitação.

GeocodedWaypoint

Detalhes sobre os locais usados como waypoints. Preenchido apenas para waypoints do endereço. Inclui detalhes sobre os resultados de geocodificação para fins de determinar para onde o endereço foi geocodificado.

Representação JSON
{
  "geocoderStatus": {
    object (Status)
  },
  "type": [
    string
  ],
  "partialMatch": boolean,
  "placeId": string,
  "intermediateWaypointRequestIndex": integer
}
Campos
geocoderStatus

object (Status)

Indica o código de status resultante da operação de geocodificação.

type[]

string

Os tipos do resultado, na forma de zero ou mais tags de tipo. Tipos compatíveis: Tipos de endereço e de componentes de endereço.

partialMatch

boolean

Indica que o geocodificador não retornou uma correspondência exata para a solicitação original, mas conseguiu corresponder parte do endereço solicitado. Pode ser recomendável verificar se a solicitação original inclui erros de ortografia e/ou um endereço incompleto.

placeId

string

O ID de lugar deste resultado.

intermediateWaypointRequestIndex

integer

O índice do waypoint intermediário correspondente na solicitação. Preenchido apenas se o waypoint correspondente for um waypoint intermediário.