google-api-ruby-client/generated/google-apis-people_v1/lib/google/apis/people_v1/classes.rb

2630 lines
102 KiB
Ruby
Raw Normal View History

# Copyright 2020 Google LLC
#
# 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 PeopleV1
# A person's physical address. May be a P.O. box or street address. All fields
# are optional.
class Address
include Google::Apis::Core::Hashable
# The city of the address.
# Corresponds to the JSON property `city`
# @return [String]
attr_accessor :city
# The country of the address.
# Corresponds to the JSON property `country`
# @return [String]
attr_accessor :country
# The [ISO 3166-1 alpha-2](http://www.iso.org/iso/country_codes.htm) country
# code of the address.
# Corresponds to the JSON property `countryCode`
# @return [String]
attr_accessor :country_code
# The extended address of the address; for example, the apartment number.
# Corresponds to the JSON property `extendedAddress`
# @return [String]
attr_accessor :extended_address
# Output only. The type of the address translated and formatted in the viewer's
# account locale or the `Accept-Language` HTTP header locale.
# Corresponds to the JSON property `formattedType`
# @return [String]
attr_accessor :formatted_type
# The unstructured value of the address. If this is not set by the user it will
# be automatically constructed from structured values.
# Corresponds to the JSON property `formattedValue`
# @return [String]
attr_accessor :formatted_value
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The P.O. box of the address.
# Corresponds to the JSON property `poBox`
# @return [String]
attr_accessor :po_box
# The postal code of the address.
# Corresponds to the JSON property `postalCode`
# @return [String]
attr_accessor :postal_code
# The region of the address; for example, the state or province.
# Corresponds to the JSON property `region`
# @return [String]
attr_accessor :region
# The street address.
# Corresponds to the JSON property `streetAddress`
# @return [String]
attr_accessor :street_address
# The type of the address. The type can be custom or one of these predefined
# values: * `home` * `work` * `other`
# 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)
@city = args[:city] if args.key?(:city)
@country = args[:country] if args.key?(:country)
@country_code = args[:country_code] if args.key?(:country_code)
@extended_address = args[:extended_address] if args.key?(:extended_address)
@formatted_type = args[:formatted_type] if args.key?(:formatted_type)
@formatted_value = args[:formatted_value] if args.key?(:formatted_value)
@metadata = args[:metadata] if args.key?(:metadata)
@po_box = args[:po_box] if args.key?(:po_box)
@postal_code = args[:postal_code] if args.key?(:postal_code)
@region = args[:region] if args.key?(:region)
@street_address = args[:street_address] if args.key?(:street_address)
@type = args[:type] if args.key?(:type)
end
end
# A person's age range.
class AgeRangeType
include Google::Apis::Core::Hashable
# The age range.
# Corresponds to the JSON property `ageRange`
# @return [String]
attr_accessor :age_range
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@age_range = args[:age_range] if args.key?(:age_range)
@metadata = args[:metadata] if args.key?(:metadata)
end
end
# The response to a batch get contact groups request.
class BatchGetContactGroupsResponse
include Google::Apis::Core::Hashable
# The list of responses for each requested contact group resource.
# Corresponds to the JSON property `responses`
# @return [Array<Google::Apis::PeopleV1::ContactGroupResponse>]
attr_accessor :responses
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@responses = args[:responses] if args.key?(:responses)
end
end
# A person's short biography.
class Biography
include Google::Apis::Core::Hashable
# The content type of the biography.
# Corresponds to the JSON property `contentType`
# @return [String]
attr_accessor :content_type
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The short biography.
# 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)
@content_type = args[:content_type] if args.key?(:content_type)
@metadata = args[:metadata] if args.key?(:metadata)
@value = args[:value] if args.key?(:value)
end
end
# A person's birthday. At least one of the `date` and `text` fields are
# specified. The `date` and `text` fields typically represent the same date, but
# are not guaranteed to.
class Birthday
include Google::Apis::Core::Hashable
# Represents a whole or partial calendar date, such as a birthday. The time of
# day and time zone are either specified elsewhere or are insignificant. The
# date is relative to the Gregorian Calendar. This can represent one of the
# following: * A full date, with non-zero year, month, and day values * A month
# and day value, with a zero year, such as an anniversary * A year on its own,
# with zero month and day values * A year and month value, with a zero day, such
# as a credit card expiration date Related types are google.type.TimeOfDay and `
# google.protobuf.Timestamp`.
# Corresponds to the JSON property `date`
# @return [Google::Apis::PeopleV1::Date]
attr_accessor :date
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# A free-form string representing the user's birthday.
# Corresponds to the JSON property `text`
# @return [String]
attr_accessor :text
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@date = args[:date] if args.key?(:date)
@metadata = args[:metadata] if args.key?(:metadata)
@text = args[:text] if args.key?(:text)
end
end
# **DEPRECATED**: No data will be returned A person's bragging rights.
class BraggingRights
include Google::Apis::Core::Hashable
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The bragging rights; for example, `climbed mount everest`.
# 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)
@metadata = args[:metadata] if args.key?(:metadata)
@value = args[:value] if args.key?(:value)
end
end
# A person's calendar URL.
class CalendarUrl
include Google::Apis::Core::Hashable
# Output only. The type of the calendar URL translated and formatted in the
# viewer's account locale or the `Accept-Language` HTTP header locale.
# Corresponds to the JSON property `formattedType`
# @return [String]
attr_accessor :formatted_type
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The type of the calendar URL. The type can be custom or one of these
# predefined values: * `home` * `freeBusy` * `work`
# Corresponds to the JSON property `type`
# @return [String]
attr_accessor :type
# The calendar URL.
# 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)
@formatted_type = args[:formatted_type] if args.key?(:formatted_type)
@metadata = args[:metadata] if args.key?(:metadata)
@type = args[:type] if args.key?(:type)
@url = args[:url] if args.key?(:url)
end
end
# Arbitrary client data that is populated by clients. Duplicate keys and values
# are allowed.
class ClientData
include Google::Apis::Core::Hashable
# The client specified key of the client data.
# Corresponds to the JSON property `key`
# @return [String]
attr_accessor :key
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The client specified value of the client data.
# 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)
@key = args[:key] if args.key?(:key)
@metadata = args[:metadata] if args.key?(:metadata)
@value = args[:value] if args.key?(:value)
end
end
# A contact group.
class ContactGroup
include Google::Apis::Core::Hashable
# The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the resource.
# Used for web cache validation.
# Corresponds to the JSON property `etag`
# @return [String]
attr_accessor :etag
# Output only. The name translated and formatted in the viewer's account locale
# or the `Accept-Language` HTTP header locale for system groups names. Group
# names set by the owner are the same as name.
# Corresponds to the JSON property `formattedName`
# @return [String]
attr_accessor :formatted_name
# Output only. The contact group type.
# Corresponds to the JSON property `groupType`
# @return [String]
attr_accessor :group_type
# Output only. The total number of contacts in the group irrespective of max
# members in specified in the request.
# Corresponds to the JSON property `memberCount`
# @return [Fixnum]
attr_accessor :member_count
# Output only. The list of contact person resource names that are members of the
feat: Automated regeneration of people v1 client (#2381) This PR was generated using Autosynth. :rainbow: <details><summary>Log from Synthtool</summary> ``` 2021-01-13 03:08:23,315 synthtool [DEBUG] > Executing /home/kbuilder/.cache/synthtool/google-api-ruby-client/synth.py. On branch autosynth-people-v1 nothing to commit, working tree clean 2021-01-13 03:08:23,386 synthtool [DEBUG] > Running: docker run --rm -v/home/kbuilder/.cache/synthtool/google-api-ruby-client:/workspace -v/var/run/docker.sock:/var/run/docker.sock -w /workspace --entrypoint script/synth.rb gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/autosynth people v1 DEBUG:synthtool:Running: docker run --rm -v/home/kbuilder/.cache/synthtool/google-api-ruby-client:/workspace -v/var/run/docker.sock:/var/run/docker.sock -w /workspace --entrypoint script/synth.rb gcr.io/cloud-devrel-kokoro-resources/yoshi-ruby/autosynth people v1 git clean -df bundle install Don't run Bundler as root. Bundler can ask for sudo if it is needed, and installing your bundle as root will break this application for all non-root users on this machine. The dependency jruby-openssl (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for java. To add those platforms to the bundle, run `bundle lock --add-platform java`. Fetching gem metadata from https://rubygems.org/......... Fetching gem metadata from https://rubygems.org/. Resolving dependencies... Fetching rake 11.3.0 Installing rake 11.3.0 Fetching concurrent-ruby 1.1.7 Installing concurrent-ruby 1.1.7 Fetching i18n 1.8.7 Installing i18n 1.8.7 Fetching minitest 5.14.3 Installing minitest 5.14.3 Fetching tzinfo 2.0.4 Installing tzinfo 2.0.4 Fetching zeitwerk 2.4.2 Installing zeitwerk 2.4.2 Fetching activesupport 6.1.1 Installing activesupport 6.1.1 Fetching public_suffix 4.0.6 Installing public_suffix 4.0.6 Fetching addressable 2.7.0 Installing addressable 2.7.0 Fetching ast 2.4.1 Installing ast 2.4.1 Using bundler 2.1.4 Fetching byebug 11.1.3 Installing byebug 11.1.3 with native extensions Fetching coderay 1.1.3 Installing coderay 1.1.3 Fetching json 2.5.1 Installing json 2.5.1 with native extensions Fetching docile 1.3.4 Installing docile 1.3.4 Fetching simplecov-html 0.10.2 Installing simplecov-html 0.10.2 Fetching simplecov 0.16.1 Installing simplecov 0.16.1 Using sync 0.5.0 Fetching tins 1.28.0 Installing tins 1.28.0 Fetching term-ansicolor 1.7.1 Installing term-ansicolor 1.7.1 Fetching thor 0.20.3 Installing thor 0.20.3 Fetching coveralls 0.8.23 Installing coveralls 0.8.23 Fetching rexml 3.2.4 Installing rexml 3.2.4 Fetching crack 0.4.5 Installing crack 0.4.5 Fetching declarative 0.0.20 Installing declarative 0.0.20 Fetching declarative-option 0.1.0 Installing declarative-option 0.1.0 Fetching diff-lcs 1.4.4 Installing diff-lcs 1.4.4 Fetching dotenv 2.7.6 Installing dotenv 2.7.6 Fetching fakefs 0.20.1 Installing fakefs 0.20.1 Fetching faraday-net_http 1.0.1 Installing faraday-net_http 1.0.1 Fetching multipart-post 2.1.1 Installing multipart-post 2.1.1 Fetching ruby2_keywords 0.0.2 Installing ruby2_keywords 0.0.2 Fetching faraday 1.3.0 Installing faraday 1.3.0 Fetching gems 1.2.0 Installing gems 1.2.0 Fetching github-markup 1.7.0 Installing github-markup 1.7.0 Fetching jwt 2.2.2 Installing jwt 2.2.2 Fetching memoist 0.16.2 Installing memoist 0.16.2 Fetching multi_json 1.15.0 Installing multi_json 1.15.0 Fetching os 0.9.6 Installing os 0.9.6 Fetching signet 0.14.0 Installing signet 0.14.0 Fetching googleauth 0.14.0 Installing googleauth 0.14.0 Fetching httpclient 2.8.3 Installing httpclient 2.8.3 Fetching mini_mime 1.0.2 Installing mini_mime 1.0.2 Fetching uber 0.1.0 Installing uber 0.1.0 Fetching representable 3.0.4 Installing representable 3.0.4 Fetching retriable 3.1.2 Installing retriable 3.1.2 Fetching google-apis-core 0.2.0 Installing google-apis-core 0.2.0 Fetching google-apis-discovery_v1 0.1.0 Installing google-apis-discovery_v1 0.1.0 Using google-apis-generator 0.1.1 from source at `.` Fetching google-id-token 1.4.2 Installing google-id-token 1.4.2 Fetching hashdiff 1.0.1 Installing hashdiff 1.0.1 Fetching mime-types-data 3.2020.1104 Installing mime-types-data 3.2020.1104 Fetching mime-types 3.3.1 Installing mime-types 3.3.1 Fetching multi_xml 0.6.0 Installing multi_xml 0.6.0 Fetching httparty 0.18.1 Installing httparty 0.18.1 Fetching rspec-support 3.10.1 Installing rspec-support 3.10.1 Fetching rspec-core 3.10.1 Installing rspec-core 3.10.1 Fetching rspec-expectations 3.10.1 Installing rspec-expectations 3.10.1 Fetching rspec-mocks 3.10.1 Installing rspec-mocks 3.10.1 Fetching rspec 3.10.0 Installing rspec 3.10.0 Fetching json_spec 1.1.5 Installing json_spec 1.1.5 Fetching launchy 2.5.0 Installing launchy 2.5.0 Fetching little-plugger 1.1.4 Installing little-plugger 1.1.4 Fetching logging 2.3.0 Installing logging 2.3.0 Fetching method_source 1.0.0 Installing method_source 1.0.0 Fetching opencensus 0.5.0 Installing opencensus 0.5.0 Fetching parallel 1.20.1 Installing parallel 1.20.1 Fetching parser 2.7.2.0 Installing parser 2.7.2.0 Fetching powerpack 0.1.3 Installing powerpack 0.1.3 Fetching pry 0.13.1 Installing pry 0.13.1 Fetching pry-byebug 3.9.0 Installing pry-byebug 3.9.0 Fetching yard 0.9.26 Installing yard 0.9.26 Fetching pry-doc 0.13.5 Installing pry-doc 0.13.5 Fetching rainbow 2.2.2 Installing rainbow 2.2.2 with native extensions Fetching redcarpet 3.5.1 Installing redcarpet 3.5.1 with native extensions Fetching redis 3.3.5 Installing redis 3.3.5 Fetching rmail 1.1.4 Installing rmail 1.1.4 Fetching ruby-progressbar 1.11.0 Installing ruby-progressbar 1.11.0 Fetching unicode-display_width 1.7.0 Installing unicode-display_width 1.7.0 Fetching rubocop 0.49.1 Installing rubocop 0.49.1 Fetching webmock 2.3.2 Installing webmock 2.3.2 Bundle complete! 25 Gemfile dependencies, 81 gems now installed. Use `bundle info [gemname]` to see where a bundled gem is installed. Post-install message from i18n: HEADS UP! i18n 1.1 changed fallbacks to exclude default locale. But that may break your application. If you are upgrading your Rails application from an older version of Rails: Please check your Rails app for 'config.i18n.fallbacks = true'. If you're using I18n (>= 1.1.0) and Rails (< 5.2.2), this should be 'config.i18n.fallbacks = [I18n.default_locale]'. If not, fallbacks will be broken in your app by I18n 1.1.x. If you are starting a NEW Rails application, you can ignore this notice. For more info see: https://github.com/svenfuchs/i18n/releases/tag/v1.1.0 Post-install message from httparty: When you HTTParty, you must party hard! echo a | bundle exec bin/generate-api gen /workspace/generated --api=people.v1 --names=/workspace/api_names.yaml --names-out=/workspace/api_names_out.yaml --spot-check Loading people, version v1 from https://raw.githubusercontent.com/googleapis/discovery-artifact-manager/master/discoveries/people.v1.json conflict google-apis-people_v1/lib/google/apis/people_v1/classes.rb <ople_v1/classes.rb? (enter "h" for help) [Ynaqdhm] a force google-apis-people_v1/lib/google/apis/people_v1/classes.rb conflict google-apis-people_v1/lib/google/apis/people_v1/gem_version.rb force google-apis-people_v1/lib/google/apis/people_v1/gem_version.rb conflict google-apis-people_v1/CHANGELOG.md force google-apis-people_v1/CHANGELOG.md Don't run Bundler as root. Bundler can ask for sudo if it is needed, and installing your bundle as root will break this application for all non-root users on this machine. The dependency jruby-openssl (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for java. To add those platforms to the bundle, run `bundle lock --add-platform java`. Fetching gem metadata from https://rubygems.org/......... Fetching gem metadata from https://rubygems.org/. Resolving dependencies... Fetching rake 13.0.3 Installing rake 13.0.3 Using public_suffix 4.0.6 Using addressable 2.7.0 Using bundler 2.1.4 Using declarative 0.0.20 Using declarative-option 0.1.0 Using diff-lcs 1.4.4 Using faraday-net_http 1.0.1 Using multipart-post 2.1.1 Using ruby2_keywords 0.0.2 Using faraday 1.3.0 Using jwt 2.2.2 Using memoist 0.16.2 Using multi_json 1.15.0 Fetching os 1.1.1 Installing os 1.1.1 Using signet 0.14.0 Using googleauth 0.14.0 Using httpclient 2.8.3 Using mini_mime 1.0.2 Using uber 0.1.0 Using representable 3.0.4 Using retriable 3.1.2 Using rexml 3.2.4 Using google-apis-core 0.2.0 Using google-apis-people_v1 0.2.0 from source at `.` Using opencensus 0.5.0 Using redcarpet 3.5.1 Using rspec-support 3.10.1 Using rspec-core 3.10.1 Using rspec-expectations 3.10.1 Using rspec-mocks 3.10.1 Using rspec 3.10.0 Using yard 0.9.26 Bundle complete! 8 Gemfile dependencies, 33 gems now installed. Use `bundle info [gemname]` to see where a bundled gem is installed. /root/.rbenv/versions/2.6.6/bin/ruby -I/root/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/rspec-core-3.10.1/lib:/root/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/rspec-support-3.10.1/lib /root/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/rspec-core-3.10.1/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb Google::Apis::PeopleV1 should load Finished in 0.31317 seconds (files took 0.10405 seconds to load) 1 example, 0 failures Files: 4 Modules: 3 ( 1 undocumented) Classes: 64 ( 0 undocumented) Constants: 16 ( 0 undocumented) Attributes: 141 ( 0 undocumented) Methods: 146 ( 0 undocumented) 99.73% documented google-apis-people_v1 0.2.0 built to pkg/google-apis-people_v1-0.2.0.gem. identical /workspace/api_names_out.yaml 2021-01-13 03:08:57,876 synthtool [DEBUG] > Wrote metadata to generated/google-apis-people_v1/synth.metadata. DEBUG:synthtool:Wrote metadata to generated/google-apis-people_v1/synth.metadata. ``` </details> Full log will be available here: https://source.cloud.google.com/results/invocations/2c9a7f94-8490-460d-bb8a-c9c25cb6fec9/targets - [ ] To automatically regenerate this PR, check this box.
2021-01-13 11:22:03 +00:00
# contact group. The field is only populated for GET requests and will only
# return as many members as `maxMembers` in the get request.
# Corresponds to the JSON property `memberResourceNames`
# @return [Array<String>]
attr_accessor :member_resource_names
# The metadata about a contact group.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::ContactGroupMetadata]
attr_accessor :metadata
# The contact group name set by the group owner or a system provided name for
# system groups.
# Corresponds to the JSON property `name`
# @return [String]
attr_accessor :name
# The resource name for the contact group, assigned by the server. An ASCII
# string, in the form of `contactGroups/`contact_group_id``.
# Corresponds to the JSON property `resourceName`
# @return [String]
attr_accessor :resource_name
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@etag = args[:etag] if args.key?(:etag)
@formatted_name = args[:formatted_name] if args.key?(:formatted_name)
@group_type = args[:group_type] if args.key?(:group_type)
@member_count = args[:member_count] if args.key?(:member_count)
@member_resource_names = args[:member_resource_names] if args.key?(:member_resource_names)
@metadata = args[:metadata] if args.key?(:metadata)
@name = args[:name] if args.key?(:name)
@resource_name = args[:resource_name] if args.key?(:resource_name)
end
end
# A Google contact group membership.
class ContactGroupMembership
include Google::Apis::Core::Hashable
# Output only. The contact group ID for the contact group membership.
# Corresponds to the JSON property `contactGroupId`
# @return [String]
attr_accessor :contact_group_id
# The resource name for the contact group, assigned by the server. An ASCII
# string, in the form of `contactGroups/`contact_group_id``. Only
# contact_group_resource_name can be used for modifying memberships. Any contact
# group membership can be removed, but only user group or "myContacts" or "
# starred" system groups memberships can be added. A contact must always have at
# least one contact group membership.
# Corresponds to the JSON property `contactGroupResourceName`
# @return [String]
attr_accessor :contact_group_resource_name
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@contact_group_id = args[:contact_group_id] if args.key?(:contact_group_id)
@contact_group_resource_name = args[:contact_group_resource_name] if args.key?(:contact_group_resource_name)
end
end
# The metadata about a contact group.
class ContactGroupMetadata
include Google::Apis::Core::Hashable
# Output only. True if the contact group resource has been deleted. Populated
# only for [`ListContactGroups`](/people/api/rest/v1/contactgroups/list)
# requests that include a sync token.
# Corresponds to the JSON property `deleted`
# @return [Boolean]
attr_accessor :deleted
alias_method :deleted?, :deleted
# Output only. The time the group was last updated.
# Corresponds to the JSON property `updateTime`
# @return [String]
attr_accessor :update_time
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@deleted = args[:deleted] if args.key?(:deleted)
@update_time = args[:update_time] if args.key?(:update_time)
end
end
# The response for a specific contact group.
class ContactGroupResponse
include Google::Apis::Core::Hashable
# A contact group.
# Corresponds to the JSON property `contactGroup`
# @return [Google::Apis::PeopleV1::ContactGroup]
attr_accessor :contact_group
# The original requested resource name.
# Corresponds to the JSON property `requestedResourceName`
# @return [String]
attr_accessor :requested_resource_name
# The `Status` type defines a logical error model that is suitable for different
# programming environments, including REST APIs and RPC APIs. It is used by [
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
# data: error code, error message, and error details. You can find out more
# about this error model and how to work with it in the [API Design Guide](https:
# //cloud.google.com/apis/design/errors).
# Corresponds to the JSON property `status`
# @return [Google::Apis::PeopleV1::Status]
attr_accessor :status
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@contact_group = args[:contact_group] if args.key?(:contact_group)
@requested_resource_name = args[:requested_resource_name] if args.key?(:requested_resource_name)
@status = args[:status] if args.key?(:status)
end
end
# A request to copy an "Other contact" to my contacts group.
class CopyOtherContactToMyContactsGroupRequest
include Google::Apis::Core::Hashable
# Required. A field mask to restrict which fields are copied into the new
# contact. Valid values are: * emailAddresses * names * phoneNumbers
# Corresponds to the JSON property `copyMask`
# @return [String]
attr_accessor :copy_mask
# Optional. A field mask to restrict which fields on the person are returned.
# Multiple fields can be specified by separating them with commas. Defaults to
# the copy mask with metadata and membership fields if not set. Valid values are:
# * addresses * ageRanges * biographies * birthdays * calendarUrls * clientData
# * coverPhotos * emailAddresses * events * externalIds * genders * imClients *
# interests * locales * locations * memberships * metadata * miscKeywords *
# names * nicknames * occupations * organizations * phoneNumbers * photos *
# relations * sipAddresses * skills * urls * userDefined
# Corresponds to the JSON property `readMask`
# @return [String]
attr_accessor :read_mask
# Optional. A mask of what source types to return. Defaults to
# READ_SOURCE_TYPE_CONTACT and READ_SOURCE_TYPE_PROFILE if not set.
# Corresponds to the JSON property `sources`
# @return [Array<String>]
attr_accessor :sources
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@copy_mask = args[:copy_mask] if args.key?(:copy_mask)
@read_mask = args[:read_mask] if args.key?(:read_mask)
@sources = args[:sources] if args.key?(:sources)
end
end
# A person's cover photo. A large image shown on the person's profile page that
# represents who they are or what they care about.
class CoverPhoto
include Google::Apis::Core::Hashable
# True if the cover photo is the default cover photo; false if the cover photo
# is a user-provided cover photo.
# Corresponds to the JSON property `default`
# @return [Boolean]
attr_accessor :default
alias_method :default?, :default
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The URL of the cover photo.
# 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)
@default = args[:default] if args.key?(:default)
@metadata = args[:metadata] if args.key?(:metadata)
@url = args[:url] if args.key?(:url)
end
end
# A request to create a new contact group.
class CreateContactGroupRequest
include Google::Apis::Core::Hashable
# A contact group.
# Corresponds to the JSON property `contactGroup`
# @return [Google::Apis::PeopleV1::ContactGroup]
attr_accessor :contact_group
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@contact_group = args[:contact_group] if args.key?(:contact_group)
end
end
# Represents a whole or partial calendar date, such as a birthday. The time of
# day and time zone are either specified elsewhere or are insignificant. The
# date is relative to the Gregorian Calendar. This can represent one of the
# following: * A full date, with non-zero year, month, and day values * A month
# and day value, with a zero year, such as an anniversary * A year on its own,
# with zero month and day values * A year and month value, with a zero day, such
# as a credit card expiration date Related types are google.type.TimeOfDay and `
# google.protobuf.Timestamp`.
class Date
include Google::Apis::Core::Hashable
# Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to
# specify a year by itself or a year and month where the day isn't significant.
# Corresponds to the JSON property `day`
# @return [Fixnum]
attr_accessor :day
# Month of a year. Must be from 1 to 12, or 0 to specify a year without a month
# and day.
# Corresponds to the JSON property `month`
# @return [Fixnum]
attr_accessor :month
# Year of the date. Must be from 1 to 9999, or 0 to specify a date without a
# year.
# Corresponds to the JSON property `year`
# @return [Fixnum]
attr_accessor :year
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@day = args[:day] if args.key?(:day)
@month = args[:month] if args.key?(:month)
@year = args[:year] if args.key?(:year)
end
end
# The response for deleteing a contact's photo.
class DeleteContactPhotoResponse
include Google::Apis::Core::Hashable
# Information about a person merged from various data sources such as the
# authenticated user's contacts and profile data. Most fields can have multiple
# items. The items in a field have no guaranteed order, but each non-empty field
# is guaranteed to have exactly one field with `metadata.primary` set to true.
# Corresponds to the JSON property `person`
# @return [Google::Apis::PeopleV1::Person]
attr_accessor :person
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@person = args[:person] if args.key?(:person)
end
end
# A G Suite Domain membership.
class DomainMembership
include Google::Apis::Core::Hashable
# True if the person is in the viewer's G Suite domain.
# Corresponds to the JSON property `inViewerDomain`
# @return [Boolean]
attr_accessor :in_viewer_domain
alias_method :in_viewer_domain?, :in_viewer_domain
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@in_viewer_domain = args[:in_viewer_domain] if args.key?(:in_viewer_domain)
end
end
# A person's email address.
class EmailAddress
include Google::Apis::Core::Hashable
# The display name of the email.
# Corresponds to the JSON property `displayName`
# @return [String]
attr_accessor :display_name
# Output only. The type of the email address translated and formatted in the
# viewer's account locale or the `Accept-Language` HTTP header locale.
# Corresponds to the JSON property `formattedType`
# @return [String]
attr_accessor :formatted_type
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The type of the email address. The type can be custom or one of these
# predefined values: * `home` * `work` * `other`
# Corresponds to the JSON property `type`
# @return [String]
attr_accessor :type
# The email address.
# 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)
@display_name = args[:display_name] if args.key?(:display_name)
@formatted_type = args[:formatted_type] if args.key?(:formatted_type)
@metadata = args[:metadata] if args.key?(:metadata)
@type = args[:type] if args.key?(:type)
@value = args[:value] if args.key?(:value)
end
end
# A generic empty message that you can re-use to avoid defining duplicated empty
# messages in your APIs. A typical example is to use it as the request or the
# response type of an API method. For instance: service Foo ` rpc Bar(google.
# protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
# `Empty` is empty JSON object ````.
class Empty
include Google::Apis::Core::Hashable
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
end
end
# An event related to the person.
class Event
include Google::Apis::Core::Hashable
# Represents a whole or partial calendar date, such as a birthday. The time of
# day and time zone are either specified elsewhere or are insignificant. The
# date is relative to the Gregorian Calendar. This can represent one of the
# following: * A full date, with non-zero year, month, and day values * A month
# and day value, with a zero year, such as an anniversary * A year on its own,
# with zero month and day values * A year and month value, with a zero day, such
# as a credit card expiration date Related types are google.type.TimeOfDay and `
# google.protobuf.Timestamp`.
# Corresponds to the JSON property `date`
# @return [Google::Apis::PeopleV1::Date]
attr_accessor :date
# Output only. The type of the event translated and formatted in the viewer's
# account locale or the `Accept-Language` HTTP header locale.
# Corresponds to the JSON property `formattedType`
# @return [String]
attr_accessor :formatted_type
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The type of the event. The type can be custom or one of these predefined
# values: * `anniversary` * `other`
# 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)
@date = args[:date] if args.key?(:date)
@formatted_type = args[:formatted_type] if args.key?(:formatted_type)
@metadata = args[:metadata] if args.key?(:metadata)
@type = args[:type] if args.key?(:type)
end
end
# An identifier from an external entity related to the person.
class ExternalId
include Google::Apis::Core::Hashable
# Output only. The type of the event translated and formatted in the viewer's
# account locale or the `Accept-Language` HTTP header locale.
# Corresponds to the JSON property `formattedType`
# @return [String]
attr_accessor :formatted_type
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The type of the external ID. The type can be custom or one of these predefined
# values: * `account` * `customer` * `loginId` * `network` * `organization`
# Corresponds to the JSON property `type`
# @return [String]
attr_accessor :type
# The value of the external ID.
# 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)
@formatted_type = args[:formatted_type] if args.key?(:formatted_type)
@metadata = args[:metadata] if args.key?(:metadata)
@type = args[:type] if args.key?(:type)
@value = args[:value] if args.key?(:value)
end
end
# Metadata about a field.
class FieldMetadata
include Google::Apis::Core::Hashable
# True if the field is the primary field; false if the field is a secondary
# field.
# Corresponds to the JSON property `primary`
# @return [Boolean]
attr_accessor :primary
alias_method :primary?, :primary
# The source of a field.
# Corresponds to the JSON property `source`
# @return [Google::Apis::PeopleV1::Source]
attr_accessor :source
# Output only. True if the field is verified; false if the field is unverified.
# A verified field is typically a name, email address, phone number, or website
# that has been confirmed to be owned by the person.
# Corresponds to the JSON property `verified`
# @return [Boolean]
attr_accessor :verified
alias_method :verified?, :verified
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@primary = args[:primary] if args.key?(:primary)
@source = args[:source] if args.key?(:source)
@verified = args[:verified] if args.key?(:verified)
end
end
# The name that should be used to sort the person in a list.
class FileAs
include Google::Apis::Core::Hashable
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The file-as value
# 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)
@metadata = args[:metadata] if args.key?(:metadata)
@value = args[:value] if args.key?(:value)
end
end
# A person's gender.
class Gender
include Google::Apis::Core::Hashable
# The type of pronouns that should be used to address the person. The value can
# be custom or one of these predefined values: * `male` * `female` * `other`
# Corresponds to the JSON property `addressMeAs`
# @return [String]
attr_accessor :address_me_as
# Output only. The value of the gender translated and formatted in the viewer's
# account locale or the `Accept-Language` HTTP header locale. Unspecified or
# custom value are not localized.
# Corresponds to the JSON property `formattedValue`
# @return [String]
attr_accessor :formatted_value
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The gender for the person. The gender can be custom or one of these predefined
# values: * `male` * `female` * `unspecified`
# 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)
@address_me_as = args[:address_me_as] if args.key?(:address_me_as)
@formatted_value = args[:formatted_value] if args.key?(:formatted_value)
@metadata = args[:metadata] if args.key?(:metadata)
@value = args[:value] if args.key?(:value)
end
end
# The response to a get request for a list of people by resource name.
class GetPeopleResponse
include Google::Apis::Core::Hashable
# The response for each requested resource name.
# Corresponds to the JSON property `responses`
# @return [Array<Google::Apis::PeopleV1::PersonResponse>]
attr_accessor :responses
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@responses = args[:responses] if args.key?(:responses)
end
end
# A person's instant messaging client.
class ImClient
include Google::Apis::Core::Hashable
# Output only. The protocol of the IM client formatted in the viewer's account
# locale or the `Accept-Language` HTTP header locale.
# Corresponds to the JSON property `formattedProtocol`
# @return [String]
attr_accessor :formatted_protocol
# Output only. The type of the IM client translated and formatted in the viewer'
# s account locale or the `Accept-Language` HTTP header locale.
# Corresponds to the JSON property `formattedType`
# @return [String]
attr_accessor :formatted_type
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The protocol of the IM client. The protocol can be custom or one of these
# predefined values: * `aim` * `msn` * `yahoo` * `skype` * `qq` * `googleTalk` *
# `icq` * `jabber` * `netMeeting`
# Corresponds to the JSON property `protocol`
# @return [String]
attr_accessor :protocol
# The type of the IM client. The type can be custom or one of these predefined
# values: * `home` * `work` * `other`
# Corresponds to the JSON property `type`
# @return [String]
attr_accessor :type
# The user name used in the IM client.
# Corresponds to the JSON property `username`
# @return [String]
attr_accessor :username
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@formatted_protocol = args[:formatted_protocol] if args.key?(:formatted_protocol)
@formatted_type = args[:formatted_type] if args.key?(:formatted_type)
@metadata = args[:metadata] if args.key?(:metadata)
@protocol = args[:protocol] if args.key?(:protocol)
@type = args[:type] if args.key?(:type)
@username = args[:username] if args.key?(:username)
end
end
# One of the person's interests.
class Interest
include Google::Apis::Core::Hashable
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The interest; for example, `stargazing`.
# 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)
@metadata = args[:metadata] if args.key?(:metadata)
@value = args[:value] if args.key?(:value)
end
end
# The response to a request for the authenticated user's connections.
class ListConnectionsResponse
include Google::Apis::Core::Hashable
# The list of people that the requestor is connected to.
# Corresponds to the JSON property `connections`
# @return [Array<Google::Apis::PeopleV1::Person>]
attr_accessor :connections
# A token, which can be sent as `page_token` to retrieve the next page. If this
# field is omitted, there are no subsequent pages.
# Corresponds to the JSON property `nextPageToken`
# @return [String]
attr_accessor :next_page_token
# A token, which can be sent as `sync_token` to retrieve changes since the last
# request. Request must set `request_sync_token` to return the sync token. When
# the response is paginated, only the last page will contain `nextSyncToken`.
# Corresponds to the JSON property `nextSyncToken`
# @return [String]
attr_accessor :next_sync_token
# The total number of items in the list without pagination.
# Corresponds to the JSON property `totalItems`
# @return [Fixnum]
attr_accessor :total_items
# **DEPRECATED** (Please use totalItems) The total number of people in the list
# without pagination.
# Corresponds to the JSON property `totalPeople`
# @return [Fixnum]
attr_accessor :total_people
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@connections = args[:connections] if args.key?(:connections)
@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)
@total_items = args[:total_items] if args.key?(:total_items)
@total_people = args[:total_people] if args.key?(:total_people)
end
end
# The response to a list contact groups request.
class ListContactGroupsResponse
include Google::Apis::Core::Hashable
# The list of contact groups. Members of the contact groups are not populated.
# Corresponds to the JSON property `contactGroups`
# @return [Array<Google::Apis::PeopleV1::ContactGroup>]
attr_accessor :contact_groups
# The token that can be used to retrieve the next page of results.
# Corresponds to the JSON property `nextPageToken`
# @return [String]
attr_accessor :next_page_token
# The token that can be used to retrieve changes since the last request.
# Corresponds to the JSON property `nextSyncToken`
# @return [String]
attr_accessor :next_sync_token
# The total number of items in the list without pagination.
# Corresponds to the JSON property `totalItems`
# @return [Fixnum]
attr_accessor :total_items
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@contact_groups = args[:contact_groups] if args.key?(:contact_groups)
@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)
@total_items = args[:total_items] if args.key?(:total_items)
end
end
# The response to a request for the authenticated user's domain directory.
class ListDirectoryPeopleResponse
include Google::Apis::Core::Hashable
# A token, which can be sent as `page_token` to retrieve the next page. If this
# field is omitted, there are no subsequent pages.
# Corresponds to the JSON property `nextPageToken`
# @return [String]
attr_accessor :next_page_token
# A token, which can be sent as `sync_token` to retrieve changes since the last
# request. Request must set `request_sync_token` to return the sync token.
# Corresponds to the JSON property `nextSyncToken`
# @return [String]
attr_accessor :next_sync_token
# The list of people in the domain directory.
# Corresponds to the JSON property `people`
# @return [Array<Google::Apis::PeopleV1::Person>]
attr_accessor :people
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@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)
@people = args[:people] if args.key?(:people)
end
end
# The response to a request for the authenticated user's "Other contacts".
class ListOtherContactsResponse
include Google::Apis::Core::Hashable
# A token, which can be sent as `page_token` to retrieve the next page. If this
# field is omitted, there are no subsequent pages.
# Corresponds to the JSON property `nextPageToken`
# @return [String]
attr_accessor :next_page_token
# A token, which can be sent as `sync_token` to retrieve changes since the last
# request. Request must set `request_sync_token` to return the sync token.
# Corresponds to the JSON property `nextSyncToken`
# @return [String]
attr_accessor :next_sync_token
# The list of "Other contacts" returned as Person resources. "Other contacts"
# support a limited subset of fields. See ListOtherContactsRequest.request_mask
# for more detailed information.
# Corresponds to the JSON property `otherContacts`
# @return [Array<Google::Apis::PeopleV1::Person>]
attr_accessor :other_contacts
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@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)
@other_contacts = args[:other_contacts] if args.key?(:other_contacts)
end
end
# A person's locale preference.
class Locale
include Google::Apis::Core::Hashable
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The well-formed [IETF BCP 47](https://tools.ietf.org/html/bcp47) language tag
# representing the locale.
# 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)
@metadata = args[:metadata] if args.key?(:metadata)
@value = args[:value] if args.key?(:value)
end
end
# A person's location.
class Location
include Google::Apis::Core::Hashable
# The building identifier.
# Corresponds to the JSON property `buildingId`
# @return [String]
attr_accessor :building_id
# Whether the location is the current location.
# Corresponds to the JSON property `current`
# @return [Boolean]
attr_accessor :current
alias_method :current?, :current
# The individual desk location.
# Corresponds to the JSON property `deskCode`
# @return [String]
attr_accessor :desk_code
# The floor name or number.
# Corresponds to the JSON property `floor`
# @return [String]
attr_accessor :floor
# The floor section in `floor_name`.
# Corresponds to the JSON property `floorSection`
# @return [String]
attr_accessor :floor_section
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The type of the location. The type can be custom or one of these predefined
# values: * `desk` * `grewUp`
# Corresponds to the JSON property `type`
# @return [String]
attr_accessor :type
# The free-form value of the location.
# 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)
@building_id = args[:building_id] if args.key?(:building_id)
@current = args[:current] if args.key?(:current)
@desk_code = args[:desk_code] if args.key?(:desk_code)
@floor = args[:floor] if args.key?(:floor)
@floor_section = args[:floor_section] if args.key?(:floor_section)
@metadata = args[:metadata] if args.key?(:metadata)
@type = args[:type] if args.key?(:type)
@value = args[:value] if args.key?(:value)
end
end
# A person's membership in a group. Only contact group memberships can be
# modified.
class Membership
include Google::Apis::Core::Hashable
# A Google contact group membership.
# Corresponds to the JSON property `contactGroupMembership`
# @return [Google::Apis::PeopleV1::ContactGroupMembership]
attr_accessor :contact_group_membership
# A G Suite Domain membership.
# Corresponds to the JSON property `domainMembership`
# @return [Google::Apis::PeopleV1::DomainMembership]
attr_accessor :domain_membership
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@contact_group_membership = args[:contact_group_membership] if args.key?(:contact_group_membership)
@domain_membership = args[:domain_membership] if args.key?(:domain_membership)
@metadata = args[:metadata] if args.key?(:metadata)
end
end
# A person's miscellaneous keyword.
class MiscKeyword
include Google::Apis::Core::Hashable
# Output only. The type of the miscellaneous keyword translated and formatted in
# the viewer's account locale or the `Accept-Language` HTTP header locale.
# Corresponds to the JSON property `formattedType`
# @return [String]
attr_accessor :formatted_type
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The miscellaneous keyword type.
# Corresponds to the JSON property `type`
# @return [String]
attr_accessor :type
# The value of the miscellaneous keyword.
# 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)
@formatted_type = args[:formatted_type] if args.key?(:formatted_type)
@metadata = args[:metadata] if args.key?(:metadata)
@type = args[:type] if args.key?(:type)
@value = args[:value] if args.key?(:value)
end
end
# A request to modify an existing contact group's members. Contacts can be
# removed from any group but they can only be added to a user group or "
# myContacts" or "starred" system groups.
class ModifyContactGroupMembersRequest
include Google::Apis::Core::Hashable
# Optional. The resource names of the contact people to add in the form of `
# people/`person_id``. The total number of resource names in `
# resource_names_to_add` and `resource_names_to_remove` must be less than or
# equal to 1000.
# Corresponds to the JSON property `resourceNamesToAdd`
# @return [Array<String>]
attr_accessor :resource_names_to_add
# Optional. The resource names of the contact people to remove in the form of `
# people/`person_id``. The total number of resource names in `
# resource_names_to_add` and `resource_names_to_remove` must be less than or
# equal to 1000.
# Corresponds to the JSON property `resourceNamesToRemove`
# @return [Array<String>]
attr_accessor :resource_names_to_remove
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@resource_names_to_add = args[:resource_names_to_add] if args.key?(:resource_names_to_add)
@resource_names_to_remove = args[:resource_names_to_remove] if args.key?(:resource_names_to_remove)
end
end
# The response to a modify contact group members request.
class ModifyContactGroupMembersResponse
include Google::Apis::Core::Hashable
# The contact people resource names that cannot be removed from their last
# contact group.
# Corresponds to the JSON property `canNotRemoveLastContactGroupResourceNames`
# @return [Array<String>]
attr_accessor :can_not_remove_last_contact_group_resource_names
# The contact people resource names that were not found.
# Corresponds to the JSON property `notFoundResourceNames`
# @return [Array<String>]
attr_accessor :not_found_resource_names
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@can_not_remove_last_contact_group_resource_names = args[:can_not_remove_last_contact_group_resource_names] if args.key?(:can_not_remove_last_contact_group_resource_names)
@not_found_resource_names = args[:not_found_resource_names] if args.key?(:not_found_resource_names)
end
end
# A person's name. If the name is a mononym, the family name is empty.
class Name
include Google::Apis::Core::Hashable
# Output only. The display name formatted according to the locale specified by
# the viewer's account or the `Accept-Language` HTTP header.
# Corresponds to the JSON property `displayName`
# @return [String]
attr_accessor :display_name
# Output only. The display name with the last name first formatted according to
# the locale specified by the viewer's account or the `Accept-Language` HTTP
# header.
# Corresponds to the JSON property `displayNameLastFirst`
# @return [String]
attr_accessor :display_name_last_first
# The family name.
# Corresponds to the JSON property `familyName`
# @return [String]
attr_accessor :family_name
# The given name.
# Corresponds to the JSON property `givenName`
# @return [String]
attr_accessor :given_name
# The honorific prefixes, such as `Mrs.` or `Dr.`
# Corresponds to the JSON property `honorificPrefix`
# @return [String]
attr_accessor :honorific_prefix
# The honorific suffixes, such as `Jr.`
# Corresponds to the JSON property `honorificSuffix`
# @return [String]
attr_accessor :honorific_suffix
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The middle name(s).
# Corresponds to the JSON property `middleName`
# @return [String]
attr_accessor :middle_name
# The family name spelled as it sounds.
# Corresponds to the JSON property `phoneticFamilyName`
# @return [String]
attr_accessor :phonetic_family_name
# The full name spelled as it sounds.
# Corresponds to the JSON property `phoneticFullName`
# @return [String]
attr_accessor :phonetic_full_name
# The given name spelled as it sounds.
# Corresponds to the JSON property `phoneticGivenName`
# @return [String]
attr_accessor :phonetic_given_name
# The honorific prefixes spelled as they sound.
# Corresponds to the JSON property `phoneticHonorificPrefix`
# @return [String]
attr_accessor :phonetic_honorific_prefix
# The honorific suffixes spelled as they sound.
# Corresponds to the JSON property `phoneticHonorificSuffix`
# @return [String]
attr_accessor :phonetic_honorific_suffix
# The middle name(s) spelled as they sound.
# Corresponds to the JSON property `phoneticMiddleName`
# @return [String]
attr_accessor :phonetic_middle_name
# The free form name value.
# Corresponds to the JSON property `unstructuredName`
# @return [String]
attr_accessor :unstructured_name
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@display_name = args[:display_name] if args.key?(:display_name)
@display_name_last_first = args[:display_name_last_first] if args.key?(:display_name_last_first)
@family_name = args[:family_name] if args.key?(:family_name)
@given_name = args[:given_name] if args.key?(:given_name)
@honorific_prefix = args[:honorific_prefix] if args.key?(:honorific_prefix)
@honorific_suffix = args[:honorific_suffix] if args.key?(:honorific_suffix)
@metadata = args[:metadata] if args.key?(:metadata)
@middle_name = args[:middle_name] if args.key?(:middle_name)
@phonetic_family_name = args[:phonetic_family_name] if args.key?(:phonetic_family_name)
@phonetic_full_name = args[:phonetic_full_name] if args.key?(:phonetic_full_name)
@phonetic_given_name = args[:phonetic_given_name] if args.key?(:phonetic_given_name)
@phonetic_honorific_prefix = args[:phonetic_honorific_prefix] if args.key?(:phonetic_honorific_prefix)
@phonetic_honorific_suffix = args[:phonetic_honorific_suffix] if args.key?(:phonetic_honorific_suffix)
@phonetic_middle_name = args[:phonetic_middle_name] if args.key?(:phonetic_middle_name)
@unstructured_name = args[:unstructured_name] if args.key?(:unstructured_name)
end
end
# A person's nickname.
class Nickname
include Google::Apis::Core::Hashable
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The type of the nickname.
# Corresponds to the JSON property `type`
# @return [String]
attr_accessor :type
# The nickname.
# 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)
@metadata = args[:metadata] if args.key?(:metadata)
@type = args[:type] if args.key?(:type)
@value = args[:value] if args.key?(:value)
end
end
# A person's occupation.
class Occupation
include Google::Apis::Core::Hashable
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The occupation; for example, `carpenter`.
# 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)
@metadata = args[:metadata] if args.key?(:metadata)
@value = args[:value] if args.key?(:value)
end
end
# A person's past or current organization. Overlapping date ranges are permitted.
class Organization
include Google::Apis::Core::Hashable
# True if the organization is the person's current organization; false if the
# organization is a past organization.
# Corresponds to the JSON property `current`
# @return [Boolean]
attr_accessor :current
alias_method :current?, :current
# The person's department at the organization.
# Corresponds to the JSON property `department`
# @return [String]
attr_accessor :department
# The domain name associated with the organization; for example, `google.com`.
# Corresponds to the JSON property `domain`
# @return [String]
attr_accessor :domain
# Represents a whole or partial calendar date, such as a birthday. The time of
# day and time zone are either specified elsewhere or are insignificant. The
# date is relative to the Gregorian Calendar. This can represent one of the
# following: * A full date, with non-zero year, month, and day values * A month
# and day value, with a zero year, such as an anniversary * A year on its own,
# with zero month and day values * A year and month value, with a zero day, such
# as a credit card expiration date Related types are google.type.TimeOfDay and `
# google.protobuf.Timestamp`.
# Corresponds to the JSON property `endDate`
# @return [Google::Apis::PeopleV1::Date]
attr_accessor :end_date
# Output only. The type of the organization translated and formatted in the
# viewer's account locale or the `Accept-Language` HTTP header locale.
# Corresponds to the JSON property `formattedType`
# @return [String]
attr_accessor :formatted_type
# The person's job description at the organization.
# Corresponds to the JSON property `jobDescription`
# @return [String]
attr_accessor :job_description
# The location of the organization office the person works at.
# Corresponds to the JSON property `location`
# @return [String]
attr_accessor :location
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The name of the organization.
# Corresponds to the JSON property `name`
# @return [String]
attr_accessor :name
# The phonetic name of the organization.
# Corresponds to the JSON property `phoneticName`
# @return [String]
attr_accessor :phonetic_name
# Represents a whole or partial calendar date, such as a birthday. The time of
# day and time zone are either specified elsewhere or are insignificant. The
# date is relative to the Gregorian Calendar. This can represent one of the
# following: * A full date, with non-zero year, month, and day values * A month
# and day value, with a zero year, such as an anniversary * A year on its own,
# with zero month and day values * A year and month value, with a zero day, such
# as a credit card expiration date Related types are google.type.TimeOfDay and `
# google.protobuf.Timestamp`.
# Corresponds to the JSON property `startDate`
# @return [Google::Apis::PeopleV1::Date]
attr_accessor :start_date
# The symbol associated with the organization; for example, a stock ticker
# symbol, abbreviation, or acronym.
# Corresponds to the JSON property `symbol`
# @return [String]
attr_accessor :symbol
# The person's job title at the organization.
# Corresponds to the JSON property `title`
# @return [String]
attr_accessor :title
# The type of the organization. The type can be custom or one of these
# predefined values: * `work` * `school`
# 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)
@current = args[:current] if args.key?(:current)
@department = args[:department] if args.key?(:department)
@domain = args[:domain] if args.key?(:domain)
@end_date = args[:end_date] if args.key?(:end_date)
@formatted_type = args[:formatted_type] if args.key?(:formatted_type)
@job_description = args[:job_description] if args.key?(:job_description)
@location = args[:location] if args.key?(:location)
@metadata = args[:metadata] if args.key?(:metadata)
@name = args[:name] if args.key?(:name)
@phonetic_name = args[:phonetic_name] if args.key?(:phonetic_name)
@start_date = args[:start_date] if args.key?(:start_date)
@symbol = args[:symbol] if args.key?(:symbol)
@title = args[:title] if args.key?(:title)
@type = args[:type] if args.key?(:type)
end
end
# Information about a person merged from various data sources such as the
# authenticated user's contacts and profile data. Most fields can have multiple
# items. The items in a field have no guaranteed order, but each non-empty field
# is guaranteed to have exactly one field with `metadata.primary` set to true.
class Person
include Google::Apis::Core::Hashable
# The person's street addresses.
# Corresponds to the JSON property `addresses`
# @return [Array<Google::Apis::PeopleV1::Address>]
attr_accessor :addresses
# Output only. **DEPRECATED** (Please use `person.ageRanges` instead) The person'
# s age range.
# Corresponds to the JSON property `ageRange`
# @return [String]
attr_accessor :age_range
# Output only. The person's age ranges.
# Corresponds to the JSON property `ageRanges`
# @return [Array<Google::Apis::PeopleV1::AgeRangeType>]
attr_accessor :age_ranges
# The person's biographies. This field is a singleton for contact sources.
# Corresponds to the JSON property `biographies`
# @return [Array<Google::Apis::PeopleV1::Biography>]
attr_accessor :biographies
# The person's birthdays. This field is a singleton for contact sources.
# Corresponds to the JSON property `birthdays`
# @return [Array<Google::Apis::PeopleV1::Birthday>]
attr_accessor :birthdays
# **DEPRECATED**: No data will be returned The person's bragging rights.
# Corresponds to the JSON property `braggingRights`
# @return [Array<Google::Apis::PeopleV1::BraggingRights>]
attr_accessor :bragging_rights
# The person's calendar URLs.
# Corresponds to the JSON property `calendarUrls`
# @return [Array<Google::Apis::PeopleV1::CalendarUrl>]
attr_accessor :calendar_urls
# The person's client data.
# Corresponds to the JSON property `clientData`
# @return [Array<Google::Apis::PeopleV1::ClientData>]
attr_accessor :client_data
# Output only. The person's cover photos.
# Corresponds to the JSON property `coverPhotos`
# @return [Array<Google::Apis::PeopleV1::CoverPhoto>]
attr_accessor :cover_photos
# The person's email addresses.
# Corresponds to the JSON property `emailAddresses`
# @return [Array<Google::Apis::PeopleV1::EmailAddress>]
attr_accessor :email_addresses
# The [HTTP entity tag](https://en.wikipedia.org/wiki/HTTP_ETag) of the resource.
# Used for web cache validation.
# Corresponds to the JSON property `etag`
# @return [String]
attr_accessor :etag
# The person's events.
# Corresponds to the JSON property `events`
# @return [Array<Google::Apis::PeopleV1::Event>]
attr_accessor :events
# The person's external IDs.
# Corresponds to the JSON property `externalIds`
# @return [Array<Google::Apis::PeopleV1::ExternalId>]
attr_accessor :external_ids
# The person's file-ases.
# Corresponds to the JSON property `fileAses`
# @return [Array<Google::Apis::PeopleV1::FileAs>]
attr_accessor :file_ases
# The person's genders. This field is a singleton for contact sources.
# Corresponds to the JSON property `genders`
# @return [Array<Google::Apis::PeopleV1::Gender>]
attr_accessor :genders
# The person's instant messaging clients.
# Corresponds to the JSON property `imClients`
# @return [Array<Google::Apis::PeopleV1::ImClient>]
attr_accessor :im_clients
# The person's interests.
# Corresponds to the JSON property `interests`
# @return [Array<Google::Apis::PeopleV1::Interest>]
attr_accessor :interests
# The person's locale preferences.
# Corresponds to the JSON property `locales`
# @return [Array<Google::Apis::PeopleV1::Locale>]
attr_accessor :locales
# The person's locations.
# Corresponds to the JSON property `locations`
# @return [Array<Google::Apis::PeopleV1::Location>]
attr_accessor :locations
# The person's group memberships.
# Corresponds to the JSON property `memberships`
# @return [Array<Google::Apis::PeopleV1::Membership>]
attr_accessor :memberships
# The metadata about a person.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::PersonMetadata]
attr_accessor :metadata
# The person's miscellaneous keywords.
# Corresponds to the JSON property `miscKeywords`
# @return [Array<Google::Apis::PeopleV1::MiscKeyword>]
attr_accessor :misc_keywords
# The person's names. This field is a singleton for contact sources.
# Corresponds to the JSON property `names`
# @return [Array<Google::Apis::PeopleV1::Name>]
attr_accessor :names
# The person's nicknames.
# Corresponds to the JSON property `nicknames`
# @return [Array<Google::Apis::PeopleV1::Nickname>]
attr_accessor :nicknames
# The person's occupations.
# Corresponds to the JSON property `occupations`
# @return [Array<Google::Apis::PeopleV1::Occupation>]
attr_accessor :occupations
# The person's past or current organizations.
# Corresponds to the JSON property `organizations`
# @return [Array<Google::Apis::PeopleV1::Organization>]
attr_accessor :organizations
# The person's phone numbers.
# Corresponds to the JSON property `phoneNumbers`
# @return [Array<Google::Apis::PeopleV1::PhoneNumber>]
attr_accessor :phone_numbers
# Output only. The person's photos.
# Corresponds to the JSON property `photos`
# @return [Array<Google::Apis::PeopleV1::Photo>]
attr_accessor :photos
# The person's relations.
# Corresponds to the JSON property `relations`
# @return [Array<Google::Apis::PeopleV1::Relation>]
attr_accessor :relations
# Output only. **DEPRECATED**: No data will be returned The person's
# relationship interests.
# Corresponds to the JSON property `relationshipInterests`
# @return [Array<Google::Apis::PeopleV1::RelationshipInterest>]
attr_accessor :relationship_interests
# Output only. **DEPRECATED**: No data will be returned The person's
# relationship statuses.
# Corresponds to the JSON property `relationshipStatuses`
# @return [Array<Google::Apis::PeopleV1::RelationshipStatus>]
attr_accessor :relationship_statuses
# **DEPRECATED**: (Please use `person.locations` instead) The person's
# residences.
# Corresponds to the JSON property `residences`
# @return [Array<Google::Apis::PeopleV1::Residence>]
attr_accessor :residences
# The resource name for the person, assigned by the server. An ASCII string with
# a max length of 27 characters, in the form of `people/`person_id``.
# Corresponds to the JSON property `resourceName`
# @return [String]
attr_accessor :resource_name
# The person's SIP addresses.
# Corresponds to the JSON property `sipAddresses`
# @return [Array<Google::Apis::PeopleV1::SipAddress>]
attr_accessor :sip_addresses
# The person's skills.
# Corresponds to the JSON property `skills`
# @return [Array<Google::Apis::PeopleV1::Skill>]
attr_accessor :skills
# Output only. **DEPRECATED**: No data will be returned The person's taglines.
# Corresponds to the JSON property `taglines`
# @return [Array<Google::Apis::PeopleV1::Tagline>]
attr_accessor :taglines
# The person's associated URLs.
# Corresponds to the JSON property `urls`
# @return [Array<Google::Apis::PeopleV1::Url>]
attr_accessor :urls
# The person's user defined data.
# Corresponds to the JSON property `userDefined`
# @return [Array<Google::Apis::PeopleV1::UserDefined>]
attr_accessor :user_defined
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@addresses = args[:addresses] if args.key?(:addresses)
@age_range = args[:age_range] if args.key?(:age_range)
@age_ranges = args[:age_ranges] if args.key?(:age_ranges)
@biographies = args[:biographies] if args.key?(:biographies)
@birthdays = args[:birthdays] if args.key?(:birthdays)
@bragging_rights = args[:bragging_rights] if args.key?(:bragging_rights)
@calendar_urls = args[:calendar_urls] if args.key?(:calendar_urls)
@client_data = args[:client_data] if args.key?(:client_data)
@cover_photos = args[:cover_photos] if args.key?(:cover_photos)
@email_addresses = args[:email_addresses] if args.key?(:email_addresses)
@etag = args[:etag] if args.key?(:etag)
@events = args[:events] if args.key?(:events)
@external_ids = args[:external_ids] if args.key?(:external_ids)
@file_ases = args[:file_ases] if args.key?(:file_ases)
@genders = args[:genders] if args.key?(:genders)
@im_clients = args[:im_clients] if args.key?(:im_clients)
@interests = args[:interests] if args.key?(:interests)
@locales = args[:locales] if args.key?(:locales)
@locations = args[:locations] if args.key?(:locations)
@memberships = args[:memberships] if args.key?(:memberships)
@metadata = args[:metadata] if args.key?(:metadata)
@misc_keywords = args[:misc_keywords] if args.key?(:misc_keywords)
@names = args[:names] if args.key?(:names)
@nicknames = args[:nicknames] if args.key?(:nicknames)
@occupations = args[:occupations] if args.key?(:occupations)
@organizations = args[:organizations] if args.key?(:organizations)
@phone_numbers = args[:phone_numbers] if args.key?(:phone_numbers)
@photos = args[:photos] if args.key?(:photos)
@relations = args[:relations] if args.key?(:relations)
@relationship_interests = args[:relationship_interests] if args.key?(:relationship_interests)
@relationship_statuses = args[:relationship_statuses] if args.key?(:relationship_statuses)
@residences = args[:residences] if args.key?(:residences)
@resource_name = args[:resource_name] if args.key?(:resource_name)
@sip_addresses = args[:sip_addresses] if args.key?(:sip_addresses)
@skills = args[:skills] if args.key?(:skills)
@taglines = args[:taglines] if args.key?(:taglines)
@urls = args[:urls] if args.key?(:urls)
@user_defined = args[:user_defined] if args.key?(:user_defined)
end
end
# The metadata about a person.
class PersonMetadata
include Google::Apis::Core::Hashable
# Output only. True if the person resource has been deleted. Populated only for [
# `connections.list`](/people/api/rest/v1/people.connections/list) requests that
# include a sync token.
# Corresponds to the JSON property `deleted`
# @return [Boolean]
attr_accessor :deleted
alias_method :deleted?, :deleted
# Output only. Resource names of people linked to this resource.
# Corresponds to the JSON property `linkedPeopleResourceNames`
# @return [Array<String>]
attr_accessor :linked_people_resource_names
# Output only. **DEPRECATED** (Please use `person.metadata.sources.
# profileMetadata.objectType` instead) The type of the person object.
# Corresponds to the JSON property `objectType`
# @return [String]
attr_accessor :object_type
# Output only. Any former resource names this person has had. Populated only for
# [`connections.list`](/people/api/rest/v1/people.connections/list) requests
# that include a sync token. The resource name may change when adding or
# removing fields that link a contact and profile such as a verified email,
# verified phone number, or profile URL.
# Corresponds to the JSON property `previousResourceNames`
# @return [Array<String>]
attr_accessor :previous_resource_names
# The sources of data for the person.
# Corresponds to the JSON property `sources`
# @return [Array<Google::Apis::PeopleV1::Source>]
attr_accessor :sources
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@deleted = args[:deleted] if args.key?(:deleted)
@linked_people_resource_names = args[:linked_people_resource_names] if args.key?(:linked_people_resource_names)
@object_type = args[:object_type] if args.key?(:object_type)
@previous_resource_names = args[:previous_resource_names] if args.key?(:previous_resource_names)
@sources = args[:sources] if args.key?(:sources)
end
end
# The response for a single person
class PersonResponse
include Google::Apis::Core::Hashable
# **DEPRECATED** (Please use status instead) [HTTP 1.1 status code] (http://www.
# w3.org/Protocols/rfc2616/rfc2616-sec10.html).
# Corresponds to the JSON property `httpStatusCode`
# @return [Fixnum]
attr_accessor :http_status_code
# Information about a person merged from various data sources such as the
# authenticated user's contacts and profile data. Most fields can have multiple
# items. The items in a field have no guaranteed order, but each non-empty field
# is guaranteed to have exactly one field with `metadata.primary` set to true.
# Corresponds to the JSON property `person`
# @return [Google::Apis::PeopleV1::Person]
attr_accessor :person
# The original requested resource name. May be different than the resource name
# on the returned person. The resource name can change when adding or removing
# fields that link a contact and profile such as a verified email, verified
# phone number, or a profile URL.
# Corresponds to the JSON property `requestedResourceName`
# @return [String]
attr_accessor :requested_resource_name
# The `Status` type defines a logical error model that is suitable for different
# programming environments, including REST APIs and RPC APIs. It is used by [
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
# data: error code, error message, and error details. You can find out more
# about this error model and how to work with it in the [API Design Guide](https:
# //cloud.google.com/apis/design/errors).
# Corresponds to the JSON property `status`
# @return [Google::Apis::PeopleV1::Status]
attr_accessor :status
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@http_status_code = args[:http_status_code] if args.key?(:http_status_code)
@person = args[:person] if args.key?(:person)
@requested_resource_name = args[:requested_resource_name] if args.key?(:requested_resource_name)
@status = args[:status] if args.key?(:status)
end
end
# A person's phone number.
class PhoneNumber
include Google::Apis::Core::Hashable
# Output only. The canonicalized [ITU-T E.164](https://law.resource.org/pub/us/
# cfr/ibr/004/itu-t.E.164.1.2008.pdf) form of the phone number.
# Corresponds to the JSON property `canonicalForm`
# @return [String]
attr_accessor :canonical_form
# Output only. The type of the phone number translated and formatted in the
# viewer's account locale or the `Accept-Language` HTTP header locale.
# Corresponds to the JSON property `formattedType`
# @return [String]
attr_accessor :formatted_type
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The type of the phone number. The type can be custom or one of these
# predefined values: * `home` * `work` * `mobile` * `homeFax` * `workFax` * `
# otherFax` * `pager` * `workMobile` * `workPager` * `main` * `googleVoice` * `
# other`
# Corresponds to the JSON property `type`
# @return [String]
attr_accessor :type
# The phone number.
# 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)
@canonical_form = args[:canonical_form] if args.key?(:canonical_form)
@formatted_type = args[:formatted_type] if args.key?(:formatted_type)
@metadata = args[:metadata] if args.key?(:metadata)
@type = args[:type] if args.key?(:type)
@value = args[:value] if args.key?(:value)
end
end
# A person's photo. A picture shown next to the person's name to help others
# recognize the person.
class Photo
include Google::Apis::Core::Hashable
# True if the photo is a default photo; false if the photo is a user-provided
# photo.
# Corresponds to the JSON property `default`
# @return [Boolean]
attr_accessor :default
alias_method :default?, :default
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The URL of the photo. You can change the desired size by appending a query
# parameter `sz=`size`` at the end of the url, where `size` is the size in
# pixels. Example: https://lh3.googleusercontent.com/-T_wVWLlmg7w/AAAAAAAAAAI/
# AAAAAAAABa8/00gzXvDBYqw/s100/photo.jpg?sz=50
# 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)
@default = args[:default] if args.key?(:default)
@metadata = args[:metadata] if args.key?(:metadata)
@url = args[:url] if args.key?(:url)
end
end
# The metadata about a profile.
class ProfileMetadata
include Google::Apis::Core::Hashable
# Output only. The profile object type.
# Corresponds to the JSON property `objectType`
# @return [String]
attr_accessor :object_type
# Output only. The user types.
# Corresponds to the JSON property `userTypes`
# @return [Array<String>]
attr_accessor :user_types
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@object_type = args[:object_type] if args.key?(:object_type)
@user_types = args[:user_types] if args.key?(:user_types)
end
end
# A person's relation to another person.
class Relation
include Google::Apis::Core::Hashable
# Output only. The type of the relation translated and formatted in the viewer's
# account locale or the locale specified in the Accept-Language HTTP header.
# Corresponds to the JSON property `formattedType`
# @return [String]
attr_accessor :formatted_type
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The name of the other person this relation refers to.
# Corresponds to the JSON property `person`
# @return [String]
attr_accessor :person
# The person's relation to the other person. The type can be custom or one of
# these predefined values: * `spouse` * `child` * `mother` * `father` * `parent`
# * `brother` * `sister` * `friend` * `relative` * `domesticPartner` * `manager`
# * `assistant` * `referredBy` * `partner`
# 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)
@formatted_type = args[:formatted_type] if args.key?(:formatted_type)
@metadata = args[:metadata] if args.key?(:metadata)
@person = args[:person] if args.key?(:person)
@type = args[:type] if args.key?(:type)
end
end
# **DEPRECATED**: No data will be returned A person's relationship interest .
class RelationshipInterest
include Google::Apis::Core::Hashable
# Output only. The value of the relationship interest translated and formatted
# in the viewer's account locale or the locale specified in the Accept-Language
# HTTP header.
# Corresponds to the JSON property `formattedValue`
# @return [String]
attr_accessor :formatted_value
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The kind of relationship the person is looking for. The value can be custom or
# one of these predefined values: * `friend` * `date` * `relationship` * `
# networking`
# 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)
@formatted_value = args[:formatted_value] if args.key?(:formatted_value)
@metadata = args[:metadata] if args.key?(:metadata)
@value = args[:value] if args.key?(:value)
end
end
# **DEPRECATED**: No data will be returned A person's relationship status.
class RelationshipStatus
include Google::Apis::Core::Hashable
# Output only. The value of the relationship status translated and formatted in
# the viewer's account locale or the `Accept-Language` HTTP header locale.
# Corresponds to the JSON property `formattedValue`
# @return [String]
attr_accessor :formatted_value
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The relationship status. The value can be custom or one of these predefined
# values: * `single` * `inARelationship` * `engaged` * `married` * `
# itsComplicated` * `openRelationship` * `widowed` * `inDomesticPartnership` * `
# inCivilUnion`
# 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)
@formatted_value = args[:formatted_value] if args.key?(:formatted_value)
@metadata = args[:metadata] if args.key?(:metadata)
@value = args[:value] if args.key?(:value)
end
end
# **DEPRECATED**: Please use `person.locations` instead. A person's past or
# current residence.
class Residence
include Google::Apis::Core::Hashable
# True if the residence is the person's current residence; false if the
# residence is a past residence.
# Corresponds to the JSON property `current`
# @return [Boolean]
attr_accessor :current
alias_method :current?, :current
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The address of the residence.
# 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)
@current = args[:current] if args.key?(:current)
@metadata = args[:metadata] if args.key?(:metadata)
@value = args[:value] if args.key?(:value)
end
end
# The response to a request for people in the authenticated user's domain
# directory that match the specified query.
class SearchDirectoryPeopleResponse
include Google::Apis::Core::Hashable
# A token, which can be sent as `page_token` to retrieve the next page. If this
# field is omitted, there are no subsequent pages.
# Corresponds to the JSON property `nextPageToken`
# @return [String]
attr_accessor :next_page_token
# The list of people in the domain directory that match the query.
# Corresponds to the JSON property `people`
# @return [Array<Google::Apis::PeopleV1::Person>]
attr_accessor :people
# The total number of items in the list without pagination.
# Corresponds to the JSON property `totalSize`
# @return [Fixnum]
attr_accessor :total_size
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
@people = args[:people] if args.key?(:people)
@total_size = args[:total_size] if args.key?(:total_size)
end
end
# A person's SIP address. Session Initial Protocol addresses are used for VoIP
# communications to make voice or video calls over the internet.
class SipAddress
include Google::Apis::Core::Hashable
# Output only. The type of the SIP address translated and formatted in the
# viewer's account locale or the `Accept-Language` HTTP header locale.
# Corresponds to the JSON property `formattedType`
# @return [String]
attr_accessor :formatted_type
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The type of the SIP address. The type can be custom or or one of these
# predefined values: * `home` * `work` * `mobile` * `other`
# Corresponds to the JSON property `type`
# @return [String]
attr_accessor :type
# The SIP address in the [RFC 3261 19.1](https://tools.ietf.org/html/rfc3261#
# section-19.1) SIP URI format.
# 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)
@formatted_type = args[:formatted_type] if args.key?(:formatted_type)
@metadata = args[:metadata] if args.key?(:metadata)
@type = args[:type] if args.key?(:type)
@value = args[:value] if args.key?(:value)
end
end
# A skill that the person has.
class Skill
include Google::Apis::Core::Hashable
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The skill; for example, `underwater basket weaving`.
# 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)
@metadata = args[:metadata] if args.key?(:metadata)
@value = args[:value] if args.key?(:value)
end
end
# The source of a field.
class Source
include Google::Apis::Core::Hashable
# **Only populated in `person.metadata.sources`.** The [HTTP entity tag](https://
# en.wikipedia.org/wiki/HTTP_ETag) of the source. Used for web cache validation.
# Corresponds to the JSON property `etag`
# @return [String]
attr_accessor :etag
# The unique identifier within the source type generated by the server.
# Corresponds to the JSON property `id`
# @return [String]
attr_accessor :id
# The metadata about a profile.
# Corresponds to the JSON property `profileMetadata`
# @return [Google::Apis::PeopleV1::ProfileMetadata]
attr_accessor :profile_metadata
# The source type.
# Corresponds to the JSON property `type`
# @return [String]
attr_accessor :type
# Output only. **Only populated in `person.metadata.sources`.** Last update
# timestamp of this source.
# Corresponds to the JSON property `updateTime`
# @return [String]
attr_accessor :update_time
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@etag = args[:etag] if args.key?(:etag)
@id = args[:id] if args.key?(:id)
@profile_metadata = args[:profile_metadata] if args.key?(:profile_metadata)
@type = args[:type] if args.key?(:type)
@update_time = args[:update_time] if args.key?(:update_time)
end
end
# The `Status` type defines a logical error model that is suitable for different
# programming environments, including REST APIs and RPC APIs. It is used by [
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
# data: error code, error message, and error details. You can find out more
# about this error model and how to work with it in the [API Design Guide](https:
# //cloud.google.com/apis/design/errors).
class Status
include Google::Apis::Core::Hashable
# The status code, which should be an enum value of google.rpc.Code.
# Corresponds to the JSON property `code`
# @return [Fixnum]
attr_accessor :code
# A list of messages that carry the error details. There is a common set of
# message types for APIs to use.
# Corresponds to the JSON property `details`
# @return [Array<Hash<String,Object>>]
attr_accessor :details
# A developer-facing error message, which should be in English. Any user-facing
# error message should be localized and sent in the google.rpc.Status.details
# field, or localized by the client.
# Corresponds to the JSON property `message`
# @return [String]
attr_accessor :message
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@code = args[:code] if args.key?(:code)
@details = args[:details] if args.key?(:details)
@message = args[:message] if args.key?(:message)
end
end
# **DEPRECATED**: No data will be returned A brief one-line description of the
# person.
class Tagline
include Google::Apis::Core::Hashable
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The tagline.
# 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)
@metadata = args[:metadata] if args.key?(:metadata)
@value = args[:value] if args.key?(:value)
end
end
# A request to update an existing user contact group. All updated fields will be
# replaced.
class UpdateContactGroupRequest
include Google::Apis::Core::Hashable
# A contact group.
# Corresponds to the JSON property `contactGroup`
# @return [Google::Apis::PeopleV1::ContactGroup]
attr_accessor :contact_group
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@contact_group = args[:contact_group] if args.key?(:contact_group)
end
end
# A request to update an existing contact's photo. All requests must have a
# valid photo format: JPEG or PNG.
class UpdateContactPhotoRequest
include Google::Apis::Core::Hashable
# Optional. A field mask to restrict which fields on the person are returned.
# Multiple fields can be specified by separating them with commas. Defaults to
# empty if not set, which will skip the post mutate get. Valid values are: *
# addresses * ageRanges * biographies * birthdays * calendarUrls * clientData *
# coverPhotos * emailAddresses * events * externalIds * genders * imClients *
# interests * locales * locations * memberships * metadata * miscKeywords *
# names * nicknames * occupations * organizations * phoneNumbers * photos *
# relations * sipAddresses * skills * urls * userDefined
# Corresponds to the JSON property `personFields`
# @return [String]
attr_accessor :person_fields
# Required. Raw photo bytes
# Corresponds to the JSON property `photoBytes`
# NOTE: Values are automatically base64 encoded/decoded in the client library.
# @return [String]
attr_accessor :photo_bytes
# Optional. A mask of what source types to return. Defaults to
# READ_SOURCE_TYPE_CONTACT and READ_SOURCE_TYPE_PROFILE if not set.
# Corresponds to the JSON property `sources`
# @return [Array<String>]
attr_accessor :sources
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@person_fields = args[:person_fields] if args.key?(:person_fields)
@photo_bytes = args[:photo_bytes] if args.key?(:photo_bytes)
@sources = args[:sources] if args.key?(:sources)
end
end
# The response for updating a contact's photo.
class UpdateContactPhotoResponse
include Google::Apis::Core::Hashable
# Information about a person merged from various data sources such as the
# authenticated user's contacts and profile data. Most fields can have multiple
# items. The items in a field have no guaranteed order, but each non-empty field
# is guaranteed to have exactly one field with `metadata.primary` set to true.
# Corresponds to the JSON property `person`
# @return [Google::Apis::PeopleV1::Person]
attr_accessor :person
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@person = args[:person] if args.key?(:person)
end
end
# A person's associated URLs.
class Url
include Google::Apis::Core::Hashable
# Output only. The type of the URL translated and formatted in the viewer's
# account locale or the `Accept-Language` HTTP header locale.
# Corresponds to the JSON property `formattedType`
# @return [String]
attr_accessor :formatted_type
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The type of the URL. The type can be custom or one of these predefined values:
# * `home` * `work` * `blog` * `profile` * `homePage` * `ftp` * `reservations` *
# `appInstallPage`: website for a Currents application. * `other`
# Corresponds to the JSON property `type`
# @return [String]
attr_accessor :type
# The URL.
# 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)
@formatted_type = args[:formatted_type] if args.key?(:formatted_type)
@metadata = args[:metadata] if args.key?(:metadata)
@type = args[:type] if args.key?(:type)
@value = args[:value] if args.key?(:value)
end
end
# Arbitrary user data that is populated by the end users.
class UserDefined
include Google::Apis::Core::Hashable
# The end user specified key of the user defined data.
# Corresponds to the JSON property `key`
# @return [String]
attr_accessor :key
# Metadata about a field.
# Corresponds to the JSON property `metadata`
# @return [Google::Apis::PeopleV1::FieldMetadata]
attr_accessor :metadata
# The end user specified value of the user defined data.
# 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)
@key = args[:key] if args.key?(:key)
@metadata = args[:metadata] if args.key?(:metadata)
@value = args[:value] if args.key?(:value)
end
end
end
end
end