Method: providers.vehicles.search

Muestra una lista de vehículos que coinciden con las opciones de solicitud.

Solicitud HTTP

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

La URL usa la sintaxis de la transcodificación gRPC.

Parámetros de ruta de acceso

Parámetros
parent

string

Obligatorio. Debe tener el formato providers/{provider}. El proveedor debe ser el ID del proyecto (por ejemplo, sample-cloud-project) del proyecto de Google Cloud del que forma parte la cuenta de servicio que realiza esta llamada.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

Representación 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)

El encabezado de solicitud estándar de Fleet Engine.

pickupPoint

object (TerminalLocation)

Obligatorio. El punto de partida para buscar cerca

dropoffPoint

object (TerminalLocation)

La ubicación de destino prevista del cliente. El campo es obligatorio si tripTypes contiene TripType.SHARED.

pickupRadiusMeters

integer

Obligatorio. Define el radio de búsqueda del vehículo alrededor del punto de partida. Solo se mostrarán vehículos dentro del radio de búsqueda. Debe ser un valor entre 400 y 10,000 metros (inclusive).

count

integer

Obligatorio. Especifica la cantidad máxima de vehículos que se mostrarán. El valor debe estar entre 1 y 50 (inclusive).

minimumCapacity

integer

Obligatorio. Especifica la cantidad de pasajeros que se consideran para un viaje. El valor debe ser mayor o igual que uno. El controlador no se considera en el valor de capacidad.

tripTypes[]

enum (TripType)

Obligatorio. Representa el tipo de viaje propuesto. Debe incluir exactamente un tipo. No se permite UNKNOWN_TRIP_TYPE. Restringe la búsqueda solo a los vehículos que admiten ese tipo de viaje.

maximumStaleness

string (Duration format)

Restringe la búsqueda solo a los vehículos que enviaron actualizaciones de ubicación a Fleet Engine dentro de la duración especificada. Los vehículos estáticos que aún transmiten sus ubicaciones no se consideran inactivos. Si no estableces este campo, el servidor utilizará cinco minutos como valor predeterminado.

Es una duración en segundos con hasta nueve dígitos decimales que termina en "s". Ejemplo: "3.5s".

vehicleTypes[]

object (VehicleType)

Obligatorio. Restringe la búsqueda a vehículos con uno de los tipos especificados. Se debe especificar al menos un tipo de vehículo. No se permiten VehicleTypes con una categoría de UNKNOWN.

requiredAttributes[]

object (VehicleAttribute)

Los emisores pueden formar operaciones lógicas complejas con cualquier combinación de los campos requiredAttributes, requiredOneOfAttributes y requiredOneOfAttributeSets.

requiredAttributes es una lista; requiredOneOfAttributes usa un mensaje que permite crear una lista de listas. En combinación, los dos campos permiten la composición de esta expresión:

(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 la búsqueda solo a los vehículos con los atributos especificados. Este campo es una operación de conjunción/Y. Se permite un máximo de 50 requiredAttributes. Coincide con la cantidad máxima de atributos permitidos en un vehículo.

requiredOneOfAttributes[]

object (VehicleAttributeList)

Restringe la búsqueda solo a los vehículos que tengan al menos uno de los atributos especificados en cada VehicleAttributeList. Dentro de cada lista, un vehículo debe coincidir con al menos uno de los atributos. Este campo es una operación OR de disyunción inclusiva en cada VehicleAttributeList y una operación de conjunción/Y en la colección de VehicleAttributeList.

requiredOneOfAttributeSets[]

object (VehicleAttributeList)

requiredOneOfAttributeSets proporciona funciones adicionales.

Al igual que requiredOneOfAttributes, requiredOneOfAttributeSets usa un mensaje que admite una lista de listas y admite expresiones como la siguiente:

(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 la búsqueda solo a los vehículos con todos los atributos en una VehicleAttributeList. Dentro de cada lista, un vehículo debe coincidir con todos los atributos. Este campo es una operación de conjunción/Y en cada VehicleAttributeList y una operación de disyunción/OR inclusiva en la colección de VehicleAttributeList.

orderBy

enum (VehicleMatchOrder)

Obligatorio. Especifica el criterio de ordenamiento deseado para los resultados.

includeBackToBack

boolean

Indica si los vehículos con un solo viaje activo son aptos para esta búsqueda. Este campo solo se usa cuando no se especifica currentTripsPresent. Si no se especifica currentTripsPresent y este campo es false, los vehículos con viajes asignados se excluyen de los resultados de la búsqueda. Cuando no se especifica currentTripsPresent y este campo es true, los resultados de la búsqueda pueden incluir vehículos con un viaje activo cuyo estado es ENROUTE_TO_DROPOFF. Cuando se especifica currentTripsPresent, este campo no se puede establecer como verdadero.

El valor predeterminado es false.

tripId

string

Indica el viaje asociado con este SearchVehicleRequest.

currentTripsPresent

enum (CurrentTripsPresent)

Indica si los vehículos con viajes activos son aptos para esta búsqueda. Se debe configurar en un valor distinto de CURRENT_TRIPS_PRESENT_UNSPECIFIED si tripType incluye SHARED.

filter

string

Opcional. Una consulta de filtro que se aplicará cuando se busquen vehículos. Consulta http://aip.dev/160 para ver ejemplos de la sintaxis del filtro.

Este campo está diseñado para reemplazar los campos requiredAttributes, requiredOneOfAttributes y required_one_of_attributes_sets. Si aquí se especifica un valor que no está vacío, los siguientes campos deben quedar vacíos: requiredAttributes, requiredOneOfAttributes y required_one_of_attributes_sets.

Este filtro funciona como una cláusula AND con otras restricciones, como minimumCapacity o vehicleTypes.

Ten en cuenta que las únicas búsquedas admitidas son sobre atributos de vehículos (por ejemplo, attributes.<key> = <value> o attributes.<key1> = <value1> AND attributes.<key2> = <value2>). La cantidad máxima de restricciones permitidas en una búsqueda de filtro es 50.

Además, todos los atributos se almacenan como cadenas, de manera que las únicas comparaciones admitidas con los atributos son las comparaciones de cadenas. Para compararlos con valores numéricos o booleanos, los valores deben estar entre comillas explícitamente para tratarse como strings (por ejemplo, attributes.<key> = "10" o attributes.<key> = "true").

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de SearchVehiclesResponse.