@@ -25,6 +25,11 @@ import "google/maps/places/v1/contextual_content.proto";
2525import "google/maps/places/v1/ev_charging.proto" ;
2626import "google/maps/places/v1/geometry.proto" ;
2727import "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" ;
2833import "google/type/latlng.proto" ;
2934
3035option cc_enable_arenas = true ;
@@ -87,6 +92,28 @@ service Places {
8792 }
8893}
8994
95+ // Parameters to configure the routing calculations to the places in the
96+ // response, both along a route (where result ranking will be influenced) and
97+ // for calculating travel times on results.
98+ message RoutingParameters {
99+ // Optional. An explicit routing origin that overrides the origin defined in
100+ // the polyline. By default, the polyline origin is used.
101+ google.type.LatLng origin = 1 [(google.api.field_behavior ) = OPTIONAL ];
102+
103+ // Optional. The travel mode.
104+ TravelMode travel_mode = 2 [(google.api.field_behavior ) = OPTIONAL ];
105+
106+ // Optional. The route modifiers.
107+ RouteModifiers route_modifiers = 3 [(google.api.field_behavior ) = OPTIONAL ];
108+
109+ // Optional. Specifies how to compute the routing summaries. The server
110+ // attempts to use the selected routing preference to compute the route. The
111+ // traffic aware routing preference is only available for the `DRIVE` or
112+ // `TWO_WHEELER` `travelMode`.
113+ RoutingPreference routing_preference = 4
114+ [(google.api.field_behavior ) = OPTIONAL ];
115+ }
116+
90117// Request proto for Search Nearby.
91118//
92119//
@@ -222,6 +249,10 @@ message SearchNearbyRequest {
222249
223250 // How results will be ranked in the response.
224251 RankPreference rank_preference = 9 ;
252+
253+ // Optional. Parameters that affect the routing to the search results.
254+ RoutingParameters routing_parameters = 10
255+ [(google.api.field_behavior ) = OPTIONAL ];
225256}
226257
227258// Response proto for Search Nearby.
@@ -230,6 +261,13 @@ message SearchNearbyResponse {
230261 // A list of places that meets user's requirements like places
231262 // types, number of places and specific location restriction.
232263 repeated Place places = 1 ;
264+
265+ // 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
267+ // summary is not available for one of the places, it will contain an empty
268+ // entry. This list should have as many entries as the list of places if
269+ // requested.
270+ repeated RoutingSummary routing_summaries = 2 ;
233271}
234272
235273// Request proto for SearchText.
@@ -295,6 +333,25 @@ message SearchTextRequest {
295333 [(google.api.field_behavior ) = OPTIONAL ];
296334 }
297335
336+ // Specifies a precalculated polyline from the [Routes
337+ // API](https://developers.google.com/maps/documentation/routes) defining the
338+ // route to search. Searching along a route is similar to using the
339+ // `locationBias` or `locationRestriction` request option to bias the search
340+ // results. However, while the `locationBias` and `locationRestriction`
341+ // options let you specify a region to bias the search results, this option
342+ // lets you bias the results along a trip route.
343+ //
344+ // Results are not guaranteed to be along the route provided, but rather are
345+ // ranked within the search area defined by the polyline and, optionally, by
346+ // the `locationBias` or `locationRestriction` based on minimal detour times
347+ // from origin to destination. The results might be along an alternate route,
348+ // especially if the provided polyline does not define an optimal route from
349+ // origin to destination.
350+ message SearchAlongRouteParameters {
351+ // Required. The route polyline.
352+ Polyline polyline = 1 [(google.api.field_behavior ) = REQUIRED ];
353+ }
354+
298355 // Required. The text query for textual search.
299356 string text_query = 1 [(google.api.field_behavior ) = REQUIRED ];
300357
@@ -365,6 +422,14 @@ message SearchTextRequest {
365422
366423 // Optional. Set the searchable EV options of a place search request.
367424 EVOptions ev_options = 15 [(google.api.field_behavior ) = OPTIONAL ];
425+
426+ // Optional. Additional parameters for routing to results.
427+ RoutingParameters routing_parameters = 16
428+ [(google.api.field_behavior ) = OPTIONAL ];
429+
430+ // Optional. Additional parameters proto for searching along a route.
431+ SearchAlongRouteParameters search_along_route_parameters = 17
432+ [(google.api.field_behavior ) = OPTIONAL ];
368433}
369434
370435// Response proto for SearchText.
@@ -373,6 +438,13 @@ message SearchTextResponse {
373438 // A list of places that meet the user's text search criteria.
374439 repeated Place places = 1 ;
375440
441+ // 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
443+ // summary is not available for one of the places, it will contain an empty
444+ // entry. This list will have as many entries as the list of places if
445+ // requested.
446+ repeated RoutingSummary routing_summaries = 2 ;
447+
376448 // Experimental: See
377449 // https://developers.google.com/maps/documentation/places/web-service/experimental/places-generative
378450 // for more details.
@@ -382,7 +454,7 @@ message SearchTextResponse {
382454 // that are relevant to the `text_query` in the request are preferred. If the
383455 // contextual content is not available for one of the places, it will return
384456 // 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
457+ // unavailable for this place. This list will have as many entries as the
386458 // list of places if requested.
387459 repeated ContextualContent contextual_contents = 3 ;
388460}
0 commit comments