Admin Directory API . users

Instance Methods

aliases()

Returns the aliases Resource.

photos()

Returns the photos Resource.

delete(userKey=*)

Delete user

get(userKey=*, projection=None, customFieldMask=None, viewType=None)

retrieve user

insert(body=None)

create user.

list(orderBy=None, domain=None, projection=None, query=None, event=None, showDeleted=None, pageToken=None, sortOrder=None, maxResults=None, customer=None, customFieldMask=None, viewType=None)

Retrieve either deleted users or all users in a domain (paginated)

list_next(previous_request=*, previous_response=*)

Retrieves the next page of results.

makeAdmin(userKey=*, body=None)

change admin status of a user

patch(userKey=*, body=None)

update user. This method supports patch semantics.

undelete(userKey=*, body=None)

Undelete a deleted user

update(userKey=*, body=None)

update user

watch(body=None, orderBy=None, domain=None, projection=None, query=None, event=None, showDeleted=None, pageToken=None, sortOrder=None, maxResults=None, customer=None, customFieldMask=None, viewType=None)

Watch for changes in users list

Method Details

delete(userKey=*)
Delete user

Args:
  userKey: string, Email or immutable ID of the user (required)
get(userKey=*, projection=None, customFieldMask=None, viewType=None)
retrieve user

Args:
  userKey: string, Email or immutable ID of the user (required)
  projection: string, What subset of fields to fetch for this user.
    Allowed values
      basic - Do not include any custom fields for the user.
      custom - Include custom fields from schemas mentioned in customFieldMask.
      full - Include all fields associated with this user.
  customFieldMask: string, Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.
  viewType: string, Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.
    Allowed values
      admin_view - Fetches the ADMIN_VIEW of the user.
      domain_public - Fetches the DOMAIN_PUBLIC view of the user.

Returns:
  An object of the form:

    { # JSON template for User object in Directory API.
      "addresses": "",
      "posixAccounts": "",
      "phones": "",
      "locations": "",
      "isDelegatedAdmin": True or False, # Boolean indicating if the user is delegated admin (Read-only)
      "recoveryPhone": "A String", # Recovery phone of the user. The phone number must be in the E.164 format, starting with the plus sign (+). Example: +16506661212.
      "suspended": True or False, # Indicates if user is suspended.
      "keywords": "",
      "id": "A String", # Unique identifier of User (Read-only)
      "aliases": [ # List of aliases (Read-only)
        "A String",
      ],
      "nonEditableAliases": [ # List of non editable aliases (Read-only)
        "A String",
      ],
      "archived": True or False, # Indicates if user is archived.
      "deletionTime": "A String",
      "suspensionReason": "A String", # Suspension reason if user is suspended (Read-only)
      "thumbnailPhotoUrl": "A String", # Photo Url of the user (Read-only)
      "isEnrolledIn2Sv": True or False, # Is enrolled in 2-step verification (Read-only)
      "isAdmin": True or False, # Boolean indicating if the user is admin (Read-only)
      "relations": "",
      "includeInGlobalAddressList": True or False, # Boolean indicating if user is included in Global Address List
      "languages": "",
      "ims": "",
      "etag": "A String", # ETag of the resource.
      "lastLoginTime": "A String", # User's last login time. (Read-only)
      "orgUnitPath": "A String", # OrgUnit of User
      "agreedToTerms": True or False, # Indicates if user has agreed to terms (Read-only)
      "externalIds": "",
      "ipWhitelisted": True or False, # Boolean indicating if ip is whitelisted
      "sshPublicKeys": "",
      "customSchemas": { # Custom fields of the user.
        "a_key": { # JSON template for a set of custom properties (i.e. all fields in a particular schema)
          "a_key": "",
        },
      },
      "isEnforcedIn2Sv": True or False, # Is 2-step verification enforced (Read-only)
      "isMailboxSetup": True or False, # Is mailbox setup (Read-only)
      "primaryEmail": "A String", # username of User
      "password": "A String", # User's password
      "emails": "",
      "organizations": "",
      "kind": "admin#directory#user", # Kind of resource this is.
      "hashFunction": "A String", # Hash function name for password. Supported are MD5, SHA-1 and crypt
      "name": { # JSON template for name of a user in Directory API. # User's name
        "givenName": "A String", # First Name
        "fullName": "A String", # Full Name
        "familyName": "A String", # Last Name
      },
      "gender": "",
      "notes": "",
      "creationTime": "A String", # User's G Suite account creation time. (Read-only)
      "websites": "",
      "changePasswordAtNextLogin": True or False, # Boolean indicating if the user should change password in next login
      "recoveryEmail": "A String", # Recovery email of the user.
      "customerId": "A String", # CustomerId of User (Read-only)
      "thumbnailPhotoEtag": "A String", # ETag of the user's photo (Read-only)
    }
insert(body=None)
create user.

Args:
  body: object, The request body.
    The object takes the form of:

{ # JSON template for User object in Directory API.
    "addresses": "",
    "posixAccounts": "",
    "phones": "",
    "locations": "",
    "isDelegatedAdmin": True or False, # Boolean indicating if the user is delegated admin (Read-only)
    "recoveryPhone": "A String", # Recovery phone of the user. The phone number must be in the E.164 format, starting with the plus sign (+). Example: +16506661212.
    "suspended": True or False, # Indicates if user is suspended.
    "keywords": "",
    "id": "A String", # Unique identifier of User (Read-only)
    "aliases": [ # List of aliases (Read-only)
      "A String",
    ],
    "nonEditableAliases": [ # List of non editable aliases (Read-only)
      "A String",
    ],
    "archived": True or False, # Indicates if user is archived.
    "deletionTime": "A String",
    "suspensionReason": "A String", # Suspension reason if user is suspended (Read-only)
    "thumbnailPhotoUrl": "A String", # Photo Url of the user (Read-only)
    "isEnrolledIn2Sv": True or False, # Is enrolled in 2-step verification (Read-only)
    "isAdmin": True or False, # Boolean indicating if the user is admin (Read-only)
    "relations": "",
    "includeInGlobalAddressList": True or False, # Boolean indicating if user is included in Global Address List
    "languages": "",
    "ims": "",
    "etag": "A String", # ETag of the resource.
    "lastLoginTime": "A String", # User's last login time. (Read-only)
    "orgUnitPath": "A String", # OrgUnit of User
    "agreedToTerms": True or False, # Indicates if user has agreed to terms (Read-only)
    "externalIds": "",
    "ipWhitelisted": True or False, # Boolean indicating if ip is whitelisted
    "sshPublicKeys": "",
    "customSchemas": { # Custom fields of the user.
      "a_key": { # JSON template for a set of custom properties (i.e. all fields in a particular schema)
        "a_key": "",
      },
    },
    "isEnforcedIn2Sv": True or False, # Is 2-step verification enforced (Read-only)
    "isMailboxSetup": True or False, # Is mailbox setup (Read-only)
    "primaryEmail": "A String", # username of User
    "password": "A String", # User's password
    "emails": "",
    "organizations": "",
    "kind": "admin#directory#user", # Kind of resource this is.
    "hashFunction": "A String", # Hash function name for password. Supported are MD5, SHA-1 and crypt
    "name": { # JSON template for name of a user in Directory API. # User's name
      "givenName": "A String", # First Name
      "fullName": "A String", # Full Name
      "familyName": "A String", # Last Name
    },
    "gender": "",
    "notes": "",
    "creationTime": "A String", # User's G Suite account creation time. (Read-only)
    "websites": "",
    "changePasswordAtNextLogin": True or False, # Boolean indicating if the user should change password in next login
    "recoveryEmail": "A String", # Recovery email of the user.
    "customerId": "A String", # CustomerId of User (Read-only)
    "thumbnailPhotoEtag": "A String", # ETag of the user's photo (Read-only)
  }


Returns:
  An object of the form:

    { # JSON template for User object in Directory API.
      "addresses": "",
      "posixAccounts": "",
      "phones": "",
      "locations": "",
      "isDelegatedAdmin": True or False, # Boolean indicating if the user is delegated admin (Read-only)
      "recoveryPhone": "A String", # Recovery phone of the user. The phone number must be in the E.164 format, starting with the plus sign (+). Example: +16506661212.
      "suspended": True or False, # Indicates if user is suspended.
      "keywords": "",
      "id": "A String", # Unique identifier of User (Read-only)
      "aliases": [ # List of aliases (Read-only)
        "A String",
      ],
      "nonEditableAliases": [ # List of non editable aliases (Read-only)
        "A String",
      ],
      "archived": True or False, # Indicates if user is archived.
      "deletionTime": "A String",
      "suspensionReason": "A String", # Suspension reason if user is suspended (Read-only)
      "thumbnailPhotoUrl": "A String", # Photo Url of the user (Read-only)
      "isEnrolledIn2Sv": True or False, # Is enrolled in 2-step verification (Read-only)
      "isAdmin": True or False, # Boolean indicating if the user is admin (Read-only)
      "relations": "",
      "includeInGlobalAddressList": True or False, # Boolean indicating if user is included in Global Address List
      "languages": "",
      "ims": "",
      "etag": "A String", # ETag of the resource.
      "lastLoginTime": "A String", # User's last login time. (Read-only)
      "orgUnitPath": "A String", # OrgUnit of User
      "agreedToTerms": True or False, # Indicates if user has agreed to terms (Read-only)
      "externalIds": "",
      "ipWhitelisted": True or False, # Boolean indicating if ip is whitelisted
      "sshPublicKeys": "",
      "customSchemas": { # Custom fields of the user.
        "a_key": { # JSON template for a set of custom properties (i.e. all fields in a particular schema)
          "a_key": "",
        },
      },
      "isEnforcedIn2Sv": True or False, # Is 2-step verification enforced (Read-only)
      "isMailboxSetup": True or False, # Is mailbox setup (Read-only)
      "primaryEmail": "A String", # username of User
      "password": "A String", # User's password
      "emails": "",
      "organizations": "",
      "kind": "admin#directory#user", # Kind of resource this is.
      "hashFunction": "A String", # Hash function name for password. Supported are MD5, SHA-1 and crypt
      "name": { # JSON template for name of a user in Directory API. # User's name
        "givenName": "A String", # First Name
        "fullName": "A String", # Full Name
        "familyName": "A String", # Last Name
      },
      "gender": "",
      "notes": "",
      "creationTime": "A String", # User's G Suite account creation time. (Read-only)
      "websites": "",
      "changePasswordAtNextLogin": True or False, # Boolean indicating if the user should change password in next login
      "recoveryEmail": "A String", # Recovery email of the user.
      "customerId": "A String", # CustomerId of User (Read-only)
      "thumbnailPhotoEtag": "A String", # ETag of the user's photo (Read-only)
    }
list(orderBy=None, domain=None, projection=None, query=None, event=None, showDeleted=None, pageToken=None, sortOrder=None, maxResults=None, customer=None, customFieldMask=None, viewType=None)
Retrieve either deleted users or all users in a domain (paginated)

Args:
  orderBy: string, Column to use for sorting results
    Allowed values
      email - Primary email of the user.
      familyName - User's family name.
      givenName - User's given name.
  domain: string, Name of the domain. Fill this field to get users from only this domain. To return all users in a multi-domain fill customer field instead.
  projection: string, What subset of fields to fetch for this user.
    Allowed values
      basic - Do not include any custom fields for the user.
      custom - Include custom fields from schemas mentioned in customFieldMask.
      full - Include all fields associated with this user.
  query: string, Query string search. Should be of the form "". Complete documentation is at https://developers.google.com/admin-sdk/directory/v1/guides/search-users
  event: string, Event on which subscription is intended (if subscribing)
    Allowed values
      add - User Created Event
      delete - User Deleted Event
      makeAdmin - User Admin Status Change Event
      undelete - User Undeleted Event
      update - User Updated Event
  showDeleted: string, If set to true, retrieves the list of deleted users. (Default: false)
  pageToken: string, Token to specify next page in the list
  sortOrder: string, Whether to return results in ascending or descending order.
    Allowed values
      ASCENDING - Ascending order.
      DESCENDING - Descending order.
  maxResults: integer, Maximum number of results to return.
  customer: string, Immutable ID of the G Suite account. In case of multi-domain, to fetch all users for a customer, fill this field instead of domain.
  customFieldMask: string, Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.
  viewType: string, Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.
    Allowed values
      admin_view - Fetches the ADMIN_VIEW of the user.
      domain_public - Fetches the DOMAIN_PUBLIC view of the user.

Returns:
  An object of the form:

    { # JSON response template for List Users operation in Apps Directory API.
    "nextPageToken": "A String", # Token used to access next page of this result.
    "kind": "admin#directory#users", # Kind of resource this is.
    "etag": "A String", # ETag of the resource.
    "trigger_event": "A String", # Event that triggered this response (only used in case of Push Response)
    "users": [ # List of user objects.
      { # JSON template for User object in Directory API.
          "addresses": "",
          "posixAccounts": "",
          "phones": "",
          "locations": "",
          "isDelegatedAdmin": True or False, # Boolean indicating if the user is delegated admin (Read-only)
          "recoveryPhone": "A String", # Recovery phone of the user. The phone number must be in the E.164 format, starting with the plus sign (+). Example: +16506661212.
          "suspended": True or False, # Indicates if user is suspended.
          "keywords": "",
          "id": "A String", # Unique identifier of User (Read-only)
          "aliases": [ # List of aliases (Read-only)
            "A String",
          ],
          "nonEditableAliases": [ # List of non editable aliases (Read-only)
            "A String",
          ],
          "archived": True or False, # Indicates if user is archived.
          "deletionTime": "A String",
          "suspensionReason": "A String", # Suspension reason if user is suspended (Read-only)
          "thumbnailPhotoUrl": "A String", # Photo Url of the user (Read-only)
          "isEnrolledIn2Sv": True or False, # Is enrolled in 2-step verification (Read-only)
          "isAdmin": True or False, # Boolean indicating if the user is admin (Read-only)
          "relations": "",
          "includeInGlobalAddressList": True or False, # Boolean indicating if user is included in Global Address List
          "languages": "",
          "ims": "",
          "etag": "A String", # ETag of the resource.
          "lastLoginTime": "A String", # User's last login time. (Read-only)
          "orgUnitPath": "A String", # OrgUnit of User
          "agreedToTerms": True or False, # Indicates if user has agreed to terms (Read-only)
          "externalIds": "",
          "ipWhitelisted": True or False, # Boolean indicating if ip is whitelisted
          "sshPublicKeys": "",
          "customSchemas": { # Custom fields of the user.
            "a_key": { # JSON template for a set of custom properties (i.e. all fields in a particular schema)
              "a_key": "",
            },
          },
          "isEnforcedIn2Sv": True or False, # Is 2-step verification enforced (Read-only)
          "isMailboxSetup": True or False, # Is mailbox setup (Read-only)
          "primaryEmail": "A String", # username of User
          "password": "A String", # User's password
          "emails": "",
          "organizations": "",
          "kind": "admin#directory#user", # Kind of resource this is.
          "hashFunction": "A String", # Hash function name for password. Supported are MD5, SHA-1 and crypt
          "name": { # JSON template for name of a user in Directory API. # User's name
            "givenName": "A String", # First Name
            "fullName": "A String", # Full Name
            "familyName": "A String", # Last Name
          },
          "gender": "",
          "notes": "",
          "creationTime": "A String", # User's G Suite account creation time. (Read-only)
          "websites": "",
          "changePasswordAtNextLogin": True or False, # Boolean indicating if the user should change password in next login
          "recoveryEmail": "A String", # Recovery email of the user.
          "customerId": "A String", # CustomerId of User (Read-only)
          "thumbnailPhotoEtag": "A String", # ETag of the user's photo (Read-only)
        },
    ],
  }
list_next(previous_request=*, previous_response=*)
Retrieves the next page of results.

Args:
  previous_request: The request for the previous page. (required)
  previous_response: The response from the request for the previous page. (required)

Returns:
  A request object that you can call 'execute()' on to request the next
  page. Returns None if there are no more items in the collection.
    
makeAdmin(userKey=*, body=None)
change admin status of a user

Args:
  userKey: string, Email or immutable ID of the user as admin (required)
  body: object, The request body.
    The object takes the form of:

{ # JSON request template for setting/revoking admin status of a user in Directory API.
    "status": True or False, # Boolean indicating new admin status of the user
  }

patch(userKey=*, body=None)
update user. This method supports patch semantics.

Args:
  userKey: string, Email or immutable ID of the user. If ID, it should match with id of user object (required)
  body: object, The request body.
    The object takes the form of:

{ # JSON template for User object in Directory API.
    "addresses": "",
    "posixAccounts": "",
    "phones": "",
    "locations": "",
    "isDelegatedAdmin": True or False, # Boolean indicating if the user is delegated admin (Read-only)
    "recoveryPhone": "A String", # Recovery phone of the user. The phone number must be in the E.164 format, starting with the plus sign (+). Example: +16506661212.
    "suspended": True or False, # Indicates if user is suspended.
    "keywords": "",
    "id": "A String", # Unique identifier of User (Read-only)
    "aliases": [ # List of aliases (Read-only)
      "A String",
    ],
    "nonEditableAliases": [ # List of non editable aliases (Read-only)
      "A String",
    ],
    "archived": True or False, # Indicates if user is archived.
    "deletionTime": "A String",
    "suspensionReason": "A String", # Suspension reason if user is suspended (Read-only)
    "thumbnailPhotoUrl": "A String", # Photo Url of the user (Read-only)
    "isEnrolledIn2Sv": True or False, # Is enrolled in 2-step verification (Read-only)
    "isAdmin": True or False, # Boolean indicating if the user is admin (Read-only)
    "relations": "",
    "includeInGlobalAddressList": True or False, # Boolean indicating if user is included in Global Address List
    "languages": "",
    "ims": "",
    "etag": "A String", # ETag of the resource.
    "lastLoginTime": "A String", # User's last login time. (Read-only)
    "orgUnitPath": "A String", # OrgUnit of User
    "agreedToTerms": True or False, # Indicates if user has agreed to terms (Read-only)
    "externalIds": "",
    "ipWhitelisted": True or False, # Boolean indicating if ip is whitelisted
    "sshPublicKeys": "",
    "customSchemas": { # Custom fields of the user.
      "a_key": { # JSON template for a set of custom properties (i.e. all fields in a particular schema)
        "a_key": "",
      },
    },
    "isEnforcedIn2Sv": True or False, # Is 2-step verification enforced (Read-only)
    "isMailboxSetup": True or False, # Is mailbox setup (Read-only)
    "primaryEmail": "A String", # username of User
    "password": "A String", # User's password
    "emails": "",
    "organizations": "",
    "kind": "admin#directory#user", # Kind of resource this is.
    "hashFunction": "A String", # Hash function name for password. Supported are MD5, SHA-1 and crypt
    "name": { # JSON template for name of a user in Directory API. # User's name
      "givenName": "A String", # First Name
      "fullName": "A String", # Full Name
      "familyName": "A String", # Last Name
    },
    "gender": "",
    "notes": "",
    "creationTime": "A String", # User's G Suite account creation time. (Read-only)
    "websites": "",
    "changePasswordAtNextLogin": True or False, # Boolean indicating if the user should change password in next login
    "recoveryEmail": "A String", # Recovery email of the user.
    "customerId": "A String", # CustomerId of User (Read-only)
    "thumbnailPhotoEtag": "A String", # ETag of the user's photo (Read-only)
  }


Returns:
  An object of the form:

    { # JSON template for User object in Directory API.
      "addresses": "",
      "posixAccounts": "",
      "phones": "",
      "locations": "",
      "isDelegatedAdmin": True or False, # Boolean indicating if the user is delegated admin (Read-only)
      "recoveryPhone": "A String", # Recovery phone of the user. The phone number must be in the E.164 format, starting with the plus sign (+). Example: +16506661212.
      "suspended": True or False, # Indicates if user is suspended.
      "keywords": "",
      "id": "A String", # Unique identifier of User (Read-only)
      "aliases": [ # List of aliases (Read-only)
        "A String",
      ],
      "nonEditableAliases": [ # List of non editable aliases (Read-only)
        "A String",
      ],
      "archived": True or False, # Indicates if user is archived.
      "deletionTime": "A String",
      "suspensionReason": "A String", # Suspension reason if user is suspended (Read-only)
      "thumbnailPhotoUrl": "A String", # Photo Url of the user (Read-only)
      "isEnrolledIn2Sv": True or False, # Is enrolled in 2-step verification (Read-only)
      "isAdmin": True or False, # Boolean indicating if the user is admin (Read-only)
      "relations": "",
      "includeInGlobalAddressList": True or False, # Boolean indicating if user is included in Global Address List
      "languages": "",
      "ims": "",
      "etag": "A String", # ETag of the resource.
      "lastLoginTime": "A String", # User's last login time. (Read-only)
      "orgUnitPath": "A String", # OrgUnit of User
      "agreedToTerms": True or False, # Indicates if user has agreed to terms (Read-only)
      "externalIds": "",
      "ipWhitelisted": True or False, # Boolean indicating if ip is whitelisted
      "sshPublicKeys": "",
      "customSchemas": { # Custom fields of the user.
        "a_key": { # JSON template for a set of custom properties (i.e. all fields in a particular schema)
          "a_key": "",
        },
      },
      "isEnforcedIn2Sv": True or False, # Is 2-step verification enforced (Read-only)
      "isMailboxSetup": True or False, # Is mailbox setup (Read-only)
      "primaryEmail": "A String", # username of User
      "password": "A String", # User's password
      "emails": "",
      "organizations": "",
      "kind": "admin#directory#user", # Kind of resource this is.
      "hashFunction": "A String", # Hash function name for password. Supported are MD5, SHA-1 and crypt
      "name": { # JSON template for name of a user in Directory API. # User's name
        "givenName": "A String", # First Name
        "fullName": "A String", # Full Name
        "familyName": "A String", # Last Name
      },
      "gender": "",
      "notes": "",
      "creationTime": "A String", # User's G Suite account creation time. (Read-only)
      "websites": "",
      "changePasswordAtNextLogin": True or False, # Boolean indicating if the user should change password in next login
      "recoveryEmail": "A String", # Recovery email of the user.
      "customerId": "A String", # CustomerId of User (Read-only)
      "thumbnailPhotoEtag": "A String", # ETag of the user's photo (Read-only)
    }
undelete(userKey=*, body=None)
Undelete a deleted user

Args:
  userKey: string, The immutable id of the user (required)
  body: object, The request body.
    The object takes the form of:

{ # JSON request template to undelete a user in Directory API.
    "orgUnitPath": "A String", # OrgUnit of User
  }

update(userKey=*, body=None)
update user

Args:
  userKey: string, Email or immutable ID of the user. If ID, it should match with id of user object (required)
  body: object, The request body.
    The object takes the form of:

{ # JSON template for User object in Directory API.
    "addresses": "",
    "posixAccounts": "",
    "phones": "",
    "locations": "",
    "isDelegatedAdmin": True or False, # Boolean indicating if the user is delegated admin (Read-only)
    "recoveryPhone": "A String", # Recovery phone of the user. The phone number must be in the E.164 format, starting with the plus sign (+). Example: +16506661212.
    "suspended": True or False, # Indicates if user is suspended.
    "keywords": "",
    "id": "A String", # Unique identifier of User (Read-only)
    "aliases": [ # List of aliases (Read-only)
      "A String",
    ],
    "nonEditableAliases": [ # List of non editable aliases (Read-only)
      "A String",
    ],
    "archived": True or False, # Indicates if user is archived.
    "deletionTime": "A String",
    "suspensionReason": "A String", # Suspension reason if user is suspended (Read-only)
    "thumbnailPhotoUrl": "A String", # Photo Url of the user (Read-only)
    "isEnrolledIn2Sv": True or False, # Is enrolled in 2-step verification (Read-only)
    "isAdmin": True or False, # Boolean indicating if the user is admin (Read-only)
    "relations": "",
    "includeInGlobalAddressList": True or False, # Boolean indicating if user is included in Global Address List
    "languages": "",
    "ims": "",
    "etag": "A String", # ETag of the resource.
    "lastLoginTime": "A String", # User's last login time. (Read-only)
    "orgUnitPath": "A String", # OrgUnit of User
    "agreedToTerms": True or False, # Indicates if user has agreed to terms (Read-only)
    "externalIds": "",
    "ipWhitelisted": True or False, # Boolean indicating if ip is whitelisted
    "sshPublicKeys": "",
    "customSchemas": { # Custom fields of the user.
      "a_key": { # JSON template for a set of custom properties (i.e. all fields in a particular schema)
        "a_key": "",
      },
    },
    "isEnforcedIn2Sv": True or False, # Is 2-step verification enforced (Read-only)
    "isMailboxSetup": True or False, # Is mailbox setup (Read-only)
    "primaryEmail": "A String", # username of User
    "password": "A String", # User's password
    "emails": "",
    "organizations": "",
    "kind": "admin#directory#user", # Kind of resource this is.
    "hashFunction": "A String", # Hash function name for password. Supported are MD5, SHA-1 and crypt
    "name": { # JSON template for name of a user in Directory API. # User's name
      "givenName": "A String", # First Name
      "fullName": "A String", # Full Name
      "familyName": "A String", # Last Name
    },
    "gender": "",
    "notes": "",
    "creationTime": "A String", # User's G Suite account creation time. (Read-only)
    "websites": "",
    "changePasswordAtNextLogin": True or False, # Boolean indicating if the user should change password in next login
    "recoveryEmail": "A String", # Recovery email of the user.
    "customerId": "A String", # CustomerId of User (Read-only)
    "thumbnailPhotoEtag": "A String", # ETag of the user's photo (Read-only)
  }


Returns:
  An object of the form:

    { # JSON template for User object in Directory API.
      "addresses": "",
      "posixAccounts": "",
      "phones": "",
      "locations": "",
      "isDelegatedAdmin": True or False, # Boolean indicating if the user is delegated admin (Read-only)
      "recoveryPhone": "A String", # Recovery phone of the user. The phone number must be in the E.164 format, starting with the plus sign (+). Example: +16506661212.
      "suspended": True or False, # Indicates if user is suspended.
      "keywords": "",
      "id": "A String", # Unique identifier of User (Read-only)
      "aliases": [ # List of aliases (Read-only)
        "A String",
      ],
      "nonEditableAliases": [ # List of non editable aliases (Read-only)
        "A String",
      ],
      "archived": True or False, # Indicates if user is archived.
      "deletionTime": "A String",
      "suspensionReason": "A String", # Suspension reason if user is suspended (Read-only)
      "thumbnailPhotoUrl": "A String", # Photo Url of the user (Read-only)
      "isEnrolledIn2Sv": True or False, # Is enrolled in 2-step verification (Read-only)
      "isAdmin": True or False, # Boolean indicating if the user is admin (Read-only)
      "relations": "",
      "includeInGlobalAddressList": True or False, # Boolean indicating if user is included in Global Address List
      "languages": "",
      "ims": "",
      "etag": "A String", # ETag of the resource.
      "lastLoginTime": "A String", # User's last login time. (Read-only)
      "orgUnitPath": "A String", # OrgUnit of User
      "agreedToTerms": True or False, # Indicates if user has agreed to terms (Read-only)
      "externalIds": "",
      "ipWhitelisted": True or False, # Boolean indicating if ip is whitelisted
      "sshPublicKeys": "",
      "customSchemas": { # Custom fields of the user.
        "a_key": { # JSON template for a set of custom properties (i.e. all fields in a particular schema)
          "a_key": "",
        },
      },
      "isEnforcedIn2Sv": True or False, # Is 2-step verification enforced (Read-only)
      "isMailboxSetup": True or False, # Is mailbox setup (Read-only)
      "primaryEmail": "A String", # username of User
      "password": "A String", # User's password
      "emails": "",
      "organizations": "",
      "kind": "admin#directory#user", # Kind of resource this is.
      "hashFunction": "A String", # Hash function name for password. Supported are MD5, SHA-1 and crypt
      "name": { # JSON template for name of a user in Directory API. # User's name
        "givenName": "A String", # First Name
        "fullName": "A String", # Full Name
        "familyName": "A String", # Last Name
      },
      "gender": "",
      "notes": "",
      "creationTime": "A String", # User's G Suite account creation time. (Read-only)
      "websites": "",
      "changePasswordAtNextLogin": True or False, # Boolean indicating if the user should change password in next login
      "recoveryEmail": "A String", # Recovery email of the user.
      "customerId": "A String", # CustomerId of User (Read-only)
      "thumbnailPhotoEtag": "A String", # ETag of the user's photo (Read-only)
    }
watch(body=None, orderBy=None, domain=None, projection=None, query=None, event=None, showDeleted=None, pageToken=None, sortOrder=None, maxResults=None, customer=None, customFieldMask=None, viewType=None)
Watch for changes in users list

Args:
  body: object, The request body.
    The object takes the form of:

{ # An notification channel used to watch for resource changes.
    "resourceUri": "A String", # A version-specific identifier for the watched resource.
    "kind": "api#channel", # Identifies this as a notification channel used to watch for changes to a resource, which is "api#channel".
    "resourceId": "A String", # An opaque ID that identifies the resource being watched on this channel. Stable across different API versions.
    "payload": True or False, # A Boolean value to indicate whether payload is wanted. Optional.
    "token": "A String", # An arbitrary string delivered to the target address with each notification delivered over this channel. Optional.
    "params": { # Additional parameters controlling delivery channel behavior. Optional.
      "a_key": "A String", # Declares a new parameter by name.
    },
    "expiration": "A String", # Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.
    "address": "A String", # The address where notifications are delivered for this channel.
    "type": "A String", # The type of delivery mechanism used for this channel.
    "id": "A String", # A UUID or similar unique string that identifies this channel.
  }

  orderBy: string, Column to use for sorting results
    Allowed values
      email - Primary email of the user.
      familyName - User's family name.
      givenName - User's given name.
  domain: string, Name of the domain. Fill this field to get users from only this domain. To return all users in a multi-domain fill customer field instead.
  projection: string, What subset of fields to fetch for this user.
    Allowed values
      basic - Do not include any custom fields for the user.
      custom - Include custom fields from schemas mentioned in customFieldMask.
      full - Include all fields associated with this user.
  query: string, Query string search. Should be of the form "". Complete documentation is at https://developers.google.com/admin-sdk/directory/v1/guides/search-users
  event: string, Event on which subscription is intended (if subscribing)
    Allowed values
      add - User Created Event
      delete - User Deleted Event
      makeAdmin - User Admin Status Change Event
      undelete - User Undeleted Event
      update - User Updated Event
  showDeleted: string, If set to true, retrieves the list of deleted users. (Default: false)
  pageToken: string, Token to specify next page in the list
  sortOrder: string, Whether to return results in ascending or descending order.
    Allowed values
      ASCENDING - Ascending order.
      DESCENDING - Descending order.
  maxResults: integer, Maximum number of results to return.
  customer: string, Immutable ID of the G Suite account. In case of multi-domain, to fetch all users for a customer, fill this field instead of domain.
  customFieldMask: string, Comma-separated list of schema names. All fields from these schemas are fetched. This should only be set when projection=custom.
  viewType: string, Whether to fetch the ADMIN_VIEW or DOMAIN_PUBLIC view of the user.
    Allowed values
      admin_view - Fetches the ADMIN_VIEW of the user.
      domain_public - Fetches the DOMAIN_PUBLIC view of the user.

Returns:
  An object of the form:

    { # An notification channel used to watch for resource changes.
      "resourceUri": "A String", # A version-specific identifier for the watched resource.
      "kind": "api#channel", # Identifies this as a notification channel used to watch for changes to a resource, which is "api#channel".
      "resourceId": "A String", # An opaque ID that identifies the resource being watched on this channel. Stable across different API versions.
      "payload": True or False, # A Boolean value to indicate whether payload is wanted. Optional.
      "token": "A String", # An arbitrary string delivered to the target address with each notification delivered over this channel. Optional.
      "params": { # Additional parameters controlling delivery channel behavior. Optional.
        "a_key": "A String", # Declares a new parameter by name.
      },
      "expiration": "A String", # Date and time of notification channel expiration, expressed as a Unix timestamp, in milliseconds. Optional.
      "address": "A String", # The address where notifications are delivered for this channel.
      "type": "A String", # The type of delivery mechanism used for this channel.
      "id": "A String", # A UUID or similar unique string that identifies this channel.
    }