google-maps-fleet_engine-delivery-v1 0.a → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +144 -8
  5. data/lib/google/maps/fleet_engine/delivery/v1/delivery_service/client.rb +1505 -0
  6. data/lib/google/maps/fleet_engine/delivery/v1/delivery_service/credentials.rb +49 -0
  7. data/lib/google/maps/fleet_engine/delivery/v1/delivery_service/paths.rb +100 -0
  8. data/lib/google/maps/fleet_engine/delivery/v1/delivery_service/rest/client.rb +1399 -0
  9. data/lib/google/maps/fleet_engine/delivery/v1/delivery_service/rest/service_stub.rb +666 -0
  10. data/lib/google/maps/fleet_engine/delivery/v1/delivery_service/rest.rb +54 -0
  11. data/lib/google/maps/fleet_engine/delivery/v1/delivery_service.rb +57 -0
  12. data/lib/google/maps/fleet_engine/delivery/v1/rest.rb +39 -0
  13. data/lib/google/maps/fleet_engine/delivery/v1/version.rb +8 -3
  14. data/lib/google/maps/fleet_engine/delivery/v1.rb +47 -0
  15. data/lib/google/maps/fleetengine/delivery/v1/common_pb.rb +57 -0
  16. data/lib/google/maps/fleetengine/delivery/v1/delivery_api_pb.rb +73 -0
  17. data/lib/google/maps/fleetengine/delivery/v1/delivery_api_services_pb.rb +71 -0
  18. data/lib/google/maps/fleetengine/delivery/v1/delivery_vehicles_pb.rb +61 -0
  19. data/lib/google/maps/fleetengine/delivery/v1/header_pb.rb +48 -0
  20. data/lib/google/maps/fleetengine/delivery/v1/task_tracking_info_pb.rb +58 -0
  21. data/lib/google/maps/fleetengine/delivery/v1/tasks_pb.rb +62 -0
  22. data/lib/google-maps-fleet_engine-delivery-v1.rb +21 -0
  23. data/proto_docs/README.md +4 -0
  24. data/proto_docs/google/api/client.rb +399 -0
  25. data/proto_docs/google/api/field_behavior.rb +85 -0
  26. data/proto_docs/google/api/launch_stage.rb +71 -0
  27. data/proto_docs/google/api/resource.rb +222 -0
  28. data/proto_docs/google/api/routing.rb +459 -0
  29. data/proto_docs/google/geo/type/viewport.rb +70 -0
  30. data/proto_docs/google/maps/fleetengine/delivery/v1/common.rb +251 -0
  31. data/proto_docs/google/maps/fleetengine/delivery/v1/delivery_api.rb +359 -0
  32. data/proto_docs/google/maps/fleetengine/delivery/v1/delivery_vehicles.rb +269 -0
  33. data/proto_docs/google/maps/fleetengine/delivery/v1/header.rb +113 -0
  34. data/proto_docs/google/maps/fleetengine/delivery/v1/task_tracking_info.rb +91 -0
  35. data/proto_docs/google/maps/fleetengine/delivery/v1/tasks.rb +281 -0
  36. data/proto_docs/google/protobuf/duration.rb +98 -0
  37. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  38. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  39. data/proto_docs/google/protobuf/wrappers.rb +121 -0
  40. data/proto_docs/google/type/latlng.rb +38 -0
  41. metadata +109 -13
@@ -0,0 +1,70 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Geo
22
+ module Type
23
+ # A latitude-longitude viewport, represented as two diagonally opposite `low`
24
+ # and `high` points. A viewport is considered a closed region, i.e. it includes
25
+ # its boundary. The latitude bounds must range between -90 to 90 degrees
26
+ # inclusive, and the longitude bounds must range between -180 to 180 degrees
27
+ # inclusive. Various cases include:
28
+ #
29
+ # - If `low` = `high`, the viewport consists of that single point.
30
+ #
31
+ # - If `low.longitude` > `high.longitude`, the longitude range is inverted
32
+ # (the viewport crosses the 180 degree longitude line).
33
+ #
34
+ # - If `low.longitude` = -180 degrees and `high.longitude` = 180 degrees,
35
+ # the viewport includes all longitudes.
36
+ #
37
+ # - If `low.longitude` = 180 degrees and `high.longitude` = -180 degrees,
38
+ # the longitude range is empty.
39
+ #
40
+ # - If `low.latitude` > `high.latitude`, the latitude range is empty.
41
+ #
42
+ # Both `low` and `high` must be populated, and the represented box cannot be
43
+ # empty (as specified by the definitions above). An empty viewport will result
44
+ # in an error.
45
+ #
46
+ # For example, this viewport fully encloses New York City:
47
+ #
48
+ # {
49
+ # "low": {
50
+ # "latitude": 40.477398,
51
+ # "longitude": -74.259087
52
+ # },
53
+ # "high": {
54
+ # "latitude": 40.91618,
55
+ # "longitude": -73.70018
56
+ # }
57
+ # }
58
+ # @!attribute [rw] low
59
+ # @return [::Google::Type::LatLng]
60
+ # Required. The low point of the viewport.
61
+ # @!attribute [rw] high
62
+ # @return [::Google::Type::LatLng]
63
+ # Required. The high point of the viewport.
64
+ class Viewport
65
+ include ::Google::Protobuf::MessageExts
66
+ extend ::Google::Protobuf::MessageExts::ClassMethods
67
+ end
68
+ end
69
+ end
70
+ end
@@ -0,0 +1,251 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Maps
22
+ module FleetEngine
23
+ module Delivery
24
+ module V1
25
+ # Describes a vehicle attribute as a key-value pair. The "key:value" string
26
+ # length cannot exceed 256 characters.
27
+ # @!attribute [rw] key
28
+ # @return [::String]
29
+ # The attribute's key.
30
+ # @!attribute [rw] value
31
+ # @return [::String]
32
+ # The attribute's value.
33
+ # @!attribute [rw] string_value
34
+ # @return [::String]
35
+ # String typed attribute value.
36
+ #
37
+ # Note: This is identical to the `value` field which will eventually be
38
+ # deprecated. For create or update methods, either field can be used, but
39
+ # it's strongly recommended to use `string_value`. If both `string_value`
40
+ # and `value` are set, they must be identical or an error will be thrown.
41
+ # Both fields are populated in responses.
42
+ # @!attribute [rw] bool_value
43
+ # @return [::Boolean]
44
+ # Boolean typed attribute value.
45
+ # @!attribute [rw] number_value
46
+ # @return [::Float]
47
+ # Double typed attribute value.
48
+ class DeliveryVehicleAttribute
49
+ include ::Google::Protobuf::MessageExts
50
+ extend ::Google::Protobuf::MessageExts::ClassMethods
51
+ end
52
+
53
+ # The location, speed, and heading of a vehicle at a point in time.
54
+ # @!attribute [rw] location
55
+ # @return [::Google::Type::LatLng]
56
+ # The location of the vehicle.
57
+ # When it is sent to Fleet Engine, the vehicle's location is a GPS location.
58
+ # When you receive it in a response, the vehicle's location can be either a
59
+ # GPS location, a supplemental location, or some other estimated location.
60
+ # The source is specified in `location_sensor`.
61
+ # @!attribute [rw] horizontal_accuracy
62
+ # @deprecated This field is deprecated and may be removed in the next major version update.
63
+ # @return [::Google::Protobuf::DoubleValue]
64
+ # Deprecated: Use `latlng_accuracy` instead.
65
+ # @!attribute [rw] latlng_accuracy
66
+ # @return [::Google::Protobuf::DoubleValue]
67
+ # Accuracy of `location` in meters as a radius.
68
+ # @!attribute [rw] heading
69
+ # @return [::Google::Protobuf::Int32Value]
70
+ # Direction the vehicle is moving in degrees. 0 represents North.
71
+ # The valid range is [0,360).
72
+ # @!attribute [rw] bearing_accuracy
73
+ # @deprecated This field is deprecated and may be removed in the next major version update.
74
+ # @return [::Google::Protobuf::DoubleValue]
75
+ # Deprecated: Use `heading_accuracy` instead.
76
+ # @!attribute [rw] heading_accuracy
77
+ # @return [::Google::Protobuf::DoubleValue]
78
+ # Accuracy of `heading` in degrees.
79
+ # @!attribute [rw] altitude
80
+ # @return [::Google::Protobuf::DoubleValue]
81
+ # Altitude in meters above WGS84.
82
+ # @!attribute [rw] vertical_accuracy
83
+ # @deprecated This field is deprecated and may be removed in the next major version update.
84
+ # @return [::Google::Protobuf::DoubleValue]
85
+ # Deprecated: Use `altitude_accuracy` instead.
86
+ # @!attribute [rw] altitude_accuracy
87
+ # @return [::Google::Protobuf::DoubleValue]
88
+ # Accuracy of `altitude` in meters.
89
+ # @!attribute [rw] speed_kmph
90
+ # @deprecated This field is deprecated and may be removed in the next major version update.
91
+ # @return [::Google::Protobuf::Int32Value]
92
+ # Speed of the vehicle in kilometers per hour.
93
+ # Deprecated: Use `speed` instead.
94
+ # @!attribute [rw] speed
95
+ # @return [::Google::Protobuf::DoubleValue]
96
+ # Speed of the vehicle in meters/second
97
+ # @!attribute [rw] speed_accuracy
98
+ # @return [::Google::Protobuf::DoubleValue]
99
+ # Accuracy of `speed` in meters/second.
100
+ # @!attribute [rw] update_time
101
+ # @return [::Google::Protobuf::Timestamp]
102
+ # The time when `location` was reported by the sensor according to the
103
+ # sensor's clock.
104
+ # @!attribute [r] server_time
105
+ # @return [::Google::Protobuf::Timestamp]
106
+ # Output only. The time when the server received the location information.
107
+ # @!attribute [rw] location_sensor
108
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryVehicleLocationSensor]
109
+ # Provider of location data (for example, `GPS`).
110
+ # @!attribute [rw] is_road_snapped
111
+ # @return [::Google::Protobuf::BoolValue]
112
+ # Whether `location` is snapped to a road.
113
+ # @!attribute [rw] is_gps_sensor_enabled
114
+ # @return [::Google::Protobuf::BoolValue]
115
+ # Input only. Indicates whether the GPS sensor is enabled on the mobile
116
+ # device.
117
+ # @!attribute [rw] time_since_update
118
+ # @return [::Google::Protobuf::Int32Value]
119
+ # Input only. Time (in seconds) since this location was first sent to the
120
+ # server. This will be zero for the first update. If the time is unknown (for
121
+ # example, when the app restarts), this value resets to zero.
122
+ # @!attribute [rw] num_stale_updates
123
+ # @deprecated This field is deprecated and may be removed in the next major version update.
124
+ # @return [::Google::Protobuf::Int32Value]
125
+ # Input only. Deprecated: Other signals are now used to determine if a
126
+ # location is stale.
127
+ # @!attribute [rw] raw_location
128
+ # @return [::Google::Type::LatLng]
129
+ # Raw vehicle location (unprocessed by road-snapper).
130
+ # @!attribute [rw] raw_location_time
131
+ # @return [::Google::Protobuf::Timestamp]
132
+ # Timestamp associated with the raw location.
133
+ # @!attribute [rw] raw_location_sensor
134
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryVehicleLocationSensor]
135
+ # Source of the raw location. Defaults to `GPS`.
136
+ # @!attribute [rw] raw_location_accuracy
137
+ # @return [::Google::Protobuf::DoubleValue]
138
+ # Accuracy of `raw_location` as a radius, in meters.
139
+ # @!attribute [rw] supplemental_location
140
+ # @return [::Google::Type::LatLng]
141
+ # Supplemental location provided by the integrating app.
142
+ # @!attribute [rw] supplemental_location_time
143
+ # @return [::Google::Protobuf::Timestamp]
144
+ # Timestamp associated with the supplemental location.
145
+ # @!attribute [rw] supplemental_location_sensor
146
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryVehicleLocationSensor]
147
+ # Source of the supplemental location. Defaults to
148
+ # `CUSTOMER_SUPPLIED_LOCATION`.
149
+ # @!attribute [rw] supplemental_location_accuracy
150
+ # @return [::Google::Protobuf::DoubleValue]
151
+ # Accuracy of `supplemental_location` as a radius, in meters.
152
+ # @!attribute [rw] road_snapped
153
+ # @deprecated This field is deprecated and may be removed in the next major version update.
154
+ # @return [::Boolean]
155
+ # Deprecated: Use `is_road_snapped` instead.
156
+ class DeliveryVehicleLocation
157
+ include ::Google::Protobuf::MessageExts
158
+ extend ::Google::Protobuf::MessageExts::ClassMethods
159
+ end
160
+
161
+ # A time range.
162
+ # @!attribute [rw] start_time
163
+ # @return [::Google::Protobuf::Timestamp]
164
+ # Required. The start time of the time window (inclusive).
165
+ # @!attribute [rw] end_time
166
+ # @return [::Google::Protobuf::Timestamp]
167
+ # Required. The end time of the time window (inclusive).
168
+ class TimeWindow
169
+ include ::Google::Protobuf::MessageExts
170
+ extend ::Google::Protobuf::MessageExts::ClassMethods
171
+ end
172
+
173
+ # Describes a task attribute as a key-value pair. The "key:value" string length
174
+ # cannot exceed 256 characters.
175
+ # @!attribute [rw] key
176
+ # @return [::String]
177
+ # The attribute's key. Keys may not contain the colon character (:).
178
+ # @!attribute [rw] string_value
179
+ # @return [::String]
180
+ # String typed attribute value.
181
+ # @!attribute [rw] bool_value
182
+ # @return [::Boolean]
183
+ # Boolean typed attribute value.
184
+ # @!attribute [rw] number_value
185
+ # @return [::Float]
186
+ # Double typed attribute value.
187
+ class TaskAttribute
188
+ include ::Google::Protobuf::MessageExts
189
+ extend ::Google::Protobuf::MessageExts::ClassMethods
190
+ end
191
+
192
+ # The sensor or methodology used to determine the location.
193
+ module DeliveryVehicleLocationSensor
194
+ # The sensor is unspecified or unknown.
195
+ UNKNOWN_SENSOR = 0
196
+
197
+ # GPS or Assisted GPS.
198
+ GPS = 1
199
+
200
+ # Assisted GPS, cell tower ID, or WiFi access point.
201
+ NETWORK = 2
202
+
203
+ # Cell tower ID or WiFi access point.
204
+ PASSIVE = 3
205
+
206
+ # A location determined by the mobile device to be the most likely
207
+ # road position.
208
+ ROAD_SNAPPED_LOCATION_PROVIDER = 4
209
+
210
+ # A customer-supplied location from an independent source. Typically, this
211
+ # value is used for a location provided from sources other than the mobile
212
+ # device running Driver SDK. If the original source is described by one of
213
+ # the other enum values, use that value. Locations marked
214
+ # CUSTOMER_SUPPLIED_LOCATION are typically provided via a DeliveryVehicle's
215
+ # `last_location.supplemental_location_sensor`.
216
+ CUSTOMER_SUPPLIED_LOCATION = 5
217
+
218
+ # A location calculated by Fleet Engine based on the signals available to it.
219
+ # Output only. This value will be rejected if it is received in a request.
220
+ FLEET_ENGINE_LOCATION = 6
221
+
222
+ # Android's Fused Location Provider.
223
+ FUSED_LOCATION_PROVIDER = 100
224
+
225
+ # The location provider on Apple operating systems.
226
+ CORE_LOCATION = 200
227
+ end
228
+
229
+ # The vehicle's navigation status.
230
+ module DeliveryVehicleNavigationStatus
231
+ # Unspecified navigation status.
232
+ UNKNOWN_NAVIGATION_STATUS = 0
233
+
234
+ # The Driver app's navigation is in `FREE_NAV` mode.
235
+ NO_GUIDANCE = 1
236
+
237
+ # Turn-by-turn navigation is available and the Driver app navigation has
238
+ # entered `GUIDED_NAV` mode.
239
+ ENROUTE_TO_DESTINATION = 2
240
+
241
+ # The vehicle has gone off the suggested route.
242
+ OFF_ROUTE = 3
243
+
244
+ # The vehicle is within approximately 50m of the destination.
245
+ ARRIVED_AT_DESTINATION = 4
246
+ end
247
+ end
248
+ end
249
+ end
250
+ end
251
+ end
@@ -0,0 +1,359 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Maps
22
+ module FleetEngine
23
+ module Delivery
24
+ module V1
25
+ # The `CreateDeliveryVehicle` request message.
26
+ # @!attribute [rw] header
27
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryRequestHeader]
28
+ # Optional. The standard Delivery API request header.
29
+ # @!attribute [rw] parent
30
+ # @return [::String]
31
+ # Required. Must be in the format `providers/{provider}`. The provider must
32
+ # be the Google Cloud Project ID. For example, `sample-cloud-project`.
33
+ # @!attribute [rw] delivery_vehicle_id
34
+ # @return [::String]
35
+ # Required. The Delivery Vehicle ID must be unique and subject to the
36
+ # following restrictions:
37
+ #
38
+ # * Must be a valid Unicode string.
39
+ # * Limited to a maximum length of 64 characters.
40
+ # * Normalized according to [Unicode Normalization Form C]
41
+ # (http://www.unicode.org/reports/tr15/).
42
+ # * May not contain any of the following ASCII characters: '/', ':', '?',
43
+ # ',', or '#'.
44
+ # @!attribute [rw] delivery_vehicle
45
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryVehicle]
46
+ # Required. The `DeliveryVehicle` entity to create. When creating a new
47
+ # delivery vehicle, you may set the following optional fields:
48
+ #
49
+ # * last_location
50
+ # * attributes
51
+ #
52
+ # Note: The DeliveryVehicle's `name` field is ignored. All other
53
+ # DeliveryVehicle fields must not be set; otherwise, an error is returned.
54
+ class CreateDeliveryVehicleRequest
55
+ include ::Google::Protobuf::MessageExts
56
+ extend ::Google::Protobuf::MessageExts::ClassMethods
57
+ end
58
+
59
+ # The `GetDeliveryVehicle` request message.
60
+ # @!attribute [rw] header
61
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryRequestHeader]
62
+ # Optional. The standard Delivery API request header.
63
+ # @!attribute [rw] name
64
+ # @return [::String]
65
+ # Required. Must be in the format
66
+ # `providers/{provider}/deliveryVehicles/{delivery_vehicle}`.
67
+ # The `provider` must be the Google Cloud Project ID. For example,
68
+ # `sample-cloud-project`.
69
+ class GetDeliveryVehicleRequest
70
+ include ::Google::Protobuf::MessageExts
71
+ extend ::Google::Protobuf::MessageExts::ClassMethods
72
+ end
73
+
74
+ # The `ListDeliveryVehicles` request message.
75
+ # @!attribute [rw] header
76
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryRequestHeader]
77
+ # Optional. The standard Delivery API request header.
78
+ # @!attribute [rw] parent
79
+ # @return [::String]
80
+ # Required. Must be in the format `providers/{provider}`.
81
+ # The `provider` must be the Google Cloud Project ID.
82
+ # For example, `sample-cloud-project`.
83
+ # @!attribute [rw] page_size
84
+ # @return [::Integer]
85
+ # Optional. The maximum number of vehicles to return. The service may return
86
+ # fewer than this number. If you don't specify this number, then the server
87
+ # determines the number of results to return.
88
+ # @!attribute [rw] page_token
89
+ # @return [::String]
90
+ # Optional. A page token, received from a previous `ListDeliveryVehicles`
91
+ # call. You must provide this in order to retrieve the subsequent page.
92
+ #
93
+ # When paginating, all other parameters provided to `ListDeliveryVehicles`
94
+ # must match the call that provided the page token.
95
+ # @!attribute [rw] filter
96
+ # @return [::String]
97
+ # Optional. A filter query to apply when listing delivery vehicles. See
98
+ # http://aip.dev/160 for examples of the filter syntax. If you don't specify
99
+ # a value, or if you specify an empty string for the filter, then all
100
+ # delivery vehicles are returned.
101
+ #
102
+ # Note that the only queries supported for `ListDeliveryVehicles` are
103
+ # on vehicle attributes (for example, `attributes.<key> = <value>` or
104
+ # `attributes.<key1> = <value1> AND attributes.<key2> = <value2>`). Also, all
105
+ # attributes are stored as strings, so the only supported comparisons against
106
+ # attributes are string comparisons. In order to compare against number or
107
+ # boolean values, the values must be explicitly quoted to be treated as
108
+ # strings (for example, `attributes.<key> = "10"` or
109
+ # `attributes.<key> = "true"`).
110
+ #
111
+ # The maximum number of restrictions allowed in a filter query is 50. A
112
+ # restriction is a part of the query of the form
113
+ # `attribute.<KEY> <COMPARATOR> <VALUE>`, for example `attributes.foo = bar`
114
+ # is 1 restriction.
115
+ # @!attribute [rw] viewport
116
+ # @return [::Google::Geo::Type::Viewport]
117
+ # Optional. A filter that limits the vehicles returned to those whose last
118
+ # known location was in the rectangular area defined by the viewport.
119
+ class ListDeliveryVehiclesRequest
120
+ include ::Google::Protobuf::MessageExts
121
+ extend ::Google::Protobuf::MessageExts::ClassMethods
122
+ end
123
+
124
+ # The `ListDeliveryVehicles` response message.
125
+ # @!attribute [rw] delivery_vehicles
126
+ # @return [::Array<::Google::Maps::FleetEngine::Delivery::V1::DeliveryVehicle>]
127
+ # The set of delivery vehicles that meet the requested filtering criteria.
128
+ # When no filter is specified, the request returns all delivery vehicles. A
129
+ # successful response can also be empty. An empty response indicates that no
130
+ # delivery vehicles were found meeting the requested filter criteria.
131
+ # @!attribute [rw] next_page_token
132
+ # @return [::String]
133
+ # You can pass this token in the `ListDeliveryVehiclesRequest` to continue to
134
+ # list results. When all of the results are returned, this field won't be in
135
+ # the response, or it will be an empty string.
136
+ # @!attribute [rw] total_size
137
+ # @return [::Integer]
138
+ # The total number of delivery vehicles that match the request criteria,
139
+ # across all pages.
140
+ class ListDeliveryVehiclesResponse
141
+ include ::Google::Protobuf::MessageExts
142
+ extend ::Google::Protobuf::MessageExts::ClassMethods
143
+ end
144
+
145
+ # The `UpdateDeliveryVehicle` request message.
146
+ # @!attribute [rw] header
147
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryRequestHeader]
148
+ # Optional. The standard Delivery API request header.
149
+ # @!attribute [rw] delivery_vehicle
150
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryVehicle]
151
+ # Required. The `DeliveryVehicle` entity update to apply.
152
+ # Note: You cannot update the name of the `DeliveryVehicle`.
153
+ # @!attribute [rw] update_mask
154
+ # @return [::Google::Protobuf::FieldMask]
155
+ # Required. A field mask that indicates which `DeliveryVehicle` fields to
156
+ # update. Note that the update_mask must contain at least one field.
157
+ #
158
+ # This is a comma-separated list of fully qualified names of fields. Example:
159
+ # `"remaining_vehicle_journey_segments"`.
160
+ class UpdateDeliveryVehicleRequest
161
+ include ::Google::Protobuf::MessageExts
162
+ extend ::Google::Protobuf::MessageExts::ClassMethods
163
+ end
164
+
165
+ # The `BatchCreateTask` request message.
166
+ # @!attribute [rw] header
167
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryRequestHeader]
168
+ # Optional. The standard Delivery API request header.
169
+ # Note: If you set this field, then the header field in the
170
+ # `CreateTaskRequest` messages must either be empty, or it must match this
171
+ # field.
172
+ # @!attribute [rw] parent
173
+ # @return [::String]
174
+ # Required. The parent resource shared by all tasks. This value must be in
175
+ # the format `providers/{provider}`. The `provider` must be the Google Cloud
176
+ # Project ID. For example, `sample-cloud-project`. The parent field in the
177
+ # `CreateTaskRequest` messages must either be empty, or it must match this
178
+ # field.
179
+ # @!attribute [rw] requests
180
+ # @return [::Array<::Google::Maps::FleetEngine::Delivery::V1::CreateTaskRequest>]
181
+ # Required. The request message that specifies the resources to create.
182
+ # Note: You can create a maximum of 500 tasks in a batch.
183
+ class BatchCreateTasksRequest
184
+ include ::Google::Protobuf::MessageExts
185
+ extend ::Google::Protobuf::MessageExts::ClassMethods
186
+ end
187
+
188
+ # The `BatchCreateTask` response message.
189
+ # @!attribute [rw] tasks
190
+ # @return [::Array<::Google::Maps::FleetEngine::Delivery::V1::Task>]
191
+ # The created Tasks.
192
+ class BatchCreateTasksResponse
193
+ include ::Google::Protobuf::MessageExts
194
+ extend ::Google::Protobuf::MessageExts::ClassMethods
195
+ end
196
+
197
+ # The `CreateTask` request message.
198
+ # @!attribute [rw] header
199
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryRequestHeader]
200
+ # Optional. The standard Delivery API request header.
201
+ # @!attribute [rw] parent
202
+ # @return [::String]
203
+ # Required. Must be in the format `providers/{provider}`. The `provider` must
204
+ # be the Google Cloud Project ID. For example, `sample-cloud-project`.
205
+ # @!attribute [rw] task_id
206
+ # @return [::String]
207
+ # Required. The Task ID must be unique, but it should be not a shipment
208
+ # tracking ID. To store a shipment tracking ID, use the `tracking_id` field.
209
+ # Note that multiple tasks can have the same `tracking_id`. Task IDs are
210
+ # subject to the following restrictions:
211
+ #
212
+ # * Must be a valid Unicode string.
213
+ # * Limited to a maximum length of 64 characters.
214
+ # * Normalized according to [Unicode Normalization Form C]
215
+ # (http://www.unicode.org/reports/tr15/).
216
+ # * May not contain any of the following ASCII characters: '/', ':', '?',
217
+ # ',', or '#'.
218
+ # @!attribute [rw] task
219
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::Task]
220
+ # Required. The Task entity to create.
221
+ # When creating a Task, the following fields are required:
222
+ #
223
+ # * `type`
224
+ # * `state` (must be set to `OPEN`)
225
+ # * `tracking_id` (must not be set for `UNAVAILABLE` or `SCHEDULED_STOP`
226
+ # tasks, but required for all other task types)
227
+ # * `planned_location` (optional for `UNAVAILABLE` tasks)
228
+ # * `task_duration`
229
+ #
230
+ # Note: The Task's `name` field is ignored. All other Task fields must not be
231
+ # set; otherwise, an error is returned.
232
+ class CreateTaskRequest
233
+ include ::Google::Protobuf::MessageExts
234
+ extend ::Google::Protobuf::MessageExts::ClassMethods
235
+ end
236
+
237
+ # The `GetTask` request message.
238
+ # @!attribute [rw] header
239
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryRequestHeader]
240
+ # Optional. The standard Delivery API request header.
241
+ # @!attribute [rw] name
242
+ # @return [::String]
243
+ # Required. Must be in the format `providers/{provider}/tasks/{task}`. The
244
+ # `provider` must be the Google Cloud Project ID. For example,
245
+ # `sample-cloud-project`.
246
+ class GetTaskRequest
247
+ include ::Google::Protobuf::MessageExts
248
+ extend ::Google::Protobuf::MessageExts::ClassMethods
249
+ end
250
+
251
+ # The `UpdateTask` request message.
252
+ # @!attribute [rw] header
253
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryRequestHeader]
254
+ # Optional. The standard Delivery API request header.
255
+ # @!attribute [rw] task
256
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::Task]
257
+ # Required. The Task associated with the update.
258
+ # The following fields are maintained by Fleet Engine. Do not update
259
+ # them using `Task.update`.
260
+ #
261
+ # * `last_location`.
262
+ # * `last_location_snappable`.
263
+ # * `name`.
264
+ # * `remaining_vehicle_journey_segments`.
265
+ # * `task_outcome_location_source`.
266
+ #
267
+ # Note: You cannot change the value of `task_outcome` once you set it.
268
+ #
269
+ # If the Task has been assigned to a delivery vehicle, then don't set the
270
+ # Task state to CLOSED using `Task.update`. Instead, remove the `VehicleStop`
271
+ # that contains the Task from the delivery vehicle, which automatically sets
272
+ # the Task state to CLOSED.
273
+ # @!attribute [rw] update_mask
274
+ # @return [::Google::Protobuf::FieldMask]
275
+ # Required. The field mask that indicates which Task fields to update.
276
+ # Note: The `update_mask` must contain at least one field.
277
+ #
278
+ # This is a comma-separated list of fully qualified names of fields. Example:
279
+ # `"task_outcome,task_outcome_time,task_outcome_location"`.
280
+ class UpdateTaskRequest
281
+ include ::Google::Protobuf::MessageExts
282
+ extend ::Google::Protobuf::MessageExts::ClassMethods
283
+ end
284
+
285
+ # The `ListTasks` request message.
286
+ # @!attribute [rw] header
287
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryRequestHeader]
288
+ # Optional. The standard Delivery API request header.
289
+ # @!attribute [rw] parent
290
+ # @return [::String]
291
+ # Required. Must be in the format `providers/{provider}`.
292
+ # The `provider` must be the Google Cloud Project ID. For example,
293
+ # `sample-cloud-project`.
294
+ # @!attribute [rw] page_size
295
+ # @return [::Integer]
296
+ # Optional. The maximum number of Tasks to return. The service may return
297
+ # fewer than this value. If you don't specify this value, then the server
298
+ # determines the number of results to return.
299
+ # @!attribute [rw] page_token
300
+ # @return [::String]
301
+ # Optional. A page token received from a previous `ListTasks` call.
302
+ # You can provide this to retrieve the subsequent page.
303
+ #
304
+ # When paginating, all other parameters provided to `ListTasks` must match
305
+ # the call that provided the page token.
306
+ # @!attribute [rw] filter
307
+ # @return [::String]
308
+ # Optional. A filter query to apply when listing Tasks. See
309
+ # http://aip.dev/160 for examples of filter syntax. If you don't specify a
310
+ # value, or if you filter on an empty string, then all Tasks are returned.
311
+ # For information about the Task properties that you can filter on, see [List
312
+ # tasks](https://developers.google.com/maps/documentation/transportation-logistics/last-mile-fleet-solution/fleet-performance/fleet-engine/deliveries_api#list-tasks).
313
+ class ListTasksRequest
314
+ include ::Google::Protobuf::MessageExts
315
+ extend ::Google::Protobuf::MessageExts::ClassMethods
316
+ end
317
+
318
+ # The `ListTasks` response that contains the set of Tasks that meet the filter
319
+ # criteria in the `ListTasksRequest`.
320
+ # @!attribute [rw] tasks
321
+ # @return [::Array<::Google::Maps::FleetEngine::Delivery::V1::Task>]
322
+ # The set of Tasks that meet the requested filtering criteria. When no filter
323
+ # is specified, the request returns all tasks. A successful response can also
324
+ # be empty. An empty response indicates that no Tasks were found meeting the
325
+ # requested filter criteria.
326
+ # @!attribute [rw] next_page_token
327
+ # @return [::String]
328
+ # Pass this token in the `ListTasksRequest` to continue to list results.
329
+ # If all results have been returned, then this field is either an empty
330
+ # string, or it doesn't appear in the response.
331
+ # @!attribute [rw] total_size
332
+ # @return [::Integer]
333
+ # The total number of Tasks that match the request criteria, across all
334
+ # pages.
335
+ class ListTasksResponse
336
+ include ::Google::Protobuf::MessageExts
337
+ extend ::Google::Protobuf::MessageExts::ClassMethods
338
+ end
339
+
340
+ # The `GetTaskTrackingInfoRequest` request message.
341
+ # @!attribute [rw] header
342
+ # @return [::Google::Maps::FleetEngine::Delivery::V1::DeliveryRequestHeader]
343
+ # Optional. The standard Delivery API request header.
344
+ # @!attribute [rw] name
345
+ # @return [::String]
346
+ # Required. Must be in the format
347
+ # `providers/{provider}/taskTrackingInfo/{tracking_id}`. The `provider`
348
+ # must be the Google Cloud Project ID, and the `tracking_id` must be the
349
+ # tracking ID associated with the task. An example name can be
350
+ # `providers/sample-cloud-project/taskTrackingInfo/sample-tracking-id`.
351
+ class GetTaskTrackingInfoRequest
352
+ include ::Google::Protobuf::MessageExts
353
+ extend ::Google::Protobuf::MessageExts::ClassMethods
354
+ end
355
+ end
356
+ end
357
+ end
358
+ end
359
+ end