google-apis-places_v1 0.9.0 → 0.11.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -72,17 +72,17 @@ module Google
72
72
  class GoogleMapsPlacesV1AuthorAttribution
73
73
  include Google::Apis::Core::Hashable
74
74
 
75
- # Output only. Name of the author of the Photo or Review.
75
+ # Name of the author of the Photo or Review.
76
76
  # Corresponds to the JSON property `displayName`
77
77
  # @return [String]
78
78
  attr_accessor :display_name
79
79
 
80
- # Output only. Profile photo URI of the author of the Photo or Review.
80
+ # Profile photo URI of the author of the Photo or Review.
81
81
  # Corresponds to the JSON property `photoUri`
82
82
  # @return [String]
83
83
  attr_accessor :photo_uri
84
84
 
85
- # Output only. URI of the author of the Photo or Review.
85
+ # URI of the author of the Photo or Review.
86
86
  # Corresponds to the JSON property `uri`
87
87
  # @return [String]
88
88
  attr_accessor :uri
@@ -112,6 +112,7 @@ module Google
112
112
  attr_accessor :center
113
113
 
114
114
  # Required. Radius measured in meters. The radius must be within [0.0, 50000.0].
115
+ # The default radius is 0.0.
115
116
  # Corresponds to the JSON property `radius`
116
117
  # @return [Float]
117
118
  attr_accessor :radius
@@ -127,6 +128,206 @@ module Google
127
128
  end
128
129
  end
129
130
 
131
+ # Information about the EV Charge Station hosted in Place. Terminology follows
132
+ # https://afdc.energy.gov/fuels/electricity_infrastructure.html One port could
133
+ # charge one car at a time. One port has one or more connectors. One station has
134
+ # one or more ports.
135
+ class GoogleMapsPlacesV1EvChargeOptions
136
+ include Google::Apis::Core::Hashable
137
+
138
+ # A list of EV charging connector aggregations that contain connectors of the
139
+ # same type and same charge rate.
140
+ # Corresponds to the JSON property `connectorAggregation`
141
+ # @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1EvChargeOptionsConnectorAggregation>]
142
+ attr_accessor :connector_aggregation
143
+
144
+ # Number of connectors at this station. However, because some ports can have
145
+ # multiple connectors but only be able to charge one car at a time (e.g.) the
146
+ # number of connectors may be greater than the total number of cars which can
147
+ # charge simultaneously.
148
+ # Corresponds to the JSON property `connectorCount`
149
+ # @return [Fixnum]
150
+ attr_accessor :connector_count
151
+
152
+ def initialize(**args)
153
+ update!(**args)
154
+ end
155
+
156
+ # Update properties of this object
157
+ def update!(**args)
158
+ @connector_aggregation = args[:connector_aggregation] if args.key?(:connector_aggregation)
159
+ @connector_count = args[:connector_count] if args.key?(:connector_count)
160
+ end
161
+ end
162
+
163
+ # EV charging information grouped by [type, max_charge_rate_kw]. Shows EV charge
164
+ # aggregation of connectors that have the same type and max charge rate in kw.
165
+ class GoogleMapsPlacesV1EvChargeOptionsConnectorAggregation
166
+ include Google::Apis::Core::Hashable
167
+
168
+ # The timestamp when the connector availability information in this aggregation
169
+ # was last updated.
170
+ # Corresponds to the JSON property `availabilityLastUpdateTime`
171
+ # @return [String]
172
+ attr_accessor :availability_last_update_time
173
+
174
+ # Number of connectors in this aggregation that are currently available.
175
+ # Corresponds to the JSON property `availableCount`
176
+ # @return [Fixnum]
177
+ attr_accessor :available_count
178
+
179
+ # Number of connectors in this aggregation.
180
+ # Corresponds to the JSON property `count`
181
+ # @return [Fixnum]
182
+ attr_accessor :count
183
+
184
+ # The static max charging rate in kw of each connector in the aggregation.
185
+ # Corresponds to the JSON property `maxChargeRateKw`
186
+ # @return [Float]
187
+ attr_accessor :max_charge_rate_kw
188
+
189
+ # Number of connectors in this aggregation that are currently out of service.
190
+ # Corresponds to the JSON property `outOfServiceCount`
191
+ # @return [Fixnum]
192
+ attr_accessor :out_of_service_count
193
+
194
+ # The connector type of this aggregation.
195
+ # Corresponds to the JSON property `type`
196
+ # @return [String]
197
+ attr_accessor :type
198
+
199
+ def initialize(**args)
200
+ update!(**args)
201
+ end
202
+
203
+ # Update properties of this object
204
+ def update!(**args)
205
+ @availability_last_update_time = args[:availability_last_update_time] if args.key?(:availability_last_update_time)
206
+ @available_count = args[:available_count] if args.key?(:available_count)
207
+ @count = args[:count] if args.key?(:count)
208
+ @max_charge_rate_kw = args[:max_charge_rate_kw] if args.key?(:max_charge_rate_kw)
209
+ @out_of_service_count = args[:out_of_service_count] if args.key?(:out_of_service_count)
210
+ @type = args[:type] if args.key?(:type)
211
+ end
212
+ end
213
+
214
+ # The most recent information about fuel options in a gas station. This
215
+ # information is updated regularly.
216
+ class GoogleMapsPlacesV1FuelOptions
217
+ include Google::Apis::Core::Hashable
218
+
219
+ # The last known fuel price for each type of fuel this station has. There is one
220
+ # entry per fuel type this station has. Order is not important.
221
+ # Corresponds to the JSON property `fuelPrices`
222
+ # @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1FuelOptionsFuelPrice>]
223
+ attr_accessor :fuel_prices
224
+
225
+ def initialize(**args)
226
+ update!(**args)
227
+ end
228
+
229
+ # Update properties of this object
230
+ def update!(**args)
231
+ @fuel_prices = args[:fuel_prices] if args.key?(:fuel_prices)
232
+ end
233
+ end
234
+
235
+ # Fuel price information for a given type.
236
+ class GoogleMapsPlacesV1FuelOptionsFuelPrice
237
+ include Google::Apis::Core::Hashable
238
+
239
+ # Represents an amount of money with its currency type.
240
+ # Corresponds to the JSON property `price`
241
+ # @return [Google::Apis::PlacesV1::GoogleTypeMoney]
242
+ attr_accessor :price
243
+
244
+ # The type of fuel.
245
+ # Corresponds to the JSON property `type`
246
+ # @return [String]
247
+ attr_accessor :type
248
+
249
+ # The time the fuel price was last updated.
250
+ # Corresponds to the JSON property `updateTime`
251
+ # @return [String]
252
+ attr_accessor :update_time
253
+
254
+ def initialize(**args)
255
+ update!(**args)
256
+ end
257
+
258
+ # Update properties of this object
259
+ def update!(**args)
260
+ @price = args[:price] if args.key?(:price)
261
+ @type = args[:type] if args.key?(:type)
262
+ @update_time = args[:update_time] if args.key?(:update_time)
263
+ end
264
+ end
265
+
266
+ # Information about a photo of a place.
267
+ class GoogleMapsPlacesV1Photo
268
+ include Google::Apis::Core::Hashable
269
+
270
+ # This photo's authors.
271
+ # Corresponds to the JSON property `authorAttributions`
272
+ # @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1AuthorAttribution>]
273
+ attr_accessor :author_attributions
274
+
275
+ # The maximum available height, in pixels.
276
+ # Corresponds to the JSON property `heightPx`
277
+ # @return [Fixnum]
278
+ attr_accessor :height_px
279
+
280
+ # Identifier. A reference representing this place photo which may be used to
281
+ # look up this place photo again (a.k.a. the API "resource" name: places/`
282
+ # place_id`/photos/`photo`).
283
+ # Corresponds to the JSON property `name`
284
+ # @return [String]
285
+ attr_accessor :name
286
+
287
+ # The maximum available width, in pixels.
288
+ # Corresponds to the JSON property `widthPx`
289
+ # @return [Fixnum]
290
+ attr_accessor :width_px
291
+
292
+ def initialize(**args)
293
+ update!(**args)
294
+ end
295
+
296
+ # Update properties of this object
297
+ def update!(**args)
298
+ @author_attributions = args[:author_attributions] if args.key?(:author_attributions)
299
+ @height_px = args[:height_px] if args.key?(:height_px)
300
+ @name = args[:name] if args.key?(:name)
301
+ @width_px = args[:width_px] if args.key?(:width_px)
302
+ end
303
+ end
304
+
305
+ # A photo media from Places API.
306
+ class GoogleMapsPlacesV1PhotoMedia
307
+ include Google::Apis::Core::Hashable
308
+
309
+ # The resource name of a photo in the format: places/place_id/photos/
310
+ # photo_reference.
311
+ # Corresponds to the JSON property `name`
312
+ # @return [String]
313
+ attr_accessor :name
314
+
315
+ # A short-lived uri that can be used to render the photo.
316
+ # Corresponds to the JSON property `photoUri`
317
+ # @return [String]
318
+ attr_accessor :photo_uri
319
+
320
+ def initialize(**args)
321
+ update!(**args)
322
+ end
323
+
324
+ # Update properties of this object
325
+ def update!(**args)
326
+ @name = args[:name] if args.key?(:name)
327
+ @photo_uri = args[:photo_uri] if args.key?(:photo_uri)
328
+ end
329
+ end
330
+
130
331
  # All the information representing a Place.
131
332
  class GoogleMapsPlacesV1Place
132
333
  include Google::Apis::Core::Hashable
@@ -136,28 +337,44 @@ module Google
136
337
  # @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceAccessibilityOptions]
137
338
  attr_accessor :accessibility_options
138
339
 
139
- # Output only. Repeated components for each locality level.
340
+ # Repeated components for each locality level. Note the following facts about
341
+ # the address_components[] array: - The array of address components may contain
342
+ # more components than the formatted_address. - The array does not necessarily
343
+ # include all the political entities that contain an address, apart from those
344
+ # included in the formatted_address. To retrieve all the political entities that
345
+ # contain a specific address, you should use reverse geocoding, passing the
346
+ # latitude/longitude of the address as a parameter to the request. - The format
347
+ # of the response is not guaranteed to remain the same between requests. In
348
+ # particular, the number of address_components varies based on the address
349
+ # requested and can change over time for the same address. A component can
350
+ # change position in the array. The type of the component can change. A
351
+ # particular component may be missing in a later response.
140
352
  # Corresponds to the JSON property `addressComponents`
141
353
  # @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceAddressComponent>]
142
354
  attr_accessor :address_components
143
355
 
144
- # Output only. The place's address in adr microformat: http://microformats.org/
145
- # wiki/adr.
356
+ # The place's address in adr microformat: http://microformats.org/wiki/adr.
146
357
  # Corresponds to the JSON property `adrFormatAddress`
147
358
  # @return [String]
148
359
  attr_accessor :adr_format_address
149
360
 
150
- # Output only. A set of data provider that must be shown with this result.
361
+ # Place allows dogs.
362
+ # Corresponds to the JSON property `allowsDogs`
363
+ # @return [Boolean]
364
+ attr_accessor :allows_dogs
365
+ alias_method :allows_dogs?, :allows_dogs
366
+
367
+ # A set of data provider that must be shown with this result.
151
368
  # Corresponds to the JSON property `attributions`
152
369
  # @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceAttribution>]
153
370
  attr_accessor :attributions
154
371
 
155
- # Output only. The business status for the place.
372
+ # The business status for the place.
156
373
  # Corresponds to the JSON property `businessStatus`
157
374
  # @return [String]
158
375
  attr_accessor :business_status
159
376
 
160
- # Output only. Specifies if the business supports curbside pickup.
377
+ # Specifies if the business supports curbside pickup.
161
378
  # Corresponds to the JSON property `curbsidePickup`
162
379
  # @return [Boolean]
163
380
  attr_accessor :curbside_pickup
@@ -168,26 +385,25 @@ module Google
168
385
  # @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceOpeningHours]
169
386
  attr_accessor :current_opening_hours
170
387
 
171
- # Output only. Contains an array of entries for the next seven days including
172
- # information about secondary hours of a business. Secondary hours are different
173
- # from a business's main hours. For example, a restaurant can specify drive
174
- # through hours or delivery hours as its secondary hours. This field populates
175
- # the type subfield, which draws from a predefined list of opening hours types (
176
- # such as DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the place.
177
- # This field includes the special_days subfield of all hours, set for dates that
178
- # have exceptional hours.
388
+ # Contains an array of entries for the next seven days including information
389
+ # about secondary hours of a business. Secondary hours are different from a
390
+ # business's main hours. For example, a restaurant can specify drive through
391
+ # hours or delivery hours as its secondary hours. This field populates the type
392
+ # subfield, which draws from a predefined list of opening hours types (such as
393
+ # DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the place. This field
394
+ # includes the special_days subfield of all hours, set for dates that have
395
+ # exceptional hours.
179
396
  # Corresponds to the JSON property `currentSecondaryOpeningHours`
180
397
  # @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceOpeningHours>]
181
398
  attr_accessor :current_secondary_opening_hours
182
399
 
183
- # Output only. Specifies if the business supports delivery.
400
+ # Specifies if the business supports delivery.
184
401
  # Corresponds to the JSON property `delivery`
185
402
  # @return [Boolean]
186
403
  attr_accessor :delivery
187
404
  alias_method :delivery?, :delivery
188
405
 
189
- # Output only. Specifies if the business supports indoor or outdoor seating
190
- # options.
406
+ # Specifies if the business supports indoor or outdoor seating options.
191
407
  # Corresponds to the JSON property `dineIn`
192
408
  # @return [Boolean]
193
409
  attr_accessor :dine_in
@@ -203,38 +419,75 @@ module Google
203
419
  # @return [Google::Apis::PlacesV1::GoogleTypeLocalizedText]
204
420
  attr_accessor :editorial_summary
205
421
 
206
- # Output only. A full, human-readable address for this place.
422
+ # Information about the EV Charge Station hosted in Place. Terminology follows
423
+ # https://afdc.energy.gov/fuels/electricity_infrastructure.html One port could
424
+ # charge one car at a time. One port has one or more connectors. One station has
425
+ # one or more ports.
426
+ # Corresponds to the JSON property `evChargeOptions`
427
+ # @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1EvChargeOptions]
428
+ attr_accessor :ev_charge_options
429
+
430
+ # A full, human-readable address for this place.
207
431
  # Corresponds to the JSON property `formattedAddress`
208
432
  # @return [String]
209
433
  attr_accessor :formatted_address
210
434
 
211
- # Output only. A URL providing more information about this place.
435
+ # The most recent information about fuel options in a gas station. This
436
+ # information is updated regularly.
437
+ # Corresponds to the JSON property `fuelOptions`
438
+ # @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1FuelOptions]
439
+ attr_accessor :fuel_options
440
+
441
+ # Place is good for children.
442
+ # Corresponds to the JSON property `goodForChildren`
443
+ # @return [Boolean]
444
+ attr_accessor :good_for_children
445
+ alias_method :good_for_children?, :good_for_children
446
+
447
+ # Place accommodates groups.
448
+ # Corresponds to the JSON property `goodForGroups`
449
+ # @return [Boolean]
450
+ attr_accessor :good_for_groups
451
+ alias_method :good_for_groups?, :good_for_groups
452
+
453
+ # Place is suitable for watching sports.
454
+ # Corresponds to the JSON property `goodForWatchingSports`
455
+ # @return [Boolean]
456
+ attr_accessor :good_for_watching_sports
457
+ alias_method :good_for_watching_sports?, :good_for_watching_sports
458
+
459
+ # A URL providing more information about this place.
212
460
  # Corresponds to the JSON property `googleMapsUri`
213
461
  # @return [String]
214
462
  attr_accessor :google_maps_uri
215
463
 
216
- # Output only. Background color for icon_mask in hex format, e.g. #909CE1.
464
+ # Background color for icon_mask in hex format, e.g. #909CE1.
217
465
  # Corresponds to the JSON property `iconBackgroundColor`
218
466
  # @return [String]
219
467
  attr_accessor :icon_background_color
220
468
 
221
- # Output only. A truncated URL to an v2 icon mask. User can access different
222
- # icon type by appending type suffix to the end (eg, ".svg" or ".png").
469
+ # A truncated URL to an icon mask. User can access different icon type by
470
+ # appending type suffix to the end (eg, ".svg" or ".png").
223
471
  # Corresponds to the JSON property `iconMaskBaseUri`
224
472
  # @return [String]
225
473
  attr_accessor :icon_mask_base_uri
226
474
 
227
- # Output only. The unique identifier of a place.
475
+ # The unique identifier of a place.
228
476
  # Corresponds to the JSON property `id`
229
477
  # @return [String]
230
478
  attr_accessor :id
231
479
 
232
- # Output only. A human-readable phone number for the place, in international
233
- # format.
480
+ # A human-readable phone number for the place, in international format.
234
481
  # Corresponds to the JSON property `internationalPhoneNumber`
235
482
  # @return [String]
236
483
  attr_accessor :international_phone_number
237
484
 
485
+ # Place provides live music.
486
+ # Corresponds to the JSON property `liveMusic`
487
+ # @return [Boolean]
488
+ attr_accessor :live_music
489
+ alias_method :live_music?, :live_music
490
+
238
491
  # An object that represents a latitude/longitude pair. This is expressed as a
239
492
  # pair of doubles to represent degrees latitude and degrees longitude. Unless
240
493
  # specified otherwise, this object must conform to the WGS84 standard. Values
@@ -243,17 +496,45 @@ module Google
243
496
  # @return [Google::Apis::PlacesV1::GoogleTypeLatLng]
244
497
  attr_accessor :location
245
498
 
246
- # Output only. An ID representing this place which may be used to look up this
247
- # place again (a.k.a. the API "resource" name: places/).
499
+ # Place has a children's menu.
500
+ # Corresponds to the JSON property `menuForChildren`
501
+ # @return [Boolean]
502
+ attr_accessor :menu_for_children
503
+ alias_method :menu_for_children?, :menu_for_children
504
+
505
+ # An ID representing this place which may be used to look up this place again (a.
506
+ # k.a. the API "resource" name: places/place_id).
248
507
  # Corresponds to the JSON property `name`
249
508
  # @return [String]
250
509
  attr_accessor :name
251
510
 
252
- # Output only. A human-readable phone number for the place, in national format.
511
+ # A human-readable phone number for the place, in national format.
253
512
  # Corresponds to the JSON property `nationalPhoneNumber`
254
513
  # @return [String]
255
514
  attr_accessor :national_phone_number
256
515
 
516
+ # Place provides outdoor seating.
517
+ # Corresponds to the JSON property `outdoorSeating`
518
+ # @return [Boolean]
519
+ attr_accessor :outdoor_seating
520
+ alias_method :outdoor_seating?, :outdoor_seating
521
+
522
+ # Information about parking options for the place. A parking lot could support
523
+ # more than one option at the same time.
524
+ # Corresponds to the JSON property `parkingOptions`
525
+ # @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceParkingOptions]
526
+ attr_accessor :parking_options
527
+
528
+ # Payment options the place accepts.
529
+ # Corresponds to the JSON property `paymentOptions`
530
+ # @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1PlacePaymentOptions]
531
+ attr_accessor :payment_options
532
+
533
+ # Information (including references) about photos of this place.
534
+ # Corresponds to the JSON property `photos`
535
+ # @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1Photo>]
536
+ attr_accessor :photos
537
+
257
538
  # Plus code (http://plus.codes) is a location reference with two formats: global
258
539
  # code defining a 14mx14m (1/8000th of a degree) or smaller rectangle, and
259
540
  # compound code, replacing the prefix with a reference location.
@@ -261,12 +542,26 @@ module Google
261
542
  # @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1PlacePlusCode]
262
543
  attr_accessor :plus_code
263
544
 
264
- # Output only. Price level of the place.
545
+ # Price level of the place.
265
546
  # Corresponds to the JSON property `priceLevel`
266
547
  # @return [String]
267
548
  attr_accessor :price_level
268
549
 
269
- # Output only. A rating between 1.0 and 5.0, based on user reviews of this place.
550
+ # The primary type of the given result. This type must one of the Places API
551
+ # supported types. For example, "restaurant", "cafe", "airport", etc. A place
552
+ # can only have a single primary type. For the complete list of possible values,
553
+ # see Table A and Table B at https://developers.google.com/maps/documentation/
554
+ # places/web-service/place-types
555
+ # Corresponds to the JSON property `primaryType`
556
+ # @return [String]
557
+ attr_accessor :primary_type
558
+
559
+ # Localized variant of a text in a particular language.
560
+ # Corresponds to the JSON property `primaryTypeDisplayName`
561
+ # @return [Google::Apis::PlacesV1::GoogleTypeLocalizedText]
562
+ attr_accessor :primary_type_display_name
563
+
564
+ # A rating between 1.0 and 5.0, based on user reviews of this place.
270
565
  # Corresponds to the JSON property `rating`
271
566
  # @return [Float]
272
567
  attr_accessor :rating
@@ -276,89 +571,124 @@ module Google
276
571
  # @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceOpeningHours]
277
572
  attr_accessor :regular_opening_hours
278
573
 
279
- # Output only. Contains an array of entries for information about regular
280
- # secondary hours of a business. Secondary hours are different from a business's
281
- # main hours. For example, a restaurant can specify drive through hours or
282
- # delivery hours as its secondary hours. This field populates the type subfield,
283
- # which draws from a predefined list of opening hours types (such as
284
- # DRIVE_THROUGH, PICKUP, or TAKEOUT) based on the types of the place.
574
+ # Contains an array of entries for information about regular secondary hours of
575
+ # a business. Secondary hours are different from a business's main hours. For
576
+ # example, a restaurant can specify drive through hours or delivery hours as its
577
+ # secondary hours. This field populates the type subfield, which draws from a
578
+ # predefined list of opening hours types (such as DRIVE_THROUGH, PICKUP, or
579
+ # TAKEOUT) based on the types of the place.
285
580
  # Corresponds to the JSON property `regularSecondaryOpeningHours`
286
581
  # @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceOpeningHours>]
287
582
  attr_accessor :regular_secondary_opening_hours
288
583
 
289
- # Output only. Specifies if the place supports reservations.
584
+ # Specifies if the place supports reservations.
290
585
  # Corresponds to the JSON property `reservable`
291
586
  # @return [Boolean]
292
587
  attr_accessor :reservable
293
588
  alias_method :reservable?, :reservable
294
589
 
295
- # Output only. List of reviews about this place.
590
+ # Place has restroom.
591
+ # Corresponds to the JSON property `restroom`
592
+ # @return [Boolean]
593
+ attr_accessor :restroom
594
+ alias_method :restroom?, :restroom
595
+
596
+ # List of reviews about this place, sorted by relevance.
296
597
  # Corresponds to the JSON property `reviews`
297
598
  # @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1Review>]
298
599
  attr_accessor :reviews
299
600
 
300
- # Output only. Specifies if the place serves beer.
601
+ # Specifies if the place serves beer.
301
602
  # Corresponds to the JSON property `servesBeer`
302
603
  # @return [Boolean]
303
604
  attr_accessor :serves_beer
304
605
  alias_method :serves_beer?, :serves_beer
305
606
 
306
- # Output only. Specifies if the place serves breakfast.
607
+ # Specifies if the place serves breakfast.
307
608
  # Corresponds to the JSON property `servesBreakfast`
308
609
  # @return [Boolean]
309
610
  attr_accessor :serves_breakfast
310
611
  alias_method :serves_breakfast?, :serves_breakfast
311
612
 
312
- # Output only. Specifies if the place serves brunch.
613
+ # Specifies if the place serves brunch.
313
614
  # Corresponds to the JSON property `servesBrunch`
314
615
  # @return [Boolean]
315
616
  attr_accessor :serves_brunch
316
617
  alias_method :serves_brunch?, :serves_brunch
317
618
 
318
- # Output only. Specifies if the place serves dinner.
619
+ # Place serves cocktails.
620
+ # Corresponds to the JSON property `servesCocktails`
621
+ # @return [Boolean]
622
+ attr_accessor :serves_cocktails
623
+ alias_method :serves_cocktails?, :serves_cocktails
624
+
625
+ # Place serves coffee.
626
+ # Corresponds to the JSON property `servesCoffee`
627
+ # @return [Boolean]
628
+ attr_accessor :serves_coffee
629
+ alias_method :serves_coffee?, :serves_coffee
630
+
631
+ # Place serves dessert.
632
+ # Corresponds to the JSON property `servesDessert`
633
+ # @return [Boolean]
634
+ attr_accessor :serves_dessert
635
+ alias_method :serves_dessert?, :serves_dessert
636
+
637
+ # Specifies if the place serves dinner.
319
638
  # Corresponds to the JSON property `servesDinner`
320
639
  # @return [Boolean]
321
640
  attr_accessor :serves_dinner
322
641
  alias_method :serves_dinner?, :serves_dinner
323
642
 
324
- # Output only. Specifies if the place serves lunch.
643
+ # Specifies if the place serves lunch.
325
644
  # Corresponds to the JSON property `servesLunch`
326
645
  # @return [Boolean]
327
646
  attr_accessor :serves_lunch
328
647
  alias_method :serves_lunch?, :serves_lunch
329
648
 
330
- # Output only. Specifies if the place serves vegetarian food.
649
+ # Specifies if the place serves vegetarian food.
331
650
  # Corresponds to the JSON property `servesVegetarianFood`
332
651
  # @return [Boolean]
333
652
  attr_accessor :serves_vegetarian_food
334
653
  alias_method :serves_vegetarian_food?, :serves_vegetarian_food
335
654
 
336
- # Output only. Specifies if the place serves wine.
655
+ # Specifies if the place serves wine.
337
656
  # Corresponds to the JSON property `servesWine`
338
657
  # @return [Boolean]
339
658
  attr_accessor :serves_wine
340
659
  alias_method :serves_wine?, :serves_wine
341
660
 
342
- # Output only. Specifies if the business supports takeout.
661
+ # A short, human-readable address for this place.
662
+ # Corresponds to the JSON property `shortFormattedAddress`
663
+ # @return [String]
664
+ attr_accessor :short_formatted_address
665
+
666
+ # A list of sub destinations related to the place.
667
+ # Corresponds to the JSON property `subDestinations`
668
+ # @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceSubDestination>]
669
+ attr_accessor :sub_destinations
670
+
671
+ # Specifies if the business supports takeout.
343
672
  # Corresponds to the JSON property `takeout`
344
673
  # @return [Boolean]
345
674
  attr_accessor :takeout
346
675
  alias_method :takeout?, :takeout
347
676
 
348
- # Output only. A set of type tags for this result. For example, "political" and "
349
- # locality".
677
+ # A set of type tags for this result. For example, "political" and "locality".
678
+ # For the complete list of possible values, see Table A and Table B at https://
679
+ # developers.google.com/maps/documentation/places/web-service/place-types
350
680
  # Corresponds to the JSON property `types`
351
681
  # @return [Array<String>]
352
682
  attr_accessor :types
353
683
 
354
- # Output only. The total number of reviews (with or without text) for this place.
684
+ # The total number of reviews (with or without text) for this place.
355
685
  # Corresponds to the JSON property `userRatingCount`
356
686
  # @return [Fixnum]
357
687
  attr_accessor :user_rating_count
358
688
 
359
- # Output only. Number of minutes this place's timezone is currently offset from
360
- # UTC. This is expressed in minutes to support timezones that are offset by
361
- # fractions of an hour, e.g. X hours and 15 minutes.
689
+ # Number of minutes this place's timezone is currently offset from UTC. This is
690
+ # expressed in minutes to support timezones that are offset by fractions of an
691
+ # hour, e.g. X hours and 15 minutes.
362
692
  # Corresponds to the JSON property `utcOffsetMinutes`
363
693
  # @return [Fixnum]
364
694
  attr_accessor :utc_offset_minutes
@@ -383,10 +713,9 @@ module Google
383
713
  # @return [Google::Apis::PlacesV1::GoogleGeoTypeViewport]
384
714
  attr_accessor :viewport
385
715
 
386
- # Output only. The authoritative website for this place, e.g. a business'
387
- # homepage. Note that for places that are part of a chain (e.g. an IKEA store),
388
- # this will usually be the website for the individual store, not the overall
389
- # chain.
716
+ # The authoritative website for this place, e.g. a business' homepage. Note that
717
+ # for places that are part of a chain (e.g. an IKEA store), this will usually be
718
+ # the website for the individual store, not the overall chain.
390
719
  # Corresponds to the JSON property `websiteUri`
391
720
  # @return [String]
392
721
  attr_accessor :website_uri
@@ -400,6 +729,7 @@ module Google
400
729
  @accessibility_options = args[:accessibility_options] if args.key?(:accessibility_options)
401
730
  @address_components = args[:address_components] if args.key?(:address_components)
402
731
  @adr_format_address = args[:adr_format_address] if args.key?(:adr_format_address)
732
+ @allows_dogs = args[:allows_dogs] if args.key?(:allows_dogs)
403
733
  @attributions = args[:attributions] if args.key?(:attributions)
404
734
  @business_status = args[:business_status] if args.key?(:business_status)
405
735
  @curbside_pickup = args[:curbside_pickup] if args.key?(:curbside_pickup)
@@ -409,29 +739,48 @@ module Google
409
739
  @dine_in = args[:dine_in] if args.key?(:dine_in)
410
740
  @display_name = args[:display_name] if args.key?(:display_name)
411
741
  @editorial_summary = args[:editorial_summary] if args.key?(:editorial_summary)
742
+ @ev_charge_options = args[:ev_charge_options] if args.key?(:ev_charge_options)
412
743
  @formatted_address = args[:formatted_address] if args.key?(:formatted_address)
744
+ @fuel_options = args[:fuel_options] if args.key?(:fuel_options)
745
+ @good_for_children = args[:good_for_children] if args.key?(:good_for_children)
746
+ @good_for_groups = args[:good_for_groups] if args.key?(:good_for_groups)
747
+ @good_for_watching_sports = args[:good_for_watching_sports] if args.key?(:good_for_watching_sports)
413
748
  @google_maps_uri = args[:google_maps_uri] if args.key?(:google_maps_uri)
414
749
  @icon_background_color = args[:icon_background_color] if args.key?(:icon_background_color)
415
750
  @icon_mask_base_uri = args[:icon_mask_base_uri] if args.key?(:icon_mask_base_uri)
416
751
  @id = args[:id] if args.key?(:id)
417
752
  @international_phone_number = args[:international_phone_number] if args.key?(:international_phone_number)
753
+ @live_music = args[:live_music] if args.key?(:live_music)
418
754
  @location = args[:location] if args.key?(:location)
755
+ @menu_for_children = args[:menu_for_children] if args.key?(:menu_for_children)
419
756
  @name = args[:name] if args.key?(:name)
420
757
  @national_phone_number = args[:national_phone_number] if args.key?(:national_phone_number)
758
+ @outdoor_seating = args[:outdoor_seating] if args.key?(:outdoor_seating)
759
+ @parking_options = args[:parking_options] if args.key?(:parking_options)
760
+ @payment_options = args[:payment_options] if args.key?(:payment_options)
761
+ @photos = args[:photos] if args.key?(:photos)
421
762
  @plus_code = args[:plus_code] if args.key?(:plus_code)
422
763
  @price_level = args[:price_level] if args.key?(:price_level)
764
+ @primary_type = args[:primary_type] if args.key?(:primary_type)
765
+ @primary_type_display_name = args[:primary_type_display_name] if args.key?(:primary_type_display_name)
423
766
  @rating = args[:rating] if args.key?(:rating)
424
767
  @regular_opening_hours = args[:regular_opening_hours] if args.key?(:regular_opening_hours)
425
768
  @regular_secondary_opening_hours = args[:regular_secondary_opening_hours] if args.key?(:regular_secondary_opening_hours)
426
769
  @reservable = args[:reservable] if args.key?(:reservable)
770
+ @restroom = args[:restroom] if args.key?(:restroom)
427
771
  @reviews = args[:reviews] if args.key?(:reviews)
428
772
  @serves_beer = args[:serves_beer] if args.key?(:serves_beer)
429
773
  @serves_breakfast = args[:serves_breakfast] if args.key?(:serves_breakfast)
430
774
  @serves_brunch = args[:serves_brunch] if args.key?(:serves_brunch)
775
+ @serves_cocktails = args[:serves_cocktails] if args.key?(:serves_cocktails)
776
+ @serves_coffee = args[:serves_coffee] if args.key?(:serves_coffee)
777
+ @serves_dessert = args[:serves_dessert] if args.key?(:serves_dessert)
431
778
  @serves_dinner = args[:serves_dinner] if args.key?(:serves_dinner)
432
779
  @serves_lunch = args[:serves_lunch] if args.key?(:serves_lunch)
433
780
  @serves_vegetarian_food = args[:serves_vegetarian_food] if args.key?(:serves_vegetarian_food)
434
781
  @serves_wine = args[:serves_wine] if args.key?(:serves_wine)
782
+ @short_formatted_address = args[:short_formatted_address] if args.key?(:short_formatted_address)
783
+ @sub_destinations = args[:sub_destinations] if args.key?(:sub_destinations)
435
784
  @takeout = args[:takeout] if args.key?(:takeout)
436
785
  @types = args[:types] if args.key?(:types)
437
786
  @user_rating_count = args[:user_rating_count] if args.key?(:user_rating_count)
@@ -451,6 +800,24 @@ module Google
451
800
  attr_accessor :wheelchair_accessible_entrance
452
801
  alias_method :wheelchair_accessible_entrance?, :wheelchair_accessible_entrance
453
802
 
803
+ # Place offers wheelchair accessible parking.
804
+ # Corresponds to the JSON property `wheelchairAccessibleParking`
805
+ # @return [Boolean]
806
+ attr_accessor :wheelchair_accessible_parking
807
+ alias_method :wheelchair_accessible_parking?, :wheelchair_accessible_parking
808
+
809
+ # Place has wheelchair accessible restroom.
810
+ # Corresponds to the JSON property `wheelchairAccessibleRestroom`
811
+ # @return [Boolean]
812
+ attr_accessor :wheelchair_accessible_restroom
813
+ alias_method :wheelchair_accessible_restroom?, :wheelchair_accessible_restroom
814
+
815
+ # Place has wheelchair accessible seating.
816
+ # Corresponds to the JSON property `wheelchairAccessibleSeating`
817
+ # @return [Boolean]
818
+ attr_accessor :wheelchair_accessible_seating
819
+ alias_method :wheelchair_accessible_seating?, :wheelchair_accessible_seating
820
+
454
821
  def initialize(**args)
455
822
  update!(**args)
456
823
  end
@@ -458,6 +825,9 @@ module Google
458
825
  # Update properties of this object
459
826
  def update!(**args)
460
827
  @wheelchair_accessible_entrance = args[:wheelchair_accessible_entrance] if args.key?(:wheelchair_accessible_entrance)
828
+ @wheelchair_accessible_parking = args[:wheelchair_accessible_parking] if args.key?(:wheelchair_accessible_parking)
829
+ @wheelchair_accessible_restroom = args[:wheelchair_accessible_restroom] if args.key?(:wheelchair_accessible_restroom)
830
+ @wheelchair_accessible_seating = args[:wheelchair_accessible_seating] if args.key?(:wheelchair_accessible_seating)
461
831
  end
462
832
  end
463
833
 
@@ -466,26 +836,26 @@ module Google
466
836
  class GoogleMapsPlacesV1PlaceAddressComponent
467
837
  include Google::Apis::Core::Hashable
468
838
 
469
- # Output only. The language used to format this components, in CLDR notation.
839
+ # The language used to format this components, in CLDR notation.
470
840
  # Corresponds to the JSON property `languageCode`
471
841
  # @return [String]
472
842
  attr_accessor :language_code
473
843
 
474
- # Output only. The full text description or name of the address component. For
475
- # example, an address component for the country Australia may have a long_name
476
- # of "Australia".
844
+ # The full text description or name of the address component. For example, an
845
+ # address component for the country Australia may have a long_name of "Australia"
846
+ # .
477
847
  # Corresponds to the JSON property `longText`
478
848
  # @return [String]
479
849
  attr_accessor :long_text
480
850
 
481
- # Output only. An abbreviated textual name for the address component, if
482
- # available. For example, an address component for the country of Australia may
483
- # have a short_name of "AU".
851
+ # An abbreviated textual name for the address component, if available. For
852
+ # example, an address component for the country of Australia may have a
853
+ # short_name of "AU".
484
854
  # Corresponds to the JSON property `shortText`
485
855
  # @return [String]
486
856
  attr_accessor :short_text
487
857
 
488
- # Output only. An array indicating the type(s) of the address component.
858
+ # An array indicating the type(s) of the address component.
489
859
  # Corresponds to the JSON property `types`
490
860
  # @return [Array<String>]
491
861
  attr_accessor :types
@@ -507,12 +877,12 @@ module Google
507
877
  class GoogleMapsPlacesV1PlaceAttribution
508
878
  include Google::Apis::Core::Hashable
509
879
 
510
- # Output only. Name of the Place's data provider.
880
+ # Name of the Place's data provider.
511
881
  # Corresponds to the JSON property `provider`
512
882
  # @return [String]
513
883
  attr_accessor :provider
514
884
 
515
- # Output only. URI to the Place's data provider.
885
+ # URI to the Place's data provider.
516
886
  # Corresponds to the JSON property `providerUri`
517
887
  # @return [String]
518
888
  attr_accessor :provider_uri
@@ -532,38 +902,37 @@ module Google
532
902
  class GoogleMapsPlacesV1PlaceOpeningHours
533
903
  include Google::Apis::Core::Hashable
534
904
 
535
- # Output only. Is this place open right now? Always present unless we lack time-
536
- # of-day or timezone data for these opening hours.
905
+ # Is this place open right now? Always present unless we lack time-of-day or
906
+ # timezone data for these opening hours.
537
907
  # Corresponds to the JSON property `openNow`
538
908
  # @return [Boolean]
539
909
  attr_accessor :open_now
540
910
  alias_method :open_now?, :open_now
541
911
 
542
- # Output only. The periods that this place is open during the week. The periods
543
- # are in chronological order, starting with Sunday in the place-local timezone.
544
- # An empty (but not absent) value indicates a place that is never open, e.g.
912
+ # The periods that this place is open during the week. The periods are in
913
+ # chronological order, starting with Sunday in the place-local timezone. An
914
+ # empty (but not absent) value indicates a place that is never open, e.g.
545
915
  # because it is closed temporarily for renovations.
546
916
  # Corresponds to the JSON property `periods`
547
917
  # @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceOpeningHoursPeriod>]
548
918
  attr_accessor :periods
549
919
 
550
- # Output only. A type string used to identify the type of secondary hours.
920
+ # A type string used to identify the type of secondary hours.
551
921
  # Corresponds to the JSON property `secondaryHoursType`
552
922
  # @return [String]
553
923
  attr_accessor :secondary_hours_type
554
924
 
555
- # Output only. Structured information for special days that fall within the
556
- # period that the returned opening hours cover. Special days are days that could
557
- # impact the business hours of a place, e.g. Christmas day. Set for
558
- # current_opening_hours and current_secondary_opening_hours if there are
559
- # exceptional hours.
925
+ # Structured information for special days that fall within the period that the
926
+ # returned opening hours cover. Special days are days that could impact the
927
+ # business hours of a place, e.g. Christmas day. Set for current_opening_hours
928
+ # and current_secondary_opening_hours if there are exceptional hours.
560
929
  # Corresponds to the JSON property `specialDays`
561
930
  # @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1PlaceOpeningHoursSpecialDay>]
562
931
  attr_accessor :special_days
563
932
 
564
- # Output only. Localized strings describing the opening hours of this place, one
565
- # string for each day of the week. Will be empty if the hours are unknown or
566
- # could not be converted to localized text. Example: "Sun: 18:00–06:00"
933
+ # Localized strings describing the opening hours of this place, one string for
934
+ # each day of the week. Will be empty if the hours are unknown or could not be
935
+ # converted to localized text. Example: "Sun: 18:00–06:00"
567
936
  # Corresponds to the JSON property `weekdayDescriptions`
568
937
  # @return [Array<String>]
569
938
  attr_accessor :weekday_descriptions
@@ -623,26 +992,26 @@ module Google
623
992
  # @return [Google::Apis::PlacesV1::GoogleTypeDate]
624
993
  attr_accessor :date
625
994
 
626
- # Output only. A day of the week, as an integer in the range 0-6. 0 is Sunday, 1
627
- # is Monday, etc.
995
+ # A day of the week, as an integer in the range 0-6. 0 is Sunday, 1 is Monday,
996
+ # etc.
628
997
  # Corresponds to the JSON property `day`
629
998
  # @return [Fixnum]
630
999
  attr_accessor :day
631
1000
 
632
- # Output only. The hour in 2 digits. Ranges from 00 to 23.
1001
+ # The hour in 2 digits. Ranges from 00 to 23.
633
1002
  # Corresponds to the JSON property `hour`
634
1003
  # @return [Fixnum]
635
1004
  attr_accessor :hour
636
1005
 
637
- # Output only. The minute in 2 digits. Ranges from 00 to 59.
1006
+ # The minute in 2 digits. Ranges from 00 to 59.
638
1007
  # Corresponds to the JSON property `minute`
639
1008
  # @return [Fixnum]
640
1009
  attr_accessor :minute
641
1010
 
642
- # Output only. Whether or not this endpoint was truncated. Truncation occurs
643
- # when the real hours are outside the times we are willing to return hours
644
- # between, so we truncate the hours back to these boundaries. This ensures that
645
- # at most 24 * 7 hours from midnight of the day of the request are returned.
1011
+ # Whether or not this endpoint was truncated. Truncation occurs when the real
1012
+ # hours are outside the times we are willing to return hours between, so we
1013
+ # truncate the hours back to these boundaries. This ensures that at most 24 * 7
1014
+ # hours from midnight of the day of the request are returned.
646
1015
  # Corresponds to the JSON property `truncated`
647
1016
  # @return [Boolean]
648
1017
  attr_accessor :truncated
@@ -690,21 +1059,126 @@ module Google
690
1059
  end
691
1060
  end
692
1061
 
1062
+ # Information about parking options for the place. A parking lot could support
1063
+ # more than one option at the same time.
1064
+ class GoogleMapsPlacesV1PlaceParkingOptions
1065
+ include Google::Apis::Core::Hashable
1066
+
1067
+ # Place offers free garage parking.
1068
+ # Corresponds to the JSON property `freeGarageParking`
1069
+ # @return [Boolean]
1070
+ attr_accessor :free_garage_parking
1071
+ alias_method :free_garage_parking?, :free_garage_parking
1072
+
1073
+ # Place offers free parking lots.
1074
+ # Corresponds to the JSON property `freeParkingLot`
1075
+ # @return [Boolean]
1076
+ attr_accessor :free_parking_lot
1077
+ alias_method :free_parking_lot?, :free_parking_lot
1078
+
1079
+ # Place offers free street parking.
1080
+ # Corresponds to the JSON property `freeStreetParking`
1081
+ # @return [Boolean]
1082
+ attr_accessor :free_street_parking
1083
+ alias_method :free_street_parking?, :free_street_parking
1084
+
1085
+ # Place offers paid garage parking.
1086
+ # Corresponds to the JSON property `paidGarageParking`
1087
+ # @return [Boolean]
1088
+ attr_accessor :paid_garage_parking
1089
+ alias_method :paid_garage_parking?, :paid_garage_parking
1090
+
1091
+ # Place offers paid parking lots.
1092
+ # Corresponds to the JSON property `paidParkingLot`
1093
+ # @return [Boolean]
1094
+ attr_accessor :paid_parking_lot
1095
+ alias_method :paid_parking_lot?, :paid_parking_lot
1096
+
1097
+ # Place offers paid street parking.
1098
+ # Corresponds to the JSON property `paidStreetParking`
1099
+ # @return [Boolean]
1100
+ attr_accessor :paid_street_parking
1101
+ alias_method :paid_street_parking?, :paid_street_parking
1102
+
1103
+ # Place offers valet parking.
1104
+ # Corresponds to the JSON property `valetParking`
1105
+ # @return [Boolean]
1106
+ attr_accessor :valet_parking
1107
+ alias_method :valet_parking?, :valet_parking
1108
+
1109
+ def initialize(**args)
1110
+ update!(**args)
1111
+ end
1112
+
1113
+ # Update properties of this object
1114
+ def update!(**args)
1115
+ @free_garage_parking = args[:free_garage_parking] if args.key?(:free_garage_parking)
1116
+ @free_parking_lot = args[:free_parking_lot] if args.key?(:free_parking_lot)
1117
+ @free_street_parking = args[:free_street_parking] if args.key?(:free_street_parking)
1118
+ @paid_garage_parking = args[:paid_garage_parking] if args.key?(:paid_garage_parking)
1119
+ @paid_parking_lot = args[:paid_parking_lot] if args.key?(:paid_parking_lot)
1120
+ @paid_street_parking = args[:paid_street_parking] if args.key?(:paid_street_parking)
1121
+ @valet_parking = args[:valet_parking] if args.key?(:valet_parking)
1122
+ end
1123
+ end
1124
+
1125
+ # Payment options the place accepts.
1126
+ class GoogleMapsPlacesV1PlacePaymentOptions
1127
+ include Google::Apis::Core::Hashable
1128
+
1129
+ # Place accepts cash only as payment. Places with this attribute may still
1130
+ # accept other payment methods.
1131
+ # Corresponds to the JSON property `acceptsCashOnly`
1132
+ # @return [Boolean]
1133
+ attr_accessor :accepts_cash_only
1134
+ alias_method :accepts_cash_only?, :accepts_cash_only
1135
+
1136
+ # Place accepts credit cards as payment.
1137
+ # Corresponds to the JSON property `acceptsCreditCards`
1138
+ # @return [Boolean]
1139
+ attr_accessor :accepts_credit_cards
1140
+ alias_method :accepts_credit_cards?, :accepts_credit_cards
1141
+
1142
+ # Place accepts debit cards as payment.
1143
+ # Corresponds to the JSON property `acceptsDebitCards`
1144
+ # @return [Boolean]
1145
+ attr_accessor :accepts_debit_cards
1146
+ alias_method :accepts_debit_cards?, :accepts_debit_cards
1147
+
1148
+ # Place accepts NFC payments.
1149
+ # Corresponds to the JSON property `acceptsNfc`
1150
+ # @return [Boolean]
1151
+ attr_accessor :accepts_nfc
1152
+ alias_method :accepts_nfc?, :accepts_nfc
1153
+
1154
+ def initialize(**args)
1155
+ update!(**args)
1156
+ end
1157
+
1158
+ # Update properties of this object
1159
+ def update!(**args)
1160
+ @accepts_cash_only = args[:accepts_cash_only] if args.key?(:accepts_cash_only)
1161
+ @accepts_credit_cards = args[:accepts_credit_cards] if args.key?(:accepts_credit_cards)
1162
+ @accepts_debit_cards = args[:accepts_debit_cards] if args.key?(:accepts_debit_cards)
1163
+ @accepts_nfc = args[:accepts_nfc] if args.key?(:accepts_nfc)
1164
+ end
1165
+ end
1166
+
693
1167
  # Plus code (http://plus.codes) is a location reference with two formats: global
694
1168
  # code defining a 14mx14m (1/8000th of a degree) or smaller rectangle, and
695
1169
  # compound code, replacing the prefix with a reference location.
696
1170
  class GoogleMapsPlacesV1PlacePlusCode
697
1171
  include Google::Apis::Core::Hashable
698
1172
 
699
- # Output only. Place's compound code, such as "33GV+HQ, Ramberg, Norway",
700
- # containing the suffix of the global code and replacing the prefix with a
701
- # formatted name of a reference entity.
1173
+ # Place's compound code, such as "33GV+HQ, Ramberg, Norway", containing the
1174
+ # suffix of the global code and replacing the prefix with a formatted name of a
1175
+ # reference entity.
702
1176
  # Corresponds to the JSON property `compoundCode`
703
1177
  # @return [String]
704
1178
  attr_accessor :compound_code
705
1179
 
706
- # Output only. Place's global (full) code, such as "9FWM33GV+HQ", representing
707
- # an 1/8000 by 1/8000 degree area (~14 by 14 meters).
1180
+ # Place's global (full) code, such as "9FWM33GV+HQ", representing an 1/8000 by 1/
1181
+ # 8000 degree area (~14 by 14 meters).
708
1182
  # Corresponds to the JSON property `globalCode`
709
1183
  # @return [String]
710
1184
  attr_accessor :global_code
@@ -720,6 +1194,32 @@ module Google
720
1194
  end
721
1195
  end
722
1196
 
1197
+ # Place resource name and id of sub destinations that relate to the place. For
1198
+ # example, different terminals are different destinations of an airport.
1199
+ class GoogleMapsPlacesV1PlaceSubDestination
1200
+ include Google::Apis::Core::Hashable
1201
+
1202
+ # The place id of the sub destination.
1203
+ # Corresponds to the JSON property `id`
1204
+ # @return [String]
1205
+ attr_accessor :id
1206
+
1207
+ # The resource name of the sub destination.
1208
+ # Corresponds to the JSON property `name`
1209
+ # @return [String]
1210
+ attr_accessor :name
1211
+
1212
+ def initialize(**args)
1213
+ update!(**args)
1214
+ end
1215
+
1216
+ # Update properties of this object
1217
+ def update!(**args)
1218
+ @id = args[:id] if args.key?(:id)
1219
+ @name = args[:name] if args.key?(:name)
1220
+ end
1221
+ end
1222
+
723
1223
  # Information about a review of a place.
724
1224
  class GoogleMapsPlacesV1Review
725
1225
  include Google::Apis::Core::Hashable
@@ -729,24 +1229,30 @@ module Google
729
1229
  # @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1AuthorAttribution]
730
1230
  attr_accessor :author_attribution
731
1231
 
1232
+ # A reference representing this place review which may be used to look up this
1233
+ # place review again (also called the API "resource" name: places/place_id/
1234
+ # reviews/review).
1235
+ # Corresponds to the JSON property `name`
1236
+ # @return [String]
1237
+ attr_accessor :name
1238
+
732
1239
  # Localized variant of a text in a particular language.
733
1240
  # Corresponds to the JSON property `originalText`
734
1241
  # @return [Google::Apis::PlacesV1::GoogleTypeLocalizedText]
735
1242
  attr_accessor :original_text
736
1243
 
737
- # Output only. Timestamp for the review.
1244
+ # Timestamp for the review.
738
1245
  # Corresponds to the JSON property `publishTime`
739
1246
  # @return [String]
740
1247
  attr_accessor :publish_time
741
1248
 
742
- # Output only. A number between 1.0 and 5.0, a.k.a. the number of stars.
1249
+ # A number between 1.0 and 5.0, also called the number of stars.
743
1250
  # Corresponds to the JSON property `rating`
744
1251
  # @return [Float]
745
1252
  attr_accessor :rating
746
1253
 
747
- # Output only. A string of formatted recent time, expressing the review time
748
- # relative to the current time in a form appropriate for the language and
749
- # country.
1254
+ # A string of formatted recent time, expressing the review time relative to the
1255
+ # current time in a form appropriate for the language and country.
750
1256
  # Corresponds to the JSON property `relativePublishTimeDescription`
751
1257
  # @return [String]
752
1258
  attr_accessor :relative_publish_time_description
@@ -763,6 +1269,7 @@ module Google
763
1269
  # Update properties of this object
764
1270
  def update!(**args)
765
1271
  @author_attribution = args[:author_attribution] if args.key?(:author_attribution)
1272
+ @name = args[:name] if args.key?(:name)
766
1273
  @original_text = args[:original_text] if args.key?(:original_text)
767
1274
  @publish_time = args[:publish_time] if args.key?(:publish_time)
768
1275
  @rating = args[:rating] if args.key?(:rating)
@@ -771,12 +1278,167 @@ module Google
771
1278
  end
772
1279
  end
773
1280
 
1281
+ # Request proto for Search Nearby.
1282
+ class GoogleMapsPlacesV1SearchNearbyRequest
1283
+ include Google::Apis::Core::Hashable
1284
+
1285
+ # Excluded primary Place type (e.g. "restaurant" or "gas_station") from https://
1286
+ # developers.google.com/maps/documentation/places/web-service/place-types. If
1287
+ # there are any conflicting primary types, i.e. a type appears in both
1288
+ # included_primary_types and excluded_primary_types, an INVALID_ARGUMENT error
1289
+ # is returned. If a Place type is specified with multiple type restrictions,
1290
+ # only places that satisfy all of the restrictions are returned. For example, if
1291
+ # we have `included_types = ["restaurant"], excluded_primary_types = ["
1292
+ # restaurant"]`, the returned places provide "restaurant" related services but
1293
+ # do not operate primarily as "restaurants".
1294
+ # Corresponds to the JSON property `excludedPrimaryTypes`
1295
+ # @return [Array<String>]
1296
+ attr_accessor :excluded_primary_types
1297
+
1298
+ # Excluded Place type (eg, "restaurant" or "gas_station") from https://
1299
+ # developers.google.com/maps/documentation/places/web-service/place-types. If
1300
+ # the client provides both included_types (e.g. restaurant) and excluded_types (
1301
+ # e.g. cafe), then the response should include places that are restaurant but
1302
+ # not cafe. The response includes places that match at least one of the
1303
+ # included_types and none of the excluded_types. If there are any conflicting
1304
+ # types, i.e. a type appears in both included_types and excluded_types, an
1305
+ # INVALID_ARGUMENT error is returned. If a Place type is specified with multiple
1306
+ # type restrictions, only places that satisfy all of the restrictions are
1307
+ # returned. For example, if we have `included_types = ["restaurant"],
1308
+ # excluded_primary_types = ["restaurant"]`, the returned places provide "
1309
+ # restaurant" related services but do not operate primarily as "restaurants".
1310
+ # Corresponds to the JSON property `excludedTypes`
1311
+ # @return [Array<String>]
1312
+ attr_accessor :excluded_types
1313
+
1314
+ # Included primary Place type (e.g. "restaurant" or "gas_station") from https://
1315
+ # developers.google.com/maps/documentation/places/web-service/place-types. A
1316
+ # place can only have a single primary type from the supported types table
1317
+ # associated with it. If there are any conflicting primary types, i.e. a type
1318
+ # appears in both included_primary_types and excluded_primary_types, an
1319
+ # INVALID_ARGUMENT error is returned. If a Place type is specified with multiple
1320
+ # type restrictions, only places that satisfy all of the restrictions are
1321
+ # returned. For example, if we have `included_types = ["restaurant"],
1322
+ # excluded_primary_types = ["restaurant"]`, the returned places provide "
1323
+ # restaurant" related services but do not operate primarily as "restaurants".
1324
+ # Corresponds to the JSON property `includedPrimaryTypes`
1325
+ # @return [Array<String>]
1326
+ attr_accessor :included_primary_types
1327
+
1328
+ # Included Place type (eg, "restaurant" or "gas_station") from https://
1329
+ # developers.google.com/maps/documentation/places/web-service/place-types. If
1330
+ # there are any conflicting types, i.e. a type appears in both included_types
1331
+ # and excluded_types, an INVALID_ARGUMENT error is returned. If a Place type is
1332
+ # specified with multiple type restrictions, only places that satisfy all of the
1333
+ # restrictions are returned. For example, if we have `included_types = ["
1334
+ # restaurant"], excluded_primary_types = ["restaurant"]`, the returned places
1335
+ # provide "restaurant" related services but do not operate primarily as "
1336
+ # restaurants".
1337
+ # Corresponds to the JSON property `includedTypes`
1338
+ # @return [Array<String>]
1339
+ attr_accessor :included_types
1340
+
1341
+ # Place details will be displayed with the preferred language if available. If
1342
+ # the language code is unspecified or unrecognized, place details of any
1343
+ # language may be returned, with a preference for English if such details exist.
1344
+ # Current list of supported languages: https://developers.google.com/maps/faq#
1345
+ # languagesupport.
1346
+ # Corresponds to the JSON property `languageCode`
1347
+ # @return [String]
1348
+ attr_accessor :language_code
1349
+
1350
+ # The region to search.
1351
+ # Corresponds to the JSON property `locationRestriction`
1352
+ # @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1SearchNearbyRequestLocationRestriction]
1353
+ attr_accessor :location_restriction
1354
+
1355
+ # Maximum number of results to return. It must be between 1 and 20 (default),
1356
+ # inclusively. If the number is unset, it falls back to the upper limit. If the
1357
+ # number is set to negative or exceeds the upper limit, an INVALID_ARGUMENT
1358
+ # error is returned.
1359
+ # Corresponds to the JSON property `maxResultCount`
1360
+ # @return [Fixnum]
1361
+ attr_accessor :max_result_count
1362
+
1363
+ # How results will be ranked in the response.
1364
+ # Corresponds to the JSON property `rankPreference`
1365
+ # @return [String]
1366
+ attr_accessor :rank_preference
1367
+
1368
+ # The Unicode country/region code (CLDR) of the location where the request is
1369
+ # coming from. This parameter is used to display the place details, like region-
1370
+ # specific place name, if available. The parameter can affect results based on
1371
+ # applicable law. For more information, see https://www.unicode.org/cldr/charts/
1372
+ # latest/supplemental/territory_language_information.html. Note that 3-digit
1373
+ # region codes are not currently supported.
1374
+ # Corresponds to the JSON property `regionCode`
1375
+ # @return [String]
1376
+ attr_accessor :region_code
1377
+
1378
+ def initialize(**args)
1379
+ update!(**args)
1380
+ end
1381
+
1382
+ # Update properties of this object
1383
+ def update!(**args)
1384
+ @excluded_primary_types = args[:excluded_primary_types] if args.key?(:excluded_primary_types)
1385
+ @excluded_types = args[:excluded_types] if args.key?(:excluded_types)
1386
+ @included_primary_types = args[:included_primary_types] if args.key?(:included_primary_types)
1387
+ @included_types = args[:included_types] if args.key?(:included_types)
1388
+ @language_code = args[:language_code] if args.key?(:language_code)
1389
+ @location_restriction = args[:location_restriction] if args.key?(:location_restriction)
1390
+ @max_result_count = args[:max_result_count] if args.key?(:max_result_count)
1391
+ @rank_preference = args[:rank_preference] if args.key?(:rank_preference)
1392
+ @region_code = args[:region_code] if args.key?(:region_code)
1393
+ end
1394
+ end
1395
+
1396
+ # The region to search.
1397
+ class GoogleMapsPlacesV1SearchNearbyRequestLocationRestriction
1398
+ include Google::Apis::Core::Hashable
1399
+
1400
+ # Circle with a LatLng as center and radius.
1401
+ # Corresponds to the JSON property `circle`
1402
+ # @return [Google::Apis::PlacesV1::GoogleMapsPlacesV1Circle]
1403
+ attr_accessor :circle
1404
+
1405
+ def initialize(**args)
1406
+ update!(**args)
1407
+ end
1408
+
1409
+ # Update properties of this object
1410
+ def update!(**args)
1411
+ @circle = args[:circle] if args.key?(:circle)
1412
+ end
1413
+ end
1414
+
1415
+ # Response proto for Search Nearby.
1416
+ class GoogleMapsPlacesV1SearchNearbyResponse
1417
+ include Google::Apis::Core::Hashable
1418
+
1419
+ # A list of places that meets user's requirements like places types, number of
1420
+ # places and specific location restriction.
1421
+ # Corresponds to the JSON property `places`
1422
+ # @return [Array<Google::Apis::PlacesV1::GoogleMapsPlacesV1Place>]
1423
+ attr_accessor :places
1424
+
1425
+ def initialize(**args)
1426
+ update!(**args)
1427
+ end
1428
+
1429
+ # Update properties of this object
1430
+ def update!(**args)
1431
+ @places = args[:places] if args.key?(:places)
1432
+ end
1433
+ end
1434
+
774
1435
  # Request proto for SearchText.
775
1436
  class GoogleMapsPlacesV1SearchTextRequest
776
1437
  include Google::Apis::Core::Hashable
777
1438
 
778
1439
  # The requested place type. Full list of types supported: https://developers.
779
- # google.com/places/supported_types. Only support one included type.
1440
+ # google.com/maps/documentation/places/web-service/place-types. Only support one
1441
+ # included type.
780
1442
  # Corresponds to the JSON property `includedType`
781
1443
  # @return [String]
782
1444
  attr_accessor :included_type
@@ -803,8 +1465,9 @@ module Google
803
1465
  attr_accessor :location_restriction
804
1466
 
805
1467
  # Maximum number of results to return. It must be between 1 and 20, inclusively.
806
- # If the number is unset, it falls back to the upper limit. If the number is set
807
- # to negative or exceeds the upper limit, an INVALID_ARGUMENT error is returned.
1468
+ # The default is 20. If the number is unset, it falls back to the upper limit.
1469
+ # If the number is set to negative or exceeds the upper limit, an
1470
+ # INVALID_ARGUMENT error is returned.
808
1471
  # Corresponds to the JSON property `maxResultCount`
809
1472
  # @return [Fixnum]
810
1473
  attr_accessor :max_result_count
@@ -819,8 +1482,8 @@ module Google
819
1482
  # @return [Float]
820
1483
  attr_accessor :min_rating
821
1484
 
822
- # Used to restrict the search to places that are open at a specific time.
823
- # open_now marks if a business is currently open.
1485
+ # Used to restrict the search to places that are currently open. The default is
1486
+ # false.
824
1487
  # Corresponds to the JSON property `openNow`
825
1488
  # @return [Boolean]
826
1489
  attr_accessor :open_now
@@ -841,9 +1504,9 @@ module Google
841
1504
  # The Unicode country/region code (CLDR) of the location where the request is
842
1505
  # coming from. This parameter is used to display the place details, like region-
843
1506
  # specific place name, if available. The parameter can affect results based on
844
- # applicable law. For more information, see http://www.unicode.org/reports/tr35/#
845
- # unicode_region_subtag. Note that 3-digit region codes are not currently
846
- # supported.
1507
+ # applicable law. For more information, see https://www.unicode.org/cldr/charts/
1508
+ # latest/supplemental/territory_language_information.html. Note that 3-digit
1509
+ # region codes are not currently supported.
847
1510
  # Corresponds to the JSON property `regionCode`
848
1511
  # @return [String]
849
1512
  attr_accessor :region_code
@@ -1056,7 +1719,7 @@ module Google
1056
1719
  # @return [String]
1057
1720
  attr_accessor :language_code
1058
1721
 
1059
- # Localized string in the language corresponding to `language_code' below.
1722
+ # Localized string in the language corresponding to language_code below.
1060
1723
  # Corresponds to the JSON property `text`
1061
1724
  # @return [String]
1062
1725
  attr_accessor :text
@@ -1071,6 +1734,42 @@ module Google
1071
1734
  @text = args[:text] if args.key?(:text)
1072
1735
  end
1073
1736
  end
1737
+
1738
+ # Represents an amount of money with its currency type.
1739
+ class GoogleTypeMoney
1740
+ include Google::Apis::Core::Hashable
1741
+
1742
+ # The three-letter currency code defined in ISO 4217.
1743
+ # Corresponds to the JSON property `currencyCode`
1744
+ # @return [String]
1745
+ attr_accessor :currency_code
1746
+
1747
+ # Number of nano (10^-9) units of the amount. The value must be between -999,999,
1748
+ # 999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be
1749
+ # positive or zero. If `units` is zero, `nanos` can be positive, zero, or
1750
+ # negative. If `units` is negative, `nanos` must be negative or zero. For
1751
+ # example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1752
+ # Corresponds to the JSON property `nanos`
1753
+ # @return [Fixnum]
1754
+ attr_accessor :nanos
1755
+
1756
+ # The whole units of the amount. For example if `currencyCode` is `"USD"`, then
1757
+ # 1 unit is one US dollar.
1758
+ # Corresponds to the JSON property `units`
1759
+ # @return [Fixnum]
1760
+ attr_accessor :units
1761
+
1762
+ def initialize(**args)
1763
+ update!(**args)
1764
+ end
1765
+
1766
+ # Update properties of this object
1767
+ def update!(**args)
1768
+ @currency_code = args[:currency_code] if args.key?(:currency_code)
1769
+ @nanos = args[:nanos] if args.key?(:nanos)
1770
+ @units = args[:units] if args.key?(:units)
1771
+ end
1772
+ end
1074
1773
  end
1075
1774
  end
1076
1775
  end