Skip to content

Commit e7084f3

Browse files
Google APIscopybara-github
Google APIs
authored andcommitted
feat: update attributes in Places API
PiperOrigin-RevId: 694522095
1 parent e6fd904 commit e7084f3

19 files changed

+117
-23
lines changed

google/maps/places/v1/BUILD.bazel

+2-2
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ proto_library(
6565
"place.proto",
6666
"places_service.proto",
6767
"polyline.proto",
68+
"price_range.proto",
6869
"reference.proto",
6970
"review.proto",
7071
"route_modifiers.proto",
@@ -197,13 +198,13 @@ go_gapic_library(
197198
grpc_service_config = "places_grpc_service_config.json",
198199
importpath = "cloud.google.com/go/maps/places/apiv1;places",
199200
metadata = True,
200-
# Labeling beta so we get unstable notice in client.
201201
release_level = "beta",
202202
rest_numeric_enums = True,
203203
service_yaml = "places_v1.yaml",
204204
transport = "grpc+rest",
205205
deps = [
206206
":places_go_proto",
207+
"@io_bazel_rules_go//proto/wkt:duration_go_proto",
207208
],
208209
)
209210

@@ -392,7 +393,6 @@ load(
392393

393394
csharp_proto_library(
394395
name = "places_csharp_proto",
395-
extra_opts = [],
396396
deps = [":places_proto"],
397397
)
398398

google/maps/places/v1/attribution.proto

-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ syntax = "proto3";
1616

1717
package google.maps.places.v1;
1818

19-
option cc_enable_arenas = true;
2019
option csharp_namespace = "Google.Maps.Places.V1";
2120
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
2221
option java_multiple_files = true;

google/maps/places/v1/content_block.proto

-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ package google.maps.places.v1;
1919
import "google/maps/places/v1/reference.proto";
2020
import "google/type/localized_text.proto";
2121

22-
option cc_enable_arenas = true;
2322
option csharp_namespace = "Google.Maps.Places.V1";
2423
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
2524
option java_multiple_files = true;

google/maps/places/v1/contextual_content.proto

-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ package google.maps.places.v1;
1919
import "google/maps/places/v1/photo.proto";
2020
import "google/maps/places/v1/review.proto";
2121

22-
option cc_enable_arenas = true;
2322
option csharp_namespace = "Google.Maps.Places.V1";
2423
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
2524
option java_multiple_files = true;

google/maps/places/v1/ev_charging.proto

-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ package google.maps.places.v1;
1818

1919
import "google/protobuf/timestamp.proto";
2020

21-
option cc_enable_arenas = true;
2221
option csharp_namespace = "Google.Maps.Places.V1";
2322
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
2423
option java_multiple_files = true;

google/maps/places/v1/fuel_options.proto

-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ package google.maps.places.v1;
1919
import "google/protobuf/timestamp.proto";
2020
import "google/type/money.proto";
2121

22-
option cc_enable_arenas = true;
2322
option csharp_namespace = "Google.Maps.Places.V1";
2423
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
2524
option java_multiple_files = true;

google/maps/places/v1/geometry.proto

-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ package google.maps.places.v1;
1919
import "google/api/field_behavior.proto";
2020
import "google/type/latlng.proto";
2121

22-
option cc_enable_arenas = true;
2322
option csharp_namespace = "Google.Maps.Places.V1";
2423
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
2524
option java_multiple_files = true;

google/maps/places/v1/photo.proto

-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ import "google/api/field_behavior.proto";
2020
import "google/api/resource.proto";
2121
import "google/maps/places/v1/attribution.proto";
2222

23-
option cc_enable_arenas = true;
2423
option csharp_namespace = "Google.Maps.Places.V1";
2524
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
2625
option java_multiple_files = true;

google/maps/places/v1/place.proto

+39-3
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,14 @@ import "google/maps/places/v1/content_block.proto";
2222
import "google/maps/places/v1/ev_charging.proto";
2323
import "google/maps/places/v1/fuel_options.proto";
2424
import "google/maps/places/v1/photo.proto";
25+
import "google/maps/places/v1/price_range.proto";
2526
import "google/maps/places/v1/reference.proto";
2627
import "google/maps/places/v1/review.proto";
28+
import "google/protobuf/timestamp.proto";
2729
import "google/type/date.proto";
2830
import "google/type/latlng.proto";
2931
import "google/type/localized_text.proto";
3032

31-
option cc_enable_arenas = true;
3233
option csharp_namespace = "Google.Maps.Places.V1";
3334
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
3435
option java_multiple_files = true;
@@ -193,6 +194,16 @@ message Place {
193194
// current_opening_hours and current_secondary_opening_hours if there are
194195
// exceptional hours.
195196
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;
196207
}
197208

198209
// Business status for the place.
@@ -314,6 +325,17 @@ message Place {
314325
repeated ContentBlock content_blocks = 4;
315326
}
316327

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+
317339
// This Place's resource name, in `places/{place_id}` format. Can be used to
318340
// look up the Place.
319341
string name = 1;
@@ -378,7 +400,9 @@ message Place {
378400
// The position of this place.
379401
google.type.LatLng location = 12;
380402

381-
// 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.
382406
google.geo.type.Viewport viewport = 13;
383407

384408
// A rating between 1.0 and 5.0, based on user reviews of this place.
@@ -412,7 +436,6 @@ message Place {
412436
// The place's address in adr microformat: http://microformats.org/wiki/adr.
413437
string adr_format_address = 24;
414438

415-
// The business status for the place.
416439
BusinessStatus business_status = 25;
417440

418441
// Price level of the place.
@@ -562,6 +585,19 @@ message Place {
562585
//
563586
// AI-generated summary of the area that the place is in.
564587
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;
565601
}
566602

567603
// Price level of the place.

google/maps/places/v1/places_service.proto

+22-3
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ import "google/maps/places/v1/routing_summary.proto";
3232
import "google/maps/places/v1/travel_mode.proto";
3333
import "google/type/latlng.proto";
3434

35-
option cc_enable_arenas = true;
3635
option csharp_namespace = "Google.Maps.Places.V1";
3736
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
3837
option java_multiple_files = true;
@@ -263,7 +262,7 @@ message SearchNearbyResponse {
263262
repeated Place places = 1;
264263

265264
// A list of routing summaries where each entry associates to the
266-
// corresponding place in the same index in the places field. If the routing
265+
// corresponding place in the same index in the `places` field. If the routing
267266
// summary is not available for one of the places, it will contain an empty
268267
// entry. This list should have as many entries as the list of places if
269268
// requested.
@@ -430,6 +429,16 @@ message SearchTextRequest {
430429
// Optional. Additional parameters proto for searching along a route.
431430
SearchAlongRouteParameters search_along_route_parameters = 17
432431
[(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];
433442
}
434443

435444
// Response proto for SearchText.
@@ -439,7 +448,7 @@ message SearchTextResponse {
439448
repeated Place places = 1;
440449

441450
// A list of routing summaries where each entry associates to the
442-
// corresponding place in the same index in the places field. If the routing
451+
// corresponding place in the same index in the `places` field. If the routing
443452
// summary is not available for one of the places, it will contain an empty
444453
// entry. This list will have as many entries as the list of places if
445454
// requested.
@@ -698,6 +707,16 @@ message AutocompletePlacesRequest {
698707
// same token for more than one session will result in each request being
699708
// billed individually.
700709
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];
701720
}
702721

703722
// Response proto for AutocompletePlaces.

google/maps/places/v1/places_v1.yaml

+6
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,10 @@ publishing:
2626
common:
2727
destinations:
2828
- PACKAGE_MANAGER
29+
cpp_settings:
30+
common: {}
31+
php_settings:
32+
common: {}
2933
python_settings:
3034
common:
3135
destinations:
@@ -38,6 +42,8 @@ publishing:
3842
common:
3943
destinations:
4044
- PACKAGE_MANAGER
45+
ruby_settings:
46+
common: {}
4147
go_settings:
4248
common:
4349
destinations:

google/maps/places/v1/polyline.proto

-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ syntax = "proto3";
1616

1717
package google.maps.places.v1;
1818

19-
option cc_enable_arenas = true;
2019
option csharp_namespace = "Google.Maps.Places.V1";
2120
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
2221
option java_multiple_files = true;
+39
Original file line numberDiff line numberDiff line change
@@ -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+
}

google/maps/places/v1/reference.proto

-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ package google.maps.places.v1;
1919
import "google/api/resource.proto";
2020
import "google/maps/places/v1/review.proto";
2121

22-
option cc_enable_arenas = true;
2322
option csharp_namespace = "Google.Maps.Places.V1";
2423
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
2524
option java_multiple_files = true;

google/maps/places/v1/review.proto

-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ import "google/maps/places/v1/attribution.proto";
2121
import "google/protobuf/timestamp.proto";
2222
import "google/type/localized_text.proto";
2323

24-
option cc_enable_arenas = true;
2524
option csharp_namespace = "Google.Maps.Places.V1";
2625
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
2726
option java_multiple_files = true;

google/maps/places/v1/route_modifiers.proto

-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ package google.maps.places.v1;
1818

1919
import "google/api/field_behavior.proto";
2020

21-
option cc_enable_arenas = true;
2221
option csharp_namespace = "Google.Maps.Places.V1";
2322
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
2423
option java_multiple_files = true;

google/maps/places/v1/routing_preference.proto

-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ syntax = "proto3";
1616

1717
package google.maps.places.v1;
1818

19-
option cc_enable_arenas = true;
2019
option csharp_namespace = "Google.Maps.Places.V1";
2120
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
2221
option java_multiple_files = true;

google/maps/places/v1/routing_summary.proto

+9-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ package google.maps.places.v1;
1818

1919
import "google/protobuf/duration.proto";
2020

21-
option cc_enable_arenas = true;
2221
option csharp_namespace = "Google.Maps.Places.V1";
2322
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
2423
option java_multiple_files = true;
@@ -29,7 +28,7 @@ option php_namespace = "Google\\Maps\\Places\\V1";
2928

3029
// The duration and distance from the routing origin to a place in the
3130
// response, and a second leg from that place to the destination, if requested.
32-
// Note: Adding `routingSummaries` in the field mask without also including
31+
// **Note:** Adding `routingSummaries` in the field mask without also including
3332
// either the `routingParameters.origin` parameter or the
3433
// `searchAlongRouteParameters.polyline.encodedPolyline` parameter in the
3534
// request causes an error.
@@ -51,4 +50,12 @@ message RoutingSummary {
5150
// legs: one from the origin to place, and one from the place to the
5251
// destination.
5352
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;
5461
}

google/maps/places/v1/travel_mode.proto

-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ syntax = "proto3";
1616

1717
package google.maps.places.v1;
1818

19-
option cc_enable_arenas = true;
2019
option csharp_namespace = "Google.Maps.Places.V1";
2120
option go_package = "cloud.google.com/go/maps/places/apiv1/placespb;placespb";
2221
option java_multiple_files = true;

0 commit comments

Comments
 (0)