Method: providers.vehicles.search

Retorna uma lista de veículos que correspondem às opções de solicitação.

Solicitação HTTP

POST https://fleetengine.googleapis.com/v1/{parent=providers/*}/vehicles:search

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

Parâmetros de caminho

Parâmetros
parent

string

Obrigatório. Precisa estar no formato providers/{provider}. O provedor precisa ser o ID do projeto (por exemplo, sample-cloud-project) do projeto do Google Cloud de que a conta de serviço que está fazendo a chamada faz parte.

Corpo da solicitação

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

Representação JSON
{
  "header": {
    object (RequestHeader)
  },
  "pickupPoint": {
    object (TerminalLocation)
  },
  "dropoffPoint": {
    object (TerminalLocation)
  },
  "pickupRadiusMeters": integer,
  "count": integer,
  "minimumCapacity": integer,
  "tripTypes": [
    enum (TripType)
  ],
  "maximumStaleness": string,
  "vehicleTypes": [
    {
      object (VehicleType)
    }
  ],
  "requiredAttributes": [
    {
      object (VehicleAttribute)
    }
  ],
  "requiredOneOfAttributes": [
    {
      object (VehicleAttributeList)
    }
  ],
  "requiredOneOfAttributeSets": [
    {
      object (VehicleAttributeList)
    }
  ],
  "orderBy": enum (VehicleMatchOrder),
  "includeBackToBack": boolean,
  "tripId": string,
  "currentTripsPresent": enum (CurrentTripsPresent),
  "filter": string
}
Campos
header

object (RequestHeader)

O cabeçalho de solicitação padrão do Fleet Engine.

pickupPoint

object (TerminalLocation)

Obrigatório. O local de embarque próximo para a pesquisa.

dropoffPoint

object (TerminalLocation)

O local de desembarque pretendido do cliente. O campo é obrigatório se tripTypes contiver TripType.SHARED.

pickupRadiusMeters

integer

Obrigatório. Define o raio de busca de veículos ao redor do ponto de embarque. Somente veículos dentro do raio de pesquisa serão retornados. O valor precisa estar entre 400 e 10.000 metros.

count

integer

Obrigatório. Especifica o número máximo de veículos a serem retornados. O valor precisa estar entre 1 e 50 (inclusive).

minimumCapacity

integer

Obrigatório. Especifica o número de passageiros considerados para uma viagem. O valor precisa ser maior ou igual a um. O driver não é considerado no valor da capacidade.

tripTypes[]

enum (TripType)

Obrigatório. Representa o tipo de viagem proposta. É preciso incluir exatamente um tipo. A política UNKNOWN_TRIP_TYPE não é permitida. Restringe a pesquisa apenas aos veículos que podem oferecer suporte a esse tipo de viagem.

maximumStaleness

string (Duration format)

Restringe a pesquisa apenas aos veículos que enviaram atualizações de localização para o Fleet Engine no período especificado. Veículos parados que ainda estiverem transmitindo a localização não são considerados desatualizados. Se este campo não for definido, o servidor usará cinco minutos como o valor padrão.

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

vehicleTypes[]

object (VehicleType)

Obrigatório. Restringe a pesquisa a veículos com um dos tipos especificados. É necessário especificar pelo menos um tipo de veículo. Não são permitidos VehicleTypes com uma categoria de UNKNOWN.

requiredAttributes[]

object (VehicleAttribute)

Os autores da chamada podem formar operações lógicas complexas usando qualquer combinação dos campos requiredAttributes, requiredOneOfAttributes e requiredOneOfAttributeSets.

requiredAttributes é uma lista. O requiredOneOfAttributes usa uma mensagem que permite uma lista de listas. Em combinação, os dois campos permitem a composição dessa expressão:

(requiredAttributes[0] AND requiredAttributes[1] AND ...)
AND
(requiredOneOfAttributes[0][0] OR requiredOneOfAttributes[0][1] OR
...)
AND
(requiredOneOfAttributes[1][0] OR requiredOneOfAttributes[1][1] OR
...)

Restringe a pesquisa apenas aos veículos com os atributos especificados. Este campo é uma operação de conjunção/E. São permitidos no máximo 50 requiredAttributes. Esse número corresponde ao número máximo de atributos permitidos em um veículo.

requiredOneOfAttributes[]

object (VehicleAttributeList)

Restringe a pesquisa apenas aos veículos com pelo menos um dos atributos especificados em cada VehicleAttributeList. Em cada lista, um veículo precisa corresponder a pelo menos um dos atributos. Esse campo é uma operação de disjunção/OR inclusiva em cada VehicleAttributeList e uma operação de conjunção/E em toda a coleção de VehicleAttributeList.

requiredOneOfAttributeSets[]

object (VehicleAttributeList)

requiredOneOfAttributeSets oferece mais funcionalidades.

Assim como requiredOneOfAttributes, requiredOneOfAttributeSets usa uma mensagem que permite uma lista de listas, permitindo expressões como esta:

(requiredAttributes[0] AND requiredAttributes[1] AND ...)
AND
(
  (requiredOneOfAttributeSets[0][0] AND
  requiredOneOfAttributeSets[0][1] AND
  ...)
  OR
  (requiredOneOfAttributeSets[1][0] AND
  requiredOneOfAttributeSets[1][1] AND
  ...)
)

Restringe a pesquisa apenas aos veículos com todos os atributos em um VehicleAttributeList. Em cada lista, um veículo precisa corresponder a todos os atributos. Este campo é uma operação de conjunção/E em cada VehicleAttributeList e operação de disjunção/OU inclusiva em toda a coleção de VehicleAttributeList.

orderBy

enum (VehicleMatchOrder)

Obrigatório. Especifica o critério de ordenação desejado para os resultados.

includeBackToBack

boolean

Isso indica se os veículos com uma única viagem ativa estão qualificados para a pesquisa. Esse campo só é usado quando currentTripsPresent não é especificado. Quando currentTripsPresent não é especificado e esse campo é false, os veículos com viagens atribuídas são excluídos dos resultados da pesquisa. Quando currentTripsPresent não é especificado e esse campo é true, os resultados da pesquisa podem incluir veículos com uma viagem ativa com status ENROUTE_TO_DROPOFF. Quando currentTripsPresent é especificado, esse campo não pode ser definido como verdadeiro.

O valor padrão é false.

tripId

string

Indica a viagem associada a SearchVehicleRequest.

currentTripsPresent

enum (CurrentTripsPresent)

Isso indica se os veículos com viagens ativas estão qualificados para a pesquisa. Precisa ser definido como algo diferente de CURRENT_TRIPS_PRESENT_UNSPECIFIED se tripType incluir SHARED.

filter

string

Opcional. Uma consulta de filtro para aplicar ao pesquisar veículos. Acesse http://aip.dev/160 para ver exemplos da sintaxe de filtro.

Esse campo foi projetado para substituir os campos requiredAttributes, requiredOneOfAttributes e required_one_of_attributes_sets. Se um valor não vazio for especificado aqui, os campos a seguir precisarão estar vazios: requiredAttributes, requiredOneOfAttributes e required_one_of_attributes_sets.

Esse filtro funciona como uma cláusula "E" com outras restrições, como minimumCapacity ou vehicleTypes.

As únicas consultas aceitas são em atributos de veículos (por exemplo, attributes.<key> = <value> ou attributes.<key1> = <value1> AND attributes.<key2> = <value2>). O número máximo de restrições permitido em uma consulta de filtro é 50.

Além disso, todos os atributos são armazenados como strings. Portanto, as únicas comparações compatíveis com os atributos são as de strings. Para comparação com valores numéricos ou booleanos, os valores precisam estar explicitamente entre aspas para serem tratados como strings (por exemplo, attributes.<key> = "10" ou attributes.<key> = "true").

Corpo da resposta

Se a solicitação for bem-sucedida, o corpo da resposta conterá uma instância de SearchVehiclesResponse.