Class: Google::Apis::AdminDirectoryV1::User

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/admin_directory_v1/classes.rb,
lib/google/apis/admin_directory_v1/representations.rb,
lib/google/apis/admin_directory_v1/representations.rb

Overview

The Directory API allows you to create and manage your account's users, user aliases, and user Gmail chat profile photos. For more information about common tasks, see the User Accounts Developer's Guide and the User Aliases Developer's Guide.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ User

Returns a new instance of User.



3906
3907
3908
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3906

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#addressesObject

A list of the user's addresses. The maximum allowed data size for this field is 10Kb. Corresponds to the JSON property addresses

Returns:

  • (Object)


3617
3618
3619
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3617

def addresses
  @addresses
end

#agreed_to_termsBoolean Also known as: agreed_to_terms?

Output only. This property is true if the user has completed an initial login and accepted the Terms of Service agreement. Corresponds to the JSON property agreedToTerms

Returns:

  • (Boolean)


3623
3624
3625
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3623

def agreed_to_terms
  @agreed_to_terms
end

#aliasesArray<String>

Output only. A list of the user's alias email addresses. Corresponds to the JSON property aliases

Returns:

  • (Array<String>)


3629
3630
3631
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3629

def aliases
  @aliases
end

#archivedBoolean Also known as: archived?

Indicates if user is archived. Corresponds to the JSON property archived

Returns:

  • (Boolean)


3634
3635
3636
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3634

def archived
  @archived
end

#change_password_at_next_loginBoolean Also known as: change_password_at_next_login?

Indicates if the user is forced to change their password at next login. This setting doesn't apply when the user signs in via a third-party identity provider. Corresponds to the JSON property changePasswordAtNextLogin

Returns:

  • (Boolean)


3642
3643
3644
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3642

def 
  @change_password_at_next_login
end

#creation_timeDateTime

User's G Suite account creation time. (Read-only) Corresponds to the JSON property creationTime

Returns:

  • (DateTime)


3648
3649
3650
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3648

def creation_time
  @creation_time
end

#custom_schemasHash<String,Hash<String,Object>>

Custom fields of the user. Corresponds to the JSON property customSchemas

Returns:

  • (Hash<String,Hash<String,Object>>)


3653
3654
3655
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3653

def custom_schemas
  @custom_schemas
end

#customer_idString

Output only. The customer ID to retrieve all account users. You can use the alias my_customer to represent your account's customerId. As a reseller administrator, you can use the resold customer account's customerId. To get a customerId, use the account's primary domain in the domain parameter of a users.list request. Corresponds to the JSON property customerId

Returns:

  • (String)


3663
3664
3665
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3663

def customer_id
  @customer_id
end

#deletion_timeDateTime

Corresponds to the JSON property deletionTime

Returns:

  • (DateTime)


3668
3669
3670
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3668

def deletion_time
  @deletion_time
end

#emailsObject

A list of the user's email addresses. The maximum allowed data size for this field is 10Kb. Corresponds to the JSON property emails

Returns:

  • (Object)


3674
3675
3676
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3674

def emails
  @emails
end

#etagString

Output only. ETag of the resource. Corresponds to the JSON property etag

Returns:

  • (String)


3679
3680
3681
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3679

def etag
  @etag
end

#external_idsObject

A list of external IDs for the user, such as an employee or network ID. The maximum allowed data size for this field is 2Kb. Corresponds to the JSON property externalIds

Returns:

  • (Object)


3685
3686
3687
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3685

def external_ids
  @external_ids
end

#genderObject

The user's gender. The maximum allowed data size for this field is 1Kb. Corresponds to the JSON property gender

Returns:

  • (Object)


3690
3691
3692
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3690

def gender
  @gender
end

#hash_functionString

Stores the hash format of the password property. We recommend sending the password property value as a base 16 bit hexadecimal-encoded hash value. Set the hashFunction values as either the SHA-1, MD5, or crypt hash format. Corresponds to the JSON property hashFunction

Returns:

  • (String)


3699
3700
3701
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3699

def hash_function
  @hash_function
end

#idString

The unique ID for the user. A user id can be used as a user request URI's userKey. Corresponds to the JSON property id

Returns:

  • (String)


3705
3706
3707
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3705

def id
  @id
end

#imsObject

The user's Instant Messenger (IM) accounts. A user account can have multiple ims properties. But, only one of these ims properties can be the primary IM contact. The maximum allowed data size for this field is 2Kb. Corresponds to the JSON property ims

Returns:

  • (Object)


3712
3713
3714
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3712

def ims
  @ims
end

#include_in_global_address_listBoolean Also known as: include_in_global_address_list?

Indicates if the user's profile is visible in the Google Workspace global address list when the contact sharing feature is enabled for the domain. For more information about excluding user profiles, see the administration help center. Corresponds to the JSON property includeInGlobalAddressList

Returns:

  • (Boolean)


3720
3721
3722
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3720

def include_in_global_address_list
  @include_in_global_address_list
end

#ip_whitelistedBoolean Also known as: ip_whitelisted?

If true, the user's IP address is whitelisted. Corresponds to the JSON property ipWhitelisted

Returns:

  • (Boolean)


3727
3728
3729
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3727

def ip_whitelisted
  @ip_whitelisted
end

#is_adminBoolean Also known as: is_admin?

Output only. Indicates a user with super admininistrator privileges. The isAdmin property can only be edited in the Make a user an administrator operation ( makeAdmin method). If edited in the user insert or update methods, the edit is ignored by the API service. Corresponds to the JSON property isAdmin

Returns:

  • (Boolean)


3739
3740
3741
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3739

def is_admin
  @is_admin
end

#is_delegated_adminBoolean Also known as: is_delegated_admin?

Output only. Indicates if the user is a delegated administrator. Delegated administrators are supported by the API but cannot create or undelete users, or make users administrators. These requests are ignored by the API service. Roles and privileges for administrators are assigned using the Admin console. Corresponds to the JSON property isDelegatedAdmin

Returns:

  • (Boolean)


3749
3750
3751
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3749

def is_delegated_admin
  @is_delegated_admin
end

#is_enforced_in2_svBoolean Also known as: is_enforced_in2_sv?

Output only. Is 2-step verification enforced (Read-only) Corresponds to the JSON property isEnforcedIn2Sv

Returns:

  • (Boolean)


3755
3756
3757
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3755

def is_enforced_in2_sv
  @is_enforced_in2_sv
end

#is_enrolled_in2_svBoolean Also known as: is_enrolled_in2_sv?

Output only. Is enrolled in 2-step verification (Read-only) Corresponds to the JSON property isEnrolledIn2Sv

Returns:

  • (Boolean)


3761
3762
3763
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3761

def is_enrolled_in2_sv
  @is_enrolled_in2_sv
end

#is_mailbox_setupBoolean Also known as: is_mailbox_setup?

Output only. Indicates if the user's Google mailbox is created. This property is only applicable if the user has been assigned a Gmail license. Corresponds to the JSON property isMailboxSetup

Returns:

  • (Boolean)


3768
3769
3770
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3768

def is_mailbox_setup
  @is_mailbox_setup
end

#keywordsObject

The user's keywords. The maximum allowed data size for this field is 1Kb. Corresponds to the JSON property keywords

Returns:

  • (Object)


3774
3775
3776
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3774

def keywords
  @keywords
end

#kindString

Output only. The type of the API resource. For Users resources, the value is admin#directory#user. Corresponds to the JSON property kind

Returns:

  • (String)


3780
3781
3782
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3780

def kind
  @kind
end

#languagesObject

The user's languages. The maximum allowed data size for this field is 1Kb. Corresponds to the JSON property languages

Returns:

  • (Object)


3785
3786
3787
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3785

def languages
  @languages
end

#last_login_timeDateTime

User's last login time. (Read-only) Corresponds to the JSON property lastLoginTime

Returns:

  • (DateTime)


3790
3791
3792
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3790

def 
  @last_login_time
end

#locationsObject

The user's locations. The maximum allowed data size for this field is 10Kb. Corresponds to the JSON property locations

Returns:

  • (Object)


3795
3796
3797
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3795

def locations
  @locations
end

#nameGoogle::Apis::AdminDirectoryV1::UserName

Holds the given and family names of the user, and the read-only fullName value. The maximum number of characters in the givenName and in the familyName values is 60. In addition, name values support unicode/UTF-8 characters, and can contain spaces, letters (a-z), numbers (0-9), dashes (-), forward slashes (/), and periods (.). For more information about character usage rules, see the administration help center. Maximum allowed data size for this field is 1Kb. Corresponds to the JSON property name



3806
3807
3808
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3806

def name
  @name
end

#non_editable_aliasesArray<String>

Output only. List of the user's non-editable alias email addresses. These are typically outside the account's primary domain or sub-domain. Corresponds to the JSON property nonEditableAliases

Returns:

  • (Array<String>)


3812
3813
3814
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3812

def non_editable_aliases
  @non_editable_aliases
end

#notesObject

Notes for the user. Corresponds to the JSON property notes

Returns:

  • (Object)


3817
3818
3819
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3817

def notes
  @notes
end

#org_unit_pathString

The full path of the parent organization associated with the user. If the parent organization is the top-level, it is represented as a forward slash (/ ). Corresponds to the JSON property orgUnitPath

Returns:

  • (String)


3824
3825
3826
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3824

def org_unit_path
  @org_unit_path
end

#organizationsObject

A list of organizations the user belongs to. The maximum allowed data size for this field is 10Kb. Corresponds to the JSON property organizations

Returns:

  • (Object)


3830
3831
3832
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3830

def organizations
  @organizations
end

#passwordString

User's password Corresponds to the JSON property password

Returns:

  • (String)


3835
3836
3837
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3835

def password
  @password
end

#phonesObject

A list of the user's phone numbers. The maximum allowed data size for this field is 1Kb. Corresponds to the JSON property phones

Returns:

  • (Object)


3841
3842
3843
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3841

def phones
  @phones
end

#posix_accountsObject

A list of POSIX account information for the user. Corresponds to the JSON property posixAccounts

Returns:

  • (Object)


3847
3848
3849
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3847

def posix_accounts
  @posix_accounts
end

#primary_emailString

The user's primary email address. This property is required in a request to create a user account. The primaryEmail must be unique and cannot be an alias of another user. Corresponds to the JSON property primaryEmail

Returns:

  • (String)


3854
3855
3856
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3854

def primary_email
  @primary_email
end

#recovery_emailString

Recovery email of the user. Corresponds to the JSON property recoveryEmail

Returns:

  • (String)


3859
3860
3861
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3859

def recovery_email
  @recovery_email
end

#recovery_phoneString

Recovery phone of the user. The phone number must be in the E.164 format, starting with the plus sign (+). Example: +16506661212. Corresponds to the JSON property recoveryPhone

Returns:

  • (String)


3865
3866
3867
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3865

def recovery_phone
  @recovery_phone
end

#relationsObject

A list of the user's relationships to other users. The maximum allowed data size for this field is 2Kb. Corresponds to the JSON property relations

Returns:

  • (Object)


3871
3872
3873
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3871

def relations
  @relations
end

#ssh_public_keysObject

A list of SSH public keys. Corresponds to the JSON property sshPublicKeys

Returns:

  • (Object)


3876
3877
3878
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3876

def ssh_public_keys
  @ssh_public_keys
end

#suspendedBoolean Also known as: suspended?

Indicates if user is suspended. Corresponds to the JSON property suspended

Returns:

  • (Boolean)


3881
3882
3883
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3881

def suspended
  @suspended
end

#suspension_reasonString

Output only. Has the reason a user account is suspended either by the administrator or by Google at the time of suspension. The property is returned only if the suspended property is true. Corresponds to the JSON property suspensionReason

Returns:

  • (String)


3889
3890
3891
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3889

def suspension_reason
  @suspension_reason
end

#thumbnail_photo_etagString

Output only. ETag of the user's photo (Read-only) Corresponds to the JSON property thumbnailPhotoEtag

Returns:

  • (String)


3894
3895
3896
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3894

def thumbnail_photo_etag
  @thumbnail_photo_etag
end

#thumbnail_photo_urlString

Output only. Photo Url of the user (Read-only) Corresponds to the JSON property thumbnailPhotoUrl

Returns:

  • (String)


3899
3900
3901
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3899

def thumbnail_photo_url
  @thumbnail_photo_url
end

#websitesObject

The user's websites. The maximum allowed data size for this field is 2Kb. Corresponds to the JSON property websites

Returns:

  • (Object)


3904
3905
3906
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3904

def websites
  @websites
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
# File 'lib/google/apis/admin_directory_v1/classes.rb', line 3911

def update!(**args)
  @addresses = args[:addresses] if args.key?(:addresses)
  @agreed_to_terms = args[:agreed_to_terms] if args.key?(:agreed_to_terms)
  @aliases = args[:aliases] if args.key?(:aliases)
  @archived = args[:archived] if args.key?(:archived)
  @change_password_at_next_login = args[:change_password_at_next_login] if args.key?(:change_password_at_next_login)
  @creation_time = args[:creation_time] if args.key?(:creation_time)
  @custom_schemas = args[:custom_schemas] if args.key?(:custom_schemas)
  @customer_id = args[:customer_id] if args.key?(:customer_id)
  @deletion_time = args[:deletion_time] if args.key?(:deletion_time)
  @emails = args[:emails] if args.key?(:emails)
  @etag = args[:etag] if args.key?(:etag)
  @external_ids = args[:external_ids] if args.key?(:external_ids)
  @gender = args[:gender] if args.key?(:gender)
  @hash_function = args[:hash_function] if args.key?(:hash_function)
  @id = args[:id] if args.key?(:id)
  @ims = args[:ims] if args.key?(:ims)
  @include_in_global_address_list = args[:include_in_global_address_list] if args.key?(:include_in_global_address_list)
  @ip_whitelisted = args[:ip_whitelisted] if args.key?(:ip_whitelisted)
  @is_admin = args[:is_admin] if args.key?(:is_admin)
  @is_delegated_admin = args[:is_delegated_admin] if args.key?(:is_delegated_admin)
  @is_enforced_in2_sv = args[:is_enforced_in2_sv] if args.key?(:is_enforced_in2_sv)
  @is_enrolled_in2_sv = args[:is_enrolled_in2_sv] if args.key?(:is_enrolled_in2_sv)
  @is_mailbox_setup = args[:is_mailbox_setup] if args.key?(:is_mailbox_setup)
  @keywords = args[:keywords] if args.key?(:keywords)
  @kind = args[:kind] if args.key?(:kind)
  @languages = args[:languages] if args.key?(:languages)
  @last_login_time = args[:last_login_time] if args.key?(:last_login_time)
  @locations = args[:locations] if args.key?(:locations)
  @name = args[:name] if args.key?(:name)
  @non_editable_aliases = args[:non_editable_aliases] if args.key?(:non_editable_aliases)
  @notes = args[:notes] if args.key?(:notes)
  @org_unit_path = args[:org_unit_path] if args.key?(:org_unit_path)
  @organizations = args[:organizations] if args.key?(:organizations)
  @password = args[:password] if args.key?(:password)
  @phones = args[:phones] if args.key?(:phones)
  @posix_accounts = args[:posix_accounts] if args.key?(:posix_accounts)
  @primary_email = args[:primary_email] if args.key?(:primary_email)
  @recovery_email = args[:recovery_email] if args.key?(:recovery_email)
  @recovery_phone = args[:recovery_phone] if args.key?(:recovery_phone)
  @relations = args[:relations] if args.key?(:relations)
  @ssh_public_keys = args[:ssh_public_keys] if args.key?(:ssh_public_keys)
  @suspended = args[:suspended] if args.key?(:suspended)
  @suspension_reason = args[:suspension_reason] if args.key?(:suspension_reason)
  @thumbnail_photo_etag = args[:thumbnail_photo_etag] if args.key?(:thumbnail_photo_etag)
  @thumbnail_photo_url = args[:thumbnail_photo_url] if args.key?(:thumbnail_photo_url)
  @websites = args[:websites] if args.key?(:websites)
end