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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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