@googlemaps/places 1.6.0 → 1.8.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.8.0](https://github.com/googleapis/google-cloud-node/compare/places-v1.7.0...places-v1.8.0) (2024-11-14)
4
+
5
+
6
+ ### Features
7
+
8
+ * [places] update attributes in Places API ([#5795](https://github.com/googleapis/google-cloud-node/issues/5795)) ([10a04fc](https://github.com/googleapis/google-cloud-node/commit/10a04fc297bcf2bdeb8019fb69e638b18eb2e159))
9
+
10
+ ## [1.7.0](https://github.com/googleapis/google-cloud-node/compare/places-v1.6.0...places-v1.7.0) (2024-09-24)
11
+
12
+
13
+ ### Features
14
+
15
+ * [places] add `routing_parameters` to SearchNearbyRequest and SearchTextRequest ([#5688](https://github.com/googleapis/google-cloud-node/issues/5688)) ([02aeffb](https://github.com/googleapis/google-cloud-node/commit/02aeffb9d539fb6612c53887f61f398bdd12aaab))
16
+
3
17
  ## [1.6.0](https://github.com/googleapis/google-cloud-node/compare/places-v1.5.0...places-v1.6.0) (2024-05-23)
4
18
 
5
19
 
package/README.md CHANGED
@@ -44,7 +44,7 @@ Google APIs Client Libraries, in [Client Libraries Explained][explained].
44
44
  1. [Select or create a Cloud Platform project][projects].
45
45
  1. [Enable billing for your project][billing].
46
46
  1. [Enable the Places API (New) API][enable_api].
47
- 1. [Set up authentication with a service account][auth] so you can access the
47
+ 1. [Set up authentication][auth] so you can access the
48
48
  API from your local workstation.
49
49
 
50
50
  ### Installing the client library
@@ -167,4 +167,4 @@ See [LICENSE](https://github.com/googleapis/google-cloud-node/blob/main/LICENSE)
167
167
  [projects]: https://console.cloud.google.com/project
168
168
  [billing]: https://support.google.com/cloud/answer/6293499#enable-billing
169
169
  [enable_api]: https://console.cloud.google.com/flows/enableapi?apiid=places.googleapis.com
170
- [auth]: https://cloud.google.com/docs/authentication/getting-started
170
+ [auth]: https://cloud.google.com/docs/authentication/external/set-up-adc-local
@@ -16,7 +16,6 @@ syntax = "proto3";
16
16
 
17
17
  package google.maps.places.v1;
18
18
 
19
- option cc_enable_arenas = true;
20
19
  option csharp_namespace = "Google.Maps.Places.V1";
21
20
  option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
22
21
  option java_multiple_files = true;
@@ -19,7 +19,6 @@ package google.maps.places.v1;
19
19
  import "google/maps/places/v1/reference.proto";
20
20
  import "google/type/localized_text.proto";
21
21
 
22
- option cc_enable_arenas = true;
23
22
  option csharp_namespace = "Google.Maps.Places.V1";
24
23
  option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
25
24
  option java_multiple_files = true;
@@ -19,7 +19,6 @@ package google.maps.places.v1;
19
19
  import "google/maps/places/v1/photo.proto";
20
20
  import "google/maps/places/v1/review.proto";
21
21
 
22
- option cc_enable_arenas = true;
23
22
  option csharp_namespace = "Google.Maps.Places.V1";
24
23
  option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
25
24
  option java_multiple_files = true;
@@ -18,7 +18,6 @@ package google.maps.places.v1;
18
18
 
19
19
  import "google/protobuf/timestamp.proto";
20
20
 
21
- option cc_enable_arenas = true;
22
21
  option csharp_namespace = "Google.Maps.Places.V1";
23
22
  option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
24
23
  option java_multiple_files = true;
@@ -19,7 +19,6 @@ package google.maps.places.v1;
19
19
  import "google/protobuf/timestamp.proto";
20
20
  import "google/type/money.proto";
21
21
 
22
- option cc_enable_arenas = true;
23
22
  option csharp_namespace = "Google.Maps.Places.V1";
24
23
  option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
25
24
  option java_multiple_files = true;
@@ -19,7 +19,6 @@ package google.maps.places.v1;
19
19
  import "google/api/field_behavior.proto";
20
20
  import "google/type/latlng.proto";
21
21
 
22
- option cc_enable_arenas = true;
23
22
  option csharp_namespace = "Google.Maps.Places.V1";
24
23
  option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
25
24
  option java_multiple_files = true;
@@ -20,7 +20,6 @@ import "google/api/field_behavior.proto";
20
20
  import "google/api/resource.proto";
21
21
  import "google/maps/places/v1/attribution.proto";
22
22
 
23
- option cc_enable_arenas = true;
24
23
  option csharp_namespace = "Google.Maps.Places.V1";
25
24
  option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
26
25
  option java_multiple_files = true;
@@ -22,13 +22,14 @@ import "google/maps/places/v1/content_block.proto";
22
22
  import "google/maps/places/v1/ev_charging.proto";
23
23
  import "google/maps/places/v1/fuel_options.proto";
24
24
  import "google/maps/places/v1/photo.proto";
25
+ import "google/maps/places/v1/price_range.proto";
25
26
  import "google/maps/places/v1/reference.proto";
26
27
  import "google/maps/places/v1/review.proto";
28
+ import "google/protobuf/timestamp.proto";
27
29
  import "google/type/date.proto";
28
30
  import "google/type/latlng.proto";
29
31
  import "google/type/localized_text.proto";
30
32
 
31
- option cc_enable_arenas = true;
32
33
  option csharp_namespace = "Google.Maps.Places.V1";
33
34
  option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
34
35
  option java_multiple_files = true;
@@ -167,8 +168,10 @@ message Place {
167
168
  google.type.Date date = 1;
168
169
  }
169
170
 
170
- // Is this place open right now? Always present unless we lack time-of-day
171
- // or timezone data for these opening hours.
171
+ // Whether the opening hours period is currently active. For regular opening
172
+ // hours and current opening hours, this field means whether the place is
173
+ // open. For secondary opening hours and current secondary opening hours,
174
+ // this field means whether the secondary hours of this place is active.
172
175
  optional bool open_now = 1;
173
176
 
174
177
  // The periods that this place is open during the week. The periods are in
@@ -191,6 +194,16 @@ message Place {
191
194
  // current_opening_hours and current_secondary_opening_hours if there are
192
195
  // exceptional hours.
193
196
  repeated SpecialDay special_days = 5;
197
+
198
+ // The next time the current opening hours period starts up to 7 days in the
199
+ // future. This field is only populated if the opening hours period is not
200
+ // active at the time of serving the request.
201
+ google.protobuf.Timestamp next_open_time = 6;
202
+
203
+ // The next time the current opening hours period ends up to 7 days in the
204
+ // future. This field is only populated if the opening hours period is
205
+ // active at the time of serving the request.
206
+ google.protobuf.Timestamp next_close_time = 7;
194
207
  }
195
208
 
196
209
  // Business status for the place.
@@ -312,6 +325,17 @@ message Place {
312
325
  repeated ContentBlock content_blocks = 4;
313
326
  }
314
327
 
328
+ // Info about the place in which this place is located.
329
+ message ContainingPlace {
330
+ // The resource name of the place in which this place is located.
331
+ string name = 1 [
332
+ (google.api.resource_reference) = { type: "places.googleapis.com/Place" }
333
+ ];
334
+
335
+ // The place id of the place in which this place is located.
336
+ string id = 2;
337
+ }
338
+
315
339
  // This Place's resource name, in `places/{place_id}` format. Can be used to
316
340
  // look up the Place.
317
341
  string name = 1;
@@ -376,7 +400,9 @@ message Place {
376
400
  // The position of this place.
377
401
  google.type.LatLng location = 12;
378
402
 
379
- // A viewport suitable for displaying the place on an average-sized map.
403
+ // A viewport suitable for displaying the place on an average-sized map. This
404
+ // viewport should not be used as the physical boundary or the service area of
405
+ // the business.
380
406
  google.geo.type.Viewport viewport = 13;
381
407
 
382
408
  // A rating between 1.0 and 5.0, based on user reviews of this place.
@@ -410,7 +436,6 @@ message Place {
410
436
  // The place's address in adr microformat: http://microformats.org/wiki/adr.
411
437
  string adr_format_address = 24;
412
438
 
413
- // The business status for the place.
414
439
  BusinessStatus business_status = 25;
415
440
 
416
441
  // Price level of the place.
@@ -560,6 +585,19 @@ message Place {
560
585
  //
561
586
  // AI-generated summary of the area that the place is in.
562
587
  AreaSummary area_summary = 81;
588
+
589
+ // List of places in which the current place is located.
590
+ repeated ContainingPlace containing_places = 82;
591
+
592
+ // Indicates whether the place is a pure service area business. Pure service
593
+ // area business is a business that visits or delivers to customers directly
594
+ // but does not serve customers at their business address. For example,
595
+ // businesses like cleaning services or plumbers. Those businesses may not
596
+ // have a physical address or location on Google Maps.
597
+ optional bool pure_service_area_business = 83;
598
+
599
+ // The price range associated with a Place.
600
+ PriceRange price_range = 86;
563
601
  }
564
602
 
565
603
  // Price level of the place.
@@ -25,9 +25,13 @@ import "google/maps/places/v1/contextual_content.proto";
25
25
  import "google/maps/places/v1/ev_charging.proto";
26
26
  import "google/maps/places/v1/geometry.proto";
27
27
  import "google/maps/places/v1/place.proto";
28
+ import "google/maps/places/v1/polyline.proto";
29
+ import "google/maps/places/v1/route_modifiers.proto";
30
+ import "google/maps/places/v1/routing_preference.proto";
31
+ import "google/maps/places/v1/routing_summary.proto";
32
+ import "google/maps/places/v1/travel_mode.proto";
28
33
  import "google/type/latlng.proto";
29
34
 
30
- option cc_enable_arenas = true;
31
35
  option csharp_namespace = "Google.Maps.Places.V1";
32
36
  option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
33
37
  option java_multiple_files = true;
@@ -87,6 +91,28 @@ service Places {
87
91
  }
88
92
  }
89
93
 
94
+ // Parameters to configure the routing calculations to the places in the
95
+ // response, both along a route (where result ranking will be influenced) and
96
+ // for calculating travel times on results.
97
+ message RoutingParameters {
98
+ // Optional. An explicit routing origin that overrides the origin defined in
99
+ // the polyline. By default, the polyline origin is used.
100
+ google.type.LatLng origin = 1 [(google.api.field_behavior) = OPTIONAL];
101
+
102
+ // Optional. The travel mode.
103
+ TravelMode travel_mode = 2 [(google.api.field_behavior) = OPTIONAL];
104
+
105
+ // Optional. The route modifiers.
106
+ RouteModifiers route_modifiers = 3 [(google.api.field_behavior) = OPTIONAL];
107
+
108
+ // Optional. Specifies how to compute the routing summaries. The server
109
+ // attempts to use the selected routing preference to compute the route. The
110
+ // traffic aware routing preference is only available for the `DRIVE` or
111
+ // `TWO_WHEELER` `travelMode`.
112
+ RoutingPreference routing_preference = 4
113
+ [(google.api.field_behavior) = OPTIONAL];
114
+ }
115
+
90
116
  // Request proto for Search Nearby.
91
117
  //
92
118
  //
@@ -222,6 +248,10 @@ message SearchNearbyRequest {
222
248
 
223
249
  // How results will be ranked in the response.
224
250
  RankPreference rank_preference = 9;
251
+
252
+ // Optional. Parameters that affect the routing to the search results.
253
+ RoutingParameters routing_parameters = 10
254
+ [(google.api.field_behavior) = OPTIONAL];
225
255
  }
226
256
 
227
257
  // Response proto for Search Nearby.
@@ -230,6 +260,13 @@ message SearchNearbyResponse {
230
260
  // A list of places that meets user's requirements like places
231
261
  // types, number of places and specific location restriction.
232
262
  repeated Place places = 1;
263
+
264
+ // A list of routing summaries where each entry associates to the
265
+ // corresponding place in the same index in the `places` field. If the routing
266
+ // summary is not available for one of the places, it will contain an empty
267
+ // entry. This list should have as many entries as the list of places if
268
+ // requested.
269
+ repeated RoutingSummary routing_summaries = 2;
233
270
  }
234
271
 
235
272
  // Request proto for SearchText.
@@ -295,6 +332,25 @@ message SearchTextRequest {
295
332
  [(google.api.field_behavior) = OPTIONAL];
296
333
  }
297
334
 
335
+ // Specifies a precalculated polyline from the [Routes
336
+ // API](https://developers.google.com/maps/documentation/routes) defining the
337
+ // route to search. Searching along a route is similar to using the
338
+ // `locationBias` or `locationRestriction` request option to bias the search
339
+ // results. However, while the `locationBias` and `locationRestriction`
340
+ // options let you specify a region to bias the search results, this option
341
+ // lets you bias the results along a trip route.
342
+ //
343
+ // Results are not guaranteed to be along the route provided, but rather are
344
+ // ranked within the search area defined by the polyline and, optionally, by
345
+ // the `locationBias` or `locationRestriction` based on minimal detour times
346
+ // from origin to destination. The results might be along an alternate route,
347
+ // especially if the provided polyline does not define an optimal route from
348
+ // origin to destination.
349
+ message SearchAlongRouteParameters {
350
+ // Required. The route polyline.
351
+ Polyline polyline = 1 [(google.api.field_behavior) = REQUIRED];
352
+ }
353
+
298
354
  // Required. The text query for textual search.
299
355
  string text_query = 1 [(google.api.field_behavior) = REQUIRED];
300
356
 
@@ -365,6 +421,24 @@ message SearchTextRequest {
365
421
 
366
422
  // Optional. Set the searchable EV options of a place search request.
367
423
  EVOptions ev_options = 15 [(google.api.field_behavior) = OPTIONAL];
424
+
425
+ // Optional. Additional parameters for routing to results.
426
+ RoutingParameters routing_parameters = 16
427
+ [(google.api.field_behavior) = OPTIONAL];
428
+
429
+ // Optional. Additional parameters proto for searching along a route.
430
+ SearchAlongRouteParameters search_along_route_parameters = 17
431
+ [(google.api.field_behavior) = OPTIONAL];
432
+
433
+ // Optional. Include pure service area businesses if the field is set to true.
434
+ // Pure service area business is a business that visits or delivers to
435
+ // customers directly but does not serve customers at their business address.
436
+ // For example, businesses like cleaning services or plumbers. Those
437
+ // businesses do not have a physical address or location on Google Maps.
438
+ // Places will not return fields including `location`, `plus_code`, and other
439
+ // location related fields for these businesses.
440
+ bool include_pure_service_area_businesses = 20
441
+ [(google.api.field_behavior) = OPTIONAL];
368
442
  }
369
443
 
370
444
  // Response proto for SearchText.
@@ -373,6 +447,13 @@ message SearchTextResponse {
373
447
  // A list of places that meet the user's text search criteria.
374
448
  repeated Place places = 1;
375
449
 
450
+ // A list of routing summaries where each entry associates to the
451
+ // corresponding place in the same index in the `places` field. If the routing
452
+ // summary is not available for one of the places, it will contain an empty
453
+ // entry. This list will have as many entries as the list of places if
454
+ // requested.
455
+ repeated RoutingSummary routing_summaries = 2;
456
+
376
457
  // Experimental: See
377
458
  // https://developers.google.com/maps/documentation/places/web-service/experimental/places-generative
378
459
  // for more details.
@@ -382,7 +463,7 @@ message SearchTextResponse {
382
463
  // that are relevant to the `text_query` in the request are preferred. If the
383
464
  // contextual content is not available for one of the places, it will return
384
465
  // non-contextual content. It will be empty only when the content is
385
- // unavailable for this place. This list should have as many entries as the
466
+ // unavailable for this place. This list will have as many entries as the
386
467
  // list of places if requested.
387
468
  repeated ContextualContent contextual_contents = 3;
388
469
  }
@@ -626,6 +707,16 @@ message AutocompletePlacesRequest {
626
707
  // same token for more than one session will result in each request being
627
708
  // billed individually.
628
709
  string session_token = 11 [(google.api.field_behavior) = OPTIONAL];
710
+
711
+ // Optional. Include pure service area businesses if the field is set to true.
712
+ // Pure service area business is a business that visits or delivers to
713
+ // customers directly but does not serve customers at their business address.
714
+ // For example, businesses like cleaning services or plumbers. Those
715
+ // businesses do not have a physical address or location on Google Maps.
716
+ // Places will not return fields including `location`, `plus_code`, and other
717
+ // location related fields for these businesses.
718
+ bool include_pure_service_area_businesses = 12
719
+ [(google.api.field_behavior) = OPTIONAL];
629
720
  }
630
721
 
631
722
  // Response proto for AutocompletePlaces.
@@ -0,0 +1,46 @@
1
+ // Copyright 2024 Google LLC
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ syntax = "proto3";
16
+
17
+ package google.maps.places.v1;
18
+
19
+ option csharp_namespace = "Google.Maps.Places.V1";
20
+ option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
21
+ option java_multiple_files = true;
22
+ option java_outer_classname = "PolylineProto";
23
+ option java_package = "com.google.maps.places.v1";
24
+ option objc_class_prefix = "GMPSV1";
25
+ option php_namespace = "Google\\Maps\\Places\\V1";
26
+
27
+ // A route polyline. Only supports an [encoded
28
+ // polyline](https://developers.google.com/maps/documentation/utilities/polylinealgorithm),
29
+ // which can be passed as a string and includes compression with minimal
30
+ // lossiness. This is the Routes API default output.
31
+ message Polyline {
32
+ // Encapsulates the type of polyline. Routes API output defaults to
33
+ // `encoded_polyline`.
34
+ oneof polyline_type {
35
+ // An [encoded
36
+ // polyline](https://developers.google.com/maps/documentation/utilities/polylinealgorithm),
37
+ // as returned by the [Routes API by
38
+ // default](https://developers.google.com/maps/documentation/routes/reference/rest/v2/TopLevel/computeRoutes#polylineencoding).
39
+ // See the
40
+ // [encoder](https://developers.google.com/maps/documentation/utilities/polylineutility)
41
+ // and
42
+ // [decoder](https://developers.google.com/maps/documentation/routes/polylinedecoder)
43
+ // tools.
44
+ string encoded_polyline = 1;
45
+ }
46
+ }
@@ -0,0 +1,39 @@
1
+ // Copyright 2024 Google LLC
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ syntax = "proto3";
16
+
17
+ package google.maps.places.v1;
18
+
19
+ import "google/type/money.proto";
20
+
21
+ option csharp_namespace = "Google.Maps.Places.V1";
22
+ option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
23
+ option java_multiple_files = true;
24
+ option java_outer_classname = "PriceRangeProto";
25
+ option java_package = "com.google.maps.places.v1";
26
+ option objc_class_prefix = "GMPSV1";
27
+ option php_namespace = "Google\\Maps\\Places\\V1";
28
+
29
+ // The price range associated with a Place. `end_price` could be unset, which
30
+ // indicates a range without upper bound (e.g. "More than $100").
31
+ message PriceRange {
32
+ // The low end of the price range (inclusive). Price should be at or above
33
+ // this amount.
34
+ google.type.Money start_price = 1;
35
+
36
+ // The high end of the price range (exclusive). Price should be lower than
37
+ // this amount.
38
+ google.type.Money end_price = 2;
39
+ }
@@ -19,7 +19,6 @@ package google.maps.places.v1;
19
19
  import "google/api/resource.proto";
20
20
  import "google/maps/places/v1/review.proto";
21
21
 
22
- option cc_enable_arenas = true;
23
22
  option csharp_namespace = "Google.Maps.Places.V1";
24
23
  option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
25
24
  option java_multiple_files = true;
@@ -21,7 +21,6 @@ import "google/maps/places/v1/attribution.proto";
21
21
  import "google/protobuf/timestamp.proto";
22
22
  import "google/type/localized_text.proto";
23
23
 
24
- option cc_enable_arenas = true;
25
24
  option csharp_namespace = "Google.Maps.Places.V1";
26
25
  option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
27
26
  option java_multiple_files = true;
@@ -0,0 +1,51 @@
1
+ // Copyright 2024 Google LLC
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ syntax = "proto3";
16
+
17
+ package google.maps.places.v1;
18
+
19
+ import "google/api/field_behavior.proto";
20
+
21
+ option csharp_namespace = "Google.Maps.Places.V1";
22
+ option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
23
+ option java_multiple_files = true;
24
+ option java_outer_classname = "RouteModifiersProto";
25
+ option java_package = "com.google.maps.places.v1";
26
+ option objc_class_prefix = "GMPSV1";
27
+ option php_namespace = "Google\\Maps\\Places\\V1";
28
+
29
+ // Encapsulates a set of optional conditions to satisfy when calculating the
30
+ // routes.
31
+ message RouteModifiers {
32
+ // Optional. When set to true, avoids toll roads where reasonable, giving
33
+ // preference to routes not containing toll roads. Applies only to the `DRIVE`
34
+ // and `TWO_WHEELER` [`TravelMode`][google.maps.places.v1.TravelMode].
35
+ bool avoid_tolls = 1 [(google.api.field_behavior) = OPTIONAL];
36
+
37
+ // Optional. When set to true, avoids highways where reasonable, giving
38
+ // preference to routes not containing highways. Applies only to the `DRIVE`
39
+ // and `TWO_WHEELER` [`TravelMode`][google.maps.places.v1.TravelMode].
40
+ bool avoid_highways = 2 [(google.api.field_behavior) = OPTIONAL];
41
+
42
+ // Optional. When set to true, avoids ferries where reasonable, giving
43
+ // preference to routes not containing ferries. Applies only to the `DRIVE`
44
+ // and `TWO_WHEELER` [`TravelMode`][google.maps.places.v1.TravelMode].
45
+ bool avoid_ferries = 3 [(google.api.field_behavior) = OPTIONAL];
46
+
47
+ // Optional. When set to true, avoids navigating indoors where reasonable,
48
+ // giving preference to routes not containing indoor navigation. Applies only
49
+ // to the `WALK` [`TravelMode`][google.maps.places.v1.TravelMode].
50
+ bool avoid_indoor = 4 [(google.api.field_behavior) = OPTIONAL];
51
+ }
@@ -0,0 +1,56 @@
1
+ // Copyright 2024 Google LLC
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ syntax = "proto3";
16
+
17
+ package google.maps.places.v1;
18
+
19
+ option csharp_namespace = "Google.Maps.Places.V1";
20
+ option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
21
+ option java_multiple_files = true;
22
+ option java_outer_classname = "RoutingPreferenceProto";
23
+ option java_package = "com.google.maps.places.v1";
24
+ option objc_class_prefix = "GMPSV1";
25
+ option php_namespace = "Google\\Maps\\Places\\V1";
26
+
27
+ // A set of values that specify factors to take into consideration when
28
+ // calculating the route.
29
+ enum RoutingPreference {
30
+ // No routing preference specified. Default to `TRAFFIC_UNAWARE`.
31
+ ROUTING_PREFERENCE_UNSPECIFIED = 0;
32
+
33
+ // Computes routes without taking live traffic conditions into consideration.
34
+ // Suitable when traffic conditions don't matter or are not applicable.
35
+ // Using this value produces the lowest latency.
36
+ // Note: For [`TravelMode`][google.maps.places.v1.TravelMode]
37
+ // `DRIVE` and `TWO_WHEELER`, the route and duration chosen are based on road
38
+ // network and average time-independent traffic conditions, not current road
39
+ // conditions. Consequently, routes may include roads that are temporarily
40
+ // closed. Results for a given
41
+ // request may vary over time due to changes in the road network, updated
42
+ // average traffic conditions, and the distributed nature of the service.
43
+ // Results may also vary between nearly-equivalent routes at any time or
44
+ // frequency.
45
+ TRAFFIC_UNAWARE = 1;
46
+
47
+ // Calculates routes taking live traffic conditions into consideration.
48
+ // In contrast to `TRAFFIC_AWARE_OPTIMAL`, some optimizations are applied to
49
+ // significantly reduce latency.
50
+ TRAFFIC_AWARE = 2;
51
+
52
+ // Calculates the routes taking live traffic conditions into consideration,
53
+ // without applying most performance optimizations. Using this value produces
54
+ // the highest latency.
55
+ TRAFFIC_AWARE_OPTIMAL = 3;
56
+ }
@@ -0,0 +1,61 @@
1
+ // Copyright 2024 Google LLC
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ syntax = "proto3";
16
+
17
+ package google.maps.places.v1;
18
+
19
+ import "google/protobuf/duration.proto";
20
+
21
+ option csharp_namespace = "Google.Maps.Places.V1";
22
+ option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
23
+ option java_multiple_files = true;
24
+ option java_outer_classname = "RoutingSummaryProto";
25
+ option java_package = "com.google.maps.places.v1";
26
+ option objc_class_prefix = "GMPSV1";
27
+ option php_namespace = "Google\\Maps\\Places\\V1";
28
+
29
+ // The duration and distance from the routing origin to a place in the
30
+ // response, and a second leg from that place to the destination, if requested.
31
+ // **Note:** Adding `routingSummaries` in the field mask without also including
32
+ // either the `routingParameters.origin` parameter or the
33
+ // `searchAlongRouteParameters.polyline.encodedPolyline` parameter in the
34
+ // request causes an error.
35
+ message RoutingSummary {
36
+ // A leg is a single portion of a journey from one location to another.
37
+ message Leg {
38
+ // The time it takes to complete this leg of the trip.
39
+ google.protobuf.Duration duration = 1;
40
+
41
+ // The distance of this leg of the trip.
42
+ int32 distance_meters = 2;
43
+ }
44
+
45
+ // The legs of the trip.
46
+ //
47
+ // When you calculate travel duration and distance from a set origin, `legs`
48
+ // contains a single leg containing the duration and distance from the origin
49
+ // to the destination. When you do a search along route, `legs` contains two
50
+ // legs: one from the origin to place, and one from the place to the
51
+ // destination.
52
+ repeated Leg legs = 1;
53
+
54
+ // A link to show directions on Google Maps using the waypoints from the given
55
+ // routing summary. The route generated by this link is not guaranteed to be
56
+ // the same as the route used to generate the routing summary.
57
+ // The link uses information provided in the request, from fields including
58
+ // `routingParameters` and `searchAlongRouteParameters` when applicable, to
59
+ // generate the directions link.
60
+ string directions_uri = 2;
61
+ }