| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  | # Copyright 2015 Google Inc. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # Licensed under the Apache License, Version 2.0 (the "License"); | 
					
						
							|  |  |  | # you may not use this file except in compliance with the License. | 
					
						
							|  |  |  | # You may obtain a copy of the License at | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | #      http://www.apache.org/licenses/LICENSE-2.0 | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # Unless required by applicable law or agreed to in writing, software | 
					
						
							|  |  |  | # distributed under the License is distributed on an "AS IS" BASIS, | 
					
						
							|  |  |  | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 
					
						
							|  |  |  | # See the License for the specific language governing permissions and | 
					
						
							|  |  |  | # limitations under the License. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | require 'date' | 
					
						
							|  |  |  | require 'google/apis/core/base_service' | 
					
						
							|  |  |  | require 'google/apis/core/json_representation' | 
					
						
							|  |  |  | require 'google/apis/core/hashable' | 
					
						
							|  |  |  | require 'google/apis/errors' | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | module Google | 
					
						
							|  |  |  |   module Apis | 
					
						
							|  |  |  |     module CalendarV3 | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class Acl | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # ETag of the collection. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `etag` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :etag | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # List of rules on the access control list. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `items` | 
					
						
							|  |  |  |         # @return [Array<Google::Apis::CalendarV3::AclRule>] | 
					
						
							|  |  |  |         attr_accessor :items | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Type of the collection ("calendar#acl"). | 
					
						
							|  |  |  |         # Corresponds to the JSON property `kind` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :kind | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Token used to access the next page of this result. Omitted if no further | 
					
						
							|  |  |  |         # results are available, in which case nextSyncToken is provided. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `nextPageToken` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :next_page_token | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Token used at a later point in time to retrieve only the entries that have | 
					
						
							|  |  |  |         # changed since this result was returned. Omitted if further results are | 
					
						
							|  |  |  |         # available, in which case nextPageToken is provided. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `nextSyncToken` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :next_sync_token | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @etag = args[:etag] if args.key?(:etag) | 
					
						
							|  |  |  |           @items = args[:items] if args.key?(:items) | 
					
						
							|  |  |  |           @kind = args[:kind] if args.key?(:kind) | 
					
						
							|  |  |  |           @next_page_token = args[:next_page_token] if args.key?(:next_page_token) | 
					
						
							|  |  |  |           @next_sync_token = args[:next_sync_token] if args.key?(:next_sync_token) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class AclRule | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # ETag of the resource. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `etag` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :etag | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Identifier of the ACL rule. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `id` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :id | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Type of the resource ("calendar#aclRule"). | 
					
						
							|  |  |  |         # Corresponds to the JSON property `kind` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :kind | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The role assigned to the scope. Possible values are: | 
					
						
							|  |  |  |         # - "none" - Provides no access. | 
					
						
							|  |  |  |         # - "freeBusyReader" - Provides read access to free/busy information. | 
					
						
							|  |  |  |         # - "reader" - Provides read access to the calendar. Private events will appear | 
					
						
							|  |  |  |         # to users with reader access, but event details will be hidden. | 
					
						
							|  |  |  |         # - "writer" - Provides read and write access to the calendar. Private events | 
					
						
							|  |  |  |         # will appear to users with writer access, and event details will be visible. | 
					
						
							|  |  |  |         # - "owner" - Provides ownership of the calendar. This role has all of the | 
					
						
							|  |  |  |         # permissions of the writer role with the additional ability to see and | 
					
						
							|  |  |  |         # manipulate ACLs. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `role` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :role | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The scope of the rule. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `scope` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::AclRule::Scope] | 
					
						
							|  |  |  |         attr_accessor :scope | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @etag = args[:etag] if args.key?(:etag) | 
					
						
							|  |  |  |           @id = args[:id] if args.key?(:id) | 
					
						
							|  |  |  |           @kind = args[:kind] if args.key?(:kind) | 
					
						
							|  |  |  |           @role = args[:role] if args.key?(:role) | 
					
						
							|  |  |  |           @scope = args[:scope] if args.key?(:scope) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |         # The scope of the rule. | 
					
						
							|  |  |  |         class Scope | 
					
						
							|  |  |  |           include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # The type of the scope. Possible values are: | 
					
						
							|  |  |  |           # - "default" - The public scope. This is the default value. | 
					
						
							|  |  |  |           # - "user" - Limits the scope to a single user. | 
					
						
							|  |  |  |           # - "group" - Limits the scope to a group. | 
					
						
							|  |  |  |           # - "domain" - Limits the scope to a domain.  Note: The permissions granted to | 
					
						
							|  |  |  |           # the "default", or public, scope apply to any user, authenticated or not. | 
					
						
							|  |  |  |           # Corresponds to the JSON property `type` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :type | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # The email address of a user or group, or the name of a domain, depending on | 
					
						
							|  |  |  |           # the scope type. Omitted for type "default". | 
					
						
							|  |  |  |           # Corresponds to the JSON property `value` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :value | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           def initialize(**args) | 
					
						
							|  |  |  |              update!(**args) | 
					
						
							|  |  |  |           end | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Update properties of this object | 
					
						
							|  |  |  |           def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |             @type = args[:type] if args.key?(:type) | 
					
						
							|  |  |  |             @value = args[:value] if args.key?(:value) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           end | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class Calendar | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # Conferencing properties for this calendar, for example what types of | 
					
						
							|  |  |  |         # conferences are allowed. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `conferenceProperties` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::ConferenceProperties] | 
					
						
							|  |  |  |         attr_accessor :conference_properties | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Description of the calendar. Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `description` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :description | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # ETag of the resource. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `etag` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :etag | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |         # Identifier of the calendar. To retrieve IDs call the calendarList.list() | 
					
						
							|  |  |  |         # method. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `id` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :id | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Type of the resource ("calendar#calendar"). | 
					
						
							|  |  |  |         # Corresponds to the JSON property `kind` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :kind | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Geographic location of the calendar as free-form text. Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `location` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :location | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Title of the calendar. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `summary` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :summary | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The time zone of the calendar. (Formatted as an IANA Time Zone Database name, | 
					
						
							|  |  |  |         # e.g. "Europe/Zurich".) Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `timeZone` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :time_zone | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |           @conference_properties = args[:conference_properties] if args.key?(:conference_properties) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @description = args[:description] if args.key?(:description) | 
					
						
							|  |  |  |           @etag = args[:etag] if args.key?(:etag) | 
					
						
							|  |  |  |           @id = args[:id] if args.key?(:id) | 
					
						
							|  |  |  |           @kind = args[:kind] if args.key?(:kind) | 
					
						
							|  |  |  |           @location = args[:location] if args.key?(:location) | 
					
						
							|  |  |  |           @summary = args[:summary] if args.key?(:summary) | 
					
						
							|  |  |  |           @time_zone = args[:time_zone] if args.key?(:time_zone) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class CalendarList | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # ETag of the collection. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `etag` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :etag | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Calendars that are present on the user's calendar list. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `items` | 
					
						
							|  |  |  |         # @return [Array<Google::Apis::CalendarV3::CalendarListEntry>] | 
					
						
							|  |  |  |         attr_accessor :items | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Type of the collection ("calendar#calendarList"). | 
					
						
							|  |  |  |         # Corresponds to the JSON property `kind` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :kind | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Token used to access the next page of this result. Omitted if no further | 
					
						
							|  |  |  |         # results are available, in which case nextSyncToken is provided. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `nextPageToken` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :next_page_token | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Token used at a later point in time to retrieve only the entries that have | 
					
						
							|  |  |  |         # changed since this result was returned. Omitted if further results are | 
					
						
							|  |  |  |         # available, in which case nextPageToken is provided. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `nextSyncToken` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :next_sync_token | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @etag = args[:etag] if args.key?(:etag) | 
					
						
							|  |  |  |           @items = args[:items] if args.key?(:items) | 
					
						
							|  |  |  |           @kind = args[:kind] if args.key?(:kind) | 
					
						
							|  |  |  |           @next_page_token = args[:next_page_token] if args.key?(:next_page_token) | 
					
						
							|  |  |  |           @next_sync_token = args[:next_sync_token] if args.key?(:next_sync_token) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class CalendarListEntry | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The effective access role that the authenticated user has on the calendar. | 
					
						
							|  |  |  |         # Read-only. Possible values are: | 
					
						
							|  |  |  |         # - "freeBusyReader" - Provides read access to free/busy information. | 
					
						
							|  |  |  |         # - "reader" - Provides read access to the calendar. Private events will appear | 
					
						
							|  |  |  |         # to users with reader access, but event details will be hidden. | 
					
						
							|  |  |  |         # - "writer" - Provides read and write access to the calendar. Private events | 
					
						
							|  |  |  |         # will appear to users with writer access, and event details will be visible. | 
					
						
							|  |  |  |         # - "owner" - Provides ownership of the calendar. This role has all of the | 
					
						
							|  |  |  |         # permissions of the writer role with the additional ability to see and | 
					
						
							|  |  |  |         # manipulate ACLs. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `accessRole` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :access_role | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The main color of the calendar in the hexadecimal format "#0088aa". This | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |         # property supersedes the index-based colorId property. To set or change this | 
					
						
							|  |  |  |         # property, you need to specify colorRgbFormat=true in the parameters of the | 
					
						
							|  |  |  |         # insert, update and patch methods. Optional. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `backgroundColor` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :background_color | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The color of the calendar. This is an ID referring to an entry in the calendar | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |         # section of the colors definition (see the colors endpoint). This property is | 
					
						
							|  |  |  |         # superseded by the backgroundColor and foregroundColor properties and can be | 
					
						
							|  |  |  |         # ignored when using these properties. Optional. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `colorId` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :color_id | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # Conferencing properties for this calendar, for example what types of | 
					
						
							|  |  |  |         # conferences are allowed. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `conferenceProperties` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::ConferenceProperties] | 
					
						
							|  |  |  |         attr_accessor :conference_properties | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # The default reminders that the authenticated user has for this calendar. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `defaultReminders` | 
					
						
							|  |  |  |         # @return [Array<Google::Apis::CalendarV3::EventReminder>] | 
					
						
							|  |  |  |         attr_accessor :default_reminders | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Whether this calendar list entry has been deleted from the calendar list. Read- | 
					
						
							|  |  |  |         # only. Optional. The default is False. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `deleted` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :deleted | 
					
						
							|  |  |  |         alias_method :deleted?, :deleted | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Description of the calendar. Optional. Read-only. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `description` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :description | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # ETag of the resource. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `etag` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :etag | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The foreground color of the calendar in the hexadecimal format "#ffffff". This | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |         # property supersedes the index-based colorId property. To set or change this | 
					
						
							|  |  |  |         # property, you need to specify colorRgbFormat=true in the parameters of the | 
					
						
							|  |  |  |         # insert, update and patch methods. Optional. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `foregroundColor` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :foreground_color | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2020-05-07 20:07:42 +00:00
										 |  |  |         # Whether the calendar has been hidden from the list. Optional. The attribute is | 
					
						
							|  |  |  |         # only returned when the calendar is hidden, in which case the value is true. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `hidden` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :hidden | 
					
						
							|  |  |  |         alias_method :hidden?, :hidden | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Identifier of the calendar. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `id` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :id | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Type of the resource ("calendar#calendarListEntry"). | 
					
						
							|  |  |  |         # Corresponds to the JSON property `kind` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :kind | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Geographic location of the calendar as free-form text. Optional. Read-only. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `location` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :location | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The notifications that the authenticated user is receiving for this calendar. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `notificationSettings` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::CalendarListEntry::NotificationSettings] | 
					
						
							|  |  |  |         attr_accessor :notification_settings | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Whether the calendar is the primary calendar of the authenticated user. Read- | 
					
						
							|  |  |  |         # only. Optional. The default is False. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `primary` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :primary | 
					
						
							|  |  |  |         alias_method :primary?, :primary | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Whether the calendar content shows up in the calendar UI. Optional. The | 
					
						
							|  |  |  |         # default is False. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `selected` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :selected | 
					
						
							|  |  |  |         alias_method :selected?, :selected | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Title of the calendar. Read-only. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `summary` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :summary | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The summary that the authenticated user has set for this calendar. Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `summaryOverride` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :summary_override | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The time zone of the calendar. Optional. Read-only. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `timeZone` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :time_zone | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @access_role = args[:access_role] if args.key?(:access_role) | 
					
						
							|  |  |  |           @background_color = args[:background_color] if args.key?(:background_color) | 
					
						
							|  |  |  |           @color_id = args[:color_id] if args.key?(:color_id) | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |           @conference_properties = args[:conference_properties] if args.key?(:conference_properties) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @default_reminders = args[:default_reminders] if args.key?(:default_reminders) | 
					
						
							|  |  |  |           @deleted = args[:deleted] if args.key?(:deleted) | 
					
						
							|  |  |  |           @description = args[:description] if args.key?(:description) | 
					
						
							|  |  |  |           @etag = args[:etag] if args.key?(:etag) | 
					
						
							|  |  |  |           @foreground_color = args[:foreground_color] if args.key?(:foreground_color) | 
					
						
							|  |  |  |           @hidden = args[:hidden] if args.key?(:hidden) | 
					
						
							|  |  |  |           @id = args[:id] if args.key?(:id) | 
					
						
							|  |  |  |           @kind = args[:kind] if args.key?(:kind) | 
					
						
							|  |  |  |           @location = args[:location] if args.key?(:location) | 
					
						
							|  |  |  |           @notification_settings = args[:notification_settings] if args.key?(:notification_settings) | 
					
						
							|  |  |  |           @primary = args[:primary] if args.key?(:primary) | 
					
						
							|  |  |  |           @selected = args[:selected] if args.key?(:selected) | 
					
						
							|  |  |  |           @summary = args[:summary] if args.key?(:summary) | 
					
						
							|  |  |  |           @summary_override = args[:summary_override] if args.key?(:summary_override) | 
					
						
							|  |  |  |           @time_zone = args[:time_zone] if args.key?(:time_zone) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |         # The notifications that the authenticated user is receiving for this calendar. | 
					
						
							|  |  |  |         class NotificationSettings | 
					
						
							|  |  |  |           include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # The list of notifications set for this calendar. | 
					
						
							|  |  |  |           # Corresponds to the JSON property `notifications` | 
					
						
							|  |  |  |           # @return [Array<Google::Apis::CalendarV3::CalendarNotification>] | 
					
						
							|  |  |  |           attr_accessor :notifications | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           def initialize(**args) | 
					
						
							|  |  |  |              update!(**args) | 
					
						
							|  |  |  |           end | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Update properties of this object | 
					
						
							|  |  |  |           def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |             @notifications = args[:notifications] if args.key?(:notifications) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           end | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class CalendarNotification | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2020-04-13 16:49:10 +00:00
										 |  |  |         # The method used to deliver the notification. The possible value is: | 
					
						
							| 
									
										
										
										
											2018-11-29 00:36:25 +00:00
										 |  |  |         # - "email" - Notifications are sent via email. | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |         # Required when adding a notification. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `method` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :delivery_method | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The type of notification. Possible values are: | 
					
						
							|  |  |  |         # - "eventCreation" - Notification sent when a new event is put on the calendar. | 
					
						
							|  |  |  |         # - "eventChange" - Notification sent when an event is changed. | 
					
						
							|  |  |  |         # - "eventCancellation" - Notification sent when an event is cancelled. | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |         # - "eventResponse" - Notification sent when an attendee responds to the event | 
					
						
							|  |  |  |         # invitation. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # - "agenda" - An agenda with the events of the day (sent out in the morning). | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |         # Required when adding a notification. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `type` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :type | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @delivery_method = args[:delivery_method] if args.key?(:delivery_method) | 
					
						
							|  |  |  |           @type = args[:type] if args.key?(:type) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class Channel | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The address where notifications are delivered for this channel. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `address` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :address | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Date and time of notification channel expiration, expressed as a Unix | 
					
						
							|  |  |  |         # timestamp, in milliseconds. Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `expiration` | 
					
						
							| 
									
										
										
										
											2017-04-03 20:18:48 +00:00
										 |  |  |         # @return [Fixnum] | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         attr_accessor :expiration | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # A UUID or similar unique string that identifies this channel. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `id` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :id | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Identifies this as a notification channel used to watch for changes to a | 
					
						
							| 
									
										
										
										
											2019-06-28 00:38:18 +00:00
										 |  |  |         # resource, which is "api#channel". | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `kind` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :kind | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Additional parameters controlling delivery channel behavior. Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `params` | 
					
						
							|  |  |  |         # @return [Hash<String,String>] | 
					
						
							|  |  |  |         attr_accessor :params | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # A Boolean value to indicate whether payload is wanted. Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `payload` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :payload | 
					
						
							|  |  |  |         alias_method :payload?, :payload | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # An opaque ID that identifies the resource being watched on this channel. | 
					
						
							|  |  |  |         # Stable across different API versions. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `resourceId` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :resource_id | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # A version-specific identifier for the watched resource. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `resourceUri` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :resource_uri | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # An arbitrary string delivered to the target address with each notification | 
					
						
							|  |  |  |         # delivered over this channel. Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `token` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :token | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The type of delivery mechanism used for this channel. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `type` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :type | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @address = args[:address] if args.key?(:address) | 
					
						
							|  |  |  |           @expiration = args[:expiration] if args.key?(:expiration) | 
					
						
							|  |  |  |           @id = args[:id] if args.key?(:id) | 
					
						
							|  |  |  |           @kind = args[:kind] if args.key?(:kind) | 
					
						
							|  |  |  |           @params = args[:params] if args.key?(:params) | 
					
						
							|  |  |  |           @payload = args[:payload] if args.key?(:payload) | 
					
						
							|  |  |  |           @resource_id = args[:resource_id] if args.key?(:resource_id) | 
					
						
							|  |  |  |           @resource_uri = args[:resource_uri] if args.key?(:resource_uri) | 
					
						
							|  |  |  |           @token = args[:token] if args.key?(:token) | 
					
						
							|  |  |  |           @type = args[:type] if args.key?(:type) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class ColorDefinition | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The background color associated with this color definition. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `background` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :background | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The foreground color that can be used to write on top of a background with ' | 
					
						
							|  |  |  |         # background' color. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `foreground` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :foreground | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @background = args[:background] if args.key?(:background) | 
					
						
							|  |  |  |           @foreground = args[:foreground] if args.key?(:foreground) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class Colors | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |         # A global palette of calendar colors, mapping from the color ID to its | 
					
						
							|  |  |  |         # definition. A calendarListEntry resource refers to one of these color IDs in | 
					
						
							|  |  |  |         # its color field. Read-only. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `calendar` | 
					
						
							|  |  |  |         # @return [Hash<String,Google::Apis::CalendarV3::ColorDefinition>] | 
					
						
							|  |  |  |         attr_accessor :calendar | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |         # A global palette of event colors, mapping from the color ID to its definition. | 
					
						
							|  |  |  |         # An event resource may refer to one of these color IDs in its color field. Read- | 
					
						
							|  |  |  |         # only. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `event` | 
					
						
							|  |  |  |         # @return [Hash<String,Google::Apis::CalendarV3::ColorDefinition>] | 
					
						
							|  |  |  |         attr_accessor :event | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Type of the resource ("calendar#colors"). | 
					
						
							|  |  |  |         # Corresponds to the JSON property `kind` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :kind | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |         # Last modification time of the color palette (as a RFC3339 timestamp). Read- | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # only. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `updated` | 
					
						
							|  |  |  |         # @return [DateTime] | 
					
						
							|  |  |  |         attr_accessor :updated | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @calendar = args[:calendar] if args.key?(:calendar) | 
					
						
							|  |  |  |           @event = args[:event] if args.key?(:event) | 
					
						
							|  |  |  |           @kind = args[:kind] if args.key?(:kind) | 
					
						
							|  |  |  |           @updated = args[:updated] if args.key?(:updated) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |       #  | 
					
						
							|  |  |  |       class ConferenceData | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The ID of the conference. | 
					
						
							|  |  |  |         # Can be used by developers to keep track of conferences, should not be | 
					
						
							|  |  |  |         # displayed to users. | 
					
						
							|  |  |  |         # Values for solution types: | 
					
						
							| 
									
										
										
										
											2018-01-11 00:35:44 +00:00
										 |  |  |         # - "eventHangout": unset. | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # - "eventNamedHangout": the name of the Hangout. | 
					
						
							|  |  |  |         # - "hangoutsMeet": the 10-letter meeting code, for example "aaa-bbbb-ccc". | 
					
						
							| 
									
										
										
										
											2019-09-10 21:25:47 +00:00
										 |  |  |         # - "addOn": defined by 3P conference provider.  Optional. | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # Corresponds to the JSON property `conferenceId` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :conference_id | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2020-05-07 20:07:42 +00:00
										 |  |  |         # The conference solution, such as Hangouts or Google Meet. | 
					
						
							| 
									
										
										
										
											2018-01-11 00:35:44 +00:00
										 |  |  |         # Unset for a conference with a failed create request. | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # Either conferenceSolution and at least one entryPoint, or createRequest is | 
					
						
							|  |  |  |         # required. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `conferenceSolution` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::ConferenceSolution] | 
					
						
							|  |  |  |         attr_accessor :conference_solution | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # A request to generate a new conference and attach it to the event. The data is | 
					
						
							|  |  |  |         # generated asynchronously. To see whether the data is present check the status | 
					
						
							|  |  |  |         # field. | 
					
						
							|  |  |  |         # Either conferenceSolution and at least one entryPoint, or createRequest is | 
					
						
							|  |  |  |         # required. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `createRequest` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::CreateConferenceRequest] | 
					
						
							|  |  |  |         attr_accessor :create_request | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Information about individual conference entry points, such as URLs or phone | 
					
						
							|  |  |  |         # numbers. | 
					
						
							|  |  |  |         # All of them must belong to the same conference. | 
					
						
							|  |  |  |         # Either conferenceSolution and at least one entryPoint, or createRequest is | 
					
						
							|  |  |  |         # required. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `entryPoints` | 
					
						
							|  |  |  |         # @return [Array<Google::Apis::CalendarV3::EntryPoint>] | 
					
						
							|  |  |  |         attr_accessor :entry_points | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2017-12-22 00:35:26 +00:00
										 |  |  |         # Additional notes (such as instructions from the domain administrator, legal | 
					
						
							|  |  |  |         # notices) to display to the user. Can contain HTML. The maximum length is 2048 | 
					
						
							|  |  |  |         # characters. Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `notes` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :notes | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-02-03 00:35:36 +00:00
										 |  |  |         # Additional properties related to a conference. An example would be a solution- | 
					
						
							|  |  |  |         # specific setting for enabling video streaming. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `parameters` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::ConferenceParameters] | 
					
						
							|  |  |  |         attr_accessor :parameters | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # The signature of the conference data. | 
					
						
							| 
									
										
										
										
											2019-05-03 00:37:18 +00:00
										 |  |  |         # Generated on server side. Must be preserved while copying the conference data | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # between events, otherwise the conference data will not be copied. | 
					
						
							| 
									
										
										
										
											2018-01-11 00:35:44 +00:00
										 |  |  |         # Unset for a conference with a failed create request. | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # Optional for a conference with a pending create request. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `signature` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :signature | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							|  |  |  |           @conference_id = args[:conference_id] if args.key?(:conference_id) | 
					
						
							|  |  |  |           @conference_solution = args[:conference_solution] if args.key?(:conference_solution) | 
					
						
							|  |  |  |           @create_request = args[:create_request] if args.key?(:create_request) | 
					
						
							|  |  |  |           @entry_points = args[:entry_points] if args.key?(:entry_points) | 
					
						
							| 
									
										
										
										
											2017-12-22 00:35:26 +00:00
										 |  |  |           @notes = args[:notes] if args.key?(:notes) | 
					
						
							| 
									
										
										
										
											2018-02-03 00:35:36 +00:00
										 |  |  |           @parameters = args[:parameters] if args.key?(:parameters) | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |           @signature = args[:signature] if args.key?(:signature) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-02-03 00:35:36 +00:00
										 |  |  |       #  | 
					
						
							|  |  |  |       class ConferenceParameters | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Additional add-on specific data. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `addOnParameters` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::ConferenceParametersAddOnParameters] | 
					
						
							|  |  |  |         attr_accessor :add_on_parameters | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							|  |  |  |           @add_on_parameters = args[:add_on_parameters] if args.key?(:add_on_parameters) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class ConferenceParametersAddOnParameters | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         #  | 
					
						
							|  |  |  |         # Corresponds to the JSON property `parameters` | 
					
						
							|  |  |  |         # @return [Hash<String,String>] | 
					
						
							|  |  |  |         attr_accessor :parameters | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							|  |  |  |           @parameters = args[:parameters] if args.key?(:parameters) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |       #  | 
					
						
							|  |  |  |       class ConferenceProperties | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The types of conference solutions that are supported for this calendar. | 
					
						
							|  |  |  |         # The possible values are: | 
					
						
							|  |  |  |         # - "eventHangout" | 
					
						
							|  |  |  |         # - "eventNamedHangout" | 
					
						
							|  |  |  |         # - "hangoutsMeet"  Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `allowedConferenceSolutionTypes` | 
					
						
							|  |  |  |         # @return [Array<String>] | 
					
						
							|  |  |  |         attr_accessor :allowed_conference_solution_types | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							|  |  |  |           @allowed_conference_solution_types = args[:allowed_conference_solution_types] if args.key?(:allowed_conference_solution_types) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class ConferenceRequestStatus | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The current status of the conference create request. Read-only. | 
					
						
							|  |  |  |         # The possible values are: | 
					
						
							|  |  |  |         # - "pending": the conference create request is still being processed. | 
					
						
							|  |  |  |         # - "success": the conference create request succeeded, the entry points are | 
					
						
							|  |  |  |         # populated. | 
					
						
							|  |  |  |         # - "failure": the conference create request failed, there are no entry points. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `statusCode` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :status_code | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							|  |  |  |           @status_code = args[:status_code] if args.key?(:status_code) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class ConferenceSolution | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-01-11 00:35:44 +00:00
										 |  |  |         # The user-visible icon for this solution. | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # Corresponds to the JSON property `iconUri` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :icon_uri | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The key which can uniquely identify the conference solution for this event. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `key` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::ConferenceSolutionKey] | 
					
						
							|  |  |  |         attr_accessor :key | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-01-11 00:35:44 +00:00
										 |  |  |         # The user-visible name of this solution. Not localized. | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # Corresponds to the JSON property `name` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :name | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							|  |  |  |           @icon_uri = args[:icon_uri] if args.key?(:icon_uri) | 
					
						
							|  |  |  |           @key = args[:key] if args.key?(:key) | 
					
						
							|  |  |  |           @name = args[:name] if args.key?(:name) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class ConferenceSolutionKey | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The conference solution type. | 
					
						
							|  |  |  |         # If a client encounters an unfamiliar or empty type, it should still be able to | 
					
						
							|  |  |  |         # display the entry points. However, it should disallow modifications. | 
					
						
							|  |  |  |         # The possible values are: | 
					
						
							| 
									
										
										
										
											2017-12-19 00:35:20 +00:00
										 |  |  |         # - "eventHangout" for Hangouts for consumers (http://hangouts.google.com) | 
					
						
							| 
									
										
										
										
											2018-01-11 00:35:44 +00:00
										 |  |  |         # - "eventNamedHangout" for classic Hangouts for G Suite users (http://hangouts. | 
					
						
							| 
									
										
										
										
											2017-12-19 00:35:20 +00:00
										 |  |  |         # google.com) | 
					
						
							| 
									
										
										
										
											2020-05-23 00:38:40 +00:00
										 |  |  |         # - "hangoutsMeet" for Google Meet (http://meet.google.com) | 
					
						
							| 
									
										
										
										
											2019-10-02 00:37:54 +00:00
										 |  |  |         # - "addOn" for 3P conference providers | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # Corresponds to the JSON property `type` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :type | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							|  |  |  |           @type = args[:type] if args.key?(:type) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class CreateConferenceRequest | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2020-05-07 20:07:42 +00:00
										 |  |  |         # The conference solution, such as Hangouts or Google Meet. | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # Corresponds to the JSON property `conferenceSolutionKey` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::ConferenceSolutionKey] | 
					
						
							|  |  |  |         attr_accessor :conference_solution_key | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The client-generated unique ID for this request. | 
					
						
							|  |  |  |         # Clients should regenerate this ID for every new request. If an ID provided is | 
					
						
							|  |  |  |         # the same as for the previous request, the request is ignored. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `requestId` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :request_id | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The status of the conference create request. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `status` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::ConferenceRequestStatus] | 
					
						
							|  |  |  |         attr_accessor :status | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							|  |  |  |           @conference_solution_key = args[:conference_solution_key] if args.key?(:conference_solution_key) | 
					
						
							|  |  |  |           @request_id = args[:request_id] if args.key?(:request_id) | 
					
						
							|  |  |  |           @status = args[:status] if args.key?(:status) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class EntryPoint | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-01-11 00:35:44 +00:00
										 |  |  |         # The access code to access the conference. The maximum length is 128 characters. | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # When creating new conference data, populate only the subset of `meetingCode, | 
					
						
							|  |  |  |         # accessCode, passcode, password, pin` fields that match the terminology that | 
					
						
							|  |  |  |         # the conference provider uses. Only the populated fields should be displayed. | 
					
						
							|  |  |  |         # Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `accessCode` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :access_code | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-09-08 00:36:18 +00:00
										 |  |  |         # Features of the entry point, such as being toll or toll-free. One entry point | 
					
						
							|  |  |  |         # can have multiple features. However, toll and toll-free cannot be both set on | 
					
						
							|  |  |  |         # the same entry point. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `entryPointFeatures` | 
					
						
							|  |  |  |         # @return [Array<String>] | 
					
						
							|  |  |  |         attr_accessor :entry_point_features | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # The type of the conference entry point. | 
					
						
							|  |  |  |         # Possible values are: | 
					
						
							|  |  |  |         # - "video" - joining a conference over HTTP. A conference can have zero or one | 
					
						
							|  |  |  |         # video entry point. | 
					
						
							|  |  |  |         # - "phone" - joining a conference by dialing a phone number. A conference can | 
					
						
							|  |  |  |         # have zero or more phone entry points. | 
					
						
							|  |  |  |         # - "sip" - joining a conference over SIP. A conference can have zero or one sip | 
					
						
							|  |  |  |         # entry point. | 
					
						
							|  |  |  |         # - "more" - further conference joining instructions, for example additional | 
					
						
							|  |  |  |         # phone numbers. A conference can have zero or one more entry point. A | 
					
						
							|  |  |  |         # conference with only a more entry point is not a valid conference. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `entryPointType` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :entry_point_type | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-01-11 00:35:44 +00:00
										 |  |  |         # The label for the URI. Visible to end users. Not localized. The maximum length | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # is 512 characters. | 
					
						
							|  |  |  |         # Examples: | 
					
						
							|  |  |  |         # - for video: meet.google.com/aaa-bbbb-ccc | 
					
						
							|  |  |  |         # - for phone: +1 123 268 2601 | 
					
						
							| 
									
										
										
										
											2018-01-11 00:35:44 +00:00
										 |  |  |         # - for sip: 12345678@altostrat.com | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # - for more: should not be filled | 
					
						
							|  |  |  |         # Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `label` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :label | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-01-11 00:35:44 +00:00
										 |  |  |         # The meeting code to access the conference. The maximum length is 128 | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # characters. | 
					
						
							|  |  |  |         # When creating new conference data, populate only the subset of `meetingCode, | 
					
						
							|  |  |  |         # accessCode, passcode, password, pin` fields that match the terminology that | 
					
						
							|  |  |  |         # the conference provider uses. Only the populated fields should be displayed. | 
					
						
							|  |  |  |         # Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `meetingCode` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :meeting_code | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-01-11 00:35:44 +00:00
										 |  |  |         # The passcode to access the conference. The maximum length is 128 characters. | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # When creating new conference data, populate only the subset of `meetingCode, | 
					
						
							|  |  |  |         # accessCode, passcode, password, pin` fields that match the terminology that | 
					
						
							|  |  |  |         # the conference provider uses. Only the populated fields should be displayed. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `passcode` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :passcode | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-01-11 00:35:44 +00:00
										 |  |  |         # The password to access the conference. The maximum length is 128 characters. | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # When creating new conference data, populate only the subset of `meetingCode, | 
					
						
							|  |  |  |         # accessCode, passcode, password, pin` fields that match the terminology that | 
					
						
							|  |  |  |         # the conference provider uses. Only the populated fields should be displayed. | 
					
						
							|  |  |  |         # Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `password` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :password | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The PIN to access the conference. The maximum length is 128 characters. | 
					
						
							|  |  |  |         # When creating new conference data, populate only the subset of `meetingCode, | 
					
						
							|  |  |  |         # accessCode, passcode, password, pin` fields that match the terminology that | 
					
						
							|  |  |  |         # the conference provider uses. Only the populated fields should be displayed. | 
					
						
							|  |  |  |         # Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `pin` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :pin | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-09-08 00:36:18 +00:00
										 |  |  |         # The CLDR/ISO 3166 region code for the country associated with this phone | 
					
						
							|  |  |  |         # access. Example: "SE" for Sweden. | 
					
						
							|  |  |  |         # Calendar backend will populate this field only for EntryPointType.PHONE. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `regionCode` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :region_code | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-01-11 00:35:44 +00:00
										 |  |  |         # The URI of the entry point. The maximum length is 1300 characters. | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # Format: | 
					
						
							|  |  |  |         # - for video, http: or https: schema is required. | 
					
						
							|  |  |  |         # - for phone, tel: schema is required. The URI should include the entire dial | 
					
						
							|  |  |  |         # sequence (e.g., tel:+12345678900,,,123456789;1234). | 
					
						
							|  |  |  |         # - for sip, sip: schema is required, e.g., sip:12345678@myprovider.com. | 
					
						
							|  |  |  |         # - for more, http: or https: schema is required. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `uri` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :uri | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							|  |  |  |           @access_code = args[:access_code] if args.key?(:access_code) | 
					
						
							| 
									
										
										
										
											2018-09-08 00:36:18 +00:00
										 |  |  |           @entry_point_features = args[:entry_point_features] if args.key?(:entry_point_features) | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |           @entry_point_type = args[:entry_point_type] if args.key?(:entry_point_type) | 
					
						
							|  |  |  |           @label = args[:label] if args.key?(:label) | 
					
						
							|  |  |  |           @meeting_code = args[:meeting_code] if args.key?(:meeting_code) | 
					
						
							|  |  |  |           @passcode = args[:passcode] if args.key?(:passcode) | 
					
						
							|  |  |  |           @password = args[:password] if args.key?(:password) | 
					
						
							|  |  |  |           @pin = args[:pin] if args.key?(:pin) | 
					
						
							| 
									
										
										
										
											2018-09-08 00:36:18 +00:00
										 |  |  |           @region_code = args[:region_code] if args.key?(:region_code) | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |           @uri = args[:uri] if args.key?(:uri) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |       #  | 
					
						
							|  |  |  |       class Error | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Domain, or broad category, of the error. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `domain` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :domain | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Specific reason for the error. Some of the possible values are: | 
					
						
							|  |  |  |         # - "groupTooBig" - The group of users requested is too large for a single query. | 
					
						
							|  |  |  |         #  | 
					
						
							|  |  |  |         # - "tooManyCalendarsRequested" - The number of calendars requested is too large | 
					
						
							|  |  |  |         # for a single query. | 
					
						
							|  |  |  |         # - "notFound" - The requested resource was not found. | 
					
						
							|  |  |  |         # - "internalError" - The API service has encountered an internal error. | 
					
						
							|  |  |  |         # Additional error types may be added in the future, so clients should | 
					
						
							|  |  |  |         # gracefully handle additional error statuses not included in this list. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `reason` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :reason | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @domain = args[:domain] if args.key?(:domain) | 
					
						
							|  |  |  |           @reason = args[:reason] if args.key?(:reason) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class Event | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |         # Whether anyone can invite themselves to the event (currently works for Google+ | 
					
						
							|  |  |  |         # events only). Optional. The default is False. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `anyoneCanAddSelf` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :anyone_can_add_self | 
					
						
							|  |  |  |         alias_method :anyone_can_add_self?, :anyone_can_add_self | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # File attachments for the event. Currently only Google Drive attachments are | 
					
						
							|  |  |  |         # supported. | 
					
						
							|  |  |  |         # In order to modify attachments the supportsAttachments request parameter | 
					
						
							|  |  |  |         # should be set to true. | 
					
						
							|  |  |  |         # There can be at most 25 attachments per event, | 
					
						
							|  |  |  |         # Corresponds to the JSON property `attachments` | 
					
						
							|  |  |  |         # @return [Array<Google::Apis::CalendarV3::EventAttachment>] | 
					
						
							|  |  |  |         attr_accessor :attachments | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |         # The attendees of the event. See the Events with attendees guide for more | 
					
						
							| 
									
										
										
										
											2020-09-23 00:39:06 +00:00
										 |  |  |         # information on scheduling events with other calendar users. Service accounts | 
					
						
							|  |  |  |         # need to use domain-wide delegation of authority to populate the attendee list. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `attendees` | 
					
						
							|  |  |  |         # @return [Array<Google::Apis::CalendarV3::EventAttendee>] | 
					
						
							|  |  |  |         attr_accessor :attendees | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Whether attendees may have been omitted from the event's representation. When | 
					
						
							|  |  |  |         # retrieving an event, this may be due to a restriction specified by the | 
					
						
							|  |  |  |         # maxAttendee query parameter. When updating an event, this can be used to only | 
					
						
							|  |  |  |         # update the participant's response. Optional. The default is False. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `attendeesOmitted` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :attendees_omitted | 
					
						
							|  |  |  |         alias_method :attendees_omitted?, :attendees_omitted | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The color of the event. This is an ID referring to an entry in the event | 
					
						
							|  |  |  |         # section of the colors definition (see the  colors endpoint). Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `colorId` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :color_id | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2020-05-07 20:07:42 +00:00
										 |  |  |         # The conference-related information, such as details of a Google Meet | 
					
						
							| 
									
										
										
										
											2017-12-19 00:35:20 +00:00
										 |  |  |         # conference. To create new conference details use the createRequest field. To | 
					
						
							|  |  |  |         # persist your changes, remember to set the conferenceDataVersion request | 
					
						
							|  |  |  |         # parameter to 1 for all event modification requests. | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |         # Corresponds to the JSON property `conferenceData` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::ConferenceData] | 
					
						
							|  |  |  |         attr_accessor :conference_data | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |         # Creation time of the event (as a RFC3339 timestamp). Read-only. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `created` | 
					
						
							|  |  |  |         # @return [DateTime] | 
					
						
							|  |  |  |         attr_accessor :created | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The creator of the event. Read-only. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `creator` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::Event::Creator] | 
					
						
							|  |  |  |         attr_accessor :creator | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2019-11-23 00:37:22 +00:00
										 |  |  |         # Description of the event. Can contain HTML. Optional. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `description` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :description | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The (exclusive) end time of the event. For a recurring event, this is the end | 
					
						
							|  |  |  |         # time of the first instance. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `end` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::EventDateTime] | 
					
						
							|  |  |  |         attr_accessor :end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Whether the end time is actually unspecified. An end time is still provided | 
					
						
							|  |  |  |         # for compatibility reasons, even if this attribute is set to True. The default | 
					
						
							|  |  |  |         # is False. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `endTimeUnspecified` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :end_time_unspecified | 
					
						
							|  |  |  |         alias_method :end_time_unspecified?, :end_time_unspecified | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # ETag of the resource. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `etag` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :etag | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Extended properties of the event. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `extendedProperties` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::Event::ExtendedProperties] | 
					
						
							|  |  |  |         attr_accessor :extended_properties | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2020-09-14 23:21:28 +00:00
										 |  |  |         # A gadget that extends this event. Gadgets are deprecated; this structure is | 
					
						
							|  |  |  |         # instead only used for returning birthday calendar metadata. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `gadget` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::Event::Gadget] | 
					
						
							|  |  |  |         attr_accessor :gadget | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Whether attendees other than the organizer can invite others to the event. | 
					
						
							|  |  |  |         # Optional. The default is True. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `guestsCanInviteOthers` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :guests_can_invite_others | 
					
						
							|  |  |  |         alias_method :guests_can_invite_others?, :guests_can_invite_others | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Whether attendees other than the organizer can modify the event. Optional. The | 
					
						
							|  |  |  |         # default is False. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `guestsCanModify` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :guests_can_modify | 
					
						
							|  |  |  |         alias_method :guests_can_modify?, :guests_can_modify | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Whether attendees other than the organizer can see who the event's attendees | 
					
						
							|  |  |  |         # are. Optional. The default is True. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `guestsCanSeeOtherGuests` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :guests_can_see_other_guests | 
					
						
							|  |  |  |         alias_method :guests_can_see_other_guests?, :guests_can_see_other_guests | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # An absolute link to the Google+ hangout associated with this event. Read-only. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `hangoutLink` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :hangout_link | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # An absolute link to this event in the Google Calendar Web UI. Read-only. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `htmlLink` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :html_link | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |         # Event unique identifier as defined in RFC5545. It is used to uniquely identify | 
					
						
							|  |  |  |         # events accross calendaring systems and must be supplied when importing events | 
					
						
							|  |  |  |         # via the import method. | 
					
						
							|  |  |  |         # Note that the icalUID and the id are not identical and only one of them should | 
					
						
							|  |  |  |         # be supplied at event creation time. One difference in their semantics is that | 
					
						
							|  |  |  |         # in recurring events, all occurrences of one event have different ids while | 
					
						
							|  |  |  |         # they all share the same icalUIDs. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `iCalUID` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :i_cal_uid | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |         # Opaque identifier of the event. When creating new single or recurring events, | 
					
						
							|  |  |  |         # you can specify their IDs. Provided IDs must follow these rules: | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # - characters allowed in the ID are those used in base32hex encoding, i.e. | 
					
						
							|  |  |  |         # lowercase letters a-v and digits 0-9, see section 3.1.2 in RFC2938 | 
					
						
							|  |  |  |         # - the length of the ID must be between 5 and 1024 characters | 
					
						
							|  |  |  |         # - the ID must be unique per calendar  Due to the globally distributed nature | 
					
						
							|  |  |  |         # of the system, we cannot guarantee that ID collisions will be detected at | 
					
						
							|  |  |  |         # event creation time. To minimize the risk of collisions we recommend using an | 
					
						
							|  |  |  |         # established UUID algorithm such as one described in RFC4122. | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |         # If you do not specify an ID, it will be automatically generated by the server. | 
					
						
							|  |  |  |         # Note that the icalUID and the id are not identical and only one of them should | 
					
						
							|  |  |  |         # be supplied at event creation time. One difference in their semantics is that | 
					
						
							|  |  |  |         # in recurring events, all occurrences of one event have different ids while | 
					
						
							|  |  |  |         # they all share the same icalUIDs. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `id` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :id | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Type of the resource ("calendar#event"). | 
					
						
							|  |  |  |         # Corresponds to the JSON property `kind` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :kind | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Geographic location of the event as free-form text. Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `location` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :location | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Whether this is a locked event copy where no changes can be made to the main | 
					
						
							|  |  |  |         # event fields "summary", "description", "location", "start", "end" or " | 
					
						
							|  |  |  |         # recurrence". The default is False. Read-Only. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `locked` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :locked | 
					
						
							|  |  |  |         alias_method :locked?, :locked | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The organizer of the event. If the organizer is also an attendee, this is | 
					
						
							|  |  |  |         # indicated with a separate entry in attendees with the organizer field set to | 
					
						
							|  |  |  |         # True. To change the organizer, use the move operation. Read-only, except when | 
					
						
							|  |  |  |         # importing an event. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `organizer` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::Event::Organizer] | 
					
						
							|  |  |  |         attr_accessor :organizer | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # For an instance of a recurring event, this is the time at which this event | 
					
						
							|  |  |  |         # would start according to the recurrence data in the recurring event identified | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |         # by recurringEventId. It uniquely identifies the instance within the recurring | 
					
						
							|  |  |  |         # event series even if the instance was moved to a different time. Immutable. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `originalStartTime` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::EventDateTime] | 
					
						
							|  |  |  |         attr_accessor :original_start_time | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2019-09-12 00:38:48 +00:00
										 |  |  |         # If set to True, Event propagation is disabled. Note that it is not the same | 
					
						
							|  |  |  |         # thing as Private event properties. Optional. Immutable. The default is False. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `privateCopy` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :private_copy | 
					
						
							|  |  |  |         alias_method :private_copy?, :private_copy | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |         # List of RRULE, EXRULE, RDATE and EXDATE lines for a recurring event, as | 
					
						
							|  |  |  |         # specified in RFC5545. Note that DTSTART and DTEND lines are not allowed in | 
					
						
							|  |  |  |         # this field; event start and end times are specified in the start and end | 
					
						
							|  |  |  |         # fields. This field is omitted for single events or instances of recurring | 
					
						
							|  |  |  |         # events. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `recurrence` | 
					
						
							|  |  |  |         # @return [Array<String>] | 
					
						
							|  |  |  |         attr_accessor :recurrence | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |         # For an instance of a recurring event, this is the id of the recurring event to | 
					
						
							|  |  |  |         # which this instance belongs. Immutable. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `recurringEventId` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :recurring_event_id | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Information about the event's reminders for the authenticated user. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `reminders` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::Event::Reminders] | 
					
						
							|  |  |  |         attr_accessor :reminders | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Sequence number as per iCalendar. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `sequence` | 
					
						
							|  |  |  |         # @return [Fixnum] | 
					
						
							|  |  |  |         attr_accessor :sequence | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |         # Source from which the event was created. For example, a web page, an email | 
					
						
							|  |  |  |         # message or any document identifiable by an URL with HTTP or HTTPS scheme. Can | 
					
						
							|  |  |  |         # only be seen or modified by the creator of the event. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `source` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::Event::Source] | 
					
						
							|  |  |  |         attr_accessor :source | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The (inclusive) start time of the event. For a recurring event, this is the | 
					
						
							|  |  |  |         # start time of the first instance. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `start` | 
					
						
							|  |  |  |         # @return [Google::Apis::CalendarV3::EventDateTime] | 
					
						
							|  |  |  |         attr_accessor :start | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Status of the event. Optional. Possible values are: | 
					
						
							|  |  |  |         # - "confirmed" - The event is confirmed. This is the default status. | 
					
						
							|  |  |  |         # - "tentative" - The event is tentatively confirmed. | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |         # - "cancelled" - The event is cancelled (deleted). The list method returns | 
					
						
							|  |  |  |         # cancelled events only on incremental sync (when syncToken or updatedMin are | 
					
						
							|  |  |  |         # specified) or if the showDeleted flag is set to true. The get method always | 
					
						
							|  |  |  |         # returns them. | 
					
						
							|  |  |  |         # A cancelled status represents two different states depending on the event type: | 
					
						
							|  |  |  |         #  | 
					
						
							|  |  |  |         # - Cancelled exceptions of an uncancelled recurring event indicate that this | 
					
						
							|  |  |  |         # instance should no longer be presented to the user. Clients should store these | 
					
						
							|  |  |  |         # events for the lifetime of the parent recurring event. | 
					
						
							|  |  |  |         # Cancelled exceptions are only guaranteed to have values for the id, | 
					
						
							|  |  |  |         # recurringEventId and originalStartTime fields populated. The other fields | 
					
						
							|  |  |  |         # might be empty. | 
					
						
							|  |  |  |         # - All other cancelled events represent deleted events. Clients should remove | 
					
						
							|  |  |  |         # their locally synced copies. Such cancelled events will eventually disappear, | 
					
						
							|  |  |  |         # so do not rely on them being available indefinitely. | 
					
						
							|  |  |  |         # Deleted events are only guaranteed to have the id field populated.   On the | 
					
						
							|  |  |  |         # organizer's calendar, cancelled events continue to expose event details ( | 
					
						
							|  |  |  |         # summary, location, etc.) so that they can be restored (undeleted). Similarly, | 
					
						
							|  |  |  |         # the events to which the user was invited and that they manually removed | 
					
						
							|  |  |  |         # continue to provide details. However, incremental sync requests with | 
					
						
							|  |  |  |         # showDeleted set to false will not return these details. | 
					
						
							|  |  |  |         # If an event changes its organizer (for example via the move operation) and the | 
					
						
							|  |  |  |         # original organizer is not on the attendee list, it will leave behind a | 
					
						
							|  |  |  |         # cancelled event where only the id field is guaranteed to be populated. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `status` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :status | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Title of the event. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `summary` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :summary | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Whether the event blocks time on the calendar. Optional. Possible values are: | 
					
						
							| 
									
										
										
										
											2017-08-25 19:54:22 +00:00
										 |  |  |         # - "opaque" - Default value. The event does block time on the calendar. This is | 
					
						
							|  |  |  |         # equivalent to setting Show me as to Busy in the Calendar UI. | 
					
						
							|  |  |  |         # - "transparent" - The event does not block time on the calendar. This is | 
					
						
							|  |  |  |         # equivalent to setting Show me as to Available in the Calendar UI. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `transparency` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :transparency | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |         # Last modification time of the event (as a RFC3339 timestamp). Read-only. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `updated` | 
					
						
							|  |  |  |         # @return [DateTime] | 
					
						
							|  |  |  |         attr_accessor :updated | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Visibility of the event. Optional. Possible values are: | 
					
						
							|  |  |  |         # - "default" - Uses the default visibility for events on the calendar. This is | 
					
						
							|  |  |  |         # the default value. | 
					
						
							|  |  |  |         # - "public" - The event is public and event details are visible to all readers | 
					
						
							|  |  |  |         # of the calendar. | 
					
						
							|  |  |  |         # - "private" - The event is private and only event attendees may view event | 
					
						
							|  |  |  |         # details. | 
					
						
							|  |  |  |         # - "confidential" - The event is private. This value is provided for | 
					
						
							|  |  |  |         # compatibility reasons. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `visibility` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :visibility | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @anyone_can_add_self = args[:anyone_can_add_self] if args.key?(:anyone_can_add_self) | 
					
						
							|  |  |  |           @attachments = args[:attachments] if args.key?(:attachments) | 
					
						
							|  |  |  |           @attendees = args[:attendees] if args.key?(:attendees) | 
					
						
							|  |  |  |           @attendees_omitted = args[:attendees_omitted] if args.key?(:attendees_omitted) | 
					
						
							|  |  |  |           @color_id = args[:color_id] if args.key?(:color_id) | 
					
						
							| 
									
										
										
										
											2017-12-14 00:36:06 +00:00
										 |  |  |           @conference_data = args[:conference_data] if args.key?(:conference_data) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @created = args[:created] if args.key?(:created) | 
					
						
							|  |  |  |           @creator = args[:creator] if args.key?(:creator) | 
					
						
							|  |  |  |           @description = args[:description] if args.key?(:description) | 
					
						
							|  |  |  |           @end = args[:end] if args.key?(:end) | 
					
						
							|  |  |  |           @end_time_unspecified = args[:end_time_unspecified] if args.key?(:end_time_unspecified) | 
					
						
							|  |  |  |           @etag = args[:etag] if args.key?(:etag) | 
					
						
							|  |  |  |           @extended_properties = args[:extended_properties] if args.key?(:extended_properties) | 
					
						
							|  |  |  |           @gadget = args[:gadget] if args.key?(:gadget) | 
					
						
							|  |  |  |           @guests_can_invite_others = args[:guests_can_invite_others] if args.key?(:guests_can_invite_others) | 
					
						
							|  |  |  |           @guests_can_modify = args[:guests_can_modify] if args.key?(:guests_can_modify) | 
					
						
							|  |  |  |           @guests_can_see_other_guests = args[:guests_can_see_other_guests] if args.key?(:guests_can_see_other_guests) | 
					
						
							|  |  |  |           @hangout_link = args[:hangout_link] if args.key?(:hangout_link) | 
					
						
							|  |  |  |           @html_link = args[:html_link] if args.key?(:html_link) | 
					
						
							|  |  |  |           @i_cal_uid = args[:i_cal_uid] if args.key?(:i_cal_uid) | 
					
						
							|  |  |  |           @id = args[:id] if args.key?(:id) | 
					
						
							|  |  |  |           @kind = args[:kind] if args.key?(:kind) | 
					
						
							|  |  |  |           @location = args[:location] if args.key?(:location) | 
					
						
							|  |  |  |           @locked = args[:locked] if args.key?(:locked) | 
					
						
							|  |  |  |           @organizer = args[:organizer] if args.key?(:organizer) | 
					
						
							|  |  |  |           @original_start_time = args[:original_start_time] if args.key?(:original_start_time) | 
					
						
							|  |  |  |           @private_copy = args[:private_copy] if args.key?(:private_copy) | 
					
						
							|  |  |  |           @recurrence = args[:recurrence] if args.key?(:recurrence) | 
					
						
							|  |  |  |           @recurring_event_id = args[:recurring_event_id] if args.key?(:recurring_event_id) | 
					
						
							|  |  |  |           @reminders = args[:reminders] if args.key?(:reminders) | 
					
						
							|  |  |  |           @sequence = args[:sequence] if args.key?(:sequence) | 
					
						
							|  |  |  |           @source = args[:source] if args.key?(:source) | 
					
						
							|  |  |  |           @start = args[:start] if args.key?(:start) | 
					
						
							|  |  |  |           @status = args[:status] if args.key?(:status) | 
					
						
							|  |  |  |           @summary = args[:summary] if args.key?(:summary) | 
					
						
							|  |  |  |           @transparency = args[:transparency] if args.key?(:transparency) | 
					
						
							|  |  |  |           @updated = args[:updated] if args.key?(:updated) | 
					
						
							|  |  |  |           @visibility = args[:visibility] if args.key?(:visibility) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |         # The creator of the event. Read-only. | 
					
						
							|  |  |  |         class Creator | 
					
						
							|  |  |  |           include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # The creator's name, if available. | 
					
						
							|  |  |  |           # Corresponds to the JSON property `displayName` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :display_name | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # The creator's email address, if available. | 
					
						
							|  |  |  |           # Corresponds to the JSON property `email` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :email | 
					
						
							|  |  |  |          | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |           # The creator's Profile ID, if available. It corresponds to the id field in the | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |           # People collection of the Google+ API | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           # Corresponds to the JSON property `id` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :id | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Whether the creator corresponds to the calendar on which this copy of the | 
					
						
							|  |  |  |           # event appears. Read-only. The default is False. | 
					
						
							|  |  |  |           # Corresponds to the JSON property `self` | 
					
						
							|  |  |  |           # @return [Boolean] | 
					
						
							|  |  |  |           attr_accessor :self | 
					
						
							|  |  |  |           alias_method :self?, :self | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           def initialize(**args) | 
					
						
							|  |  |  |              update!(**args) | 
					
						
							|  |  |  |           end | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Update properties of this object | 
					
						
							|  |  |  |           def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |             @display_name = args[:display_name] if args.key?(:display_name) | 
					
						
							|  |  |  |             @email = args[:email] if args.key?(:email) | 
					
						
							|  |  |  |             @id = args[:id] if args.key?(:id) | 
					
						
							|  |  |  |             @self = args[:self] if args.key?(:self) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           end | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |         # Extended properties of the event. | 
					
						
							|  |  |  |         class ExtendedProperties | 
					
						
							|  |  |  |           include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Properties that are private to the copy of the event that appears on this | 
					
						
							|  |  |  |           # calendar. | 
					
						
							|  |  |  |           # Corresponds to the JSON property `private` | 
					
						
							|  |  |  |           # @return [Hash<String,String>] | 
					
						
							|  |  |  |           attr_accessor :private | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Properties that are shared between copies of the event on other attendees' | 
					
						
							|  |  |  |           # calendars. | 
					
						
							|  |  |  |           # Corresponds to the JSON property `shared` | 
					
						
							|  |  |  |           # @return [Hash<String,String>] | 
					
						
							|  |  |  |           attr_accessor :shared | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           def initialize(**args) | 
					
						
							|  |  |  |              update!(**args) | 
					
						
							|  |  |  |           end | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Update properties of this object | 
					
						
							|  |  |  |           def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |             @private = args[:private] if args.key?(:private) | 
					
						
							|  |  |  |             @shared = args[:shared] if args.key?(:shared) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           end | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |          | 
					
						
							| 
									
										
										
										
											2020-09-14 23:21:28 +00:00
										 |  |  |         # A gadget that extends this event. Gadgets are deprecated; this structure is | 
					
						
							|  |  |  |         # instead only used for returning birthday calendar metadata. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         class Gadget | 
					
						
							|  |  |  |           include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |          | 
					
						
							| 
									
										
										
										
											2020-09-14 23:21:28 +00:00
										 |  |  |           # The gadget's display mode. Deprecated. Possible values are: | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           # - "icon" - The gadget displays next to the event's title in the calendar view. | 
					
						
							|  |  |  |           # - "chip" - The gadget displays when the event is clicked. | 
					
						
							|  |  |  |           # Corresponds to the JSON property `display` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :display_mode | 
					
						
							|  |  |  |          | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |           # The gadget's height in pixels. The height must be an integer greater than 0. | 
					
						
							| 
									
										
										
										
											2020-09-14 23:21:28 +00:00
										 |  |  |           # Optional. Deprecated. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           # Corresponds to the JSON property `height` | 
					
						
							|  |  |  |           # @return [Fixnum] | 
					
						
							|  |  |  |           attr_accessor :height | 
					
						
							|  |  |  |          | 
					
						
							| 
									
										
										
										
											2020-09-14 23:21:28 +00:00
										 |  |  |           # The gadget's icon URL. The URL scheme must be HTTPS. Deprecated. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           # Corresponds to the JSON property `iconLink` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :icon_link | 
					
						
							|  |  |  |          | 
					
						
							| 
									
										
										
										
											2020-09-14 23:21:28 +00:00
										 |  |  |           # The gadget's URL. The URL scheme must be HTTPS. Deprecated. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           # Corresponds to the JSON property `link` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :link | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Preferences. | 
					
						
							|  |  |  |           # Corresponds to the JSON property `preferences` | 
					
						
							|  |  |  |           # @return [Hash<String,String>] | 
					
						
							|  |  |  |           attr_accessor :preferences | 
					
						
							|  |  |  |          | 
					
						
							| 
									
										
										
										
											2020-09-14 23:21:28 +00:00
										 |  |  |           # The gadget's title. Deprecated. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           # Corresponds to the JSON property `title` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :title | 
					
						
							|  |  |  |          | 
					
						
							| 
									
										
										
										
											2020-09-14 23:21:28 +00:00
										 |  |  |           # The gadget's type. Deprecated. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           # Corresponds to the JSON property `type` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :type | 
					
						
							|  |  |  |          | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |           # The gadget's width in pixels. The width must be an integer greater than 0. | 
					
						
							| 
									
										
										
										
											2020-09-14 23:21:28 +00:00
										 |  |  |           # Optional. Deprecated. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           # Corresponds to the JSON property `width` | 
					
						
							|  |  |  |           # @return [Fixnum] | 
					
						
							|  |  |  |           attr_accessor :width | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           def initialize(**args) | 
					
						
							|  |  |  |              update!(**args) | 
					
						
							|  |  |  |           end | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Update properties of this object | 
					
						
							|  |  |  |           def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |             @display_mode = args[:display_mode] if args.key?(:display_mode) | 
					
						
							|  |  |  |             @height = args[:height] if args.key?(:height) | 
					
						
							|  |  |  |             @icon_link = args[:icon_link] if args.key?(:icon_link) | 
					
						
							|  |  |  |             @link = args[:link] if args.key?(:link) | 
					
						
							|  |  |  |             @preferences = args[:preferences] if args.key?(:preferences) | 
					
						
							|  |  |  |             @title = args[:title] if args.key?(:title) | 
					
						
							|  |  |  |             @type = args[:type] if args.key?(:type) | 
					
						
							|  |  |  |             @width = args[:width] if args.key?(:width) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           end | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |         # The organizer of the event. If the organizer is also an attendee, this is | 
					
						
							|  |  |  |         # indicated with a separate entry in attendees with the organizer field set to | 
					
						
							|  |  |  |         # True. To change the organizer, use the move operation. Read-only, except when | 
					
						
							|  |  |  |         # importing an event. | 
					
						
							|  |  |  |         class Organizer | 
					
						
							|  |  |  |           include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # The organizer's name, if available. | 
					
						
							|  |  |  |           # Corresponds to the JSON property `displayName` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :display_name | 
					
						
							|  |  |  |          | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |           # The organizer's email address, if available. It must be a valid email address | 
					
						
							|  |  |  |           # as per RFC5322. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           # Corresponds to the JSON property `email` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :email | 
					
						
							|  |  |  |          | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |           # The organizer's Profile ID, if available. It corresponds to the id field in | 
					
						
							|  |  |  |           # the People collection of the Google+ API | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           # Corresponds to the JSON property `id` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :id | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Whether the organizer corresponds to the calendar on which this copy of the | 
					
						
							|  |  |  |           # event appears. Read-only. The default is False. | 
					
						
							|  |  |  |           # Corresponds to the JSON property `self` | 
					
						
							|  |  |  |           # @return [Boolean] | 
					
						
							|  |  |  |           attr_accessor :self | 
					
						
							|  |  |  |           alias_method :self?, :self | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           def initialize(**args) | 
					
						
							|  |  |  |              update!(**args) | 
					
						
							|  |  |  |           end | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Update properties of this object | 
					
						
							|  |  |  |           def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |             @display_name = args[:display_name] if args.key?(:display_name) | 
					
						
							|  |  |  |             @email = args[:email] if args.key?(:email) | 
					
						
							|  |  |  |             @id = args[:id] if args.key?(:id) | 
					
						
							|  |  |  |             @self = args[:self] if args.key?(:self) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           end | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |         # Information about the event's reminders for the authenticated user. | 
					
						
							|  |  |  |         class Reminders | 
					
						
							|  |  |  |           include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # If the event doesn't use the default reminders, this lists the reminders | 
					
						
							|  |  |  |           # specific to the event, or, if not set, indicates that no reminders are set for | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |           # this event. The maximum number of override reminders is 5. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           # Corresponds to the JSON property `overrides` | 
					
						
							|  |  |  |           # @return [Array<Google::Apis::CalendarV3::EventReminder>] | 
					
						
							|  |  |  |           attr_accessor :overrides | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Whether the default reminders of the calendar apply to the event. | 
					
						
							|  |  |  |           # Corresponds to the JSON property `useDefault` | 
					
						
							|  |  |  |           # @return [Boolean] | 
					
						
							|  |  |  |           attr_accessor :use_default | 
					
						
							|  |  |  |           alias_method :use_default?, :use_default | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           def initialize(**args) | 
					
						
							|  |  |  |              update!(**args) | 
					
						
							|  |  |  |           end | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Update properties of this object | 
					
						
							|  |  |  |           def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |             @overrides = args[:overrides] if args.key?(:overrides) | 
					
						
							|  |  |  |             @use_default = args[:use_default] if args.key?(:use_default) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           end | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |          | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |         # Source from which the event was created. For example, a web page, an email | 
					
						
							|  |  |  |         # message or any document identifiable by an URL with HTTP or HTTPS scheme. Can | 
					
						
							|  |  |  |         # only be seen or modified by the creator of the event. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         class Source | 
					
						
							|  |  |  |           include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Title of the source; for example a title of a web page or an email subject. | 
					
						
							|  |  |  |           # Corresponds to the JSON property `title` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :title | 
					
						
							|  |  |  |          | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |           # URL of the source pointing to a resource. The URL scheme must be HTTP or HTTPS. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           # Corresponds to the JSON property `url` | 
					
						
							|  |  |  |           # @return [String] | 
					
						
							|  |  |  |           attr_accessor :url | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           def initialize(**args) | 
					
						
							|  |  |  |              update!(**args) | 
					
						
							|  |  |  |           end | 
					
						
							|  |  |  |          | 
					
						
							|  |  |  |           # Update properties of this object | 
					
						
							|  |  |  |           def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |             @title = args[:title] if args.key?(:title) | 
					
						
							|  |  |  |             @url = args[:url] if args.key?(:url) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |           end | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class EventAttachment | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-07-20 21:49:34 +00:00
										 |  |  |         # ID of the attached file. Read-only. | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |         # For Google Drive files, this is the ID of the corresponding Files resource | 
					
						
							| 
									
										
										
										
											2015-07-20 21:49:34 +00:00
										 |  |  |         # entry in the Drive API. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `fileId` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :file_id | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # URL link to the attachment. | 
					
						
							|  |  |  |         # For adding Google Drive file attachments use the same format as in | 
					
						
							|  |  |  |         # alternateLink property of the Files resource in the Drive API. | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |         # Required when adding an attachment. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `fileUrl` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :file_url | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # URL link to the attachment's icon. Read-only. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `iconLink` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :icon_link | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Internet media type (MIME type) of the attachment. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `mimeType` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :mime_type | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Attachment title. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `title` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :title | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @file_id = args[:file_id] if args.key?(:file_id) | 
					
						
							|  |  |  |           @file_url = args[:file_url] if args.key?(:file_url) | 
					
						
							|  |  |  |           @icon_link = args[:icon_link] if args.key?(:icon_link) | 
					
						
							|  |  |  |           @mime_type = args[:mime_type] if args.key?(:mime_type) | 
					
						
							|  |  |  |           @title = args[:title] if args.key?(:title) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class EventAttendee | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Number of additional guests. Optional. The default is 0. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `additionalGuests` | 
					
						
							|  |  |  |         # @return [Fixnum] | 
					
						
							|  |  |  |         attr_accessor :additional_guests | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The attendee's response comment. Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `comment` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :comment | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The attendee's name, if available. Optional. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `displayName` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :display_name | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The attendee's email address, if available. This field must be present when | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |         # adding an attendee. It must be a valid email address as per RFC5322. | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |         # Required when adding an attendee. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `email` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :email | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |         # The attendee's Profile ID, if available. It corresponds to the id field in the | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |         # People collection of the Google+ API | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `id` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :id | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Whether this is an optional attendee. Optional. The default is False. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `optional` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :optional | 
					
						
							|  |  |  |         alias_method :optional?, :optional | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Whether the attendee is the organizer of the event. Read-only. The default is | 
					
						
							|  |  |  |         # False. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `organizer` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :organizer | 
					
						
							|  |  |  |         alias_method :organizer?, :organizer | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-03-29 00:36:15 +00:00
										 |  |  |         # Whether the attendee is a resource. Can only be set when the attendee is added | 
					
						
							|  |  |  |         # to the event for the first time. Subsequent modifications are ignored. | 
					
						
							|  |  |  |         # Optional. The default is False. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `resource` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :resource | 
					
						
							|  |  |  |         alias_method :resource?, :resource | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The attendee's response status. Possible values are: | 
					
						
							|  |  |  |         # - "needsAction" - The attendee has not responded to the invitation. | 
					
						
							|  |  |  |         # - "declined" - The attendee has declined the invitation. | 
					
						
							|  |  |  |         # - "tentative" - The attendee has tentatively accepted the invitation. | 
					
						
							|  |  |  |         # - "accepted" - The attendee has accepted the invitation. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `responseStatus` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :response_status | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Whether this entry represents the calendar on which this copy of the event | 
					
						
							|  |  |  |         # appears. Read-only. The default is False. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `self` | 
					
						
							|  |  |  |         # @return [Boolean] | 
					
						
							|  |  |  |         attr_accessor :self | 
					
						
							|  |  |  |         alias_method :self?, :self | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @additional_guests = args[:additional_guests] if args.key?(:additional_guests) | 
					
						
							|  |  |  |           @comment = args[:comment] if args.key?(:comment) | 
					
						
							|  |  |  |           @display_name = args[:display_name] if args.key?(:display_name) | 
					
						
							|  |  |  |           @email = args[:email] if args.key?(:email) | 
					
						
							|  |  |  |           @id = args[:id] if args.key?(:id) | 
					
						
							|  |  |  |           @optional = args[:optional] if args.key?(:optional) | 
					
						
							|  |  |  |           @organizer = args[:organizer] if args.key?(:organizer) | 
					
						
							|  |  |  |           @resource = args[:resource] if args.key?(:resource) | 
					
						
							|  |  |  |           @response_status = args[:response_status] if args.key?(:response_status) | 
					
						
							|  |  |  |           @self = args[:self] if args.key?(:self) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class EventDateTime | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The date, in the format "yyyy-mm-dd", if this is an all-day event. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `date` | 
					
						
							|  |  |  |         # @return [Date] | 
					
						
							|  |  |  |         attr_accessor :date | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |         # The time, as a combined date-time value (formatted according to RFC3339). A | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # time zone offset is required unless a time zone is explicitly specified in | 
					
						
							|  |  |  |         # timeZone. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `dateTime` | 
					
						
							|  |  |  |         # @return [DateTime] | 
					
						
							|  |  |  |         attr_accessor :date_time | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The time zone in which the time is specified. (Formatted as an IANA Time Zone | 
					
						
							|  |  |  |         # Database name, e.g. "Europe/Zurich".) For recurring events this field is | 
					
						
							|  |  |  |         # required and specifies the time zone in which the recurrence is expanded. For | 
					
						
							|  |  |  |         # single events this field is optional and indicates a custom time zone for the | 
					
						
							|  |  |  |         # event start/end. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `timeZone` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :time_zone | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @date = args[:date] if args.key?(:date) | 
					
						
							|  |  |  |           @date_time = args[:date_time] if args.key?(:date_time) | 
					
						
							|  |  |  |           @time_zone = args[:time_zone] if args.key?(:time_zone) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class EventReminder | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The method used by this reminder. Possible values are: | 
					
						
							|  |  |  |         # - "email" - Reminders are sent via email. | 
					
						
							|  |  |  |         # - "popup" - Reminders are sent via a UI popup. | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |         # Required when adding a reminder. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `method` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :reminder_method | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Number of minutes before the start of the event when the reminder should | 
					
						
							| 
									
										
										
										
											2015-07-31 00:05:47 +00:00
										 |  |  |         # trigger. Valid values are between 0 and 40320 (4 weeks in minutes). | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |         # Required when adding a reminder. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `minutes` | 
					
						
							|  |  |  |         # @return [Fixnum] | 
					
						
							|  |  |  |         attr_accessor :minutes | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @reminder_method = args[:reminder_method] if args.key?(:reminder_method) | 
					
						
							|  |  |  |           @minutes = args[:minutes] if args.key?(:minutes) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class Events | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The user's access role for this calendar. Read-only. Possible values are: | 
					
						
							|  |  |  |         # - "none" - The user has no access. | 
					
						
							|  |  |  |         # - "freeBusyReader" - The user has read access to free/busy information. | 
					
						
							|  |  |  |         # - "reader" - The user has read access to the calendar. Private events will | 
					
						
							|  |  |  |         # appear to users with reader access, but event details will be hidden. | 
					
						
							|  |  |  |         # - "writer" - The user has read and write access to the calendar. Private | 
					
						
							|  |  |  |         # events will appear to users with writer access, and event details will be | 
					
						
							|  |  |  |         # visible. | 
					
						
							|  |  |  |         # - "owner" - The user has ownership of the calendar. This role has all of the | 
					
						
							|  |  |  |         # permissions of the writer role with the additional ability to see and | 
					
						
							|  |  |  |         # manipulate ACLs. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `accessRole` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :access_role | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The default reminders on the calendar for the authenticated user. These | 
					
						
							|  |  |  |         # reminders apply to all events on this calendar that do not explicitly override | 
					
						
							|  |  |  |         # them (i.e. do not have reminders.useDefault set to True). | 
					
						
							|  |  |  |         # Corresponds to the JSON property `defaultReminders` | 
					
						
							|  |  |  |         # @return [Array<Google::Apis::CalendarV3::EventReminder>] | 
					
						
							|  |  |  |         attr_accessor :default_reminders | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Description of the calendar. Read-only. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `description` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :description | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # ETag of the collection. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `etag` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :etag | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # List of events on the calendar. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `items` | 
					
						
							|  |  |  |         # @return [Array<Google::Apis::CalendarV3::Event>] | 
					
						
							|  |  |  |         attr_accessor :items | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Type of the collection ("calendar#events"). | 
					
						
							|  |  |  |         # Corresponds to the JSON property `kind` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :kind | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Token used to access the next page of this result. Omitted if no further | 
					
						
							|  |  |  |         # results are available, in which case nextSyncToken is provided. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `nextPageToken` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :next_page_token | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Token used at a later point in time to retrieve only the entries that have | 
					
						
							|  |  |  |         # changed since this result was returned. Omitted if further results are | 
					
						
							|  |  |  |         # available, in which case nextPageToken is provided. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `nextSyncToken` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :next_sync_token | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Title of the calendar. Read-only. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `summary` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :summary | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The time zone of the calendar. Read-only. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `timeZone` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :time_zone | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2015-12-03 01:10:07 +00:00
										 |  |  |         # Last modification time of the calendar (as a RFC3339 timestamp). Read-only. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `updated` | 
					
						
							|  |  |  |         # @return [DateTime] | 
					
						
							|  |  |  |         attr_accessor :updated | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @access_role = args[:access_role] if args.key?(:access_role) | 
					
						
							|  |  |  |           @default_reminders = args[:default_reminders] if args.key?(:default_reminders) | 
					
						
							|  |  |  |           @description = args[:description] if args.key?(:description) | 
					
						
							|  |  |  |           @etag = args[:etag] if args.key?(:etag) | 
					
						
							|  |  |  |           @items = args[:items] if args.key?(:items) | 
					
						
							|  |  |  |           @kind = args[:kind] if args.key?(:kind) | 
					
						
							|  |  |  |           @next_page_token = args[:next_page_token] if args.key?(:next_page_token) | 
					
						
							|  |  |  |           @next_sync_token = args[:next_sync_token] if args.key?(:next_sync_token) | 
					
						
							|  |  |  |           @summary = args[:summary] if args.key?(:summary) | 
					
						
							|  |  |  |           @time_zone = args[:time_zone] if args.key?(:time_zone) | 
					
						
							|  |  |  |           @updated = args[:updated] if args.key?(:updated) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class FreeBusyCalendar | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # List of time ranges during which this calendar should be regarded as busy. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `busy` | 
					
						
							|  |  |  |         # @return [Array<Google::Apis::CalendarV3::TimePeriod>] | 
					
						
							|  |  |  |         attr_accessor :busy | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Optional error(s) (if computation for the calendar failed). | 
					
						
							|  |  |  |         # Corresponds to the JSON property `errors` | 
					
						
							|  |  |  |         # @return [Array<Google::Apis::CalendarV3::Error>] | 
					
						
							|  |  |  |         attr_accessor :errors | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @busy = args[:busy] if args.key?(:busy) | 
					
						
							|  |  |  |           @errors = args[:errors] if args.key?(:errors) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class FreeBusyGroup | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # List of calendars' identifiers within a group. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `calendars` | 
					
						
							|  |  |  |         # @return [Array<String>] | 
					
						
							|  |  |  |         attr_accessor :calendars | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Optional error(s) (if computation for the group failed). | 
					
						
							|  |  |  |         # Corresponds to the JSON property `errors` | 
					
						
							|  |  |  |         # @return [Array<Google::Apis::CalendarV3::Error>] | 
					
						
							|  |  |  |         attr_accessor :errors | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @calendars = args[:calendars] if args.key?(:calendars) | 
					
						
							|  |  |  |           @errors = args[:errors] if args.key?(:errors) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class FreeBusyRequest | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Maximal number of calendars for which FreeBusy information is to be provided. | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |         # Optional. Maximum value is 50. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `calendarExpansionMax` | 
					
						
							|  |  |  |         # @return [Fixnum] | 
					
						
							|  |  |  |         attr_accessor :calendar_expansion_max | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Maximal number of calendar identifiers to be provided for a single group. | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |         # Optional. An error is returned for a group with more members than this value. | 
					
						
							|  |  |  |         # Maximum value is 100. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `groupExpansionMax` | 
					
						
							|  |  |  |         # @return [Fixnum] | 
					
						
							|  |  |  |         attr_accessor :group_expansion_max | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # List of calendars and/or groups to query. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `items` | 
					
						
							|  |  |  |         # @return [Array<Google::Apis::CalendarV3::FreeBusyRequestItem>] | 
					
						
							|  |  |  |         attr_accessor :items | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |         # The end of the interval for the query formatted as per RFC3339. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `timeMax` | 
					
						
							|  |  |  |         # @return [DateTime] | 
					
						
							|  |  |  |         attr_accessor :time_max | 
					
						
							|  |  |  |        | 
					
						
							| 
									
										
										
										
											2018-08-22 21:14:52 +00:00
										 |  |  |         # The start of the interval for the query formatted as per RFC3339. | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         # Corresponds to the JSON property `timeMin` | 
					
						
							|  |  |  |         # @return [DateTime] | 
					
						
							|  |  |  |         attr_accessor :time_min | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Time zone used in the response. Optional. The default is UTC. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `timeZone` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :time_zone | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @calendar_expansion_max = args[:calendar_expansion_max] if args.key?(:calendar_expansion_max) | 
					
						
							|  |  |  |           @group_expansion_max = args[:group_expansion_max] if args.key?(:group_expansion_max) | 
					
						
							|  |  |  |           @items = args[:items] if args.key?(:items) | 
					
						
							|  |  |  |           @time_max = args[:time_max] if args.key?(:time_max) | 
					
						
							|  |  |  |           @time_min = args[:time_min] if args.key?(:time_min) | 
					
						
							|  |  |  |           @time_zone = args[:time_zone] if args.key?(:time_zone) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class FreeBusyRequestItem | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The identifier of a calendar or a group. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `id` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :id | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @id = args[:id] if args.key?(:id) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class FreeBusyResponse | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # List of free/busy information for calendars. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `calendars` | 
					
						
							|  |  |  |         # @return [Hash<String,Google::Apis::CalendarV3::FreeBusyCalendar>] | 
					
						
							|  |  |  |         attr_accessor :calendars | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Expansion of groups. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `groups` | 
					
						
							|  |  |  |         # @return [Hash<String,Google::Apis::CalendarV3::FreeBusyGroup>] | 
					
						
							|  |  |  |         attr_accessor :groups | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Type of the resource ("calendar#freeBusy"). | 
					
						
							|  |  |  |         # Corresponds to the JSON property `kind` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :kind | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The end of the interval. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `timeMax` | 
					
						
							|  |  |  |         # @return [DateTime] | 
					
						
							|  |  |  |         attr_accessor :time_max | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The start of the interval. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `timeMin` | 
					
						
							|  |  |  |         # @return [DateTime] | 
					
						
							|  |  |  |         attr_accessor :time_min | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @calendars = args[:calendars] if args.key?(:calendars) | 
					
						
							|  |  |  |           @groups = args[:groups] if args.key?(:groups) | 
					
						
							|  |  |  |           @kind = args[:kind] if args.key?(:kind) | 
					
						
							|  |  |  |           @time_max = args[:time_max] if args.key?(:time_max) | 
					
						
							|  |  |  |           @time_min = args[:time_min] if args.key?(:time_min) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class Setting | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # ETag of the resource. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `etag` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :etag | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The id of the user setting. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `id` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :id | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Type of the resource ("calendar#setting"). | 
					
						
							|  |  |  |         # Corresponds to the JSON property `kind` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :kind | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Value of the user setting. The format of the value depends on the ID of the | 
					
						
							|  |  |  |         # setting. It must always be a UTF-8 string of length up to 1024 characters. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `value` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :value | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @etag = args[:etag] if args.key?(:etag) | 
					
						
							|  |  |  |           @id = args[:id] if args.key?(:id) | 
					
						
							|  |  |  |           @kind = args[:kind] if args.key?(:kind) | 
					
						
							|  |  |  |           @value = args[:value] if args.key?(:value) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class Settings | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Etag of the collection. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `etag` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :etag | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # List of user settings. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `items` | 
					
						
							|  |  |  |         # @return [Array<Google::Apis::CalendarV3::Setting>] | 
					
						
							|  |  |  |         attr_accessor :items | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Type of the collection ("calendar#settings"). | 
					
						
							|  |  |  |         # Corresponds to the JSON property `kind` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :kind | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Token used to access the next page of this result. Omitted if no further | 
					
						
							|  |  |  |         # results are available, in which case nextSyncToken is provided. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `nextPageToken` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :next_page_token | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Token used at a later point in time to retrieve only the entries that have | 
					
						
							|  |  |  |         # changed since this result was returned. Omitted if further results are | 
					
						
							|  |  |  |         # available, in which case nextPageToken is provided. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `nextSyncToken` | 
					
						
							|  |  |  |         # @return [String] | 
					
						
							|  |  |  |         attr_accessor :next_sync_token | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @etag = args[:etag] if args.key?(:etag) | 
					
						
							|  |  |  |           @items = args[:items] if args.key?(:items) | 
					
						
							|  |  |  |           @kind = args[:kind] if args.key?(:kind) | 
					
						
							|  |  |  |           @next_page_token = args[:next_page_token] if args.key?(:next_page_token) | 
					
						
							|  |  |  |           @next_sync_token = args[:next_sync_token] if args.key?(:next_sync_token) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |       #  | 
					
						
							|  |  |  |       class TimePeriod | 
					
						
							|  |  |  |         include Google::Apis::Core::Hashable | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The (exclusive) end of the time period. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `end` | 
					
						
							|  |  |  |         # @return [DateTime] | 
					
						
							|  |  |  |         attr_accessor :end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # The (inclusive) start of the time period. | 
					
						
							|  |  |  |         # Corresponds to the JSON property `start` | 
					
						
							|  |  |  |         # @return [DateTime] | 
					
						
							|  |  |  |         attr_accessor :start | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         def initialize(**args) | 
					
						
							|  |  |  |            update!(**args) | 
					
						
							|  |  |  |         end | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  |         # Update properties of this object | 
					
						
							|  |  |  |         def update!(**args) | 
					
						
							| 
									
										
										
										
											2016-01-29 22:32:46 +00:00
										 |  |  |           @end = args[:end] if args.key?(:end) | 
					
						
							|  |  |  |           @start = args[:start] if args.key?(:start) | 
					
						
							| 
									
										
										
										
											2015-06-23 23:05:46 +00:00
										 |  |  |         end | 
					
						
							|  |  |  |       end | 
					
						
							|  |  |  |     end | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  | end |