ラスト ワンマイルのフリート ソリューションは現在、一部のお客様のみご利用いただけます。詳しくは、営業担当者までお問い合わせください。

Package maps.fleetengine.delivery.v1

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

索引

宅配サービス

ラスト ワンマイル配送サービス。

BatchCreateTasks

rpc BatchCreateTasks(BatchCreateTasksRequest) returns (BatchCreateTasksResponse)

新しい Task オブジェクトのバッチを作成して返します。

CreateDeliveryVehicle

rpc CreateDeliveryVehicle(CreateDeliveryVehicleRequest) returns (DeliveryVehicle)

新しい DeliveryVehicle を作成して返します。

CreateTask

rpc CreateTask(CreateTaskRequest) returns (Task)

新しい Task オブジェクトを作成して返します。

GetDeliveryVehicle

rpc GetDeliveryVehicle(GetDeliveryVehicleRequest) returns (DeliveryVehicle)

指定された DeliveryVehicle インスタンスを返します。

GetTask

rpc GetTask(GetTaskRequest) returns (Task)

Task に関する情報を取得します。

GetTaskTrackingInfo

rpc GetTaskTrackingInfo(GetTaskTrackingInfoRequest) returns (TaskTrackingInfo)

指定された TaskTrackingInfo インスタンスを返します。

ListDeliveryVehicles

rpc ListDeliveryVehicles(ListDeliveryVehiclesRequest) returns (ListDeliveryVehiclesResponse)

指定されたフィルタ条件を満たす DeliveryVehicle をすべて取得します。

ListTasks

rpc ListTasks(ListTasksRequest) returns (ListTasksResponse)

指定されたフィルタ条件を満たす Task をすべて取得します。

検索タスク

rpc SearchTasks(SearchTasksRequest) returns (SearchTasksResponse)

特定の tracking_id を持つすべての Task を取得します。

UpdateDeliveryVehicle

rpc UpdateDeliveryVehicle(UpdateDeliveryVehicleRequest) returns (DeliveryVehicle)

更新された DeliveryVehicle データを Fleet Engine に書き込み、TasksDeliveryVehicle に割り当てます。DeliveryVehicle の名前を更新できません。ただし、remaining_vehicle_journey_segments を更新することは可能ですが、DeliveryVehicle にあるすべての VehicleJourneySegment を含める必要があります。task_idremaining_vehicle_journey_segments から取得され、対応する Tasks がまだ割り当てられていない場合は DeliveryVehicle に割り当てられます。

UpdateTask

rpc UpdateTask(UpdateTaskRequest) returns (Task)

Task のデータを更新します。

BatchCreateTasksRequest

BatchCreateTask リクエスト メッセージ。

フィールド
header

DeliveryRequestHeader

(省略可)標準の Delivery API リクエスト ヘッダー。注: このフィールドを設定する場合は、CreateTaskRequest メッセージのヘッダー フィールドを空にするか、このフィールドと一致する必要があります。

parent

string

必須。すべてのタスクで共有される親リソース。この値は、providers/{provider} の形式にする必要があります。provider は、Google Cloud プロジェクト ID である必要があります。例: sample-cloud-projectCreateTaskRequest メッセージの親フィールドは空にするか、このフィールドと一致する必要があります。

requests[]

CreateTaskRequest

必須。作成するリソースを指定するリクエスト メッセージ。注: 1 つのバッチで作成できるタスクは 500 個までです。

BatchCreateTasksResponse

BatchCreateTask レスポンス メッセージ。

フィールド
tasks[]

Task

作成されたタスク。

CreateDeliveryVehicleRequest

CreateDeliveryVehicle リクエスト メッセージ。

フィールド
header

DeliveryRequestHeader

(省略可)標準の Delivery API リクエスト ヘッダー。

parent

string

必須。providers/{provider} の形式にする必要があります。プロバイダは Google Cloud プロジェクト ID である必要があります。例: sample-cloud-project

delivery_vehicle_id

string

必須。車両 ID は一意である必要があり、以下の制限が適用されます。

  • 有効な Unicode 文字列を指定する必要があります。
  • 最大 64 文字です。
  • Unicode Normalization Form C に従って正規化します。
  • ASCII 文字(/、':'、'?'、','、'#')は含めないでください。
delivery_vehicle

DeliveryVehicle

必須。作成する DeliveryVehicle エンティティ。新しい配達車両を作成する場合は、次のオプション フィールドを設定できます。

  • 前回の場所
  • 属性

注: DeliveryVehicle の name フィールドは無視されます。その他の DeliveryVehicle フィールドは設定しないでください。設定するとエラーが返されます。

CreateTaskRequest

CreateTask リクエスト メッセージ。

フィールド
header

DeliveryRequestHeader

(省略可)標準の Delivery API リクエスト ヘッダー。

parent

string

必須。providers/{provider} の形式にする必要があります。provider は、Google Cloud プロジェクト ID である必要があります。例: sample-cloud-project

task_id

string

必須。タスク ID は一意である必要がありますが、配送トラッキング ID は使用しないでください。配送トラッキング ID を保存するには、tracking_id フィールドを使用します。複数のタスクの tracking_id は同じにすることができます。タスク ID には次の制限があります。

  • 有効な Unicode 文字列を指定する必要があります。
  • 最大 64 文字です。
  • Unicode Normalization Form C に従って正規化します。
  • ASCII 文字(/、':'、'?'、','、'#')は含めないでください。
task

Task

必須。作成するタスク エンティティ。タスクを作成する際は、以下のフィールドが必須です。

  • type
  • stateOPEN に設定する必要があります)
  • tracking_idUNAVAILABLE タスクや SCHEDULED_STOP タスクでは設定できませんが、他のすべてのタスクタイプでは必須です)
  • planned_location(省略可、UNAVAILABLE 件のタスク)
  • task_duration

注: タスクの name フィールドは無視されます。タスク フィールドはすべて設定しないでください。設定するとエラーが返されます。

DeliveryRequestHeader

RequestHeader には、すべての Delivery RPC リクエストに共通のフィールドが含まれます。

フィールド
language_code

string

en-US や sr-Latn などの BCP-47 言語コード。詳しくは、http://www.unicode.org/reports/tr35/#Unicode_locale_identifier を参照してください。名前を指定しない場合は、任意の言語のレスポンスを返すことができます。言語の名前が英語の場合はこの値が優先されます。フィールド値の例: en-US

region_code

string

必須。リクエスト送信元のリージョンの CLDR リージョン コード。フィールド値の例: US

sdk_version

string

呼び出し元 SDK のバージョン(該当する場合)。バージョンの形式は「major.minor.patch」です(例: 1.1.2)。

os_version

string

呼び出し元 SDK が実行されているオペレーティング システムのバージョン。フィールド値の例: 4.4.112.1

device_model

string

呼び出し元 SDK が実行されているデバイスのモデル。フィールド値の例: iPhone12,1SM-G920F

sdk_type

SdkType

リクエストを送信する SDK のタイプ。

maps_sdk_version

string

呼び出し元 SDK が依存する MapSDK のバージョン(該当する場合)。バージョンの形式は「major.minor.patch」です(例: 5.2.1)。

nav_sdk_version

string

呼び出し元 SDK が依存する NavSDK のバージョン(該当する場合)。バージョンの形式は「major.minor.patch」です(例: 2.1.0)。

platform

Platform

呼び出し元 SDK のプラットフォーム。

manufacturer

string

呼び出し元 SDK の Android デバイスのメーカー。Android SDK にのみ適用されます。フィールド値の例: Samsung

android_api_level

int32

呼び出し元 SDK の Android API レベル(Android SDK のみ該当)。フィールド値の例: 23

プラットフォーム

呼び出し元 SDK のプラットフォーム。

列挙型
PLATFORM_UNSPECIFIED デフォルト値。プラットフォームが省略されている場合、この値が使用されます。
ANDROID Android から送信されたリクエストであること。
IOS iOS から送信されたリクエストであること。
WEB リクエストがウェブから来ています。

SDK タイプ

考えられる SDK のタイプ。

列挙型
SDK_TYPE_UNSPECIFIED デフォルト値。この値は、sdk_type が省略されている場合に使用されます。
CONSUMER 呼び出し元 SDK がコンシューマ。
DRIVER 呼び出し元 SDK はドライバです。
JAVASCRIPT 呼び出し元 SDK は JavaScript です。

配送車両

DeliveryVehicle メッセージ。配送車両は、デポから配送場所へ、および受け取り場所からデポへ配送します。場合によっては、単に受け取り場所から配達場所へ配送する車両もあります。

注: gRPC API と REST API では異なるフィールド命名規則を使用します。たとえば、gRPC API の DeliveryVehicle.current_route_segment フィールドと REST API の DeliveryVehicle.currentRouteSegment フィールドは同じフィールドを参照します。

フィールド
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 か、current_route_segment の最後の LatLng のいずれかです。その後、Fleet Engine が実際の VehicleStop への補間を行います。

current_route_segment フィールドが空の場合、UpdateDeliveryVehicle 呼び出しでこのフィールドは無視されます。

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)で返されます。

current_route_segment フィールドが空の場合、UpdateDeliveryVehicle 呼び出しでこのフィールドは無視されます。

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)で返されます。

current_route_segment フィールドが空の場合、UpdateDeliveryVehicle 呼び出しでこのフィールドは無視されます。

remaining_vehicle_journey_segments[]

VehicleJourneySegment

この配達車両に割り当てられた経路セグメント。車両が最後に報告された場所から順に並べられます。このフィールドは、ListDeliveryVehicles のレスポンスに入力されません。

attributes[]

DeliveryVehicleAttribute

カスタム配信車両属性のリスト。配送車両の属性の数は最大 50 個で、各属性には一意のキーが必要です。

DeliveryVehicleAttribute

車両属性を Key-Value ペアとして記述します。「key:value」文字列の長さは 256 文字以内にしてください。

フィールド
key

string

属性のキー。キーにコロン(:)を含めることはできません。

value

string

属性の値。

DeliveryVehicleLocation

特定の時点の車両の位置情報、速度、方位。

フィールド
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

車両の速度(km/時)。非推奨: 代わりに 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 を使用してください。

DeliveryVehicleLocationSensor

場所を特定する際に使うセンサーまたは手法です。

列挙型
UNKNOWN_SENSOR センサーが指定されていないか不明である。
GPS GPS またはアシスト GPS です。
NETWORK アシスト GPS、基地局 ID、Wi-Fi アクセス ポイント。
PASSIVE 基地局 ID または Wi-Fi のアクセス ポイント。
ROAD_SNAPPED_LOCATION_PROVIDER 最適な信号位置にスナップされた位置情報信号。
FUSED_LOCATION_PROVIDER Google Play 開発者サービスの融合された位置予測プロバイダ。
CORE_LOCATION Apple オペレーティング システム上の位置情報プロバイダ。

DeliveryVehicleNavigationStatus

車両のナビゲーション ステータス。

列挙型
UNKNOWN_NAVIGATION_STATUS 不明なナビゲーション ステータスです。
NO_GUIDANCE ドライバー アプリのナビゲーションが FREE_NAV モードになっています。
ENROUTE_TO_DESTINATION ターンバイターン方式のナビが利用可能で、ドライバー アプリのナビゲーションが GUIDED_NAV モードになっています。
OFF_ROUTE 車が推奨ルートから外れました。
ARRIVED_AT_DESTINATION 車両が目的地から約 50 m 以内にある。

GetDeliveryVehicleRequest

GetDeliveryVehicle リクエスト メッセージ。次の ID: 4

フィールド
header

DeliveryRequestHeader

(省略可)標準の Delivery API リクエスト ヘッダー。

name

string

必須。providers/{provider}/deliveryVehicles/{delivery_vehicle} の形式にする必要があります。provider は、Google Cloud プロジェクト ID である必要があります。例: sample-cloud-project

GetTaskRequest

GetTask リクエスト メッセージ。

フィールド
header

DeliveryRequestHeader

(省略可)標準の Delivery API リクエスト ヘッダー。

name

string

必須。providers/{provider}/tasks/{task} の形式にする必要があります。provider は、Google Cloud プロジェクト ID である必要があります。例: sample-cloud-project

GetTaskTrackingInfoRequest

GetTaskTrackingInfoRequest リクエスト メッセージ。

フィールド
header

DeliveryRequestHeader

(省略可)標準の Delivery API リクエスト ヘッダー。

name

string

必須。providers/{provider}/taskTrackingInfo/{tracking_id} の形式にする必要があります。provider は Google Cloud プロジェクト ID、tracking_id はタスクに関連付けられているトラッキング ID である必要があります。名前の例: providers/sample-cloud-project/taskTrackingInfo/sample-tracking-id

ListDeliveryVehiclesRequest

ListDeliveryVehicles リクエスト メッセージ。

フィールド
header

DeliveryRequestHeader

(省略可)標準の Delivery API リクエスト ヘッダー。

parent

string

必須。providers/{provider} の形式にする必要があります。provider は、Google Cloud プロジェクト ID である必要があります。例: 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")。

1 つのフィルタクエリで指定可能な制限は最大 50 個です。制限は attribute.<KEY> <COMPARATOR> <VALUE> 形式のクエリの一部です。たとえば、attributes.foo = bar は 1 つの制限です。

viewport

Viewport

(省略可)返される車両を、最後の位置情報がビューポートで定義された矩形領域にあるものに限定するフィルタ。

ListDeliveryVehiclesResponse

ListDeliveryVehicles レスポンス メッセージ。

フィールド
delivery_vehicles[]

DeliveryVehicle

指定されたフィルタ条件を満たす配送車両のセット。フィルタが指定されていない場合、リクエストはすべての配信車両を返します。成功した場合のレスポンスは空でもかまいません。空のレスポンスは、リクエストされたフィルタ条件に一致する配送車両が見つからなかったことを示しています。

next_page_token

string

このトークンを ListDeliveryVehiclesRequest で渡して、引き続き結果を一覧表示できます。すべての結果が返される場合、このフィールドはレスポンスに含まれないか、空の文字列になります。

total_size

int64

すべてのページで、リクエスト基準に合致する配達車両の総数です。

ListTasksRequest

ListTasks リクエスト メッセージ。

フィールド
header

DeliveryRequestHeader

(省略可)標準の Delivery API リクエスト ヘッダー。

parent

string

必須。providers/{provider} の形式にする必要があります。provider は、Google Cloud プロジェクト ID である必要があります。例: sample-cloud-project

page_size

int32

(省略可)返される Task の最大数。サービスはこの値より少ない値を返すことがあります。この値が指定されていない場合、サーバーは返される結果の数を決定します。

page_token

string

(省略可)前回の ListTasks 呼び出しから受け取ったページトークン。次のページを取得するために指定できます。

ページ分割を行う場合、ListTasks に指定する他のすべてのパラメータは、ページトークンを提供した呼び出しと一致する必要があります。

filter

string

(省略可)タスクを一覧表示するときに適用するフィルタクエリ。フィルタ構文の例については、http://aip.dev/160 をご覧ください。値を指定しない場合、または空の文字列でフィルタした場合、すべての ToDo リストが返されます。フィルタを適用できるタスク プロパティについては、タスクリストをご覧ください。

ListTasksResponse

ListTasksRequest のフィルタ条件を満たす一連のタスクを含む ListTasks レスポンス。

フィールド
tasks[]

Task

要求されたフィルタリング条件を満たす一連のタスク。フィルタが指定されていない場合、リクエストはすべてのタスクを返します。成功した場合のレスポンスは空でもかまいません。空のレスポンスは、リクエストされたフィルタ条件に一致するタスクが見つからなかったことを示しています。

next_page_token

string

結果のリストを引き続き表示するには、このトークンを ListTasksRequest に渡します。すべての結果が返された場合、このフィールドは空の文字列か、レスポンスに含まれません。

total_size

int64

すべてのページの、リクエスト条件に一致するタスクの合計数。

LocationInfo

追加の識別子を持つ場所。

フィールド
point

LatLng

場所の座標。

SearchTasksRequest

tracking_id を含む SearchTasks リクエスト メッセージ。

フィールド
header

DeliveryRequestHeader

(省略可)標準の Delivery API リクエスト ヘッダー。

parent

string

必須。providers/{provider} の形式にする必要があります。プロバイダは Google Cloud プロジェクト ID である必要があります。例: sample-cloud-project

tracking_id

string

必須。リクエストする一連の関連タスクの ID。トラッキング ID には次の制限があります。

  • 有効な Unicode 文字列を指定する必要があります。
  • 最大 64 文字です。
  • Unicode Normalization Form C に従って正規化します。
  • ASCII 文字(/、':'、'?'、','、'#')は含めないでください。
page_size

int32

(省略可)返される Task の最大数。サービスはこの値より少ない値を返すことがあります。この値が指定されていない場合、サーバーは返される結果の数を決定します。

page_token

string

(省略可)前回の SearchTasks 呼び出しから受け取ったページトークン。後続のページを取得するには、この値を指定する必要があります。

ページ分割を行う場合、SearchTasks に指定する他のすべてのパラメータは、ページトークンを提供した呼び出しと一致する必要があります。

SearchTasksResponse

SearchTasks レスポンス。SearchTasksRequest の検索条件を満たす一連のタスクが含まれています。

フィールド
tasks[]

Task

リクエストされた tracking_id のタスクのセット。成功した場合のレスポンスは空でもかまいません。空のレスポンスは、指定された tracking_id にタスクが関連付けられていないことを示します。

next_page_token

string

結果のリストを引き続き表示するには、このトークンを SearchTasksRequest に渡します。すべての結果が返された場合、このフィールドは空の文字列か、レスポンスに含まれません。

タスク

Delivery API のタスクは、トラッキングする単一のアクションを表します。一般的に、配送関連のタスクと障害のあるタスクは区別されます。1 つの配送に複数のタスクを関連付けることができます。たとえば、集荷のためのタスクと、降車または乗り換えのための 1 つのタスクがあるとします。また、出荷ごとに異なるタスクがさまざまな車両で処理される場合があります。たとえば、ある車両が集荷を処理し、ハブへの配送は別の車両によって処理され、別の車両はハブから降車場所まで同じ方法で運転されます。

注: gRPC API と REST API では異なるフィールド命名規則を使用します。たとえば、gRPC API の Task.journey_sharing_info フィールドと REST API の DeliveryVehicle.journeySharingInfo フィールドは同じフィールドを参照します。

フィールド
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

不変。このフィールドにより ID の保存が容易になるため、複雑なマッピングの使用を回避できます。UNAVAILABLE タイプと SCHEDULED_STOP タイプのタスクに tracking_id を設定することはできません。これらの ID には次の制限があります。

  • 有効な Unicode 文字列を指定する必要があります。
  • 最大 64 文字です。
  • Unicode Normalization Form C に従って正規化します。
  • ASCII 文字(/、':'、'?'、','、'#')は含めないでください。
delivery_vehicle_id

string

出力のみ。このタスクを実行する車両の ID。車両の ID には次の制限があります。

  • 有効な Unicode 文字列を指定する必要があります。
  • 最大 64 文字です。
  • Unicode Normalization Form C に従って正規化します。
  • ASCII 文字(/、':'、'?'、','、'#')は含めないでください。
planned_location

LocationInfo

不変。タスクが完了した場所。UNAVAILABLE タスクでは任意ですが、他のすべてのタスクでは必須です。

task_duration

Duration

必須。不変。この場所でのタスクの実行に必要な時間。

target_time_window

TimeWindow

タスクが完了するまでの時間枠。

journey_sharing_info

JourneySharingInfo

出力のみ。移動専用のフィールドステータスが CLOSED の場合は入力されません。

JourneySharingInfo

特定のフィールドを共有するジャーニー

フィールド
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 にスナップできるかどうかを示します。last_location または current_route_segment が存在しない場合、この値は False です。この値は、Fleet Engine によって計算されます。クライアントからの更新は無視されます。

State

タスクの状態。タスクの進捗状況を示します。

列挙型
STATE_UNSPECIFIED デフォルト。未指定または認識できないタスクの状態に使用されます。
OPEN タスクが配送車両にまだ割り当てられていないか、タスクの割り当て先車両の停止地点にまだ届いていません。
CLOSED このタスクの車両停止地点を車両が通過したとき。

タスクの結果

タスクを実行しようとした結果。TaskState が閉じている場合、TaskOutcome は処理が正常に完了しているかどうかを示します。

列挙型
TASK_OUTCOME_UNSPECIFIED 値を設定する前のタスクの結果。
SUCCEEDED タスクが正常に完了しました。
FAILED タスクを完了できなかったか、キャンセルされました。

TaskOutcomeLocationSource

task_outcome_location に入力されたソースの ID。

列挙型
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 メッセージ。このメッセージには、表示に使用されるタスク追跡情報が含まれています。トラッキング ID が複数のタスクに関連付けられている場合、Fleet Engine はヒューリスティックを使用して、選択する Task の TaskTrackingInfo を決定します。

フィールド
name

string

providers/{provider}/taskTrackingInfo/{tracking} の形式で入力してください。ここで、tracking はトラッキング ID を表します。

tracking_id

string

不変。タスクのトラッキング ID。* 有効な 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

タスクが完了するまでの時間枠。

TimeWindow

期間。

フィールド
start_time

Timestamp

必須。期間の開始時刻(指定時間を含む)。

end_time

Timestamp

必須。期間の終了日時(指定した時間を含む)。

UpdateDeliveryVehicleRequest

UpdateDeliveryVehicle リクエスト メッセージ。

フィールド
header

DeliveryRequestHeader

(省略可)標準の Delivery API リクエスト ヘッダー。

delivery_vehicle

DeliveryVehicle

必須。適用する DeliveryVehicle エンティティの更新。注: DeliveryVehicle の名前を更新することはできません。

update_mask

FieldMask

必須。更新する DeliveryVehicle フィールドを示すフィールド マスク。update_mask には少なくとも 1 つのフィールドを含める必要があります。

これは、完全修飾されたフィールド名のカンマ区切りリストです。(例: "remaining_vehicle_journey_segments")。

UpdateTaskRequest

UpdateTask リクエスト メッセージ。

フィールド
header

DeliveryRequestHeader

(省略可)標準の Delivery 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 を使用してタスクの状態を CLOSED に設定しないでください。代わりに、タスクを含む VehicleStop を配送車両から削除します。これにより、タスクの状態が自動的に CLOSED に設定されます。

update_mask

FieldMask

必須。更新するタスク フィールドを示すフィールド マスク。注: update_mask には少なくとも 1 つのフィールドを含める必要があります。

これは、完全修飾されたフィールド名のカンマ区切りリストです。(例: "task_outcome,task_outcome_time,task_outcome_location")。

車両の進路

車両の移動セグメント(前の停車地から現在の停車地まで)を表します。最初のアクティブな停車地の場合は、車両の現在地からこの停車地までです。

フィールド
stop

VehicleStop

停車地の場所と、停車地に関連付けられたタスクを指定します。このジャーニー セグメントが JourneySharingInfo の一部である場合、VehicleStop の一部のフィールドが存在しない場合があります。

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(REST)の値が入力されることがあります。これにより、前の停車地の運転時間ではなく、ドライバー アプリで最後に確認された場所からの残りの運転時間が提供されます。

path[]

LatLng

出力のみ。前の停車地からこの停車地へのパス。現在の駅 / 停留所が旅程セグメントの始点となる停車地である場合は、その停留所がリストに追加されたときの車両の現在地からこの停車地への経路です。このジャーニー セグメントが JourneySharingInfo の一部である場合、このフィールドは存在しない可能性があります。

このフィールドがパスTask.journey_sharing_info.remaining_vehicle_journey_segments[0].path(gRPC)またはTask.journeySharingInfo.remainingVehicleJourneySegments[0].path(REST)で定義されている場合、DeliveryVehicle.current_route_segment(gRPC)またはDeliveryVehicle.currentRouteSegment(REST)からデコードされた LatLngs で値が入力されます。これにより、前の停留所のパスではなく、ドライバー アプリの最新の既知の場所からの運転ルートが提供されます。

車両停止

車両が 1 つまたは複数のタスクを停止するための地点を表します。

フィールド
planned_location

LocationInfo

必須。停車地の場所。ToDo リストの位置情報は、ここと完全には一致しない場合がありますが、近距離になります。このフィールドは、GetTask または SearchTasks 呼び出しのレスポンスで入力されません。

tasks[]

TaskInfo

この停車地で実行されるタスクのリスト。このフィールドは、GetTask または SearchTasks 呼び出しのレスポンスで入力されません。

state

State

VehicleStop の状態。このフィールドは、GetTask または SearchTasks 呼び出しのレスポンスで入力されません。

State

VehicleStop の現在の状態。

列挙型
STATE_UNSPECIFIED 不明。
NEW 作成されたが、アクティブなルーティングではない。
ENROUTE 割り当て済みで、積極的にルーティングしている。
ARRIVED 停留所に到着しました。車両が次の停車地に移動しているときは、前の停車地がすべて完了していると想定します。

タスク情報

この停車地で実行されたタスクに関する追加情報。

フィールド
task_id

string

タスク ID。このフィールドは、GetTask または SearchTasks 呼び出しのレスポンスで入力されません。タスク ID には次の制限があります。

  • 有効な Unicode 文字列を指定する必要があります。
  • 最大 64 文字です。
  • Unicode Normalization Form C に従って正規化します。
  • ASCII 文字(/、':'、'?'、','、'#')は含めないでください。
task_duration

Duration

出力のみ。タスクの実行に必要な時間。