Package maps.fleetengine.delivery.v1

Índice

DeliveryService

O serviço Last Mile Delivery.

BatchCreateTasks

rpc BatchCreateTasks(BatchCreateTasksRequest) returns (BatchCreateTasksResponse)

Cria e retorna um lote de novos objetos Task.

CreateDeliveryVehicle

rpc CreateDeliveryVehicle(CreateDeliveryVehicleRequest) returns (DeliveryVehicle)

Cria e retorna um novo DeliveryVehicle.

CreateTask

rpc CreateTask(CreateTaskRequest) returns (Task)

Cria e retorna um novo objeto Task.

GetDeliveryVehicle

rpc GetDeliveryVehicle(GetDeliveryVehicleRequest) returns (DeliveryVehicle)

Retorna a instância de DeliveryVehicle especificada.

GetTask

rpc GetTask(GetTaskRequest) returns (Task)

Recebe informações sobre um Task.

GetTaskTrackingInfo

rpc GetTaskTrackingInfo(GetTaskTrackingInfoRequest) returns (TaskTrackingInfo)

Retorna a instância de TaskTrackingInfo especificada.

ListDeliveryVehicles

rpc ListDeliveryVehicles(ListDeliveryVehiclesRequest) returns (ListDeliveryVehiclesResponse)

Recebe todos os DeliveryVehicles que atendem aos critérios de filtragem especificados.

ListTasks

rpc ListTasks(ListTasksRequest) returns (ListTasksResponse)

Recebe todos os Tasks que atendem aos critérios de filtragem especificados.

UpdateDeliveryVehicle

rpc UpdateDeliveryVehicle(UpdateDeliveryVehicleRequest) returns (DeliveryVehicle)

Grava dados atualizados de DeliveryVehicle no Fleet Engine e atribui Tasks ao DeliveryVehicle. Não é possível atualizar o nome de DeliveryVehicle. Você pode atualizar o remaining_vehicle_journey_segments, mas ele precisa conter todos os VehicleJourneySegments para serem mantidos no DeliveryVehicle. As task_ids são recuperadas do remaining_vehicle_journey_segments, e o Tasks correspondente é atribuído ao DeliveryVehicle, se ainda não tiver sido atribuído.

UpdateTask

rpc UpdateTask(UpdateTaskRequest) returns (Task)

Atualiza os dados de Task.

BatchCreateTasksRequest

A mensagem de solicitação BatchCreateTask.

Campos
header

DeliveryRequestHeader

Opcional. O cabeçalho de solicitação padrão da API Delivery. Observação: se você definir este campo, o campo de cabeçalho nas mensagens do CreateTaskRequest precisará estar vazio ou corresponder a este campo.

parent

string

Obrigatório. O recurso pai compartilhado por todas as tarefas. Esse valor precisa estar no formato providers/{provider}. O provider precisa ser o ID do projeto do Google Cloud. Por exemplo, sample-cloud-project. O campo pai nas mensagens de CreateTaskRequest precisa estar vazio ou corresponder a este campo.

requests[]

CreateTaskRequest

Obrigatório. A mensagem de solicitação que especifica os recursos a serem criados. Observação: é possível criar no máximo 500 tarefas em um lote.

BatchCreateTasksResponse

A mensagem de resposta BatchCreateTask.

Campos
tasks[]

Task

As tarefas criadas.

CreateDeliveryVehicleRequest

A mensagem de solicitação CreateDeliveryVehicle.

Campos
header

DeliveryRequestHeader

Opcional. O cabeçalho de solicitação padrão da API Delivery.

parent

string

Obrigatório. Precisa estar no formato providers/{provider}. O provedor precisa ser o ID do projeto do Google Cloud. Por exemplo, sample-cloud-project.

delivery_vehicle_id

string

Obrigatório. O ID do veículo de entrega precisa ser exclusivo e estar sujeito às seguintes restrições:

  • Precisa ser uma string Unicode válida.
  • Limitado a um tamanho máximo de 64 caracteres.
  • Normalizado de acordo com o Formulário C de normalização Unicode.
  • Não pode conter os seguintes caracteres ASCII: "/", ':', '?', ',' ou '#'.
delivery_vehicle

DeliveryVehicle

Obrigatório. A entidade DeliveryVehicle a ser criada. Ao criar um novo veículo de entrega, é possível definir os seguintes campos opcionais:

  • last_location
  • atributos

Observação: o campo name do Veículo de entrega é ignorado. Todos os outros campos do Veículo de entrega não devem ser definidos; caso contrário, será retornado um erro.

CreateTaskRequest

A mensagem de solicitação CreateTask.

Campos
header

DeliveryRequestHeader

Opcional. O cabeçalho de solicitação padrão da API Delivery.

parent

string

Obrigatório. Precisa estar no formato providers/{provider}. O provider precisa ser o ID do projeto do Google Cloud. Por exemplo, sample-cloud-project.

task_id

string

Obrigatório. O ID da tarefa precisa ser exclusivo, mas não pode ser um ID de rastreamento de frete. Para armazenar um ID de rastreamento de frete, use o campo tracking_id. Várias tarefas podem ter o mesmo tracking_id. Os IDs de tarefas estão sujeitos às seguintes restrições:

  • Precisa ser uma string Unicode válida.
  • Limitado a um tamanho máximo de 64 caracteres.
  • Normalizado de acordo com o Formulário C de normalização Unicode.
  • Não pode conter os seguintes caracteres ASCII: "/", ':', '?', ',' ou '#'.
task

Task

Obrigatório. A entidade Task a ser criada. Ao criar uma tarefa, os seguintes campos são obrigatórios:

  • type
  • state (precisa ser definido como OPEN)
  • tracking_id (não pode ser definido para tarefas UNAVAILABLE ou SCHEDULED_STOP, mas é obrigatório para todos os outros tipos de tarefas)
  • planned_location (opcional para UNAVAILABLE tarefas)
  • task_duration

Observação: o campo name da tarefa é ignorado. Todos os outros campos da tarefa não devem ser definidos; caso contrário, um erro será retornado.

DeliveryRequestHeader

Um RequestHeader contém campos comuns a todas as solicitações de RPC de entrega.

Campos
language_code

string

O código de idioma BCP-47, como en-US ou sr-Latn. Para mais informações, consulte http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. Se nenhum for especificado, a resposta poderá estar em qualquer idioma, com preferência para o inglês, se esse nome existir. Exemplo de valor de campo: en-US.

region_code

string

Obrigatório. Código regional CLDR da região de origem da solicitação. Exemplo de valor de campo: US.

sdk_version

string

Versão do SDK de chamada, se aplicável. O formato da versão é "major.minor.patch", exemplo: 1.1.2.

os_version

string

Versão do sistema operacional em que o SDK de chamada está sendo executado. Exemplos de valor de campo: 4.4.1, 12.1.

device_model

string

Modelo do dispositivo em que o SDK de chamada está sendo executado. Exemplos de valor de campo: iPhone12,1, SM-G920F.

sdk_type

SdkType

O tipo de SDK que envia a solicitação.

maps_sdk_version

string

Versão do MapSDK da qual o SDK de chamada depende, se aplicável. O formato da versão é "major.minor.patch", exemplo: 5.2.1.

nav_sdk_version

string

Versão do NavSDK de que o SDK de chamada depende, se aplicável. O formato da versão é "major.minor.patch", exemplo: 2.1.0.

platform

Platform

Plataforma do SDK de chamada.

manufacturer

string

Fabricante do dispositivo Android do SDK de chamada, aplicável somente a SDKs do Android. Exemplo de valor de campo: Samsung.

android_api_level

int32

Nível da API do Android do SDK de chamada, aplicável apenas a SDKs do Android. Exemplo de valor de campo: 23.

trace_id

string

ID opcional que pode ser fornecido para fins de registro em log a fim de identificar a solicitação.

Plataforma

A plataforma do SDK de chamada.

Tipos enumerados
PLATFORM_UNSPECIFIED O valor padrão. Esse valor será usado se a plataforma for omitida.
ANDROID A solicitação vem do Android.
IOS A solicitação vem do iOS.
WEB A solicitação vem da Web.

SdkType

Possíveis tipos de SDK.

Tipos enumerados
SDK_TYPE_UNSPECIFIED O valor padrão. Esse valor será usado se sdk_type for omitido.
CONSUMER O SDK de chamada é o consumidor.
DRIVER O SDK de chamada é o Driver.
JAVASCRIPT O SDK de chamada é JavaScript.

DeliveryVehicle

A mensagem DeliveryVehicle. Um veículo de entrega transporta remessas de um depósito para um local de entrega e de um local de retirada para o depósito. Em alguns casos, os veículos de entrega também transportam as remessas diretamente do local de retirada para o local de entrega.

Observação: as APIs REST e gRPC usam convenções de nomenclatura de campo diferentes. Por exemplo, o campo DeliveryVehicle.current_route_segment na API gRPC e o campo DeliveryVehicle.currentRouteSegment na API REST se referem ao mesmo campo.

Campos
name

string

O nome exclusivo do Veículo de entrega. O formato é providers/{provider}/deliveryVehicles/{vehicle}.

last_location

DeliveryVehicleLocation

O último local relatado do veículo de entrega.

navigation_status

DeliveryVehicleNavigationStatus

O status de navegação do Veículo de entrega.

current_route_segment

bytes

A polilinha codificada que especifica o trajeto que a navegação recomenda seguir para o próximo waypoint. O app do motorista atualiza isso quando uma parada é atingida ou ultrapassada e quando o trajeto traça o novo trajeto. Esses LatLngs são retornados em Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) ou Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST) para todas as tarefas ativas atribuídas ao veículo.

Em alguns casos, talvez esse campo não seja usado para preencher Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) ou Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST):

  • O endpoint do current_route_segment não corresponde a DeliveryVehicle.remaining_vehicle_journey_segments[0].stop (gRPC) ou DeliveryVehicle.remainingVehicleJourneySegments[0].stop (REST).

  • O app do motorista não atualizou a localização recentemente. Por isso, o último valor atualizado desse campo pode estar desatualizado.

  • O app do motorista atualizou a localização recentemente, mas o current_route_segment está desatualizado e aponta para uma parada de veículo anterior.

Nesses casos, o Fleet Engine preenche esse campo com um trajeto desde o VehicleStop enviado mais recentemente até o próximo VehicleStop para garantir que o consumidor desse campo tenha as melhores informações disponíveis sobre o caminho atual do veículo de entrega.

current_route_segment_end_point

LatLng

O local em que a current_route_segment termina. No momento, ele não é preenchido pelo app do motorista, mas é possível fornecê-lo em chamadas UpdateDeliveryVehicle. É o LatLng da próxima parada de veículo ou o último LatLng da current_route_segment. O Fleet Engine vai fazer o possível para interpolar para um VehicleStop real.

Esse campo será ignorado em chamadas UpdateDeliveryVehicle se o campo current_route_segment estiver vazio.

remaining_distance_meters

Int32Value

A distância de carro restante do current_route_segment. O app Driver normalmente fornece esse campo, mas há algumas circunstâncias em que o Fleet Engine substitui o valor enviado pelo app. Para mais informações, consulte DeliveryVehicle.current_route_segment. Esse campo é retornado em Task.remaining_vehicle_journey_segments[0].driving_distance_meters (gRPC) ou Task.remainingVehicleJourneySegments[0].drivingDistanceMeters (REST) para todos os Tasks ativos atribuídos ao veículo de entrega.

O Fleet Engine vai ignorar esse campo em UpdateDeliveryVehicleRequest se o campo current_route_segment estiver vazio.

remaining_duration

Duration

O tempo restante do percurso do veículo current_route_segment. O app Driver normalmente fornece esse campo, mas há algumas circunstâncias em que o Fleet Engine substitui o valor enviado pelo app. Para mais informações, consulte DeliveryVehicle.current_route_segment. Esse campo é retornado em Task.remaining_vehicle_journey_segments[0].driving_duration (gRPC) ou Task.remainingVehicleJourneySegments[0].drivingDuration (REST) para todas as tarefas ativas atribuídas ao veículo de entrega.

O Fleet Engine vai ignorar esse campo em UpdateDeliveryVehicleRequest se o campo current_route_segment estiver vazio.

remaining_vehicle_journey_segments[]

VehicleJourneySegment

Os trechos de viagem atribuídos a esse veículo de entrega, começando no local informado mais recentemente. Este campo não será preenchido na resposta de ListDeliveryVehicles.

attributes[]

DeliveryVehicleAttribute

Uma lista de atributos personalizados do veículo de entrega. Um veículo de entrega pode ter no máximo 100 atributos, e cada um deles precisa ter uma chave exclusiva.

type

DeliveryVehicleType

O tipo deste veículo de entrega. Se não for definido, o padrão será AUTO.

DeliveryVehicleType

O tipo de veículo de entrega.

Tipos enumerados
DELIVERY_VEHICLE_TYPE_UNSPECIFIED O valor não é usado.
AUTO Um automóvel.
TWO_WHEELER Uma moto, ciclomoto ou outro veículo de duas rodas
BICYCLE Transporte impulsionado por humanos.
PEDESTRIAN Um transportador humano, normalmente caminhando ou correndo, viajando ao longo de vias para pedestres.

DeliveryVehicleAttribute

Descreve um atributo de veículo como um par de chave-valor. O comprimento da string "key:value" não pode exceder 256 caracteres.

Campos
key

string

A chave do atributo.

value

string

O valor do atributo.

Campo de união delivery_vehicle_attribute_value. O valor do atributo pode ser string, booleano ou duplo. delivery_vehicle_attribute_value só pode ser de um dos seguintes tipos:
string_value

string

Valor do atributo tipado de string.

Observação: ele é idêntico ao campo value, que será descontinuado. Para os métodos de criação ou atualização, qualquer um dos campos pode ser usado, mas é altamente recomendável usar string_value. Se string_value e value forem definidos, precisarão ser idênticos. Caso contrário, um erro será gerado. Ambos os campos são preenchidos nas respostas.

bool_value

bool

Valor do atributo tipado booleano.

number_value

double

Valor de atributo com dois tipos.

DeliveryVehicleLocation

O local, a velocidade e a direção de um veículo em um momento específico.

Campos
location

LatLng

A localização do veículo. Quando ele é enviado ao Fleet Engine, a localização do veículo é uma localização de GPS. Quando você a recebe em uma resposta, a localização do veículo pode ser uma localização de GPS, um local complementar ou algum outro local aproximado. A origem é especificada em location_sensor.

horizontal_accuracy
(deprecated)

DoubleValue

Obsoleto: use latlng_accuracy.

latlng_accuracy

DoubleValue

Precisão de location em metros como um raio.

heading

Int32Value

Direção em que o veículo está se movendo em graus. 0 representa Norte. O intervalo válido é [0,360).

bearing_accuracy
(deprecated)

DoubleValue

Obsoleto: use heading_accuracy.

heading_accuracy

DoubleValue

Precisão de heading em graus.

altitude

DoubleValue

Altitude em metros acima de WGS84.

vertical_accuracy
(deprecated)

DoubleValue

Obsoleto: use altitude_accuracy.

altitude_accuracy

DoubleValue

Precisão de altitude em metros.

speed_kmph
(deprecated)

Int32Value

Velocidade do veículo em quilômetros por hora. Obsoleto: use speed.

speed

DoubleValue

Velocidade do veículo em metros/segundo

speed_accuracy

DoubleValue

Precisão de speed em metros/segundo.

update_time

Timestamp

A hora em que location foi informado pelo sensor de acordo com o relógio dele.

server_time

Timestamp

Apenas saída. A hora em que o servidor recebeu as informações de local.

location_sensor

DeliveryVehicleLocationSensor

Provedor de dados de local (por exemplo, GPS).

is_road_snapped

BoolValue

Indica se o location está alinhado a uma via.

is_gps_sensor_enabled

BoolValue

Apenas entrada. Indica se o sensor de GPS está ativado no dispositivo móvel.

time_since_update

Int32Value

Apenas entrada. Tempo (em segundos) desde que esse local foi enviado pela primeira vez ao servidor. Esse valor será zero na primeira atualização. Se a hora for desconhecida (por exemplo, quando o app for reiniciado), esse valor será redefinido como zero.

num_stale_updates
(deprecated)

Int32Value

Apenas entrada. Obsoleto: outros indicadores agora são usados para determinar se um local está desatualizado.

raw_location

LatLng

Localização do veículo sem dados (não processado pelo Snapper da Estrada).

raw_location_time

Timestamp

Carimbo de data/hora associado ao local bruto.

raw_location_sensor

DeliveryVehicleLocationSensor

Origem da localização bruta. O valor padrão é GPS.

raw_location_accuracy

DoubleValue

Precisão de raw_location como um raio, em metros.

supplemental_location

LatLng

Localização complementar fornecida pelo app de integração.

supplemental_location_time

Timestamp

Carimbo de data/hora associado ao local complementar.

supplemental_location_sensor

DeliveryVehicleLocationSensor

Origem do local complementar. O valor padrão é CUSTOMER_SUPPLIED_LOCATION.

supplemental_location_accuracy

DoubleValue

Precisão de supplemental_location como um raio, em metros.

road_snapped
(deprecated)

bool

Obsoleto: use is_road_snapped.

DeliveryVehicleLocationSensor

O sensor ou a metodologia usado para determinar o local.

Tipos enumerados
UNKNOWN_SENSOR O sensor não foi especificado ou é desconhecido.
GPS GPS ou GPS assistido.
NETWORK GPS assistido, ID de torre de celular ou ponto de acesso Wi-Fi.
PASSIVE ID da torre de celular ou ponto de acesso Wi-Fi.
ROAD_SNAPPED_LOCATION_PROVIDER Um local determinado pelo dispositivo móvel como a posição mais provável na via.
CUSTOMER_SUPPLIED_LOCATION Uma localização fornecida pelo cliente de uma fonte independente. Normalmente, esse valor é usado para um local fornecido por origens diferentes do dispositivo móvel que executa o SDK do Driver. Se a fonte original for descrita por um dos outros valores de tipo enumerado, use esse valor. Os locais marcados como CUSTOMER_SuppPLIED_LOCATION geralmente são fornecidos pelo last_location.supplemental_location_sensor de um Veículo de entrega.
FLEET_ENGINE_LOCATION Um local calculado pelo Fleet Engine com base nos sinais disponíveis. Apenas saída. Esse valor será rejeitado se for recebido em uma solicitação.
FUSED_LOCATION_PROVIDER Provedor de localização combinada do Android.
CORE_LOCATION O provedor de localização nos sistemas operacionais da Apple.

DeliveryVehicleNavigationStatus

O status de navegação do veículo.

Tipos enumerados
UNKNOWN_NAVIGATION_STATUS Status de navegação não especificado.
NO_GUIDANCE A navegação do app Driver está no modo FREE_NAV.
ENROUTE_TO_DESTINATION A navegação guiada está disponível, e a navegação do app do motorista entrou no modo GUIDED_NAV.
OFF_ROUTE O veículo saiu do trajeto sugerido.
ARRIVED_AT_DESTINATION O veículo está a aproximadamente 50 m do destino.

GetDeliveryVehicleRequest

A mensagem de solicitação GetDeliveryVehicle.

Campos
header

DeliveryRequestHeader

Opcional. O cabeçalho de solicitação padrão da API Delivery.

name

string

Obrigatório. Precisa estar no formato providers/{provider}/deliveryVehicles/{delivery_vehicle}. O provider precisa ser o ID do projeto do Google Cloud. Por exemplo, sample-cloud-project.

GetTaskRequest

A mensagem de solicitação GetTask.

Campos
header

DeliveryRequestHeader

Opcional. O cabeçalho de solicitação padrão da API Delivery.

name

string

Obrigatório. Precisa estar no formato providers/{provider}/tasks/{task}. O provider precisa ser o ID do projeto do Google Cloud. Por exemplo, sample-cloud-project.

GetTaskTrackingInfoRequest

A mensagem de solicitação GetTaskTrackingInfoRequest.

Campos
header

DeliveryRequestHeader

Opcional. O cabeçalho de solicitação padrão da API Delivery.

name

string

Obrigatório. Precisa estar no formato providers/{provider}/taskTrackingInfo/{tracking_id}. O provider precisa ser o ID do projeto do Google Cloud e o tracking_id, o ID de acompanhamento associado à tarefa. Um exemplo de nome pode ser providers/sample-cloud-project/taskTrackingInfo/sample-tracking-id.

ListDeliveryVehiclesRequest

A mensagem de solicitação ListDeliveryVehicles.

Campos
header

DeliveryRequestHeader

Opcional. O cabeçalho de solicitação padrão da API Delivery.

parent

string

Obrigatório. Precisa estar no formato providers/{provider}. O provider precisa ser o ID do projeto do Google Cloud. Por exemplo, sample-cloud-project.

page_size

int32

Opcional. O número máximo de veículos a serem retornados. O serviço pode retornar menos que esse valor. Se você não especificar esse número, o servidor determinará o número de resultados a serem retornados.

page_token

string

Opcional. Um token de página recebido de uma chamada ListDeliveryVehicles anterior. É necessário fornecer isso para recuperar a página subsequente.

Ao paginar, todos os outros parâmetros fornecidos para ListDeliveryVehicles precisam corresponder à chamada que forneceu o token da página.

filter

string

Opcional. Uma consulta de filtro para aplicar ao listar veículos de entrega. Consulte http://aip.dev/160 para ver exemplos de sintaxe de filtro. Se você não especificar um valor ou especificar uma string vazia para o filtro, todos os veículos de entrega serão retornados.

As únicas consultas aceitas para ListDeliveryVehicles são em atributos do veículo (por exemplo, attributes.<key> = <value> ou attributes.<key1> = <value1> AND attributes.<key2> = <value2>). Além disso, todos os atributos são armazenados como strings. Portanto, as únicas comparações compatíveis com os atributos são aquelas de strings. Para fazer uma 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").

O número máximo de restrições permitido em uma consulta de filtro é 50. Uma restrição faz parte da consulta no formato attribute.<KEY> <COMPARATOR> <VALUE>, por exemplo, attributes.foo = bar é uma restrição.

viewport

Viewport

Opcional. Um filtro que limita os veículos retornados àqueles cujo último local conhecido estava na área retangular definida pela janela de visualização.

ListDeliveryVehiclesResponse

A mensagem de resposta ListDeliveryVehicles.

Campos
delivery_vehicles[]

DeliveryVehicle

O conjunto de veículos de entrega que atende aos critérios de filtragem solicitados. Quando nenhum filtro é especificado, a solicitação retorna todos os veículos de entrega. Uma resposta bem-sucedida também pode estar vazia. Uma resposta vazia indica que não foram encontrados veículos de entrega que atendem aos critérios do filtro solicitado.

next_page_token

string

É possível transmitir esse token no ListDeliveryVehiclesRequest para continuar listando os resultados. Quando todos os resultados forem retornados, esse campo não estará na resposta ou será uma string vazia.

total_size

int64

O número total de veículos de entrega que correspondem aos critérios de solicitação em todas as páginas.

ListTasksRequest

A mensagem de solicitação ListTasks.

Campos
header

DeliveryRequestHeader

Opcional. O cabeçalho de solicitação padrão da API Delivery.

parent

string

Obrigatório. Precisa estar no formato providers/{provider}. O provider precisa ser o ID do projeto do Google Cloud. Por exemplo, sample-cloud-project.

page_size

int32

Opcional. O número máximo de tarefas a serem retornadas. O serviço pode retornar menos que esse valor. Se você não especificar esse valor, o servidor determinará o número de resultados a serem retornados.

page_token

string

Opcional. Um token de página recebido de uma chamada ListTasks anterior. Você pode fornecer isso para recuperar a página subsequente.

Ao paginar, todos os outros parâmetros fornecidos para ListTasks precisam corresponder à chamada que forneceu o token da página.

filter

string

Opcional. Uma consulta de filtro para aplicar ao listar tarefas. Consulte http://aip.dev/160 (link em inglês) para ver exemplos de sintaxe de filtro. Se você não especificar um valor ou filtrar uma string vazia, todas as tarefas serão retornadas. Para mais informações sobre as propriedades Task que podem ser filtradas, consulte Listar tarefas.

ListTasksResponse

A resposta ListTasks que contém o conjunto de tarefas que atendem aos critérios de filtro no ListTasksRequest.

Campos
tasks[]

Task

O conjunto de tarefas que atende aos critérios de filtragem solicitados. Quando nenhum filtro é especificado, a solicitação retorna todas as tarefas. Uma resposta bem-sucedida também pode estar vazia. Uma resposta vazia indica que não foram encontradas Tarefas que atendem aos critérios de filtro solicitados.

next_page_token

string

Transmita esse token no ListTasksRequest para continuar listando os resultados. Se todos os resultados foram retornados, esse campo é uma string vazia ou não aparece na resposta.

total_size

int64

O número total de tarefas que correspondem aos critérios de solicitação em todas as páginas.

LocationInfo

Um local com identificadores adicionais.

Campos
point

LatLng

As coordenadas do local.

Tarefa

Uma tarefa na API Delivery representa uma única ação a ser acompanhada. Em geral, há uma distinção entre Tarefas relacionadas à remessa e Tarefas de interrupção. Uma remessa pode ter várias Tarefas associadas a ela. Por exemplo, pode haver uma tarefa para o embarque e outra para o desembarque ou a baldeação. Além disso, diferentes Tarefas para uma determinada remessa podem ser tratadas por veículos diferentes. Por exemplo, um veículo poderia cuidar da coleta, levando a remessa até o hub, enquanto outro veículo conduzia a mesma remessa do hub para o local de desembarque.

Observação: as APIs REST e gRPC usam convenções de nomenclatura de campo diferentes. Por exemplo, o campo Task.journey_sharing_info na API gRPC e o campo Task.journeySharingInfo na API REST se referem ao mesmo campo.

Campos
name

string

Precisa estar no formato providers/{provider}/tasks/{task}.

type

Type

Obrigatório. Imutável. Define o tipo de tarefa. Por exemplo, uma pausa ou uma remessa.

state

State

Obrigatório. O estado de execução atual da tarefa.

task_outcome

TaskOutcome

O resultado da Tarefa.

task_outcome_time

Timestamp

O carimbo de data/hora que indica quando o resultado do Task foi definido pelo provedor.

task_outcome_location

LocationInfo

O local em que o resultado do Task foi definido. Esse valor é atualizado como parte do UpdateTask. Se esse valor não for atualizado explicitamente pelo provedor, o Fleet Engine o preencherá por padrão com o último local conhecido do veículo (o local bruto).

task_outcome_location_source

TaskOutcomeLocationSource

Indica a origem do valor de task_outcome_location.

tracking_id

string

Imutável. Esse campo facilita o armazenamento de um ID para evitar o uso de um mapeamento complicado. Não é possível definir tracking_id para Tarefas do tipo UNAVAILABLE e SCHEDULED_STOP. Esses IDs estão sujeitos às seguintes restrições:

  • Precisa ser uma string Unicode válida.
  • Limitado a um tamanho máximo de 64 caracteres.
  • Normalizado de acordo com o Formulário C de normalização Unicode.
  • Não pode conter os seguintes caracteres ASCII: "/", ':', '?', ',' ou '#'.
delivery_vehicle_id

string

Apenas saída. O ID do veículo que está executando esta tarefa. Os documentos de identificação dos veículos de entrega estão sujeitos às seguintes restrições:

  • Precisa ser uma string Unicode válida.
  • Limitado a um tamanho máximo de 64 caracteres.
  • Normalizado de acordo com o Formulário C de normalização Unicode.
  • Não pode conter os seguintes caracteres ASCII: "/", ':', '?', ',' ou '#'.
planned_location

LocationInfo

Imutável. O local onde a Tarefa será concluída. Opcional para tarefas UNAVAILABLE, mas necessário para todas as outras tarefas.

task_duration

Duration

Obrigatório. Imutável. O tempo necessário para executar uma tarefa neste local.

target_time_window

TimeWindow

A janela de tempo em que a tarefa deve ser concluída.

journey_sharing_info

JourneySharingInfo

Apenas saída. Campos específicos do compartilhamento da jornada. Não preenchido quando o estado é CLOSED.

task_tracking_view_config

TaskTrackingViewConfig

A configuração do rastreamento de tarefas que especifica quais elementos de dados ficam visíveis para os usuários finais em quais circunstâncias.

attributes[]

TaskAttribute

Uma lista de atributos de tarefas personalizados. Cada atributo precisa ter uma chave exclusiva.

JourneySharingInfo

Campos específicos do compartilhamento da jornada.

Campos
remaining_vehicle_journey_segments[]

VehicleJourneySegment

Informações de rastreamento das paradas que o veículo atribuído fará antes de concluir esta Tarefa. Essa lista pode conter paradas de outras tarefas.

O primeiro, Task.journey_sharing_info.remaining_vehicle_journey_segments[0] (gRPC) ou Task.journeySharingInfo.remainingVehicleJourneySegments[0] (REST), contém informações de trajeto desde o último local conhecido do motorista até o próximo VehicleStop. As informações do trajeto atual geralmente vêm do app do motorista, exceto em alguns casos indicados na documentação do DeliveryVehicle.current_route_segment. Os outros segmentos em Task.journey_sharing_info.remaining_vehicle_journey_segments (gRPC) ou Task.journeySharingInfo.remainingVehicleJourneySegments (REST) são preenchidos pelo Fleet Engine. Elas fornecem informações de trajeto entre os VehicleStops restantes.

last_location

DeliveryVehicleLocation

Indica o último local informado do veículo atribuído pelo veículo.

last_location_snappable

bool

Indica se o lastLocation do veículo pode ser vinculado ao current_route_segment. Esse valor será "False" se last_location ou current_route_segment não existirem. Esse valor é calculado pelo Fleet Engine. As atualizações dos clientes são ignoradas.

Estado

O estado de uma tarefa. Isso indica o progresso das tarefas.

Tipos enumerados
STATE_UNSPECIFIED Padrão. Usado para um estado não especificado ou não reconhecido de tarefa.
OPEN A Tarefa ainda não foi atribuída a um veículo de entrega ou o veículo de entrega ainda não passou da parada de veículo atribuída ao Task.
CLOSED Quando o veículo passa pela parada para esta Tarefa.

TaskOutcome

O resultado da tentativa de executar uma Task. Quando a TaskState estiver fechada, o TaskOutcome vai indicar se ela foi concluída.

Tipos enumerados
TASK_OUTCOME_UNSPECIFIED O resultado da tarefa antes de o valor ser definido.
SUCCEEDED A tarefa foi concluída.
FAILED Não foi possível concluir a Tarefa ou ela foi cancelada.

TaskOutcomeLocationSource

A identidade da origem que preencheu o task_outcome_location.

Tipos enumerados
TASK_OUTCOME_LOCATION_SOURCE_UNSPECIFIED O resultado da tarefa antes de ele ser definido.
PROVIDER O provedor especificou o task_outcome_location.
LAST_VEHICLE_LOCATION O provedor não especificou o task_outcome_location, então o Fleet Engine usou o último local conhecido do veículo.

Tipo

O tipo de tarefa.

Tipos enumerados
TYPE_UNSPECIFIED Padrão: o tipo de tarefa é desconhecido.
PICKUP Uma tarefa de retirada é a ação realizada para retirar uma remessa de um cliente. As retiradas de veículos do depósito ou alimentador precisam usar o tipo SCHEDULED_STOP.
DELIVERY Uma tarefa de entrega é a ação realizada para entregar uma remessa a um cliente final. As entregas de veículos no depósito ou alimentador precisam usar o tipo SCHEDULED_STOP.
SCHEDULED_STOP Uma Tarefa com parada programada é usada para fins de planejamento. Por exemplo, pode representar a coleta ou entrega de remessas de veículos alimentadores ou depósitos. Ele não deve ser usado para remessas que são retiradas ou devolvidas por um cliente final.
UNAVAILABLE Uma Tarefa que significa que o Veículo não está disponível para manutenção. Por exemplo, isso pode acontecer quando o motorista faz uma pausa ou quando o veículo está sendo reabastecido.

TaskAttribute

Descreve um atributo de tarefa como um par de chave-valor. O comprimento da string "key:value" não pode exceder 256 caracteres.

Campos
key

string

A chave do atributo. As chaves não podem conter dois-pontos (:).

Campo de união task_attribute_value. O valor do atributo pode ser string, booleano ou duplo. Se nenhum valor for definido, TaskAttribute string_value será armazenado como a string vazia "". task_attribute_value só pode ser de um dos seguintes tipos:
string_value

string

Valor do atributo tipado de string.

bool_value

bool

Valor do atributo tipado booleano.

number_value

double

Valor de atributo com dois tipos.

TaskTrackingInfo

A mensagem TaskTrackingInfo. A mensagem contém informações de rastreamento de tarefas que serão usadas para exibição. Se um ID de rastreamento estiver associado a várias tarefas, o Fleet Engine usará uma heurística para decidir qual Task TrackingInfo da tarefa será selecionado.

Campos
name

string

Precisa estar no formato providers/{provider}/taskTrackingInfo/{tracking}, em que tracking representa o ID de acompanhamento.

tracking_id

string

Imutável. O ID de acompanhamento de uma tarefa. * Precisa ser uma string Unicode válida. * Limitado a um tamanho máximo de 64 caracteres. * Normalizado de acordo com o Formulário de normalização Unicode C. * Não pode conter os seguintes caracteres ASCII: "/", ':', '?', ',' ou '#'.

vehicle_location

DeliveryVehicleLocation

A última localização do veículo.

route_polyline_points[]

LatLng

Uma lista de pontos que, quando conectados, forma uma polilinha do trajeto esperado do veículo até o local desta tarefa.

remaining_stop_count

Int32Value

Indica o número de paradas que o veículo resta até a parada da tarefa ser alcançada, incluindo a parada da tarefa. Por exemplo, se a próxima parada do veículo for a parada de tarefa, o valor será 1.

remaining_driving_distance_meters

Int32Value

A distância total restante em metros até o VehicleStop de interesse.

estimated_arrival_time

Timestamp

O carimbo de data/hora que indica o horário estimado de chegada até o local da parada.

estimated_task_completion_time

Timestamp

O carimbo de data/hora que indica o tempo estimado de conclusão de uma tarefa.

state

State

O estado de execução atual da tarefa.

task_outcome

TaskOutcome

O resultado da tentativa de executar uma Task.

task_outcome_time

Timestamp

O carimbo de data/hora que indica quando o resultado da tarefa foi definido pelo provedor.

planned_location

LocationInfo

Imutável. O local onde a Tarefa será concluída.

target_time_window

TimeWindow

A janela de tempo em que a tarefa deve ser concluída.

attributes[]

TaskAttribute

Os atributos personalizados definidos na tarefa.

TaskTrackingViewConfig

A mensagem de configuração que define quando um elemento de dados de uma tarefa deve ficar visível para os usuários finais.

Campos
route_polyline_points_visibility

VisibilityOption

O campo que especifica quando os pontos da polilinha do trajeto podem ficar visíveis. Se este campo não for especificado, será usada a configuração de visibilidade padrão para esses dados no nível do projeto.

estimated_arrival_time_visibility

VisibilityOption

O campo que especifica quando o horário de chegada estimado pode ficar visível. Se este campo não for especificado, será usada a configuração de visibilidade padrão para esses dados no nível do projeto.

estimated_task_completion_time_visibility

VisibilityOption

O campo que especifica quando o tempo estimado de conclusão da tarefa pode ficar visível. Se este campo não for especificado, será usada a configuração de visibilidade padrão para esses dados no nível do projeto.

remaining_driving_distance_visibility

VisibilityOption

O campo que especifica quando a distância de carro restante pode ser visível. Se este campo não for especificado, será usada a configuração de visibilidade padrão para esses dados no nível do projeto.

remaining_stop_count_visibility

VisibilityOption

O campo que especifica quando o número de paradas restantes pode ficar visível. Se este campo não for especificado, será usada a configuração de visibilidade padrão para esses dados no nível do projeto.

vehicle_location_visibility

VisibilityOption

O campo que especifica quando a localização do veículo pode ser visível. Se este campo não for especificado, será usada a configuração de visibilidade padrão para esses dados no nível do projeto.

VisibilityOption

A mensagem de opção que define quando um elemento de dados deve ficar visível para os usuários finais.

Campos
Campo de união visibility_option. A opção de visibilidade específica escolhida. visibility_option só pode ser de um dos seguintes tipos:
remaining_stop_count_threshold

int32

Esse elemento de dados fica visível para os usuários finais se a contagem de paradas restante for <= realtime_stop_count_threshold.

duration_until_estimated_arrival_time_threshold

Duration

Esse elemento de dados fica visível para os usuários finais se o HEC até a parada for <= duration_until_estimated_arrival_time_threshold.

remaining_driving_distance_meters_threshold

int32

Esse elemento de dados vai ficar visível para os usuários finais se a distância de carro restante em metros <= additional_driving_distance_meters_threshold.

always

bool

Se definido como verdadeiro, esse elemento de dados fica sempre visível para os usuários finais sem limites. Este campo não pode ser definido como falso.

never

bool

Se definido como verdadeiro, esse elemento de dados fica sempre oculto para os usuários finais sem limites. Este campo não pode ser definido como falso.

TimeWindow

Um período.

Campos
start_time

Timestamp

Obrigatório. O horário de início da janela de tempo (inclusive).

end_time

Timestamp

Obrigatório. O horário de término do período (inclusive).

UpdateDeliveryVehicleRequest

A mensagem de solicitação UpdateDeliveryVehicle.

Campos
header

DeliveryRequestHeader

Opcional. O cabeçalho de solicitação padrão da API Delivery.

delivery_vehicle

DeliveryVehicle

Obrigatório. Atualização da entidade DeliveryVehicle a ser aplicada. Observação: não é possível atualizar o nome de DeliveryVehicle.

update_mask

FieldMask

Obrigatório. Uma máscara de campo que indica quais campos DeliveryVehicle serão atualizados. Observe que update_mask precisa conter pelo menos um campo.

É uma lista separada por vírgulas de nomes de campos totalmente qualificados. Exemplo: "remaining_vehicle_journey_segments".

UpdateTaskRequest

A mensagem de solicitação UpdateTask.

Campos
header

DeliveryRequestHeader

Opcional. O cabeçalho de solicitação padrão da API Delivery.

task

Task

Obrigatório. A tarefa associada à atualização. Os campos a seguir são mantidos pelo Fleet Engine. Não os atualize usando Task.update.

  • last_location.
  • last_location_snappable.
  • name.
  • remaining_vehicle_journey_segments.
  • task_outcome_location_source.

Observação: não é possível alterar o valor de task_outcome depois de defini-lo.

Se a tarefa tiver sido atribuída a um veículo de entrega, não defina o estado dela como FECHADA usando Task.update. Em vez disso, remova o VehicleStop que contém a tarefa do veículo de entrega, o que define automaticamente o estado da tarefa como FECHADO.

update_mask

FieldMask

Obrigatório. A máscara de campo que indica quais campos da tarefa serão atualizados. Observação: o update_mask precisa conter pelo menos um campo.

É uma lista separada por vírgulas de nomes de campos totalmente qualificados. Exemplo: "task_outcome,task_outcome_time,task_outcome_location".

VehicleJourneySegment

Representa o segmento de viagem de um veículo, da parada anterior até a parada atual. Se for a primeira parada ativa, ela vai do local atual do veículo até essa parada.

Campos
stop

VehicleStop

Especifica o local da parada e os Tasks associados a ela. Alguns campos do VehicleStop podem não estar presentes se esse trecho da jornada fizer parte de JourneySharingInfo.

driving_distance_meters

Int32Value

Apenas saída. A distância de viagem da parada anterior até esta parada. Se a parada atual for a primeira da lista de segmentos da viagem, o ponto de partida será o local do veículo registrado no momento em que essa parada foi adicionada à lista. Esse campo poderá não estar presente se o trecho da jornada fizer parte de JourneySharingInfo.

driving_duration

Duration

Apenas saída. O tempo de viagem desde a parada anterior até esta parada. Se a parada atual for a primeira da lista de segmentos da viagem, o ponto de partida será o local do veículo registrado no momento em que essa parada foi adicionada à lista.

Se esse campo for definido no caminho Task.remaining_vehicle_journey_segments[0].driving_duration (gRPC) ou Task.remainingVehicleJourneySegments[0].drivingDuration (REST), ele poderá ser preenchido com o valor de DeliveryVehicle.remaining_duration (gRPC) ou DeliveryVehicle.remainingDuration (REST). Com isso, você informa o tempo restante de percurso usando o último local conhecido do app do motorista em vez do tempo da parada anterior.

path[]

LatLng

Apenas saída. O caminho da parada anterior até esta parada. Se a parada atual for a primeira da lista de segmentos da viagem, esse será o caminho desde o local atual do veículo até essa parada no momento em que ela foi adicionada à lista. Esse campo poderá não estar presente se o trecho da jornada fizer parte de JourneySharingInfo.

Se esse campo for definido no caminho Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) ou Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST), ele poderá ser preenchido com os LatLngs decodificados de DeliveryVehicle.current_route_segment (gRPC) ou DeliveryVehicle.currentRouteSegment (REST). Ele fornece o caminho usando o local conhecido mais recente do app do motorista em vez do caminho da parada anterior.

VehicleStop

Descreve um ponto em que um veículo para para realizar um ou mais Tasks.

Campos
planned_location

LocationInfo

Obrigatório. O local da parada. Os locais nas Tasks podem não corresponder exatamente a esse local, mas ficam a uma curta distância dele. Esse campo não será preenchido na resposta de uma chamada GetTask.

tasks[]

TaskInfo

Lista de Tasks a serem executados nessa parada. Esse campo não será preenchido na resposta de uma chamada GetTask.

state

State

O estado da VehicleStop. Esse campo não será preenchido na resposta de uma chamada GetTask.

Estado

O estado atual de um VehicleStop.

Tipos enumerados
STATE_UNSPECIFIED Desconhecido.
NEW Criado, mas sem roteamento ativo.
ENROUTE Roteamento atribuído e ativo
ARRIVED Chegou na parada. Pressupõe que, quando o veículo está seguindo para a próxima parada, todas as paradas anteriores foram concluídas.

TaskInfo

Informações adicionais sobre a Tarefa realizada nesta parada.

Campos
task_id

string

O ID da tarefa. Esse campo não será preenchido na resposta de uma chamada GetTask. Os IDs de tarefas estão sujeitos às seguintes restrições:

  • Precisa ser uma string Unicode válida.
  • Limitado a um tamanho máximo de 64 caracteres.
  • Normalizado de acordo com o Formulário C de normalização Unicode.
  • Não pode conter os seguintes caracteres ASCII: "/", ':', '?', ',' ou '#'.
task_duration

Duration

Apenas saída. O tempo necessário para executar a Tarefa.

target_time_window

TimeWindow

Apenas saída. A janela de tempo em que a tarefa deve ser concluída. Isso é definido apenas na resposta a GetDeliveryVehicle.