google-apis-places_v1 0.1.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.
- checksums.yaml +7 -0
- data/.yardopts +13 -0
- data/CHANGELOG.md +7 -0
- data/LICENSE.md +202 -0
- data/OVERVIEW.md +96 -0
- data/lib/google/apis/places_v1/classes.rb +1169 -0
- data/lib/google/apis/places_v1/gem_version.rb +28 -0
- data/lib/google/apis/places_v1/representations.rb +418 -0
- data/lib/google/apis/places_v1/service.rb +121 -0
- data/lib/google/apis/places_v1.rb +42 -0
- data/lib/google-apis-places_v1.rb +15 -0
- metadata +82 -0
@@ -0,0 +1,1169 @@
|
|
1
|
+
# Copyright 2020 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
|
+
require 'date'
|
16
|
+
require 'google/apis/core/base_service'
|
17
|
+
require 'google/apis/core/json_representation'
|
18
|
+
require 'google/apis/core/hashable'
|
19
|
+
require 'google/apis/errors'
|
20
|
+
|
21
|
+
module Google
|
22
|
+
module Apis
|
23
|
+
module PlacesV1
|
24
|
+
|
25
|
+
# A latitude-longitude viewport, represented as two diagonally opposite `low`
|
26
|
+
# and `high` points. A viewport is considered a closed region, i.e. it includes
|
27
|
+
# its boundary. The latitude bounds must range between -90 to 90 degrees
|
28
|
+
# inclusive, and the longitude bounds must range between -180 to 180 degrees
|
29
|
+
# inclusive. Various cases include: - If `low` = `high`, the viewport consists
|
30
|
+
# of that single point. - If `low.longitude` > `high.longitude`, the longitude
|
31
|
+
# range is inverted (the viewport crosses the 180 degree longitude line). - If `
|
32
|
+
# low.longitude` = -180 degrees and `high.longitude` = 180 degrees, the viewport
|
33
|
+
# includes all longitudes. - If `low.longitude` = 180 degrees and `high.
|
34
|
+
# longitude` = -180 degrees, the longitude range is empty. - If `low.latitude` >
|
35
|
+
# `high.latitude`, the latitude range is empty. Both `low` and `high` must be
|
36
|
+
# populated, and the represented box cannot be empty (as specified by the
|
37
|
+
# definitions above). An empty viewport will result in an error. For example,
|
38
|
+
# this viewport fully encloses New York City: ` "low": ` "latitude": 40.477398, "
|
39
|
+
# longitude": -74.259087 `, "high": ` "latitude": 40.91618, "longitude": -73.
|
40
|
+
# 70018 ` `
|
41
|
+
class GoogleGeoTypeViewport
|
42
|
+
include Google::Apis::Core::Hashable
|
43
|
+
|
44
|
+
# An object that represents a latitude/longitude pair. This is expressed as a
|
45
|
+
# pair of doubles to represent degrees latitude and degrees longitude. Unless
|
46
|
+
# specified otherwise, this object must conform to the WGS84 standard. Values
|
47
|
+
# must be within normalized ranges.
|
48
|
+
# Corresponds to the JSON property `high`
|
49
|
+
# @return [Google::Apis::PlacesV1::GoogleTypeLatLng]
|
50
|
+
attr_accessor :high
|
51
|
+
|
52
|
+
# An object that represents a latitude/longitude pair. This is expressed as a
|
53
|
+
# pair of doubles to represent degrees latitude and degrees longitude. Unless
|
54
|
+
# specified otherwise, this object must conform to the WGS84 standard. Values
|
55
|
+
# must be within normalized ranges.
|
56
|
+
# Corresponds to the JSON property `low`
|
57
|
+
# @return [Google::Apis::PlacesV1::GoogleTypeLatLng]
|
58
|
+
attr_accessor :low
|
59
|
+
|
60
|
+
def initialize(**args)
|
61
|
+
update!(**args)
|
62
|
+
end
|
63
|
+
|
64
|
+
# Update properties of this object
|
65
|
+
def update!(**args)
|
66
|
+
@high = args[:high] if args.key?(:high)
|
67
|
+
@low = args[:low] if args.key?(:low)
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
# Information about the author of the UGC data. Used in Photo, and Review.
|
72
|
+
class GoogleMapsPlacesV1AuthorAttribution
|
73
|
+
include Google::Apis::Core::Hashable
|
74
|
+
|
75
|
+
# Output only. Name of the author of the Photo or Review.
|
76
|
+
# Corresponds to the JSON property `displayName`
|
77
|
+
# @return [String]
|
78
|
+
attr_accessor :display_name
|
79
|
+
|
80
|
+
# Output only. Profile photo URI of the author of the Photo or Review.
|
81
|
+
# Corresponds to the JSON property `photoUri`
|
82
|
+
# @return [String]
|
83
|
+
attr_accessor :photo_uri
|
84
|
+
|
85
|
+
# Output only. URI of the author of the Photo or Review.
|
86
|
+
# Corresponds to the JSON property `uri`
|
87
|
+
# @return [String]
|
88
|
+
attr_accessor :uri
|
89
|
+
|
90
|
+
def initialize(**args)
|
91
|
+
update!(**args)
|
92
|
+
end
|
93
|
+
|
94
|
+
# Update properties of this object
|
95
|
+
def update!(**args)
|
96
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
97
|
+
@photo_uri = args[:photo_uri] if args.key?(:photo_uri)
|
98
|
+
@uri = args[:uri] if args.key?(:uri)
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
# Circle with a LatLng as center and radius.
|
103
|
+
class GoogleMapsPlacesV1Circle
|
104
|
+
include Google::Apis::Core::Hashable
|
105
|
+
|
106
|
+
# An object that represents a latitude/longitude pair. This is expressed as a
|
107
|
+
# pair of doubles to represent degrees latitude and degrees longitude. Unless
|
108
|
+
# specified otherwise, this object must conform to the WGS84 standard. Values
|
109
|
+
# must be within normalized ranges.
|
110
|
+
# Corresponds to the JSON property `center`
|
111
|
+
# @return [Google::Apis::PlacesV1::GoogleTypeLatLng]
|
112
|
+
attr_accessor :center
|
113
|
+
|
114
|
+
# Required. Radius measured in meters. The radius must be within [0.0, 50000.0].
|
115
|
+
# Corresponds to the JSON property `radius`
|
116
|
+
# @return [Float]
|
117
|
+
attr_accessor :radius
|
118
|
+
|
119
|
+
def initialize(**args)
|
120
|
+
update!(**args)
|
121
|
+
end
|
122
|
+
|
123
|
+
# Update properties of this object
|
124
|
+
def update!(**args)
|
125
|
+
@center = args[:center] if args.key?(:center)
|
126
|
+
@radius = args[:radius] if args.key?(:radius)
|
127
|
+
end
|
128
|
+
end
|
129
|
+
|
130
|
+
# int 32 range. Both min and max are optional. If only min is set, then the
|
131
|
+
# range only has a lower bound. If only max is set, then range only has an upper
|
132
|
+
# bound. At least one of min and max must be set. Values are inclusive.
|
133
|
+
class GoogleMapsPlacesV1Int32Range
|
134
|
+
include Google::Apis::Core::Hashable
|
135
|
+
|
136
|
+
# Upper bound. If unset, behavior is documented on the range field.
|
137
|
+
# Corresponds to the JSON property `max`
|
138
|
+
# @return [Fixnum]
|
139
|
+
attr_accessor :max
|
140
|
+
|
141
|
+
# Lower bound. If unset, behavior is documented on the range field.
|
142
|
+
# Corresponds to the JSON property `min`
|
143
|
+
# @return [Fixnum]
|
144
|
+
attr_accessor :min
|
145
|
+
|
146
|
+
def initialize(**args)
|
147
|
+
update!(**args)
|
148
|
+
end
|
149
|
+
|
150
|
+
# Update properties of this object
|
151
|
+
def update!(**args)
|
152
|
+
@max = args[:max] if args.key?(:max)
|
153
|
+
@min = args[:min] if args.key?(:min)
|
154
|
+
end
|
155
|
+
end
|
156
|
+
|
157
|
+
# All the information representing a Place.
|
158
|
+
class GoogleMapsPlacesV1Place
|
159
|
+
include Google::Apis::Core::Hashable
|
160
|
+
|
161
|
+
# Output only. Repeated components for each locality level.
|
162
|
+
# Corresponds to the JSON property `addressComponents`
|
163
|
+
# @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceAddressComponent>]
|
164
|
+
attr_accessor :address_components
|
165
|
+
|
166
|
+
# Output only. The place's address in adr microformat: http://microformats.org/
|
167
|
+
# wiki/adr.
|
168
|
+
# Corresponds to the JSON property `adrFormatAddress`
|
169
|
+
# @return [String]
|
170
|
+
attr_accessor :adr_format_address
|
171
|
+
|
172
|
+
# Output only. A set of data provider that must be shown with this result.
|
173
|
+
# Corresponds to the JSON property `attributions`
|
174
|
+
# @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceAttribution>]
|
175
|
+
attr_accessor :attributions
|
176
|
+
|
177
|
+
# Output only. The business status for the place.
|
178
|
+
# Corresponds to the JSON property `businessStatus`
|
179
|
+
# @return [String]
|
180
|
+
attr_accessor :business_status
|
181
|
+
|
182
|
+
# Output only. Specifies if the business supports curbside pickup.
|
183
|
+
# Corresponds to the JSON property `curbsidePickup`
|
184
|
+
# @return [Boolean]
|
185
|
+
attr_accessor :curbside_pickup
|
186
|
+
alias_method :curbside_pickup?, :curbside_pickup
|
187
|
+
|
188
|
+
# Information about business hour of the place.
|
189
|
+
# Corresponds to the JSON property `currentOpeningHours`
|
190
|
+
# @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceOpeningHours]
|
191
|
+
attr_accessor :current_opening_hours
|
192
|
+
|
193
|
+
# Output only. Contains an array of entries for the next seven days including
|
194
|
+
# information about secondary hours of a business. Secondary hours are different
|
195
|
+
# from a business's main hours. For example, a restaurant can specify drive
|
196
|
+
# through hours or delivery hours as its secondary hours. This field populates
|
197
|
+
# the type subfield, which draws from a predefined list of opening hours types (
|
198
|
+
# such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the place.
|
199
|
+
# This field includes the special_days subfield of all hours, set for dates that
|
200
|
+
# have exceptional hours.
|
201
|
+
# Corresponds to the JSON property `currentSecondaryOpeningHours`
|
202
|
+
# @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceOpeningHours>]
|
203
|
+
attr_accessor :current_secondary_opening_hours
|
204
|
+
|
205
|
+
# Output only. Specifies if the business supports delivery.
|
206
|
+
# Corresponds to the JSON property `delivery`
|
207
|
+
# @return [Boolean]
|
208
|
+
attr_accessor :delivery
|
209
|
+
alias_method :delivery?, :delivery
|
210
|
+
|
211
|
+
# Output only. Specifies if the business supports indoor or outdoor seating
|
212
|
+
# options.
|
213
|
+
# Corresponds to the JSON property `dineIn`
|
214
|
+
# @return [Boolean]
|
215
|
+
attr_accessor :dine_in
|
216
|
+
alias_method :dine_in?, :dine_in
|
217
|
+
|
218
|
+
# Localized variant of a text in a particular language.
|
219
|
+
# Corresponds to the JSON property `displayName`
|
220
|
+
# @return [Google::Apis::PlacesV1::GoogleTypeLocalizedText]
|
221
|
+
attr_accessor :display_name
|
222
|
+
|
223
|
+
# Localized variant of a text in a particular language.
|
224
|
+
# Corresponds to the JSON property `editorialSummary`
|
225
|
+
# @return [Google::Apis::PlacesV1::GoogleTypeLocalizedText]
|
226
|
+
attr_accessor :editorial_summary
|
227
|
+
|
228
|
+
# Output only. A full, human-readable address for this place.
|
229
|
+
# Corresponds to the JSON property `formattedAddress`
|
230
|
+
# @return [String]
|
231
|
+
attr_accessor :formatted_address
|
232
|
+
|
233
|
+
# Output only. A URL providing more information about this place.
|
234
|
+
# Corresponds to the JSON property `googleMapsUri`
|
235
|
+
# @return [String]
|
236
|
+
attr_accessor :google_maps_uri
|
237
|
+
|
238
|
+
# Output only. Background color for icon_mask in hex format, e.g. #909CE1.
|
239
|
+
# Corresponds to the JSON property `iconBackgroundColor`
|
240
|
+
# @return [String]
|
241
|
+
attr_accessor :icon_background_color
|
242
|
+
|
243
|
+
# Output only. A truncated URL to an v2 icon mask. User can access different
|
244
|
+
# icon type by appending type suffix to the end (eg, ".svg" or ".png").
|
245
|
+
# Corresponds to the JSON property `iconMaskBaseUri`
|
246
|
+
# @return [String]
|
247
|
+
attr_accessor :icon_mask_base_uri
|
248
|
+
|
249
|
+
# Output only. The unique identifier of a place.
|
250
|
+
# Corresponds to the JSON property `id`
|
251
|
+
# @return [String]
|
252
|
+
attr_accessor :id
|
253
|
+
|
254
|
+
# Output only. A human-readable phone number for the place, in international
|
255
|
+
# format.
|
256
|
+
# Corresponds to the JSON property `internationalPhoneNumber`
|
257
|
+
# @return [String]
|
258
|
+
attr_accessor :international_phone_number
|
259
|
+
|
260
|
+
# An object that represents a latitude/longitude pair. This is expressed as a
|
261
|
+
# pair of doubles to represent degrees latitude and degrees longitude. Unless
|
262
|
+
# specified otherwise, this object must conform to the WGS84 standard. Values
|
263
|
+
# must be within normalized ranges.
|
264
|
+
# Corresponds to the JSON property `location`
|
265
|
+
# @return [Google::Apis::PlacesV1::GoogleTypeLatLng]
|
266
|
+
attr_accessor :location
|
267
|
+
|
268
|
+
# Output only. An ID representing this place which may be used to look up this
|
269
|
+
# place again (a.k.a. the API "resource" name: places/).
|
270
|
+
# Corresponds to the JSON property `name`
|
271
|
+
# @return [String]
|
272
|
+
attr_accessor :name
|
273
|
+
|
274
|
+
# Output only. A human-readable phone number for the place, in national format.
|
275
|
+
# Corresponds to the JSON property `nationalPhoneNumber`
|
276
|
+
# @return [String]
|
277
|
+
attr_accessor :national_phone_number
|
278
|
+
|
279
|
+
# Information about business hour of the place.
|
280
|
+
# Corresponds to the JSON property `openingHours`
|
281
|
+
# @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceOpeningHours]
|
282
|
+
attr_accessor :opening_hours
|
283
|
+
|
284
|
+
# Plus code (http://plus.codes) is a location reference with two formats: global
|
285
|
+
# code defining a 14mx14m (1/8000th of a degree) or smaller rectangle, and
|
286
|
+
# compound code, replacing the prefix with a reference location.
|
287
|
+
# Corresponds to the JSON property `plusCode`
|
288
|
+
# @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1PlacePlusCode]
|
289
|
+
attr_accessor :plus_code
|
290
|
+
|
291
|
+
# Output only. Price level of the place.
|
292
|
+
# Corresponds to the JSON property `priceLevel`
|
293
|
+
# @return [String]
|
294
|
+
attr_accessor :price_level
|
295
|
+
|
296
|
+
# Output only. A rating between 1.0 and 5.0, based on user reviews of this place.
|
297
|
+
# Corresponds to the JSON property `rating`
|
298
|
+
# @return [Float]
|
299
|
+
attr_accessor :rating
|
300
|
+
|
301
|
+
# Output only. Specifies if the place supports reservations.
|
302
|
+
# Corresponds to the JSON property `reservable`
|
303
|
+
# @return [Boolean]
|
304
|
+
attr_accessor :reservable
|
305
|
+
alias_method :reservable?, :reservable
|
306
|
+
|
307
|
+
# Output only. List of reviews about this place.
|
308
|
+
# Corresponds to the JSON property `reviews`
|
309
|
+
# @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceReview>]
|
310
|
+
attr_accessor :reviews
|
311
|
+
|
312
|
+
# Output only. Contains an array of entries for information about regular
|
313
|
+
# secondary hours of a business. Secondary hours are different from a business's
|
314
|
+
# main hours. For example, a restaurant can specify drive through hours or
|
315
|
+
# delivery hours as its secondary hours. This field populates the type subfield,
|
316
|
+
# which draws from a predefined list of opening hours types (such as
|
317
|
+
# DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the place.
|
318
|
+
# Corresponds to the JSON property `secondaryOpeningHours`
|
319
|
+
# @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceOpeningHours>]
|
320
|
+
attr_accessor :secondary_opening_hours
|
321
|
+
|
322
|
+
# Output only. Specifies if the place serves beer.
|
323
|
+
# Corresponds to the JSON property `servesBeer`
|
324
|
+
# @return [Boolean]
|
325
|
+
attr_accessor :serves_beer
|
326
|
+
alias_method :serves_beer?, :serves_beer
|
327
|
+
|
328
|
+
# Output only. Specifies if the place serves breakfast.
|
329
|
+
# Corresponds to the JSON property `servesBreakfast`
|
330
|
+
# @return [Boolean]
|
331
|
+
attr_accessor :serves_breakfast
|
332
|
+
alias_method :serves_breakfast?, :serves_breakfast
|
333
|
+
|
334
|
+
# Output only. Specifies if the place serves brunch.
|
335
|
+
# Corresponds to the JSON property `servesBrunch`
|
336
|
+
# @return [Boolean]
|
337
|
+
attr_accessor :serves_brunch
|
338
|
+
alias_method :serves_brunch?, :serves_brunch
|
339
|
+
|
340
|
+
# Output only. Specifies if the place serves dinner.
|
341
|
+
# Corresponds to the JSON property `servesDinner`
|
342
|
+
# @return [Boolean]
|
343
|
+
attr_accessor :serves_dinner
|
344
|
+
alias_method :serves_dinner?, :serves_dinner
|
345
|
+
|
346
|
+
# Output only. Specifies if the place serves lunch.
|
347
|
+
# Corresponds to the JSON property `servesLunch`
|
348
|
+
# @return [Boolean]
|
349
|
+
attr_accessor :serves_lunch
|
350
|
+
alias_method :serves_lunch?, :serves_lunch
|
351
|
+
|
352
|
+
# Output only. Specifies if the place serves vegetarian food.
|
353
|
+
# Corresponds to the JSON property `servesVegetarianFood`
|
354
|
+
# @return [Boolean]
|
355
|
+
attr_accessor :serves_vegetarian_food
|
356
|
+
alias_method :serves_vegetarian_food?, :serves_vegetarian_food
|
357
|
+
|
358
|
+
# Output only. Specifies if the place serves wine.
|
359
|
+
# Corresponds to the JSON property `servesWine`
|
360
|
+
# @return [Boolean]
|
361
|
+
attr_accessor :serves_wine
|
362
|
+
alias_method :serves_wine?, :serves_wine
|
363
|
+
|
364
|
+
# Output only. Specifies if the business supports takeout.
|
365
|
+
# Corresponds to the JSON property `takeout`
|
366
|
+
# @return [Boolean]
|
367
|
+
attr_accessor :takeout
|
368
|
+
alias_method :takeout?, :takeout
|
369
|
+
|
370
|
+
# Output only. A set of type tags for this result. For example, "political" and "
|
371
|
+
# locality".
|
372
|
+
# Corresponds to the JSON property `types`
|
373
|
+
# @return [Array<String>]
|
374
|
+
attr_accessor :types
|
375
|
+
|
376
|
+
# Output only. The total number of reviews (with or without text) for this place.
|
377
|
+
# Corresponds to the JSON property `userRatingCount`
|
378
|
+
# @return [Fixnum]
|
379
|
+
attr_accessor :user_rating_count
|
380
|
+
|
381
|
+
# Output only. Number of minutes this place's timezone is currently offset from
|
382
|
+
# UTC. This is expressed in minutes to support timezones that are offset by
|
383
|
+
# fractions of an hour, e.g. X hours and 15 minutes.
|
384
|
+
# Corresponds to the JSON property `utcOffsetMinutes`
|
385
|
+
# @return [Fixnum]
|
386
|
+
attr_accessor :utc_offset_minutes
|
387
|
+
|
388
|
+
# A latitude-longitude viewport, represented as two diagonally opposite `low`
|
389
|
+
# and `high` points. A viewport is considered a closed region, i.e. it includes
|
390
|
+
# its boundary. The latitude bounds must range between -90 to 90 degrees
|
391
|
+
# inclusive, and the longitude bounds must range between -180 to 180 degrees
|
392
|
+
# inclusive. Various cases include: - If `low` = `high`, the viewport consists
|
393
|
+
# of that single point. - If `low.longitude` > `high.longitude`, the longitude
|
394
|
+
# range is inverted (the viewport crosses the 180 degree longitude line). - If `
|
395
|
+
# low.longitude` = -180 degrees and `high.longitude` = 180 degrees, the viewport
|
396
|
+
# includes all longitudes. - If `low.longitude` = 180 degrees and `high.
|
397
|
+
# longitude` = -180 degrees, the longitude range is empty. - If `low.latitude` >
|
398
|
+
# `high.latitude`, the latitude range is empty. Both `low` and `high` must be
|
399
|
+
# populated, and the represented box cannot be empty (as specified by the
|
400
|
+
# definitions above). An empty viewport will result in an error. For example,
|
401
|
+
# this viewport fully encloses New York City: ` "low": ` "latitude": 40.477398, "
|
402
|
+
# longitude": -74.259087 `, "high": ` "latitude": 40.91618, "longitude": -73.
|
403
|
+
# 70018 ` `
|
404
|
+
# Corresponds to the JSON property `viewport`
|
405
|
+
# @return [Google::Apis::PlacesV1::GoogleGeoTypeViewport]
|
406
|
+
attr_accessor :viewport
|
407
|
+
|
408
|
+
# Output only. The authoritative website for this place, e.g. a business'
|
409
|
+
# homepage. Note that for places that are part of a chain (e.g. an IKEA store),
|
410
|
+
# this will usually be the website for the individual store, not the overall
|
411
|
+
# chain.
|
412
|
+
# Corresponds to the JSON property `websiteUri`
|
413
|
+
# @return [String]
|
414
|
+
attr_accessor :website_uri
|
415
|
+
|
416
|
+
# Output only. Specifies if the place has an entrance that is wheelchair-
|
417
|
+
# accessible.
|
418
|
+
# Corresponds to the JSON property `wheelchairAccessibleEntrance`
|
419
|
+
# @return [Boolean]
|
420
|
+
attr_accessor :wheelchair_accessible_entrance
|
421
|
+
alias_method :wheelchair_accessible_entrance?, :wheelchair_accessible_entrance
|
422
|
+
|
423
|
+
def initialize(**args)
|
424
|
+
update!(**args)
|
425
|
+
end
|
426
|
+
|
427
|
+
# Update properties of this object
|
428
|
+
def update!(**args)
|
429
|
+
@address_components = args[:address_components] if args.key?(:address_components)
|
430
|
+
@adr_format_address = args[:adr_format_address] if args.key?(:adr_format_address)
|
431
|
+
@attributions = args[:attributions] if args.key?(:attributions)
|
432
|
+
@business_status = args[:business_status] if args.key?(:business_status)
|
433
|
+
@curbside_pickup = args[:curbside_pickup] if args.key?(:curbside_pickup)
|
434
|
+
@current_opening_hours = args[:current_opening_hours] if args.key?(:current_opening_hours)
|
435
|
+
@current_secondary_opening_hours = args[:current_secondary_opening_hours] if args.key?(:current_secondary_opening_hours)
|
436
|
+
@delivery = args[:delivery] if args.key?(:delivery)
|
437
|
+
@dine_in = args[:dine_in] if args.key?(:dine_in)
|
438
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
439
|
+
@editorial_summary = args[:editorial_summary] if args.key?(:editorial_summary)
|
440
|
+
@formatted_address = args[:formatted_address] if args.key?(:formatted_address)
|
441
|
+
@google_maps_uri = args[:google_maps_uri] if args.key?(:google_maps_uri)
|
442
|
+
@icon_background_color = args[:icon_background_color] if args.key?(:icon_background_color)
|
443
|
+
@icon_mask_base_uri = args[:icon_mask_base_uri] if args.key?(:icon_mask_base_uri)
|
444
|
+
@id = args[:id] if args.key?(:id)
|
445
|
+
@international_phone_number = args[:international_phone_number] if args.key?(:international_phone_number)
|
446
|
+
@location = args[:location] if args.key?(:location)
|
447
|
+
@name = args[:name] if args.key?(:name)
|
448
|
+
@national_phone_number = args[:national_phone_number] if args.key?(:national_phone_number)
|
449
|
+
@opening_hours = args[:opening_hours] if args.key?(:opening_hours)
|
450
|
+
@plus_code = args[:plus_code] if args.key?(:plus_code)
|
451
|
+
@price_level = args[:price_level] if args.key?(:price_level)
|
452
|
+
@rating = args[:rating] if args.key?(:rating)
|
453
|
+
@reservable = args[:reservable] if args.key?(:reservable)
|
454
|
+
@reviews = args[:reviews] if args.key?(:reviews)
|
455
|
+
@secondary_opening_hours = args[:secondary_opening_hours] if args.key?(:secondary_opening_hours)
|
456
|
+
@serves_beer = args[:serves_beer] if args.key?(:serves_beer)
|
457
|
+
@serves_breakfast = args[:serves_breakfast] if args.key?(:serves_breakfast)
|
458
|
+
@serves_brunch = args[:serves_brunch] if args.key?(:serves_brunch)
|
459
|
+
@serves_dinner = args[:serves_dinner] if args.key?(:serves_dinner)
|
460
|
+
@serves_lunch = args[:serves_lunch] if args.key?(:serves_lunch)
|
461
|
+
@serves_vegetarian_food = args[:serves_vegetarian_food] if args.key?(:serves_vegetarian_food)
|
462
|
+
@serves_wine = args[:serves_wine] if args.key?(:serves_wine)
|
463
|
+
@takeout = args[:takeout] if args.key?(:takeout)
|
464
|
+
@types = args[:types] if args.key?(:types)
|
465
|
+
@user_rating_count = args[:user_rating_count] if args.key?(:user_rating_count)
|
466
|
+
@utc_offset_minutes = args[:utc_offset_minutes] if args.key?(:utc_offset_minutes)
|
467
|
+
@viewport = args[:viewport] if args.key?(:viewport)
|
468
|
+
@website_uri = args[:website_uri] if args.key?(:website_uri)
|
469
|
+
@wheelchair_accessible_entrance = args[:wheelchair_accessible_entrance] if args.key?(:wheelchair_accessible_entrance)
|
470
|
+
end
|
471
|
+
end
|
472
|
+
|
473
|
+
# The structured components that form the formatted address, if this information
|
474
|
+
# is available.
|
475
|
+
class GoogleMapsPlacesV1PlaceAddressComponent
|
476
|
+
include Google::Apis::Core::Hashable
|
477
|
+
|
478
|
+
# Output only. The language used to format this components, in CLDR notation.
|
479
|
+
# Corresponds to the JSON property `languageCode`
|
480
|
+
# @return [String]
|
481
|
+
attr_accessor :language_code
|
482
|
+
|
483
|
+
# Output only. The full text description or name of the address component. For
|
484
|
+
# example, an address component for the country Australia may have a long_name
|
485
|
+
# of "Australia".
|
486
|
+
# Corresponds to the JSON property `longText`
|
487
|
+
# @return [String]
|
488
|
+
attr_accessor :long_text
|
489
|
+
|
490
|
+
# Output only. An abbreviated textual name for the address component, if
|
491
|
+
# available. For example, an address component for the country of Australia may
|
492
|
+
# have a short_name of "AU".
|
493
|
+
# Corresponds to the JSON property `shortText`
|
494
|
+
# @return [String]
|
495
|
+
attr_accessor :short_text
|
496
|
+
|
497
|
+
# Output only. An array indicating the type(s) of the address component.
|
498
|
+
# Corresponds to the JSON property `types`
|
499
|
+
# @return [Array<String>]
|
500
|
+
attr_accessor :types
|
501
|
+
|
502
|
+
def initialize(**args)
|
503
|
+
update!(**args)
|
504
|
+
end
|
505
|
+
|
506
|
+
# Update properties of this object
|
507
|
+
def update!(**args)
|
508
|
+
@language_code = args[:language_code] if args.key?(:language_code)
|
509
|
+
@long_text = args[:long_text] if args.key?(:long_text)
|
510
|
+
@short_text = args[:short_text] if args.key?(:short_text)
|
511
|
+
@types = args[:types] if args.key?(:types)
|
512
|
+
end
|
513
|
+
end
|
514
|
+
|
515
|
+
# Information about data providers of this place.
|
516
|
+
class GoogleMapsPlacesV1PlaceAttribution
|
517
|
+
include Google::Apis::Core::Hashable
|
518
|
+
|
519
|
+
# Output only. Name of the Place's data provider.
|
520
|
+
# Corresponds to the JSON property `provider`
|
521
|
+
# @return [String]
|
522
|
+
attr_accessor :provider
|
523
|
+
|
524
|
+
# Output only. URI to the Place's data provider.
|
525
|
+
# Corresponds to the JSON property `providerUri`
|
526
|
+
# @return [String]
|
527
|
+
attr_accessor :provider_uri
|
528
|
+
|
529
|
+
def initialize(**args)
|
530
|
+
update!(**args)
|
531
|
+
end
|
532
|
+
|
533
|
+
# Update properties of this object
|
534
|
+
def update!(**args)
|
535
|
+
@provider = args[:provider] if args.key?(:provider)
|
536
|
+
@provider_uri = args[:provider_uri] if args.key?(:provider_uri)
|
537
|
+
end
|
538
|
+
end
|
539
|
+
|
540
|
+
# Information about business hour of the place.
|
541
|
+
class GoogleMapsPlacesV1PlaceOpeningHours
|
542
|
+
include Google::Apis::Core::Hashable
|
543
|
+
|
544
|
+
# Output only. Is this place open right now? Always present unless we lack time-
|
545
|
+
# of-day or timezone data for these opening hours.
|
546
|
+
# Corresponds to the JSON property `openNow`
|
547
|
+
# @return [Boolean]
|
548
|
+
attr_accessor :open_now
|
549
|
+
alias_method :open_now?, :open_now
|
550
|
+
|
551
|
+
# Output only. The periods that this place is open during the week. The periods
|
552
|
+
# are in chronological order, starting with Sunday in the place-local timezone.
|
553
|
+
# An empty (but not absent) value indicates a place that is never open, e.g.
|
554
|
+
# because it is closed temporarily for renovations.
|
555
|
+
# Corresponds to the JSON property `periods`
|
556
|
+
# @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceOpeningHoursPeriod>]
|
557
|
+
attr_accessor :periods
|
558
|
+
|
559
|
+
# Output only. A type string used to identify the type of secondary hours.
|
560
|
+
# Corresponds to the JSON property `secondaryHoursType`
|
561
|
+
# @return [String]
|
562
|
+
attr_accessor :secondary_hours_type
|
563
|
+
|
564
|
+
# Output only. Structured information for special days that fall within the
|
565
|
+
# period that the returned opening hours cover. Special days are days that could
|
566
|
+
# impact the business hours of a place, e.g. Christmas day. Set for
|
567
|
+
# current_opening_hours and current_secondary_opening_hours if there are
|
568
|
+
# exceptional hours.
|
569
|
+
# Corresponds to the JSON property `specialDays`
|
570
|
+
# @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceOpeningHoursSpecialDay>]
|
571
|
+
attr_accessor :special_days
|
572
|
+
|
573
|
+
# Output only. Localized strings describing the opening hours of this place, one
|
574
|
+
# string for each day of the week. Will be empty if the hours are unknown or
|
575
|
+
# could not be converted to localized text. Example: "Sun: 18:00–06:00"
|
576
|
+
# Corresponds to the JSON property `weekdayDescriptions`
|
577
|
+
# @return [Array<String>]
|
578
|
+
attr_accessor :weekday_descriptions
|
579
|
+
|
580
|
+
def initialize(**args)
|
581
|
+
update!(**args)
|
582
|
+
end
|
583
|
+
|
584
|
+
# Update properties of this object
|
585
|
+
def update!(**args)
|
586
|
+
@open_now = args[:open_now] if args.key?(:open_now)
|
587
|
+
@periods = args[:periods] if args.key?(:periods)
|
588
|
+
@secondary_hours_type = args[:secondary_hours_type] if args.key?(:secondary_hours_type)
|
589
|
+
@special_days = args[:special_days] if args.key?(:special_days)
|
590
|
+
@weekday_descriptions = args[:weekday_descriptions] if args.key?(:weekday_descriptions)
|
591
|
+
end
|
592
|
+
end
|
593
|
+
|
594
|
+
# A period the place remains in open_now status.
|
595
|
+
class GoogleMapsPlacesV1PlaceOpeningHoursPeriod
|
596
|
+
include Google::Apis::Core::Hashable
|
597
|
+
|
598
|
+
# Status changing points.
|
599
|
+
# Corresponds to the JSON property `close`
|
600
|
+
# @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceOpeningHoursPeriodPoint]
|
601
|
+
attr_accessor :close
|
602
|
+
|
603
|
+
# Status changing points.
|
604
|
+
# Corresponds to the JSON property `open`
|
605
|
+
# @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceOpeningHoursPeriodPoint]
|
606
|
+
attr_accessor :open
|
607
|
+
|
608
|
+
def initialize(**args)
|
609
|
+
update!(**args)
|
610
|
+
end
|
611
|
+
|
612
|
+
# Update properties of this object
|
613
|
+
def update!(**args)
|
614
|
+
@close = args[:close] if args.key?(:close)
|
615
|
+
@open = args[:open] if args.key?(:open)
|
616
|
+
end
|
617
|
+
end
|
618
|
+
|
619
|
+
# Status changing points.
|
620
|
+
class GoogleMapsPlacesV1PlaceOpeningHoursPeriodPoint
|
621
|
+
include Google::Apis::Core::Hashable
|
622
|
+
|
623
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
624
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
625
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
626
|
+
# following: * A full date, with non-zero year, month, and day values. * A month
|
627
|
+
# and day, with a zero year (for example, an anniversary). * A year on its own,
|
628
|
+
# with a zero month and a zero day. * A year and month, with a zero day (for
|
629
|
+
# example, a credit card expiration date). Related types: * google.type.
|
630
|
+
# TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
|
631
|
+
# Corresponds to the JSON property `date`
|
632
|
+
# @return [Google::Apis::PlacesV1::GoogleTypeDate]
|
633
|
+
attr_accessor :date
|
634
|
+
|
635
|
+
# Output only. Date of the endpoint expressed in RFC3339 format in the local
|
636
|
+
# timezone for the place. For example 2010-12-31.
|
637
|
+
# Corresponds to the JSON property `dateDeprecated`
|
638
|
+
# @return [String]
|
639
|
+
attr_accessor :date_deprecated
|
640
|
+
|
641
|
+
# Output only. A day of the week, as an integer in the range 0-6. 0 is Sunday, 1
|
642
|
+
# is Monday, etc.
|
643
|
+
# Corresponds to the JSON property `day`
|
644
|
+
# @return [Fixnum]
|
645
|
+
attr_accessor :day
|
646
|
+
|
647
|
+
# Output only. The hour in 2 digits. Ranges from 00 to 23.
|
648
|
+
# Corresponds to the JSON property `hour`
|
649
|
+
# @return [Fixnum]
|
650
|
+
attr_accessor :hour
|
651
|
+
|
652
|
+
# Output only. The minute in 2 digits. Ranges from 00 to 59.
|
653
|
+
# Corresponds to the JSON property `minute`
|
654
|
+
# @return [Fixnum]
|
655
|
+
attr_accessor :minute
|
656
|
+
|
657
|
+
# Output only. Whether or not this endpoint was truncated. Truncation occurs
|
658
|
+
# when the real hours are outside the times we are willing to return hours
|
659
|
+
# between, so we truncate the hours back to these boundaries. This ensures that
|
660
|
+
# at most 24 * 7 hours from midnight of the day of the request are returned.
|
661
|
+
# Corresponds to the JSON property `truncated`
|
662
|
+
# @return [Boolean]
|
663
|
+
attr_accessor :truncated
|
664
|
+
alias_method :truncated?, :truncated
|
665
|
+
|
666
|
+
def initialize(**args)
|
667
|
+
update!(**args)
|
668
|
+
end
|
669
|
+
|
670
|
+
# Update properties of this object
|
671
|
+
def update!(**args)
|
672
|
+
@date = args[:date] if args.key?(:date)
|
673
|
+
@date_deprecated = args[:date_deprecated] if args.key?(:date_deprecated)
|
674
|
+
@day = args[:day] if args.key?(:day)
|
675
|
+
@hour = args[:hour] if args.key?(:hour)
|
676
|
+
@minute = args[:minute] if args.key?(:minute)
|
677
|
+
@truncated = args[:truncated] if args.key?(:truncated)
|
678
|
+
end
|
679
|
+
end
|
680
|
+
|
681
|
+
# Structured information for special days that fall within the period that the
|
682
|
+
# returned opening hours cover. Special days are days that could impact the
|
683
|
+
# business hours of a place, e.g. Christmas day.
|
684
|
+
class GoogleMapsPlacesV1PlaceOpeningHoursSpecialDay
|
685
|
+
include Google::Apis::Core::Hashable
|
686
|
+
|
687
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
688
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
689
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
690
|
+
# following: * A full date, with non-zero year, month, and day values. * A month
|
691
|
+
# and day, with a zero year (for example, an anniversary). * A year on its own,
|
692
|
+
# with a zero month and a zero day. * A year and month, with a zero day (for
|
693
|
+
# example, a credit card expiration date). Related types: * google.type.
|
694
|
+
# TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
|
695
|
+
# Corresponds to the JSON property `date`
|
696
|
+
# @return [Google::Apis::PlacesV1::GoogleTypeDate]
|
697
|
+
attr_accessor :date
|
698
|
+
|
699
|
+
def initialize(**args)
|
700
|
+
update!(**args)
|
701
|
+
end
|
702
|
+
|
703
|
+
# Update properties of this object
|
704
|
+
def update!(**args)
|
705
|
+
@date = args[:date] if args.key?(:date)
|
706
|
+
end
|
707
|
+
end
|
708
|
+
|
709
|
+
# Plus code (http://plus.codes) is a location reference with two formats: global
|
710
|
+
# code defining a 14mx14m (1/8000th of a degree) or smaller rectangle, and
|
711
|
+
# compound code, replacing the prefix with a reference location.
|
712
|
+
class GoogleMapsPlacesV1PlacePlusCode
|
713
|
+
include Google::Apis::Core::Hashable
|
714
|
+
|
715
|
+
# Output only. Place's compound code, such as "33GV+HQ, Ramberg, Norway",
|
716
|
+
# containing the suffix of the global code and replacing the prefix with a
|
717
|
+
# formatted name of a reference entity.
|
718
|
+
# Corresponds to the JSON property `compoundCode`
|
719
|
+
# @return [String]
|
720
|
+
attr_accessor :compound_code
|
721
|
+
|
722
|
+
# Output only. Place's global (full) code, such as "9FWM33GV+HQ", representing
|
723
|
+
# an 1/8000 by 1/8000 degree area (~14 by 14 meters).
|
724
|
+
# Corresponds to the JSON property `globalCode`
|
725
|
+
# @return [String]
|
726
|
+
attr_accessor :global_code
|
727
|
+
|
728
|
+
def initialize(**args)
|
729
|
+
update!(**args)
|
730
|
+
end
|
731
|
+
|
732
|
+
# Update properties of this object
|
733
|
+
def update!(**args)
|
734
|
+
@compound_code = args[:compound_code] if args.key?(:compound_code)
|
735
|
+
@global_code = args[:global_code] if args.key?(:global_code)
|
736
|
+
end
|
737
|
+
end
|
738
|
+
|
739
|
+
# Information about a review of the place.
|
740
|
+
class GoogleMapsPlacesV1PlaceReview
|
741
|
+
include Google::Apis::Core::Hashable
|
742
|
+
|
743
|
+
# Information about the author of the UGC data. Used in Photo, and Review.
|
744
|
+
# Corresponds to the JSON property `authorAttribution`
|
745
|
+
# @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1AuthorAttribution]
|
746
|
+
attr_accessor :author_attribution
|
747
|
+
|
748
|
+
# Output only. A BCP-47 language code indicating the original language of the
|
749
|
+
# review. If the review has been translated, then original_language != language.
|
750
|
+
# This field contains the main language tag only, and not the secondary tag
|
751
|
+
# indicating country or region. For example, all the English reviews are tagged
|
752
|
+
# as 'en', and not 'en-AU' or 'en-UK' and so on.This field is empty if there is
|
753
|
+
# only a rating with no review text.
|
754
|
+
# Corresponds to the JSON property `originalLanguageCode`
|
755
|
+
# @return [String]
|
756
|
+
attr_accessor :original_language_code
|
757
|
+
|
758
|
+
# Localized variant of a text in a particular language.
|
759
|
+
# Corresponds to the JSON property `originalText`
|
760
|
+
# @return [Google::Apis::PlacesV1::GoogleTypeLocalizedText]
|
761
|
+
attr_accessor :original_text
|
762
|
+
|
763
|
+
# Output only. Timestamp for the review, expressed in seconds since epoch.
|
764
|
+
# Corresponds to the JSON property `publishTime`
|
765
|
+
# @return [String]
|
766
|
+
attr_accessor :publish_time
|
767
|
+
|
768
|
+
# Output only. A whole number between 1.0 and 5.0, a.k.a. the number of stars.
|
769
|
+
# Corresponds to the JSON property `rating`
|
770
|
+
# @return [Float]
|
771
|
+
attr_accessor :rating
|
772
|
+
|
773
|
+
# Output only. A string of formatted recent time, expressing the review time
|
774
|
+
# relative to the current time in a form appropriate for the language and
|
775
|
+
# country.
|
776
|
+
# Corresponds to the JSON property `relativePublishTimeDescription`
|
777
|
+
# @return [String]
|
778
|
+
attr_accessor :relative_publish_time_description
|
779
|
+
|
780
|
+
# Localized variant of a text in a particular language.
|
781
|
+
# Corresponds to the JSON property `text`
|
782
|
+
# @return [Google::Apis::PlacesV1::GoogleTypeLocalizedText]
|
783
|
+
attr_accessor :text
|
784
|
+
|
785
|
+
# Output only. A boolean value indicating if the review was translated from the
|
786
|
+
# original language it was written in. If a review has been translated,
|
787
|
+
# corresponding to a value of true, Google recommends that you indicate this to
|
788
|
+
# your users. For example, you can add the following string, “Translated by
|
789
|
+
# Google”, to the review.
|
790
|
+
# Corresponds to the JSON property `translated`
|
791
|
+
# @return [Boolean]
|
792
|
+
attr_accessor :translated
|
793
|
+
alias_method :translated?, :translated
|
794
|
+
|
795
|
+
def initialize(**args)
|
796
|
+
update!(**args)
|
797
|
+
end
|
798
|
+
|
799
|
+
# Update properties of this object
|
800
|
+
def update!(**args)
|
801
|
+
@author_attribution = args[:author_attribution] if args.key?(:author_attribution)
|
802
|
+
@original_language_code = args[:original_language_code] if args.key?(:original_language_code)
|
803
|
+
@original_text = args[:original_text] if args.key?(:original_text)
|
804
|
+
@publish_time = args[:publish_time] if args.key?(:publish_time)
|
805
|
+
@rating = args[:rating] if args.key?(:rating)
|
806
|
+
@relative_publish_time_description = args[:relative_publish_time_description] if args.key?(:relative_publish_time_description)
|
807
|
+
@text = args[:text] if args.key?(:text)
|
808
|
+
@translated = args[:translated] if args.key?(:translated)
|
809
|
+
end
|
810
|
+
end
|
811
|
+
|
812
|
+
# Request proto for SearchText.
|
813
|
+
class GoogleMapsPlacesV1SearchTextRequest
|
814
|
+
include Google::Apis::Core::Hashable
|
815
|
+
|
816
|
+
# The requested place type. Full list of types supported: https://developers.
|
817
|
+
# google.com/places/supported_types. Only support one included type.
|
818
|
+
# Corresponds to the JSON property `includedType`
|
819
|
+
# @return [String]
|
820
|
+
attr_accessor :included_type
|
821
|
+
|
822
|
+
# Place details will be displayed with the preferred language if available. If
|
823
|
+
# the language code is unspecified or unrecognized, place details of any
|
824
|
+
# language may be returned, with a preference for English if such details exist.
|
825
|
+
# Current list of supported languages: https://developers.google.com/maps/faq#
|
826
|
+
# languagesupport.
|
827
|
+
# Corresponds to the JSON property `languageCode`
|
828
|
+
# @return [String]
|
829
|
+
attr_accessor :language_code
|
830
|
+
|
831
|
+
# [Deprecated!]The region to search.
|
832
|
+
# Corresponds to the JSON property `location`
|
833
|
+
# @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1SearchTextRequestLocation]
|
834
|
+
attr_accessor :location
|
835
|
+
|
836
|
+
# The region to search. This location serves as a bias which means results
|
837
|
+
# around given location might be returned.
|
838
|
+
# Corresponds to the JSON property `locationBias`
|
839
|
+
# @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1SearchTextRequestLocationBias]
|
840
|
+
attr_accessor :location_bias
|
841
|
+
|
842
|
+
# The region to search. This location serves as a restriction which means
|
843
|
+
# results outside given location will not be returned.
|
844
|
+
# Corresponds to the JSON property `locationRestriction`
|
845
|
+
# @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1SearchTextRequestLocationRestriction]
|
846
|
+
attr_accessor :location_restriction
|
847
|
+
|
848
|
+
# Maximum number of results to return. It must be between 1 and 20, inclusively.
|
849
|
+
# If the number is unset, it falls back to the upper limit. If the number is set
|
850
|
+
# to negative or exceeds the upper limit, an INVALID_ARGUMENT error is returned.
|
851
|
+
# Corresponds to the JSON property `maxResultCount`
|
852
|
+
# @return [Fixnum]
|
853
|
+
attr_accessor :max_result_count
|
854
|
+
|
855
|
+
# Filter out results whose average user rating is strictly less than this limit.
|
856
|
+
# A valid value must be an float between 0 and 5 (inclusively) at a 0.5 cadence
|
857
|
+
# i.e. [0, 0.5, 1.0, ... , 5.0] inclusively. This is to keep parity with
|
858
|
+
# LocalRefinement_UserRating. The input rating will round up to the nearest 0.5(
|
859
|
+
# ceiling). For instance, a rating of 0.6 will eliminate all results with a less
|
860
|
+
# than 1.0 rating.
|
861
|
+
# Corresponds to the JSON property `minRating`
|
862
|
+
# @return [Float]
|
863
|
+
attr_accessor :min_rating
|
864
|
+
|
865
|
+
# Used to restrict the search to places that are open at a specific time.
|
866
|
+
# open_now marks if a business is currently open.
|
867
|
+
# Corresponds to the JSON property `openNow`
|
868
|
+
# @return [Boolean]
|
869
|
+
attr_accessor :open_now
|
870
|
+
alias_method :open_now?, :open_now
|
871
|
+
|
872
|
+
# Used to restrict the search to places that are marked as certain price levels.
|
873
|
+
# Users can choose any combinations of price levels. Default to select all price
|
874
|
+
# levels.
|
875
|
+
# Corresponds to the JSON property `priceLevels`
|
876
|
+
# @return [Array<String>]
|
877
|
+
attr_accessor :price_levels
|
878
|
+
|
879
|
+
# int 32 range. Both min and max are optional. If only min is set, then the
|
880
|
+
# range only has a lower bound. If only max is set, then range only has an upper
|
881
|
+
# bound. At least one of min and max must be set. Values are inclusive.
|
882
|
+
# Corresponds to the JSON property `priceRange`
|
883
|
+
# @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1Int32Range]
|
884
|
+
attr_accessor :price_range
|
885
|
+
|
886
|
+
# How results will be ranked in the response.
|
887
|
+
# Corresponds to the JSON property `rankPreference`
|
888
|
+
# @return [String]
|
889
|
+
attr_accessor :rank_preference
|
890
|
+
|
891
|
+
# The Unicode country/region code (CLDR) of the location where the request is
|
892
|
+
# coming from. It is used to display the place details, like region-specific
|
893
|
+
# place name, if available. For more information, see http://www.unicode.org/
|
894
|
+
# reports/tr35/#unicode_region_subtag. Note that 3-digit region codes are not
|
895
|
+
# currently supported.
|
896
|
+
# Corresponds to the JSON property `regionCode`
|
897
|
+
# @return [String]
|
898
|
+
attr_accessor :region_code
|
899
|
+
|
900
|
+
# Used to set strict type filtering for included_type. If set to true, only
|
901
|
+
# results of the same type will be returned. Default to false.
|
902
|
+
# Corresponds to the JSON property `strictTypeFiltering`
|
903
|
+
# @return [Boolean]
|
904
|
+
attr_accessor :strict_type_filtering
|
905
|
+
alias_method :strict_type_filtering?, :strict_type_filtering
|
906
|
+
|
907
|
+
# Required. The text query for textual search.
|
908
|
+
# Corresponds to the JSON property `textQuery`
|
909
|
+
# @return [String]
|
910
|
+
attr_accessor :text_query
|
911
|
+
|
912
|
+
def initialize(**args)
|
913
|
+
update!(**args)
|
914
|
+
end
|
915
|
+
|
916
|
+
# Update properties of this object
|
917
|
+
def update!(**args)
|
918
|
+
@included_type = args[:included_type] if args.key?(:included_type)
|
919
|
+
@language_code = args[:language_code] if args.key?(:language_code)
|
920
|
+
@location = args[:location] if args.key?(:location)
|
921
|
+
@location_bias = args[:location_bias] if args.key?(:location_bias)
|
922
|
+
@location_restriction = args[:location_restriction] if args.key?(:location_restriction)
|
923
|
+
@max_result_count = args[:max_result_count] if args.key?(:max_result_count)
|
924
|
+
@min_rating = args[:min_rating] if args.key?(:min_rating)
|
925
|
+
@open_now = args[:open_now] if args.key?(:open_now)
|
926
|
+
@price_levels = args[:price_levels] if args.key?(:price_levels)
|
927
|
+
@price_range = args[:price_range] if args.key?(:price_range)
|
928
|
+
@rank_preference = args[:rank_preference] if args.key?(:rank_preference)
|
929
|
+
@region_code = args[:region_code] if args.key?(:region_code)
|
930
|
+
@strict_type_filtering = args[:strict_type_filtering] if args.key?(:strict_type_filtering)
|
931
|
+
@text_query = args[:text_query] if args.key?(:text_query)
|
932
|
+
end
|
933
|
+
end
|
934
|
+
|
935
|
+
# [Deprecated!]The region to search.
|
936
|
+
class GoogleMapsPlacesV1SearchTextRequestLocation
|
937
|
+
include Google::Apis::Core::Hashable
|
938
|
+
|
939
|
+
# A latitude-longitude viewport, represented as two diagonally opposite `low`
|
940
|
+
# and `high` points. A viewport is considered a closed region, i.e. it includes
|
941
|
+
# its boundary. The latitude bounds must range between -90 to 90 degrees
|
942
|
+
# inclusive, and the longitude bounds must range between -180 to 180 degrees
|
943
|
+
# inclusive. Various cases include: - If `low` = `high`, the viewport consists
|
944
|
+
# of that single point. - If `low.longitude` > `high.longitude`, the longitude
|
945
|
+
# range is inverted (the viewport crosses the 180 degree longitude line). - If `
|
946
|
+
# low.longitude` = -180 degrees and `high.longitude` = 180 degrees, the viewport
|
947
|
+
# includes all longitudes. - If `low.longitude` = 180 degrees and `high.
|
948
|
+
# longitude` = -180 degrees, the longitude range is empty. - If `low.latitude` >
|
949
|
+
# `high.latitude`, the latitude range is empty. Both `low` and `high` must be
|
950
|
+
# populated, and the represented box cannot be empty (as specified by the
|
951
|
+
# definitions above). An empty viewport will result in an error. For example,
|
952
|
+
# this viewport fully encloses New York City: ` "low": ` "latitude": 40.477398, "
|
953
|
+
# longitude": -74.259087 `, "high": ` "latitude": 40.91618, "longitude": -73.
|
954
|
+
# 70018 ` `
|
955
|
+
# Corresponds to the JSON property `rectangle`
|
956
|
+
# @return [Google::Apis::PlacesV1::GoogleGeoTypeViewport]
|
957
|
+
attr_accessor :rectangle
|
958
|
+
|
959
|
+
# Make location field a strict restriction and filter out POIs outside of the
|
960
|
+
# given location. If location type field is unset this field will have no effect.
|
961
|
+
# Corresponds to the JSON property `strictRestriction`
|
962
|
+
# @return [Boolean]
|
963
|
+
attr_accessor :strict_restriction
|
964
|
+
alias_method :strict_restriction?, :strict_restriction
|
965
|
+
|
966
|
+
def initialize(**args)
|
967
|
+
update!(**args)
|
968
|
+
end
|
969
|
+
|
970
|
+
# Update properties of this object
|
971
|
+
def update!(**args)
|
972
|
+
@rectangle = args[:rectangle] if args.key?(:rectangle)
|
973
|
+
@strict_restriction = args[:strict_restriction] if args.key?(:strict_restriction)
|
974
|
+
end
|
975
|
+
end
|
976
|
+
|
977
|
+
# The region to search. This location serves as a bias which means results
|
978
|
+
# around given location might be returned.
|
979
|
+
class GoogleMapsPlacesV1SearchTextRequestLocationBias
|
980
|
+
include Google::Apis::Core::Hashable
|
981
|
+
|
982
|
+
# Circle with a LatLng as center and radius.
|
983
|
+
# Corresponds to the JSON property `circle`
|
984
|
+
# @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1Circle]
|
985
|
+
attr_accessor :circle
|
986
|
+
|
987
|
+
# A latitude-longitude viewport, represented as two diagonally opposite `low`
|
988
|
+
# and `high` points. A viewport is considered a closed region, i.e. it includes
|
989
|
+
# its boundary. The latitude bounds must range between -90 to 90 degrees
|
990
|
+
# inclusive, and the longitude bounds must range between -180 to 180 degrees
|
991
|
+
# inclusive. Various cases include: - If `low` = `high`, the viewport consists
|
992
|
+
# of that single point. - If `low.longitude` > `high.longitude`, the longitude
|
993
|
+
# range is inverted (the viewport crosses the 180 degree longitude line). - If `
|
994
|
+
# low.longitude` = -180 degrees and `high.longitude` = 180 degrees, the viewport
|
995
|
+
# includes all longitudes. - If `low.longitude` = 180 degrees and `high.
|
996
|
+
# longitude` = -180 degrees, the longitude range is empty. - If `low.latitude` >
|
997
|
+
# `high.latitude`, the latitude range is empty. Both `low` and `high` must be
|
998
|
+
# populated, and the represented box cannot be empty (as specified by the
|
999
|
+
# definitions above). An empty viewport will result in an error. For example,
|
1000
|
+
# this viewport fully encloses New York City: ` "low": ` "latitude": 40.477398, "
|
1001
|
+
# longitude": -74.259087 `, "high": ` "latitude": 40.91618, "longitude": -73.
|
1002
|
+
# 70018 ` `
|
1003
|
+
# Corresponds to the JSON property `rectangle`
|
1004
|
+
# @return [Google::Apis::PlacesV1::GoogleGeoTypeViewport]
|
1005
|
+
attr_accessor :rectangle
|
1006
|
+
|
1007
|
+
def initialize(**args)
|
1008
|
+
update!(**args)
|
1009
|
+
end
|
1010
|
+
|
1011
|
+
# Update properties of this object
|
1012
|
+
def update!(**args)
|
1013
|
+
@circle = args[:circle] if args.key?(:circle)
|
1014
|
+
@rectangle = args[:rectangle] if args.key?(:rectangle)
|
1015
|
+
end
|
1016
|
+
end
|
1017
|
+
|
1018
|
+
# The region to search. This location serves as a restriction which means
|
1019
|
+
# results outside given location will not be returned.
|
1020
|
+
class GoogleMapsPlacesV1SearchTextRequestLocationRestriction
|
1021
|
+
include Google::Apis::Core::Hashable
|
1022
|
+
|
1023
|
+
# A latitude-longitude viewport, represented as two diagonally opposite `low`
|
1024
|
+
# and `high` points. A viewport is considered a closed region, i.e. it includes
|
1025
|
+
# its boundary. The latitude bounds must range between -90 to 90 degrees
|
1026
|
+
# inclusive, and the longitude bounds must range between -180 to 180 degrees
|
1027
|
+
# inclusive. Various cases include: - If `low` = `high`, the viewport consists
|
1028
|
+
# of that single point. - If `low.longitude` > `high.longitude`, the longitude
|
1029
|
+
# range is inverted (the viewport crosses the 180 degree longitude line). - If `
|
1030
|
+
# low.longitude` = -180 degrees and `high.longitude` = 180 degrees, the viewport
|
1031
|
+
# includes all longitudes. - If `low.longitude` = 180 degrees and `high.
|
1032
|
+
# longitude` = -180 degrees, the longitude range is empty. - If `low.latitude` >
|
1033
|
+
# `high.latitude`, the latitude range is empty. Both `low` and `high` must be
|
1034
|
+
# populated, and the represented box cannot be empty (as specified by the
|
1035
|
+
# definitions above). An empty viewport will result in an error. For example,
|
1036
|
+
# this viewport fully encloses New York City: ` "low": ` "latitude": 40.477398, "
|
1037
|
+
# longitude": -74.259087 `, "high": ` "latitude": 40.91618, "longitude": -73.
|
1038
|
+
# 70018 ` `
|
1039
|
+
# Corresponds to the JSON property `rectangle`
|
1040
|
+
# @return [Google::Apis::PlacesV1::GoogleGeoTypeViewport]
|
1041
|
+
attr_accessor :rectangle
|
1042
|
+
|
1043
|
+
def initialize(**args)
|
1044
|
+
update!(**args)
|
1045
|
+
end
|
1046
|
+
|
1047
|
+
# Update properties of this object
|
1048
|
+
def update!(**args)
|
1049
|
+
@rectangle = args[:rectangle] if args.key?(:rectangle)
|
1050
|
+
end
|
1051
|
+
end
|
1052
|
+
|
1053
|
+
# Response proto for SearchText.
|
1054
|
+
class GoogleMapsPlacesV1SearchTextResponse
|
1055
|
+
include Google::Apis::Core::Hashable
|
1056
|
+
|
1057
|
+
# A list of places that meet the user's text search criteria.
|
1058
|
+
# Corresponds to the JSON property `places`
|
1059
|
+
# @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1Place>]
|
1060
|
+
attr_accessor :places
|
1061
|
+
|
1062
|
+
def initialize(**args)
|
1063
|
+
update!(**args)
|
1064
|
+
end
|
1065
|
+
|
1066
|
+
# Update properties of this object
|
1067
|
+
def update!(**args)
|
1068
|
+
@places = args[:places] if args.key?(:places)
|
1069
|
+
end
|
1070
|
+
end
|
1071
|
+
|
1072
|
+
# Represents a whole or partial calendar date, such as a birthday. The time of
|
1073
|
+
# day and time zone are either specified elsewhere or are insignificant. The
|
1074
|
+
# date is relative to the Gregorian Calendar. This can represent one of the
|
1075
|
+
# following: * A full date, with non-zero year, month, and day values. * A month
|
1076
|
+
# and day, with a zero year (for example, an anniversary). * A year on its own,
|
1077
|
+
# with a zero month and a zero day. * A year and month, with a zero day (for
|
1078
|
+
# example, a credit card expiration date). Related types: * google.type.
|
1079
|
+
# TimeOfDay * google.type.DateTime * google.protobuf.Timestamp
|
1080
|
+
class GoogleTypeDate
|
1081
|
+
include Google::Apis::Core::Hashable
|
1082
|
+
|
1083
|
+
# Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to
|
1084
|
+
# specify a year by itself or a year and month where the day isn't significant.
|
1085
|
+
# Corresponds to the JSON property `day`
|
1086
|
+
# @return [Fixnum]
|
1087
|
+
attr_accessor :day
|
1088
|
+
|
1089
|
+
# Month of a year. Must be from 1 to 12, or 0 to specify a year without a month
|
1090
|
+
# and day.
|
1091
|
+
# Corresponds to the JSON property `month`
|
1092
|
+
# @return [Fixnum]
|
1093
|
+
attr_accessor :month
|
1094
|
+
|
1095
|
+
# Year of the date. Must be from 1 to 9999, or 0 to specify a date without a
|
1096
|
+
# year.
|
1097
|
+
# Corresponds to the JSON property `year`
|
1098
|
+
# @return [Fixnum]
|
1099
|
+
attr_accessor :year
|
1100
|
+
|
1101
|
+
def initialize(**args)
|
1102
|
+
update!(**args)
|
1103
|
+
end
|
1104
|
+
|
1105
|
+
# Update properties of this object
|
1106
|
+
def update!(**args)
|
1107
|
+
@day = args[:day] if args.key?(:day)
|
1108
|
+
@month = args[:month] if args.key?(:month)
|
1109
|
+
@year = args[:year] if args.key?(:year)
|
1110
|
+
end
|
1111
|
+
end
|
1112
|
+
|
1113
|
+
# An object that represents a latitude/longitude pair. This is expressed as a
|
1114
|
+
# pair of doubles to represent degrees latitude and degrees longitude. Unless
|
1115
|
+
# specified otherwise, this object must conform to the WGS84 standard. Values
|
1116
|
+
# must be within normalized ranges.
|
1117
|
+
class GoogleTypeLatLng
|
1118
|
+
include Google::Apis::Core::Hashable
|
1119
|
+
|
1120
|
+
# The latitude in degrees. It must be in the range [-90.0, +90.0].
|
1121
|
+
# Corresponds to the JSON property `latitude`
|
1122
|
+
# @return [Float]
|
1123
|
+
attr_accessor :latitude
|
1124
|
+
|
1125
|
+
# The longitude in degrees. It must be in the range [-180.0, +180.0].
|
1126
|
+
# Corresponds to the JSON property `longitude`
|
1127
|
+
# @return [Float]
|
1128
|
+
attr_accessor :longitude
|
1129
|
+
|
1130
|
+
def initialize(**args)
|
1131
|
+
update!(**args)
|
1132
|
+
end
|
1133
|
+
|
1134
|
+
# Update properties of this object
|
1135
|
+
def update!(**args)
|
1136
|
+
@latitude = args[:latitude] if args.key?(:latitude)
|
1137
|
+
@longitude = args[:longitude] if args.key?(:longitude)
|
1138
|
+
end
|
1139
|
+
end
|
1140
|
+
|
1141
|
+
# Localized variant of a text in a particular language.
|
1142
|
+
class GoogleTypeLocalizedText
|
1143
|
+
include Google::Apis::Core::Hashable
|
1144
|
+
|
1145
|
+
# The text's BCP-47 language code, such as "en-US" or "sr-Latn". For more
|
1146
|
+
# information, see http://www.unicode.org/reports/tr35/#
|
1147
|
+
# Unicode_locale_identifier.
|
1148
|
+
# Corresponds to the JSON property `languageCode`
|
1149
|
+
# @return [String]
|
1150
|
+
attr_accessor :language_code
|
1151
|
+
|
1152
|
+
# Localized string in the language corresponding to `language_code' below.
|
1153
|
+
# Corresponds to the JSON property `text`
|
1154
|
+
# @return [String]
|
1155
|
+
attr_accessor :text
|
1156
|
+
|
1157
|
+
def initialize(**args)
|
1158
|
+
update!(**args)
|
1159
|
+
end
|
1160
|
+
|
1161
|
+
# Update properties of this object
|
1162
|
+
def update!(**args)
|
1163
|
+
@language_code = args[:language_code] if args.key?(:language_code)
|
1164
|
+
@text = args[:text] if args.key?(:text)
|
1165
|
+
end
|
1166
|
+
end
|
1167
|
+
end
|
1168
|
+
end
|
1169
|
+
end
|