Решение Last Mile Fleet Solution в настоящее время доступно только для избранных клиентов. Свяжитесь с отделом продаж , чтобы узнать больше.

Package maps.fleetengine.delivery.v1

Оптимизируйте свои подборки Сохраняйте и классифицируйте контент в соответствии со своими настройками.

Индекс

Служба доставки

Служба доставки «Последняя миля».

Пакетное создание задач

rpc BatchCreateTasks( BatchCreateTasksRequest ) returns ( BatchCreateTasksResponse )

Создает и возвращает пакет новых объектов Task .

СоздатьДоставкуТранспортное средство

rpc CreateDeliveryVehicle( CreateDeliveryVehicleRequest ) returns ( DeliveryVehicle )

Создает и возвращает новый DeliveryVehicle .

Создать задачу

rpc CreateTask( CreateTaskRequest ) returns ( Task )

Создает и возвращает новый объект Task .

ПолучитьДоставкуАвтомобиля

rpc GetDeliveryVehicle( GetDeliveryVehicleRequest ) returns ( DeliveryVehicle )

Возвращает указанный экземпляр DeliveryVehicle .

GetTask

rpc GetTask( GetTaskRequest ) returns ( Task )

Получает информацию о Task .

GetTaskTrackingInfo

rpc GetTaskTrackingInfo( GetTaskTrackingInfoRequest ) returns ( TaskTrackingInfo )

Возвращает указанный экземпляр TaskTrackingInfo .

СписокДоставкаТранспортные средства

rpc ListDeliveryVehicles( ListDeliveryVehiclesRequest ) returns ( ListDeliveryVehiclesResponse )

Получает все транспортные средства DeliveryVehicle , соответствующие указанным критериям фильтрации.

ListTasks

rpc ListTasks( ListTasksRequest ) returns ( ListTasksResponse )

Получает все Task , соответствующие указанным критериям фильтрации.

ПоискЗадачи

rpc SearchTasks( SearchTasksRequest ) returns ( SearchTasksResponse )

Получает все Task с определенным tracking_id .

ОбновлениеДоставкаТранспортное средство

rpc UpdateDeliveryVehicle( UpdateDeliveryVehicleRequest ) returns ( DeliveryVehicle )

Записывает обновленные данные DeliveryVehicle в Fleet Engine и назначает Tasks DeliveryVehicle . Вы не можете обновить имя DeliveryVehicle . Тем не менее, вы можете обновить remaining_vehicle_journey_segments , но он должен содержать все VehicleJourneySegment , которые в данный момент находятся в DeliveryVehicle . Идентификаторы task_id извлекаются из remaining_vehicle_journey_segments , и соответствующие им Tasks назначаются DeliveryVehicle , если они еще не были назначены.

ОбновлениеТаск

rpc UpdateTask( UpdateTaskRequest ) returns ( Task )

Обновляет данные Task .

Пакетное создание задач

Сообщение запроса BatchCreateTask .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки. Примечание. Если вы установите это поле, то поле заголовка в сообщениях CreateTaskRequest должно быть либо пустым, либо оно должно соответствовать этому полю.

parent

string

Необходимый. Родительский ресурс, общий для всех задач. Это значение должно быть в формате providers/{provider} . provider должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project . Родительское поле в сообщениях CreateTaskRequest должно быть либо пустым, либо соответствовать этому полю.

requests[]

CreateTaskRequest

Необходимый. Сообщение запроса, указывающее ресурсы для создания. Примечание. В пакете можно создать не более 500 задач.

Пакетный креатетаскреспонсер

Ответное сообщение BatchCreateTask .

Поля
tasks[]

Task

Созданные Задачи.

Запрос создания транспортного средства доставки

Сообщение запроса CreateDeliveryVehicle .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

parent

string

Необходимый. Должен быть в формате providers/{provider} . Поставщик должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

delivery_vehicle_id

string

Необходимый. Идентификатор транспортного средства доставки должен быть уникальным и соответствовать следующим ограничениям:

  • Должна быть допустимой строкой Unicode.
  • Ограничено максимальной длиной 64 символа.
  • Нормализован в соответствии с формой нормализации Unicode C .
  • Не может содержать следующие символы ASCII: '/', ':', '?', ',' или '#'.
delivery_vehicle

DeliveryVehicle

Необходимый. Создаваемая сущность DeliveryVehicle . При создании нового транспортного средства вы можете установить следующие необязательные поля:

  • last_location
  • атрибуты

Примечание. Поле name средства доставки игнорируется. Все остальные поля DeliveryVehicle не должны быть установлены; в противном случае возвращается ошибка.

CreateTaskRequest

Сообщение запроса CreateTask .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

parent

string

Необходимый. Должен быть в формате providers/{provider} . provider должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

task_id

string

Необходимый. Идентификатор задачи должен быть уникальным, но не должен быть идентификатором отслеживания доставки. Чтобы сохранить идентификатор отслеживания отправления, используйте поле tracking_id . Обратите внимание, что один и тот же tracking_id может быть у нескольких задач. Идентификаторы задач имеют следующие ограничения:

  • Должна быть допустимой строкой Unicode.
  • Ограничено максимальной длиной 64 символа.
  • Нормализован в соответствии с формой нормализации Unicode C .
  • Не может содержать следующие символы ASCII: '/', ':', '?', ',' или '#'.
task

Task

Необходимый. Объект Task, который необходимо создать. При создании Задания обязательны для заполнения следующие поля:

  • type
  • state (должно быть установлено OPEN )
  • tracking_id (не должен устанавливаться для задач UNAVAILABLE или SCHEDULED_STOP , но обязателен для всех других типов задач)
  • planned_location (необязательно для UNAVAILABLE задач)
  • task_duration

Примечание. Поле name задачи игнорируется. Все остальные поля Задачи не должны быть установлены; в противном случае возвращается ошибка.

Заголовок запроса доставки

RequestHeader содержит поля, общие для всех запросов RPC доставки.

Поля
language_code

string

Код языка BCP-47, например en-US или sr-Latn. Для получения дополнительной информации см. http://www.unicode.org/reports/tr35/#Unicode_locale_identifier . Если ничего не указано, ответ может быть на любом языке, предпочтительно на английском, если такое имя существует. Пример значения поля: en-US .

region_code

string

Необходимый. Код региона CLDR для региона, из которого исходит запрос. Пример значения поля: US .

sdk_version

string

Версия вызывающего SDK, если применимо. Формат версии — «основной.дополнительный.патч», пример: 1.1.2 .

os_version

string

Версия операционной системы, в которой работает вызывающий SDK. Примеры значений полей: 4.4.1 , 12.1 .

device_model

string

Модель устройства, на котором запущен вызывающий SDK. Примеры значений полей: iPhone12,1 , SM-G920F .

sdk_type

SdkType

Тип SDK, отправляющий запрос.

maps_sdk_version

string

Версия MapSDK, от которой зависит вызывающий SDK, если применимо. Формат версии — «major.minor.patch», пример: 5.2.1 .

nav_sdk_version

string

Версия NavSDK, от которой зависит вызывающий SDK, если применимо. Формат версии — «major.minor.patch», пример: 2.1.0 .

platform

Platform

Платформа вызывающего SDK.

manufacturer

string

Производитель устройства Android из вызывающего SDK. Применяется только для Android SDK. Пример значения поля: Samsung .

android_api_level

int32

Уровень Android API вызывающего SDK, применимый только для Android SDK. Пример значения поля: 23 .

Платформа

Платформа вызывающего SDK.

перечисления
PLATFORM_UNSPECIFIED Значение по умолчанию. Это значение используется, если платформа не указана.
ANDROID Запрос исходит от Android.
IOS Запрос исходит от iOS.
WEB Запрос исходит из Интернета.

SDKType

Возможные типы SDK.

перечисления
SDK_TYPE_UNSPECIFIED Значение по умолчанию. Это значение используется, если sdk_type опущен.
CONSUMER Вызывающий SDK — Consumer.
DRIVER Вызывающий SDK — Driver.
JAVASCRIPT Вызывающий SDK — это JavaScript.

ДоставкаАвтомобиль

Сообщение DeliveryVehicle . Транспортное средство доставки перевозит грузы со склада в пункт доставки и из пункта выдачи в склад. В некоторых случаях транспортные средства доставки также доставляют грузы непосредственно из пункта выдачи в пункт доставки.

Примечание. API-интерфейсы gRPC и REST используют разные соглашения об именах полей. Например, поле DeliveryVehicle.current_route_segment в gRPC API и поле DeliveryVehicle.currentRouteSegment в REST API ссылаются на одно и то же поле.

Поля
name

string

Уникальное имя этого транспортного средства доставки. Формат: providers/{provider}/deliveryVehicles/{vehicle} .

last_location

DeliveryVehicleLocation

Последнее сообщенное местонахождение транспортного средства доставки.

navigation_status

DeliveryVehicleNavigationStatus

Навигационный статус транспортного средства доставки.

current_route_segment

bytes

Закодированная полилиния, указывающая маршрут, по которому навигация рекомендует пройти к следующей путевой точке. Ваше приложение для водителя обновляет это, когда остановка достигнута или пройдена, а также когда навигация меняет маршрут. Эти LatLng возвращаются в Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) или Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST) ​​для всех активных задач, назначенных транспортному средству.

В некоторых случаях это поле может не использоваться для заполнения Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) или Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST):

  • Конечная точка current_route_segment не соответствует DeliveryVehicle.remaining_vehicle_journey_segments[0].stop (gRPC) или DeliveryVehicle.remainingVehicleJourneySegments[0].stop (REST).

  • Приложение водителя не обновляло свое местоположение в последнее время, поэтому последнее обновленное значение для этого поля может быть устаревшим.

  • Приложение водителя недавно обновило свое местоположение, но current_route_segment устарел и указывает на предыдущую остановку автомобиля.

В этих случаях Fleet Engine заполняет это поле маршрутом от самой последней остановки VehicleStop до предстоящей остановки VehicleStop, чтобы гарантировать, что потребитель этого поля имеет наилучшую доступную информацию о текущем пути транспортного средства доставки.

current_route_segment_end_point

LatLng

Место, где заканчивается current_route_segment . В настоящее время он не заполняется приложением драйвера, но вы можете предоставить его при вызовах UpdateDeliveryVehicle . Это либо LatLng от предстоящей остановки транспортного средства, либо последний LatLng current_route_segment . Затем Fleet Engine сделает все возможное для интерполяции фактического VehicleStop .

Это поле игнорируется в вызовах UpdateDeliveryVehicle , если поле current_route_segment пусто.

remaining_distance_meters

Int32Value

Оставшееся расстояние для current_route_segment . Это значение обычно обновляется приложением водителя, поскольку считается, что оно содержит более точную информацию о текущем маршруте, чем Fleet Engine. Однако он может быть заполнен Fleet Engine. Дополнительные сведения см. в разделе DeliveryVehicle.current_route_segment . Это поле возвращается в Task.remaining_vehicle_journey_segments[0].driving_distance_meters (gRPC) или Task.remainingVehicleJourneySegments[0].drivingDistanceMeters (REST) ​​для всех активных задач, назначенных транспортному средству доставки.

Это поле игнорируется в вызовах UpdateDeliveryVehicle , если поле current_route_segment пусто.

remaining_duration

Duration

Оставшееся время в пути для current_route_segment . Это значение обычно обновляется приложением водителя, поскольку считается, что оно содержит более точную информацию о текущем маршруте, чем Fleet Engine. Однако он может быть заполнен Fleet Engine. Дополнительные сведения см. в разделе DeliveryVehicle.current_route_segment . Это поле возвращается в Task.remaining_vehicle_journey_segments[0].driving_duration (gRPC) или Task.remainingVehicleJourneySegments[0].drivingDuration (REST) ​​для всех активных задач, назначенных транспортному средству доставки.

Это поле игнорируется в вызовах UpdateDeliveryVehicle , если поле current_route_segment пусто.

remaining_vehicle_journey_segments[]

VehicleJourneySegment

Сегменты поездки, назначенные этому Транспортному средству доставки, начиная с последнего зарегистрированного местоположения Транспортного средства. Это поле не будет заполнено в ответе ListDeliveryVehicles .

attributes[]

DeliveryVehicleAttribute

Список настраиваемых атрибутов транспортного средства доставки. Транспортное средство доставки может иметь не более 50 атрибутов, и каждый атрибут должен иметь уникальный ключ.

DeliveryVehicleAttribute

Описывает атрибут транспортного средства в виде пары ключ-значение. Длина строки «ключ:значение» не может превышать 256 символов.

Поля
key

string

Ключ атрибута. Ключи не могут содержать двоеточие (:).

value

string

Значение атрибута.

ДоставкаТранспортМестоположение

Местоположение, скорость и курс транспортного средства в определенный момент времени.

Поля
location

LatLng

Местонахождение транспортного средства. Когда он отправляется в Fleet Engine, местоположение автомобиля определяется по GPS. Когда вы получаете его в ответе, местоположение автомобиля может быть либо местоположением GPS, дополнительным местоположением, либо каким-либо другим предполагаемым местоположением. Источник указан в location_sensor .

horizontal_accuracy
(deprecated)

DoubleValue

Устарело: вместо этого используйте latlng_accuracy .

latlng_accuracy

DoubleValue

Точность определения location в метрах по радиусу.

heading

Int32Value

Направление движения автомобиля в градусах. 0 представляет север. Допустимый диапазон: [0,360).

bearing_accuracy
(deprecated)

DoubleValue

Устарело: вместо этого используйте heading_accuracy .

heading_accuracy

DoubleValue

Точность heading в градусах.

altitude

DoubleValue

Высота в метрах выше WGS84.

vertical_accuracy
(deprecated)

DoubleValue

Устарело: используйте вместо этого altitude_accuracy .

altitude_accuracy

DoubleValue

Точность altitude в метрах.

speed_kmph
(deprecated)

Int32Value

Скорость автомобиля в километрах в час. Устарело: вместо этого используйте speed .

speed

DoubleValue

Скорость автомобиля в метрах в секунду

speed_accuracy

DoubleValue

Точность speed в метрах/сек.

update_time

Timestamp

Время, когда датчик сообщил о location по часам датчика.

server_time

Timestamp

Только вывод. Время, когда сервер получил информацию о местоположении.

location_sensor

DeliveryVehicleLocationSensor

Поставщик данных о местоположении (например, GPS ).

is_road_snapped

BoolValue

Привязано ли location к дороге.

is_gps_sensor_enabled

BoolValue

Только ввод. Указывает, включен ли датчик GPS на мобильном устройстве.

time_since_update

Int32Value

Только ввод. Время (в секундах) с момента первой отправки этого местоположения на сервер. Это будет ноль для первого обновления. Если время неизвестно (например, при перезапуске приложения), это значение сбрасывается до нуля.

num_stale_updates

Int32Value

Только ввод. Количество дополнительных попыток отправить это местоположение на сервер. Если это значение равно нулю, то оно не устарело.

raw_location

LatLng

Необработанное местоположение автомобиля (необработанное дорожным фотографом).

raw_location_time

Timestamp

Только ввод. Временная метка, связанная с необработанным местоположением.

raw_location_sensor

DeliveryVehicleLocationSensor

Только ввод. Источник необработанного местоположения.

raw_location_accuracy

DoubleValue

Только ввод. Точность raw_location в виде радиуса в метрах.

supplemental_location

LatLng

Только ввод. Дополнительное местоположение, предоставляемое интегрирующим приложением.

supplemental_location_time

Timestamp

Только ввод. Отметка времени, связанная с дополнительным местоположением.

supplemental_location_sensor

DeliveryVehicleLocationSensor

Только ввод. Источник дополнительной локации.

supplemental_location_accuracy

DoubleValue

Только ввод. Точность supplemental_location в виде радиуса в метрах.

road_snapped
(deprecated)

bool

Устарело: вместо этого используйте is_road_snapped .

ДоставкаТранспортМестоположениеДатчик

Датчик или методика, используемые для определения местоположения.

перечисления
UNKNOWN_SENSOR Датчик не указан или неизвестен.
GPS GPS или вспомогательный GPS.
NETWORK Вспомогательный GPS, идентификатор вышек сотовой связи или точка доступа Wi-Fi.
PASSIVE Идентификатор вышки сотовой связи или точка доступа Wi-Fi.
ROAD_SNAPPED_LOCATION_PROVIDER Сигнал местоположения привязался к лучшему положению на дороге.
FUSED_LOCATION_PROVIDER Объединенный провайдер местоположения в сервисах Google Play.
CORE_LOCATION Провайдер местоположения в операционных системах Apple.

ДоставкаТранспортНавигацияСтатус

Навигационный статус автомобиля.

перечисления
UNKNOWN_NAVIGATION_STATUS Неопределенный статус навигации.
NO_GUIDANCE Навигация в приложении Driver находится в режиме FREE_NAV .
ENROUTE_TO_DESTINATION Доступна пошаговая навигация, а навигация в приложении для водителей перешла в режим GUIDED_NAV .
OFF_ROUTE Транспортное средство сбилось с предложенного маршрута.
ARRIVED_AT_DESTINATION Транспортное средство находится примерно в 50 м от пункта назначения.

GetDeliveryVehicleRequest

Сообщение запроса GetDeliveryVehicle . Следующий идентификатор: 4

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

name

string

Необходимый. Должен быть в формате providers/{provider}/deliveryVehicles/{delivery_vehicle} . provider должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

GetTaskRequest

Сообщение запроса GetTask .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

name

string

Необходимый. Должен быть в формате providers/{provider}/tasks/{task} . provider должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

GetTaskTrackingInfoRequest

Сообщение запроса GetTaskTrackingInfoRequest .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

name

string

Необходимый. Должен быть в формате providers/{provider}/taskTrackingInfo/{tracking_id} . provider должен быть идентификатором проекта Google Cloud, а tracking_id должен быть идентификатором отслеживания, связанным с задачей. Примером имени может быть providers/sample-cloud-project/taskTrackingInfo/sample-tracking-id .

СписокДоставкаТранспортные средстваЗапрос

Сообщение запроса ListDeliveryVehicles .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

parent

string

Необходимый. Должен быть в формате providers/{provider} . provider должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

page_size

int32

Необязательный. Максимальное количество автомобилей для возврата. Служба может вернуть меньше этого числа. Если вы не укажете это число, сервер определяет количество возвращаемых результатов.

page_token

string

Необязательный. Токен страницы, полученный от предыдущего вызова ListDeliveryVehicles . Вы должны указать это, чтобы получить следующую страницу.

При разбиении на страницы все остальные параметры, предоставляемые ListDeliveryVehicles , должны соответствовать вызову, предоставившему токен страницы.

filter

string

Необязательный. Фильтрующий запрос, применяемый при перечислении транспортных средств доставки. См. http://aip.dev/160 для примеров синтаксиса фильтра. Если вы не укажете значение или укажете пустую строку для фильтра, то будут возвращены все средства доставки.

Обратите внимание, что для ListDeliveryVehicles поддерживаются только запросы по атрибутам транспортного средства (например, attributes.<key> = <value> или attributes.<key1> = <value1> AND attributes.<key2> = <value2> ). Кроме того, все атрибуты хранятся в виде строк, поэтому единственным поддерживаемым сравнением с атрибутами является сравнение строк. Для сравнения с числовыми или логическими значениями значения должны быть явно заключены в кавычки, чтобы их можно было рассматривать как строки (например, attributes.<key> = "10" или attributes.<key> = "true" ).

Максимальное количество ограничений, разрешенных в запросе фильтра, равно 50. Ограничение является частью запроса формы attribute.<KEY> <COMPARATOR> <VALUE> , например attributes.foo = bar is 1 ограничение.

viewport

Viewport

Необязательный. Фильтр, который ограничивает область поиска прямоугольником, определяемым северо-восточной и юго-западной угловыми точками.

При определении возвращаются только транспортные средства, находящиеся в пределах области поиска.

СписокДоставкаТранспортные средстваОтвет

Ответное сообщение ListDeliveryVehicles .

Поля
delivery_vehicles[]

DeliveryVehicle

Набор средств доставки, отвечающих заданным критериям фильтрации. Если фильтр не указан, запрос возвращает все средства доставки. Успешный ответ также может быть пустым. Пустой ответ означает, что не найдено ни одного транспортного средства, отвечающего запрошенным критериям фильтрации.

next_page_token

string

Вы можете передать этот токен в ListDeliveryVehiclesRequest , чтобы продолжить перечисление результатов. Когда будут возвращены все результаты, этого поля не будет в ответе или это будет пустая строка.

total_size

int64

Общее количество средств доставки, соответствующих критериям запроса, на всех страницах.

Запрос списка задач

Сообщение запроса ListTasks .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

parent

string

Необходимый. Должен быть в формате providers/{provider} . provider должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

page_size

int32

Необязательный. Максимальное количество возвращаемых задач. Служба может вернуть меньшее значение, чем это значение. Если вы не укажете это значение, сервер определяет количество возвращаемых результатов.

page_token

string

Необязательный. Маркер страницы, полученный от предыдущего вызова ListTasks . Вы можете указать это, чтобы получить следующую страницу.

При разбиении на страницы все другие параметры, предоставляемые ListTasks должны соответствовать вызову, предоставившему токен страницы.

filter

string

Необязательный. Фильтрующий запрос, применяемый при перечислении задач. См. http://aip.dev/160 для примеров синтаксиса фильтра. Если вы не укажете значение или отфильтруете пустую строку, будут возвращены все задачи. Сведения о свойствах задач, по которым можно фильтровать, см. в разделе Список задач .

ListTasksResponse

Ответ ListTasks , содержащий набор задач, отвечающих критериям фильтра в ListTasksRequest .

Поля
tasks[]

Task

Набор Задач, отвечающих запрошенным критериям фильтрации. Если фильтр не указан, запрос возвращает все задачи. Успешный ответ также может быть пустым. Пустой ответ означает, что не найдено ни одной задачи, отвечающей запрошенным критериям фильтра.

next_page_token

string

Передайте этот токен в ListTasksRequest , чтобы продолжить перечисление результатов. Если все результаты были возвращены, то это поле либо является пустой строкой, либо не отображается в ответе.

total_size

int64

Общее количество Задач, соответствующих критериям запроса, на всех страницах.

РасположениеИнформация

Расположение с любыми дополнительными идентификаторами.

Поля
point

LatLng

Координаты места.

ПоискЗадачиЗапрос

Сообщение запроса SearchTasks , содержащее tracking_id .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

parent

string

Необходимый. Должен быть в формате providers/{provider} . Поставщик должен быть идентификатором проекта Google Cloud. Например, sample-cloud-project .

tracking_id

string

Необходимый. Идентификатор запрашиваемого набора связанных Задач. На идентификаторы отслеживания распространяются следующие ограничения:

  • Должна быть допустимой строкой Unicode.
  • Ограничено максимальной длиной 64 символа.
  • Нормализован в соответствии с формой нормализации Unicode C .
  • Не может содержать следующие символы ASCII: '/', ':', '?', ',' или '#'.
page_size

int32

Необязательный. Максимальное количество возвращаемых задач. Служба может вернуть меньшее значение, чем это значение. Если вы не укажете это значение, сервер определяет количество возвращаемых результатов.

page_token

string

Необязательный. Токен страницы, полученный от предыдущего вызова SearchTasks . Вы должны указать это значение, чтобы получить следующую страницу.

При разбиении на страницы все другие параметры, предоставляемые SearchTasks должны соответствовать вызову, предоставившему токен страницы.

ПоискЗадачиОтвет

Ответ SearchTasks . Он содержит набор задач, соответствующих критериям поиска в SearchTasksRequest .

Поля
tasks[]

Task

Набор Задач для запрошенного tracking_id . Успешный ответ также может быть пустым. Пустой ответ означает, что с предоставленным tracking_id не связаны задачи.

next_page_token

string

Передайте этот токен в SearchTasksRequest , чтобы продолжить вывод результатов. Если все результаты были возвращены, то это поле либо является пустой строкой, либо не отображается в ответе.

Задача

Задача в API доставки представляет собой одно действие для отслеживания. Как правило, существует различие между Заданиями, связанными с отгрузкой, и Заданиями по перерыву. С отправлением может быть связано несколько Задач. Например, может быть одна задача для вывоза и одна для высадки или передачи. Кроме того, разные Задачи для данной перевозки могут выполняться разными транспортными средствами. Например, одно транспортное средство может обрабатывать доставку, доставляя груз в хаб, в то время как другое транспортное средство доставляет тот же груз из хаба в место выгрузки.

Примечание. API-интерфейсы gRPC и REST используют разные соглашения об именах полей. Например, поле Task.journey_sharing_info в gRPC API и поле DeliveryVehicle.journeySharingInfo в REST API ссылаются на одно и то же поле.

Поля
name

string

Должен быть в формате providers/{provider}/tasks/{task} .

type

Type

Необходимый. Неизменный. Определяет тип Задачи. Например, перерыв или отгрузка.

state

State

Необходимый. Текущее состояние выполнения Задачи.

task_outcome

TaskOutcome

Результат Задания.

task_outcome_time

Timestamp

Отметка времени, указывающая, когда результат Задачи был установлен поставщиком.

task_outcome_location

LocationInfo

Место, где был установлен результат Задачи. Это значение обновляется как часть UpdateTask . Если поставщик явно не обновляет это значение, то Fleet Engine по умолчанию заполняет его последним известным местоположением транспортного средства ( необработанным местоположением).

task_outcome_location_source

TaskOutcomeLocationSource

Указывает, откуда взялось значение task_outcome_location .

tracking_id

string

Неизменный. Это поле облегчает хранение идентификатора, поэтому вы можете избежать использования сложного сопоставления. Вы не можете установить tracking_id для задач типа UNAVAILABLE и SCHEDULED_STOP . На эти идентификаторы распространяются следующие ограничения:

  • Должна быть допустимой строкой Unicode.
  • Ограничено максимальной длиной 64 символа.
  • Нормализован в соответствии с формой нормализации Unicode C .
  • Не может содержать следующие символы ASCII: '/', ':', '?', ',' или '#'.
delivery_vehicle_id

string

Только вывод. Идентификатор транспортного средства, выполняющего эту задачу. На идентификаторы транспортных средств доставки распространяются следующие ограничения:

  • Должна быть допустимой строкой Unicode.
  • Ограничено максимальной длиной 64 символа.
  • Нормализован в соответствии с формой нормализации Unicode C .
  • Не может содержать следующие символы ASCII: '/', ':', '?', ',' или '#'.
planned_location

LocationInfo

Неизменный. Место, где Задание будет выполнено. Необязателен для UNAVAILABLE Задач, но обязателен для всех остальных Задач.

task_duration

Duration

Необходимый. Неизменный. Время, необходимое для выполнения задачи в этом месте.

target_time_window

TimeWindow

Временное окно, в течение которого задача должна быть выполнена.

journey_sharing_info

JourneySharingInfo

Только вывод. Поля, относящиеся к совместному использованию поездок. Не заполняется, когда состояние CLOSED .

ПутешествиеОбменИнформацией

Путешествие по определенным полям.

Поля
remaining_vehicle_journey_segments[]

VehicleJourneySegment

Информация об отслеживании остановок, которые назначенное транспортное средство сделает перед выполнением этой задачи. Обратите внимание, что этот список может содержать остановки от других задач.

Первый сегмент, Task.journey_sharing_info.remaining_vehicle_journey_segments[0] (gRPC) или Task.journeySharingInfo.remainingVehicleJourneySegments[0] (REST), содержит информацию о маршруте от последнего известного местоположения водителя до предстоящей VehicleStop . Информация о текущем маршруте обычно поступает из приложения водителя, за исключением некоторых случаев, отмеченных в документации для DeliveryVehicle.current_route_segment . Другие сегменты в Task.journey_sharing_info.remaining_vehicle_journey_segments (gRPC) или Task.journeySharingInfo.remainingVehicleJourneySegments (REST) ​​заполняются Fleet Engine. Они предоставляют информацию о маршруте между оставшимися VehicleStops .

last_location

DeliveryVehicleLocation

Указывает последнее зарегистрированное местоположение назначенного транспортного средства.

last_location_snappable

bool

Указывает, можно ли привязать lastLocation транспортного средства к current_route_segment . Это значение равно False, если ни last_location , ни current_route_segment не существуют. Это значение вычисляется программой Fleet Engine. Обновления от клиентов игнорируются.

Состояние

Состояние задачи. Это указывает на прогресс Задачи.

перечисления
STATE_UNSPECIFIED По умолчанию. Используется для неопределенного или нераспознанного состояния задачи.
OPEN Либо Задание еще не назначено транспортному средству доставки, либо транспортное средство доставки еще не проехало назначенную Задаче остановку транспортного средства.
CLOSED Когда транспортное средство проезжает, остановите транспортное средство для этой задачи.

ЗадачаРезультат

Результат попытки выполнить задачу. Когда TaskState закрыт, TaskOutcome указывает, было ли оно выполнено успешно.

перечисления
TASK_OUTCOME_UNSPECIFIED Результат Задачи до установки его значения.
SUCCEEDED Задача выполнена успешно.
FAILED Либо Задание не удалось выполнить, либо оно было отменено.

ЗадачаРезультатРасположениеИсточник

Идентификатор источника, который заполнил task_outcome_location .

перечисления
TASK_OUTCOME_LOCATION_SOURCE_UNSPECIFIED Результат Задачи до его установки.
PROVIDER Поставщик указал task_outcome_location .
LAST_VEHICLE_LOCATION Поставщик не указал task_outcome_location , поэтому Fleet Engine использовал последнее известное местоположение транспортного средства.

Тип

Тип Задачи.

перечисления
TYPE_UNSPECIFIED По умолчанию тип задачи неизвестен.
PICKUP Задача самовывоза — это действие, предпринимаемое для получения отправления от клиента. Пикапы из депо или фидерных транспортных средств должны использовать тип SCHEDULED_STOP .
DELIVERY Задача доставки — это действие, предпринимаемое для доставки груза конечному покупателю. Для высадки транспортных средств из депо или подвозки следует использовать тип SCHEDULED_STOP .
SCHEDULED_STOP Задача запланированной остановки используется для целей планирования. Например, это может означать получение или выгрузку грузов из фидерных транспортных средств или складов. Его не следует использовать для любых отправлений, которые забираются или выгружаются у конечного покупателя.
UNAVAILABLE Задача, означающая, что Транспортное средство недоступно для обслуживания. Например, это может произойти, когда водитель делает перерыв или когда автомобиль заправляется топливом.

Информация о отслеживании задач

Сообщение TaskTrackingInfo . Сообщение содержит информацию об отслеживании задач, которая будет использоваться для отображения. Если идентификатор отслеживания связан с несколькими задачами, Fleet Engine использует эвристику, чтобы решить, какую TaskTrackingInfo задачи выбрать.

Поля
name

string

Должен быть в формате providers/{provider}/taskTrackingInfo/{tracking} , где tracking представляет собой идентификатор отслеживания.

tracking_id

string

Неизменный. Идентификатор отслеживания задачи. * Должна быть допустимой строкой Unicode. * Ограничено максимальной длиной 64 символа. * Нормировано в соответствии с формой нормализации Unicode C . * Не может содержать следующие символы ASCII: '/', ':', '?', ',' или '#'.

vehicle_location

DeliveryVehicleLocation

Последнее местонахождение автомобиля.

route_polyline_points[]

LatLng

Список точек, которые при соединении образуют полилинию ожидаемого маршрута транспортного средства к месту выполнения этой задачи.

remaining_stop_count

Int32Value

Указывает количество остановок, оставшихся транспортному средству до достижения рабочей остановки, включая рабочую остановку. Например, если следующей остановкой транспортного средства является рабочая остановка, значение будет равно 1.

remaining_driving_distance_meters

Int32Value

Общее оставшееся расстояние в метрах до интересующей VehicleStop .

estimated_arrival_time

Timestamp

Временная метка, указывающая расчетное время прибытия к месту остановки.

estimated_task_completion_time

Timestamp

Временная метка, указывающая предполагаемое время завершения задачи.

state

State

Текущее состояние выполнения Задачи.

task_outcome

TaskOutcome

Результат попытки выполнить задачу.

task_outcome_time

Timestamp

Отметка времени, указывающая, когда результат Задачи был установлен поставщиком.

planned_location

LocationInfo

Неизменный. Место, где Задание будет выполнено.

target_time_window

TimeWindow

Временное окно, в течение которого задача должна быть выполнена.

Окно времени

Диапазон времени.

Поля
start_time

Timestamp

Необходимый. Время начала временного окна (включительно).

end_time

Timestamp

Необходимый. Время окончания временного окна (включительно).

Запрос на обновление доставки транспортного средства

Сообщение запроса UpdateDeliveryVehicle .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

delivery_vehicle

DeliveryVehicle

Необходимый. Обновление объекта DeliveryVehicle для применения. Примечание. Вы не можете обновить имя DeliveryVehicle .

update_mask

FieldMask

Необходимый. Маска поля, указывающая, какие поля DeliveryVehicle необходимо обновить. Обратите внимание, что update_mask должен содержать хотя бы одно поле.

Это список разделенных запятыми полных имен полей. Пример: "remaining_vehicle_journey_segments" .

Упдейтаскрекуест

Сообщение запроса UpdateTask .

Поля
header

DeliveryRequestHeader

Необязательный. Стандартный заголовок запроса API доставки.

task

Task

Необходимый. Задача, связанная с обновлением. Следующие поля поддерживаются Fleet Engine. Не обновляйте их с помощью Task.update .

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

Примечание. Вы не можете изменить значение task_outcome после его установки.

Если задача была назначена средству доставки, не устанавливайте состояние задачи на ЗАКРЫТО с помощью Task.update . Вместо этого удалите VehicleStop , содержащий задачу, из транспортного средства доставки, что автоматически установит состояние задачи в ЗАКРЫТО.

update_mask

FieldMask

Необходимый. Маска поля, указывающая, какие поля Задачи необходимо обновить. Примечание. update_mask должна содержать хотя бы одно поле.

Это список разделенных запятыми полных имен полей. Пример: "task_outcome,task_outcome_time,task_outcome_location" .

АвтомобильПутешествиеСегмент

Представляет сегмент движения транспортного средства — от его предыдущей остановки до текущей остановки. Если это первая активная остановка, то она находится от текущего местоположения транспортного средства до этой остановки.

Поля
stop

VehicleStop

Указывает место остановки, а также Задачи, связанные с остановкой. Некоторые поля VehicleStop могут отсутствовать, если этот сегмент поездки является частью JourneySharingInfo .

driving_distance_meters

Int32Value

Только вывод. Расстояние от предыдущей остановки до этой остановки. Если текущая остановка является первой остановкой в ​​списке сегментов пути, то начальной точкой является местоположение транспортного средства, записанное на момент добавления этой остановки в список. Это поле может отсутствовать, если этот сегмент маршрута является частью JourneySharingInfo .

driving_duration

Duration

Только вывод. Время в пути от предыдущей остановки до этой остановки. Если текущая остановка является первой остановкой в ​​списке сегментов пути, то начальной точкой является местоположение Транспортного средства, записанное на момент добавления этой остановки в список.

Если это поле определено в пути Task.remaining_vehicle_journey_segments[0].driving_duration (gRPC) или Task.remainingVehicleJourneySegments[0].drivingDuration (REST), то оно может быть заполнено значением из DeliveryVehicle.remaining_duration (gRPC) или DeliveryVehicle.remainingDuration (ОТДЫХ). Это обеспечивает оставшуюся продолжительность вождения от последнего известного местоположения приложения водителя, а не время в пути от предыдущей остановки.

path[]

LatLng

Только вывод. Путь от предыдущей остановки до этой остановки. Если текущая остановка является первой остановкой в ​​списке сегментов пути, то это путь от текущего местоположения транспортного средства до этой остановки на момент добавления остановки в список. Это поле может отсутствовать, если этот сегмент маршрута является частью JourneySharingInfo .

Если это поле определено в пути Task.journey_sharing_info.remaining_vehicle_journey_segments[0].path (gRPC) или Task.journeySharingInfo.remainingVehicleJourneySegments[0].path (REST), то оно может быть заполнено LatLngs, декодированными из DeliveryVehicle.current_route_segment ( gRPC) or DeliveryVehicle.currentRouteSegment (REST). This provides the driving path from the driver app's latest known location rather than the path from the previous stop.

VehicleStop

Describes a point where a Vehicle stops to perform one or more Tasks.

Fields
planned_location

LocationInfo

Required. The location of the stop. Note that the locations in the Tasks might not exactly match this location, but will be within a short distance of it. This field won't be populated in the response of either a GetTask , or a SearchTasks call.

tasks[]

TaskInfo

The list of Tasks to be performed at this stop. This field won't be populated in the response of either a GetTask , or a SearchTasks call.

state

State

The state of the VehicleStop . This field won't be populated in the response of either a GetTask , or a SearchTasks call.

State

The current state of a VehicleStop .

Enums
STATE_UNSPECIFIED Unknown.
NEW Created, but not actively routing.
ENROUTE Assigned and actively routing.
ARRIVED Arrived at stop. Assumes that when the Vehicle is routing to the next stop, that all previous stops have been completed.

TaskInfo

Additional information about the Task performed at this stop.

Fields
task_id

string

The Task ID. This field won't be populated in the response of either a GetTask , or a SearchTasks call. Task IDs are subject to the following restrictions:

  • Must be a valid Unicode string.
  • Limited to a maximum length of 64 characters.
  • Normalized according to Unicode Normalization Form C .
  • May not contain any of the following ASCII characters: '/', ':', '?', ',', or '#'.
task_duration

Duration

Output only. The time required to perform the Task.