Method: computeRoutes

Retorna o trajeto principal juntamente com trajetos alternativos opcionais, dado um conjunto de waypoints terminais e intermediários.

OBSERVAÇÃO: esse método exige que você especifique 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 parâmetros e cabeçalhos 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 do 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çã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 de caractere curinga (*) nem da especificação da máscara de campo no nível superior (routes), porque:

  • Selecionar apenas os campos necessários ajuda o servidor a economizar ciclos de computação, permitindo retornar o resultado com uma latência menor.
  • A seleção apenas dos campos necessários no 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 mais tempo de computação. Se você selecionar todos os campos ou todos no nível superior, poderá observar uma queda no desempenho, porque todos os novos campos adicionados serão incluídos automaticamente na resposta.
  • A seleção apenas dos campos necessários resulta em um tamanho de 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 de origem.

destination

object (Waypoint)

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

intermediates[]

object (Waypoint)

Opcional. Um conjunto de pontos de referência ao longo do trajeto (exceto pontos terminais), para passar ou parar. São permitidos até 25 waypoints intermediários.

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 trajeto resultar em um erro ou em 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 falha.

polylineQuality

enum (PolylineQuality)

Opcional. Especifica sua preferência para a qualidade da polilinha.

polylineEncoding

enum (PolylineEncoding)

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

departureTime

string (Timestamp format)

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

Um carimbo de data/hora no formato UTC "Zulu" RFC3339, 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ó pode ser definido quando RouteTravelMode é definido como TRANSIT. É possível especificar departureTime ou arrivalTime, mas não ambos. As viagens de transporte público ficam disponíveis para até 7 dias no passado ou 100 dias no futuro.

Um carimbo de data/hora no formato UTC "Zulu" RFC3339, 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 rotas alternativas devem ser calculadas além do trajeto. 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 "en-US" ou "sr-Latn". Para saber mais, consulte Identificador de localidade Unicode. Para acessar a lista de idiomas compatíveis, consulte Suporte a idiomas. Quando você não fornece esse valor, o idioma de exibição é inferido com base no local da solicitação de rota.

regionCode

string

Opcional. O código regional, 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ódigo 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 o trajeto, trecho, distância em passos e duração não são afetadas por este valor. Se você não fornecer esse valor, as unidades de exibição serão inferidas a partir do local da primeira origem.

optimizeWaypointOrder

boolean

Opcional. Se for definido como verdadeiro, o serviço tentará minimizar o custo total do trajeto reorganizando os waypoints intermediários especificados. A solicitação falhará se qualquer um dos waypoints intermediários for um waypoint 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 definida como falsa, ComputeRoutesResponse.optimized_intermediate_waypoint_index vai ficar vazio.

requestedReferenceRoutes[]

enum (ReferenceRoute)

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

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 premissas a serem usadas no cálculo do tempo no trânsito. Essa configuração afeta o valor retornado no campo de duração nos Route e RouteLeg, que contém o tempo previsto no trânsito com base nas médias históricas. TrafficModel está disponível apenas 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 as preferências que influenciam o trajeto retornado para TRANSIT. OBSERVAÇÃO: só será possível especificar um transitPreferences quando RouteTravelMode estiver definido como TRANSIT.

Corpo da resposta

v2.computeRoutes 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 contém apenas uma rota quando não precisa. Quando essa matriz contém várias entradas, a primeira é a rota mais recomendada. Se a matriz estiver vazia, isso significa que nenhum trajeto foi encontrado.

fallbackInfo

object (FallbackInfo)

Em alguns casos, quando o servidor não consegue calcular os resultados da rota com todas as preferências de entrada, ele pode usar outra maneira de cálculo. Quando o modo substituto é usado, esse campo contém informações detalhadas sobre a resposta de fallback. Caso contrário, o 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 da polilinha especificada. O valor padrão é OVERVIEW.
HIGH_QUALITY Especifica uma polilinha de alta qualidade, que é composta usando mais pontos do que OVERVIEW, mas aumenta o tamanho da resposta. Use esse valor quando precisar de mais precisão.
OVERVIEW Especifica uma polilinha de visão geral, que é composta usando um pequeno número de pontos. Use esse valor ao exibir uma visão geral do trajeto. O uso dessa opção tem uma latência de solicitação menor em comparação com a 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 GeoJSON LineString

ReferenceRoute

Uma rota de referência com suporte no ComputeRoutesRequest.

Enums
REFERENCE_ROUTE_UNSPECIFIED Não utilizado. As solicitações que contêm esse valor falham.
FUEL_EFFICIENT Trajeto com baixo consumo de combustível. Os trajetos rotulados com esse valor são determinados como otimizados para parâmetros como o consumo de combustível.

ExtraComputation

Computações extras a serem realizadas ao concluir a solicitação.

Enums
EXTRA_COMPUTATION_UNSPECIFIED Não utilizado. As solicitações que contiverem esse valor vão falhar.
TOLLS Informações sobre pedágios para os trajetos.
FUEL_CONSUMPTION Consumo estimado de combustível para os trajetos.
TRAFFIC_ON_POLYLINE Polilinhas com informações de trânsito para os trajetos.
HTML_FORMATTED_NAVIGATION_INSTRUCTIONS NavigationInstructions apresentada como uma string de texto HTML formatada. Este conteúdo deve ser lido no estado em que se encontra, apenas para exibição. Não a analise de forma programática.

Rota

Contém um trajeto, que consiste em uma série de segmentos de estrada conectados que juntam 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 a serem comparadas.

legs[]

object (RouteLeg)

Uma coleção 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 diferente de 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 o routingPreference como TRAFFIC_AWARE ou TRAFFIC_AWARE_OPTIMAL, esse valor será calculado considerando as condições de trânsito.

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

staticDuration

string (Duration format)

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

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

polyline

object (Polyline)

A polilinha do trajeto geral. Esta é a polilinha combinada de todos os legs.

description

string

Uma descrição do trajeto.

warnings[]

string

Uma matriz de avisos a serem mostrados ao exibir a rota.

viewport

object (Viewport)

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

travelAdvisory

object (RouteTravelAdvisory)

Outras informações sobre o trajeto.

optimizedIntermediateWaypointIndex[]

integer

Se você definir optimizeWaypointOrder como "true", esse campo vai conter a ordem otimizada dos waypoints intermediários. Caso contrário, este campo ficará vazio. Por exemplo, se você inserir Origem: LA; Pontos de referência intermediários: Dallas, Bangor, Phoenix; Destino: Nova York, e a ordem otimizada do waypoint 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 do Route.

routeToken

string

Um token de rota seguro para a Web e codificado em base64 que pode ser transmitido para o SDK do Navigation, permitindo que ele reconstrua a rota durante a navegação e, no caso de um novo trajeto, respeite a intenção original quando você criou a rota chamando v2.computeRoutes. Os clientes precisam tratar esse token como um blob opaco. Ele não é destinado para leitura ou modificação. OBSERVAÇÃO: Route.route_token está disponível apenas 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 a serem comparadas.

Enums
ROUTE_LABEL_UNSPECIFIED Padrão: não usado.
DEFAULT_ROUTE A "melhor" rota padrão retornada para o cálculo da rota.
DEFAULT_ROUTE_ALTERNATE Uma alternativa à "melhor" rota padrão. Trajetos como esse serão retornados quando computeAlternativeRoutes for especificado.
FUEL_EFFICIENT Trajeto com baixo consumo de combustível. Os trajetos identificados com esse valor são otimizados para parâmetros Eco, como o 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 pelo trecho. Se route_preference estiver definido como TRAFFIC_UNAWARE, esse valor será o mesmo que staticDuration. Se o route_preference for TRAFFIC_AWARE ou TRAFFIC_AWARE_OPTIMAL, esse valor será calculado considerando as condições de trânsito.

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

staticDuration

string (Duration format)

A duração do percurso pelo trecho, calculada sem considerar as condições de trânsito.

Uma 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 cada polilinha de step.

startLocation

object (Location)

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

endLocation

object (Location)

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

steps[]

object (RouteLegStep)

Uma matriz de etapas que denotam 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 do trajeto.

localizedValues

object (RouteLegLocalizedValues)

Representações de texto das propriedades do RouteLeg.

stepsOverview

object (StepsOverview)

Informações gerais sobre as etapas 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 é encryption_polyline. polyline_type pode ser apenas de um dos tipos a seguir:
encodedPolyline

string

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

geoJsonLinestring

object (Struct format)

Especifica uma polilinha usando o formato GeoJSON LineString.

RouteLegStep

Contém um segmento de uma RouteLeg. Uma etapa corresponde a uma única instrução de navegação. Os trechos do trajeto são compostos de 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, esse campo pode não ter um valor.

staticDuration

string (Duration format)

A duração do percurso nessa etapa sem considerar as condições de trânsito. Em algumas circunstâncias, esse campo pode não ter um valor.

Uma 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 do trecho.

localizedValues

object (RouteLegStepLocalizedValues)

Representações de texto das propriedades do RouteLegStep.

transitDetails

object (RouteLegStepTransitDetails)

Detalhes relacionados 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 especificam a ação de navegação a ser realizada para a etapa atual (por exemplo, virar à esquerda, mesclar ou reta).

Enums
MANEUVER_UNSPECIFIED Não utilizado.
TURN_SLIGHT_LEFT Vire levemente para a esquerda.
TURN_SHARP_LEFT Vire acentuado para a esquerda.
UTURN_LEFT Faça uma curva em retorno à esquerda.
TURN_LEFT Vire à esquerda.
TURN_SLIGHT_RIGHT Vire levemente para a direita.
TURN_SHARP_RIGHT Vire acentuado para a direita.
UTURN_RIGHT Faça uma curva em retorno à direita.
TURN_RIGHT Vire à direita.
STRAIGHT Siga em frente.
RAMP_LEFT Pegue a rampa à esquerda.
RAMP_RIGHT Pegue a rampa à direita.
MERGE Entre no trânsito.
FORK_LEFT Pegue a bifurcação à esquerda.
FORK_RIGHT Pegue o garfo certo.
FERRY Pegue o barco.
FERRY_TRAIN Pegue o trem que leva à 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 sobre as quais o usuário deve ser informado, como possíveis restrições de zona de tráfego em uma etapa do trecho.

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

object (SpeedReadingInterval)

OBSERVAÇÃO: esse 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 do percurso representada em formato de texto.

staticDuration

object (LocalizedText)

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

RouteLegStepTransitDetails

Outras informações sobre o RouteLegStep relacionadas aos trajetos do 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 do RouteLegStepTransitDetails.

headsign

string

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

headway

string (Duration format)

Especifica o horário esperado como uma duração entre as partidas da mesma parada, nesse horário. Por exemplo, com um valor de 600 em segundos sobre intervalo, espera-se uma espera de 10 minutos caso perca o ônibus.

Uma 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 desde a partida até o ponto de chegada. Essa contagem inclui a parada de chegada, mas exclui a de partida. Por exemplo, se o trajeto sair da parada A, passar pelas paradas B e C e chegar na parada D, o stopCount retornará 3.

tripShortText

string

O texto que aparece nos horários e placas de sinalização para identificar uma viagem de transporte público aos passageiros. O texto precisa identificar exclusivamente uma viagem em um dia de serviço. Por exemplo, "538" é o tripShortText do trem Amtrak que sai de San José, CA, às 15h10 em 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 o ponto de chegada da etapa.

arrivalTime

string (Timestamp format)

O horário previsto de chegada para a etapa.

Um carimbo de data/hora no formato UTC "Zulu" RFC3339, 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 o ponto de partida da etapa.

departureTime

string (Timestamp format)

O horário estimado de partida da etapa.

Um carimbo de data/hora no formato UTC "Zulu" RFC3339, 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)

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

departureTime

object (LocalizedTime)

Tempo 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 fusos horários da IANA, por exemplo, "America/New_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 (ou agências) de transporte público que opera essa linha de transporte público.

name

string

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

uri

string

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

color

string

A cor normalmente usada na sinalização dessa linha. Representado em hexadecimal.

iconUri

string

URI do ícone associado a essa linha.

nameShort

string

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

textColor

string

A cor normalmente usada no texto da sinalização dessa linha. Representado em hexadecimal.

vehicle

object (TransitVehicle)

O tipo de veículo que opera nesta 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 dessa empresa de transporte público.

phoneNumber

string

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

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 maiúsculas.

type

enum (TransitVehicleType)

O tipo de veículo usado.

iconUri

string

O 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 para os 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 deve ser informado em uma etapa do 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ó será preenchido se houver pedágios no RouteLeg. Se este campo estiver definido, mas o subcampoestimatedPrice não estiver preenchido, é esperado que a estrada contenha pedágios, mas não sabemos um preço estimado. Se esse campo não existir, não há pedágio na RouteLeg.

speedReadingIntervals[]

object (SpeedReadingInterval)

Intervalos de leitura de velocidade que detalham a densidade do tráfego. Aplicável no caso de preferências de trajeto TRAFFIC_AWARE e TRAFFIC_AWARE_OPTIMAL. Os intervalos cobrem toda a polilinha da RouteLeg sem sobreposição. O ponto inicial de um intervalo especificado é igual ao ponto final 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 do percurso representada em formato de texto.

duration

object (LocalizedText)

Duração que considera as condições de trânsito representadas no formato de texto. Observação: se você não tiver solicitado informações de tráfego, esse valor será o mesmo que StaticDuration.

staticDuration

object (LocalizedText)

Duração sem considerar as condições de trânsito, representada em formato 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 de RouteLeg.steps. Esse campo não será preenchido se 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 a mesma RouteTravelMode. Esse campo não será preenchido se 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ção 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 low e high diagonalmente opostos. Uma janela de visualização é considerada uma região fechada, ou seja, inclui seu limite. Os limites de latitude devem variar de -90 a 90 graus, inclusive, e os limites de longitude devem variar de -180 a 180 graus. Vários casos incluem:

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

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

  • 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 ficará vazio.

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

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

Por exemplo, esta janela de visualização abrange totalmente a cidade de 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 inferior 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 do percurso representada em formato de texto.

duration

object (LocalizedText)

Duração que considera as condições de trânsito, representada em formato 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 formato 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 de endereços.

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 waypoints geocodificados intermediários, cada um contendo um campo de índice que corresponde à posição baseada em zero do waypoint na ordem em que foram especificadas na solicitação.

GeocodedWaypoint

Detalhes sobre os locais usados como waypoints. Preenchido apenas para waypoints de endereços. Inclui detalhes sobre os resultados de geocodificação com o objetivo de determinar para o que 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 local desse resultado.

intermediateWaypointRequestIndex

integer

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