REST Resource: users

Recurso: User

La API de Directory te permite crear y administrar los usuarios, los alias de usuario y las fotos de perfil de Google de los usuarios de tu cuenta. Para obtener más información sobre las tareas comunes, consulta la Guía para desarrolladores de cuentas de usuario y la Guía para desarrolladores de alias de usuario.

Representación JSON
{
  "id": string,
  "primaryEmail": string,
  "password": value,
  "hashFunction": string,
  "isAdmin": boolean,
  "isDelegatedAdmin": boolean,
  "agreedToTerms": boolean,
  "suspended": boolean,
  "changePasswordAtNextLogin": boolean,
  "ipWhitelisted": boolean,
  "name": {
    object (UserName)
  },
  "kind": string,
  "etag": string,
  "emails": value,
  "externalIds": value,
  "relations": value,
  "aliases": [
    string
  ],
  "isMailboxSetup": boolean,
  "customerId": string,
  "addresses": value,
  "organizations": value,
  "lastLoginTime": string,
  "phones": value,
  "suspensionReason": string,
  "thumbnailPhotoUrl": string,
  "languages": value,
  "posixAccounts": value,
  "creationTime": string,
  "nonEditableAliases": [
    string
  ],
  "sshPublicKeys": value,
  "notes": value,
  "websites": value,
  "locations": value,
  "includeInGlobalAddressList": boolean,
  "keywords": value,
  "deletionTime": string,
  "gender": value,
  "thumbnailPhotoEtag": string,
  "ims": value,
  "customSchemas": value,
  "isEnrolledIn2Sv": boolean,
  "isEnforcedIn2Sv": boolean,
  "archived": boolean,
  "orgUnitPath": string,
  "recoveryEmail": string,
  "recoveryPhone": string,
  "isGuestUser": boolean,
  "guestAccountInfo": {
    object (GuestAccountInfo)
  }
}
Campos
id

string

Es el ID único del usuario. Un id de usuario se puede usar como el userKey de un URI de solicitud del usuario.

primaryEmail

string

Es la dirección de correo electrónico principal del usuario. Esta propiedad es obligatoria en una solicitud para crear una cuenta de usuario. El primaryEmail debe ser único y no puede ser un alias de otro usuario.

password

value (Value format)

Almacena la contraseña de la cuenta de usuario. El valor de la contraseña del usuario es obligatorio cuando se crea una cuenta de usuario. Es opcional cuando se actualiza un usuario y solo se debe proporcionar si el usuario actualiza la contraseña de su cuenta. El valor de la contraseña nunca se devuelve en el cuerpo de la respuesta de la API.

Una contraseña puede contener cualquier combinación de caracteres ASCII y debe tener entre 8 y 100 caracteres.

Te recomendamos que envíes el parámetro password como un valor de hash codificado en hexadecimal y que configures hashFunction según corresponda. Si se especifica hashFunction, la contraseña debe ser una clave hash válida.

hashFunction

string

Almacena el formato de hash de la propiedad password. Se permiten los siguientes valores de hashFunction:

  • MD5: Acepta valores simples codificados en hexadecimal.
  • SHA-1: Acepta valores simples codificados en hexadecimal.
  • crypt: Cumple con la biblioteca de criptografía en C. Admite los algoritmos de hash DES, MD5 (prefijo de hash $1$), SHA-256 (prefijo de hash $5$) y SHA-512 (prefijo de hash $6$).

Si se especifican las rondas como parte del prefijo, deben ser 10,000 o menos.

isAdmin

boolean

Solo salida. Indica un usuario con privilegios de administrador avanzado. La propiedad isAdmin solo se puede editar en la operación Make a user an administrator ( método makeAdmin). Si se edita en los métodos insert o update del usuario, el servicio de la API ignora la edición.

isDelegatedAdmin

boolean

Solo salida. Indica si el usuario es un administrador delegado.
La API admite administradores delegados, pero estos no pueden crear ni recuperar usuarios, ni convertirlos en administradores. El servicio de API ignora estas solicitudes.
Los roles y privilegios para administradores se asignan a través de la Consola del administrador.

agreedToTerms

boolean

Solo salida. Esta propiedad es true si el usuario completó un acceso inicial y aceptó el acuerdo de Condiciones del Servicio.

suspended

boolean

Indica si el usuario está suspendido.

changePasswordAtNextLogin

boolean

Indica si se obliga al usuario a cambiar su contraseña en el siguiente acceso. Este parámetro de configuración no se aplica cuando el usuario accede a través de un proveedor de identidad externo.

ipWhitelisted

boolean

Si es true, la dirección IP del usuario está sujeta a una configuración de allowlist de dirección IP obsoleta.

name

object (UserName)

Contiene el nombre y el apellido del usuario, y el valor fullName de solo lectura. La cantidad máxima de caracteres en los valores de givenName y familyName es de 60. Además, los valores de nombre admiten caracteres Unicode/UTF-8 y pueden contener espacios, letras (a-z), números (0-9), guiones (-), barras (/) y puntos (.). Para obtener más información sobre las reglas de uso de caracteres, consulta el Centro de ayuda para administradores. El tamaño máximo de datos permitido para este campo es de 1 KB.

kind

string

Solo salida. Tipo de recurso de la API. En el caso de los recursos de Users, el valor es admin#directory#user.

etag

string

Solo salida. Es la ETag del recurso.

emails

value (Value format)

Es la lista de direcciones de correo electrónico del usuario. El tamaño máximo de datos permitido es de 10 KB.

Campos

emails[].address

string

La dirección de correo electrónico del usuario. También sirve como ID de correo electrónico. Este valor puede ser la dirección de correo electrónico principal del usuario o un alias.

emails[].customType

string

Si la dirección de correo electrónico type es custom, esta propiedad contiene el valor personalizado y se debe establecer.

emails[].primary

boolean

Indica si este es el correo electrónico principal del usuario. Solo se puede marcar una entrada como principal.

emails[].type

string

Es el tipo de cuenta de correo electrónico. Si se configura como custom, también se debe configurar customType.

Valores aceptables: custom, home, other, work.

externalIds

value (Value format)

Es la lista de IDs externos del usuario, como un ID de empleado o de red. El tamaño máximo de datos permitido es de 2 KB.

Campos

externalIds[].customType

string

Si el ID externo type es custom, esta propiedad contiene el valor personalizado y se debe establecer.

externalIds[].type

string

Es el tipo de ID externo. Si se configura como custom, también se debe configurar customType.

Valores aceptables: account, custom, customer, login_id, network y organization.

externalIds[].value

string

Es el valor del ID externo.

relations

value (Value format)

Es la lista de relaciones del usuario con otros usuarios. El tamaño máximo de datos permitido para este campo es de 2 KB. Para obtener más información, consulta Administra cuentas de usuario.

Campos

relations[].customType

string

Si la relación type es custom, esta propiedad contiene el valor personalizado y debe establecerse.

relations[].type

string

Es el tipo de relación. Si se establece en custom, también se debe establecer customType.

Valores aceptables:
  • admin_assistant
  • assistant
  • brother
  • child
  • custom
  • domestic_partner
  • dotted_line_manager
  • exec_assistant
  • father
  • friend
  • manager
  • mother
  • parent
  • partner
  • referred_by
  • relative
  • sister
  • spouse

relations[].value

string

Es la dirección de correo electrónico de la persona con la que se relaciona el usuario.

aliases[]

string

Solo salida. Es la lista de las direcciones de correo electrónico de alias del usuario.

isMailboxSetup

boolean

Solo salida. Indica si se creó el buzón de Google del usuario. Esta propiedad solo se aplica si al usuario se le asignó una licencia de Gmail.

customerId

string

Solo salida. Es el ID de cliente para recuperar todos los usuarios de la cuenta.
Puedes usar el alias my_customer para representar el customerId de tu cuenta.
Como administrador de revendedor, puedes usar el customerId de la cuenta de cliente revendida. Para obtener un customerId, usa el dominio principal de la cuenta en el parámetro domain de una solicitud de users.list.

addresses

value (Value format)

Es la lista de direcciones del usuario. El tamaño máximo de datos permitido es de 10 KB.

Campos

addresses[].country

string

País.

addresses[].countryCode

string

El código del país Utiliza el estándar ISO 3166-1.

addresses[].customType

string

Si la dirección type es custom, esta propiedad contiene el valor personalizado y se debe establecer.

addresses[].extendedAddress

string

Para direcciones extendidas, como una dirección que incluye una subregión.

addresses[].formatted

string

Es una dirección postal completa y no estructurada. No se sincroniza con los campos de dirección estructurada. Incluye los siguientes atributos: dirección, apartado postal, ciudad, estado o provincia, código postal, país o región.

addresses[].locality

string

La ciudad o el pueblo de la dirección

addresses[].poBox

string

El apartado postal, si está presente.

addresses[].postalCode

string

El código postal, si corresponde.

addresses[].primary

boolean

Indica si esta es la dirección principal del usuario. La lista de direcciones solo puede contener una dirección principal.

addresses[].region

string

Es la abreviatura de la provincia o el estado.

addresses[].sourceIsStructured

boolean

Indica si la dirección proporcionada por el usuario se formateó. Por el momento, no se admiten las direcciones con formato.

addresses[].streetAddress

string

La dirección, como 1600 Amphitheatre Parkway. Se ignoran los espacios en blanco dentro de la cadena, pero los saltos de línea son importantes.

addresses[].type

string

Es el tipo de dirección. Si se configura como custom, también se debe configurar customType.

Valores aceptables: custom, home, other, work.

organizations

value (Value format)

Es la lista de organizaciones a las que pertenece el usuario. El tamaño máximo de datos permitido es de 10 KB.

Campos

organizations[].costCenter

string

Es el centro de costos de la organización del usuario.

organizations[].customType

string

Si el valor del tipo es personalizado, esta propiedad contiene el tipo personalizado.

organizations[].department

string

Especifica el departamento dentro de la organización, como sales o engineering.

organizations[].description

string

Es la descripción de la organización.

organizations[].domain

string

Es el dominio al que pertenece la organización.

organizations[].fullTimeEquivalent

integer

Es el equivalente de tiempo completo en milésimas de porcentaje dentro de la organización (100,000 = 100%).

organizations[].location

string

Es la ubicación física de la organización. No es necesario que sea una dirección completa.

organizations[].name

string

Es el nombre de la organización.

organizations[].primary

boolean

Indica si esta es la organización principal del usuario. Un usuario solo puede tener una organización principal.

organizations[].symbol

string

Símbolo de cadena de texto de la organización. Por ejemplo, el símbolo de texto de Google es GOOG.

organizations[].title

string

Título del usuario dentro de la organización. Por ejemplo, member o engineer.

organizations[].type

string

Es el tipo de organización.

Valores aceptables: domain_only, school, unknown, work.

lastLoginTime

string

Solo salida. Es la última vez que el usuario accedió a su cuenta. El valor está en formato de fecha y hora ISO 8601. La hora es la fecha completa más horas, minutos y segundos en el formato YYYY-MM-DDThh:mm:ssTZD. Por ejemplo, 2010-04-05T17:30:04+01:00.

phones

value (Value format)

Es una lista de los números de teléfono del usuario. El tamaño máximo de datos permitido es de 1 KB.

Campos

phones[].customType

string

Si el número de teléfono type es custom, esta propiedad contiene el valor personalizado y se debe establecer.

phones[].primary

boolean

Si es true, este es el número de teléfono principal del usuario. Un usuario solo puede tener un número de teléfono principal.

phones[].type

string

Es el tipo de número de teléfono. Si se configura como custom, también se debe configurar customType.

Valores aceptables: assistant, callback, car, company_main, custom, grand_central, home, home_fax, isdn, main, mobile, other, other_fax, pager, radio, telex, tty_tdd, work, work_fax, work_mobile, work_pager.

phones[].value

string

Es un número de teléfono legible. Puede tener cualquier formato de número de teléfono.

suspensionReason

string

Solo salida. Es el motivo por el que se suspende una cuenta de usuario, ya sea por el administrador o por Google, en el momento de la suspensión. La propiedad solo se muestra si la propiedad suspended es true.

thumbnailPhotoUrl

string

Solo salida. Es la URL de la foto de perfil del usuario. Es posible que la URL sea temporal o privada.

languages

value (Value format)

Es la lista de idiomas del usuario. El tamaño máximo de datos permitido es de 1 KB.

Campos

languages[].customLanguage

string

Otro idioma. El usuario puede proporcionar su propio nombre de idioma si no hay un código de idioma ISO 639 correspondiente. Si se establece este parámetro, no se puede establecer languageCode.

languages[].languageCode

string

Representación de cadena ISO 639 de un idioma. Consulta Códigos de idioma para obtener la lista de códigos admitidos. La API aceptará códigos de idioma válidos que no estén incluidos en el conjunto admitido, pero es posible que esto genere un comportamiento inesperado. Los valores no válidos provocan SchemaException. Si se establece este parámetro, no se puede establecer customLanguage.

languages[].preference

string

Opcional. Si está presente, controla si el languageCode especificado es el idioma preferido del usuario. Si se establece customLanguage, no se puede establecer este parámetro. Los valores permitidos son preferred y not_preferred.

posixAccounts

value (Value format)

Es la lista de información de la cuenta POSIX del usuario.

Campos

posixAccounts[].accountId

string

Es el identificador de un campo de cuenta de POSIX.

posixAccounts[].gecos

string

GECOS (información del usuario) para esta cuenta.

posixAccounts[].gid

unsigned long

Es el ID de grupo predeterminado.

posixAccounts[].homeDirectory

string

Es la ruta de acceso al directorio principal de esta cuenta.

posixAccounts[].operatingSystemType

string

Es el tipo de sistema operativo para esta cuenta.

Valores aceptables: linux, unspecified, windows.

posixAccounts[].primary

boolean

Indica si esta es la cuenta principal del usuario dentro de SystemId.

posixAccounts[].shell

string

Es la ruta de acceso al shell de acceso para esta cuenta.

posixAccounts[].systemId

string

Es el identificador del sistema para el que se aplican el nombre de usuario o el Uid de la cuenta.

posixAccounts[].uid

unsigned long

Es el ID de usuario compatible con POSIX.

posixAccounts[].username

string

Es el nombre de usuario de la cuenta.

creationTime

string

Solo salida. Es la fecha y hora en que se creó la cuenta del usuario. El valor está en formato de fecha y hora ISO 8601. La hora es la fecha completa más horas, minutos y segundos en el formato YYYY-MM-DDThh:mm:ssTZD. Por ejemplo, 2010-04-05T17:30:04+01:00.

nonEditableAliases[]

string

Solo salida. Es la lista de direcciones de correo electrónico de alias no editables del usuario. Por lo general, se encuentran fuera del dominio o subdominio principal de la cuenta.

sshPublicKeys

value (Value format)

Es una lista de claves públicas SSH.

Campos

sshPublicKeys[].expirationTimeUsec

long

Es una hora de vencimiento en microsegundos desde el ciclo de entrenamiento.

sshPublicKeys[].fingerprint

string

Es una huella digital SHA-256 de la clave pública de SSH. (solo lectura)

sshPublicKeys[].key

string

Una clave pública SSH

notes

value (Value format)

Notas para el usuario como un objeto anidado.

Campos

notes.contentType

string

Tipo de contenido de la nota, ya sea texto sin formato o HTML. El valor predeterminado es texto sin formato.

Valores aceptables: text_plain, text_html.

notes.value

string

Contenido de las notas

websites

value (Value format)

Es la lista de sitios web del usuario.

Campos

websites[].customType

string

Si el sitio web type es custom, esta propiedad contiene el valor personalizado y se debe establecer.

websites[].primary

boolean

Si es true, este es el sitio web principal del usuario.

websites[].type

string

Es el tipo o propósito del sitio web. Por ejemplo, un sitio web podría etiquetarse como home o blog. Como alternativa, una entrada puede tener un tipo custom. Si se configura como custom, también se debe configurar customType.

Valores aceptables: app_install_page, blog, custom, ftp, home, home_page, other, profile, reservations, resume, work.

websites[].value

string

Es la URL del sitio web.

locations

value (Value format)

Es la lista de ubicaciones del usuario. El tamaño máximo de datos permitido es de 10 KB.

Campos

locations[].area

string

Ubicación textual. Esto es más útil para fines de visualización, ya que describe la ubicación de forma concisa. Por ejemplo, Mountain View, CA o Near Seattle.

locations[].buildingId

string

Es el identificador de la compilación.

locations[].customType

string

Si la ubicación type es custom, esta propiedad contiene el valor personalizado y se debe establecer.

locations[].deskCode

string

Es el código textual más específico de la ubicación de un escritorio individual.

locations[].floorName

string

Nombre o número de piso

locations[].floorSection

string

Sección del piso. Ubicación más específica dentro del piso. Por ejemplo, si un piso se divide en las secciones A, B y C, este campo identificaría uno de esos valores.

locations[].type

string

Es el tipo de ubicación. Si se configura como custom, también se debe configurar customType.

Valores aceptables: custom, default, desk.

includeInGlobalAddressList

boolean

Indica si el perfil del usuario es visible en la lista global de direcciones de Google Workspace cuando la función de uso compartido de contactos está habilitada para el dominio. Para obtener más información sobre cómo excluir perfiles de usuario, consulta el Centro de ayuda para administradores.

keywords

value (Value format)

Es la lista de palabras clave del usuario. El tamaño máximo de datos permitido es de 1 KB.

Campos

keywords[].customType

string

Si la palabra clave type es custom, esta propiedad contiene el valor personalizado y se debe establecer.

keywords[].type

string

Cada entrada puede tener un tipo que indique el tipo estándar de esa entrada.

Por ejemplo, la palabra clave podría ser del tipo occupation o outlook. Además del tipo estándar, una entrada puede tener un tipo custom y se le puede asignar cualquier nombre. Si se configura como custom, también se debe configurar customType.

Valores aceptables: custom, mission, occupation, outlook.

keywords[].value

string

Es la palabra clave.

deletionTime

string

Solo salida. Fecha y hora en que se borró la cuenta del usuario. El valor está en formato de fecha y hora ISO 8601. La hora es la fecha completa más horas, minutos y segundos en el formato YYYY-MM-DDThh:mm:ssTZD. Por ejemplo 2010-04-05T17:30:04+01:00.

gender

value (Value format)

Es un objeto anidado que contiene el género del usuario. El tamaño máximo de datos permitido para este campo es de 1 KB.

Campos

gender.addressMeAs

string

Es una cadena legible por humanos que contiene la forma correcta en que las personas se refieren al propietario del perfil, por ejemplo, "él", "ella" o "elle".

gender.customGender

string

Nombre de un género personalizado.

gender.type

string

Es el tipo de género.

Valores aceptables:
  • female
  • male
  • other
  • unknown

thumbnailPhotoEtag

string

Solo salida. ETag de la foto del usuario (solo lectura)

ims

value (Value format)

Cuentas de mensajería instantánea (MI) del usuario. Una cuenta de usuario puede tener varias propiedades de ims, pero solo una de estas propiedades de ims puede ser el contacto principal de mensajería instantánea.

Campos

ims[].customProtocol

string

Si el valor del protocolo es custom_protocol, esta propiedad contiene la cadena del protocolo personalizado.

ims[].customType

string

Si el IM type es custom, esta propiedad contiene el valor personalizado y se debe establecer.

ims[].im

string

Es el ID de la red de mensajería instantánea del usuario.

ims[].primary

boolean

Indica si este es el MI principal del usuario. Solo una entrada de la lista de MI puede tener el valor verdadero.

ims[].protocol

string

Un protocolo de mensajería instantánea identifica la red de mensajería instantánea. El valor puede ser una red personalizada o la red estándar.

Valores aceptables:
  • aim: Protocolo de AOL Instant Messenger
  • custom_protocol: Un protocolo de red de MI personalizado
  • gtalk: Protocolo de Google Talk
  • icq: Protocolo ICQ
  • jabber: Protocolo Jabber
  • msn: Protocolo de MSN Messenger
  • net_meeting: Protocolo de Net Meeting
  • qq: Protocolo de QQ
  • skype: Protocolo de Skype
  • yahoo: Protocolo de Yahoo Messenger

ims[].type

string

Es el tipo de cuenta de mensajería instantánea. Si se configura como custom, también se debe configurar customType.

Valores aceptables: custom, home, other, work.

customSchemas

value (Value format)

Son los campos personalizados del usuario. La clave es schemaName y sus valores son 'fieldName': 'field_value'.

  • customSchemas.(key) es un objeto anidado.
  • customSchemas.(key).(key) puede ser cualquier valor.
isEnrolledIn2Sv

boolean

Solo salida. Está inscrito en la verificación en 2 pasos (solo lectura)

isEnforcedIn2Sv

boolean

Solo salida. Indica si se aplica la verificación en 2 pasos (solo lectura).

archived

boolean

Indica si el usuario está archivado.

orgUnitPath

string

Es la ruta de acceso completa de la organización principal asociada con el usuario. Si la organización principal es de nivel superior, se representa con una barra (/).

recoveryEmail

string

Es el correo electrónico de recuperación del usuario.

recoveryPhone

string

Es el teléfono de recuperación del usuario. El número de teléfono debe tener el formato E.164 y comenzar con el signo más (+). Por ejemplo: +16506661212.

isGuestUser

boolean

Inmutable. Indica si el usuario es invitado.

guestAccountInfo

object (GuestAccountInfo)

Inmutable. Campos de metadatos adicionales relacionados con el huésped

UserName

Representación JSON
{
  "fullName": string,
  "familyName": string,
  "givenName": string,
  "displayName": string
}
Campos
fullName

string

Nombre completo del usuario, formado por la concatenación de los valores del nombre y el apellido.

familyName

string

Apellido del usuario Se requiere cuando se crea una cuenta de usuario.

givenName

string

El nombre del usuario. Se requiere cuando se crea una cuenta de usuario.

displayName

string

Nombre visible del usuario. Límite: 256 caracteres.

GuestAccountInfo

Es información de la cuenta específica para los usuarios invitados.

Representación JSON
{
  "primaryGuestEmail": string
}
Campos
primaryGuestEmail

string

Inmutable. Es el correo electrónico externo del invitado.

Métodos

createGuest

Crea un usuario invitado con acceso a un subconjunto de funciones de Workspace.

delete

Borra un usuario.

get

Recupera un usuario.

insert

Crea un usuario.

list

Recupera una lista paginada de los usuarios borrados o de todos los usuarios de un dominio.

makeAdmin

Convierte a un usuario en administrador avanzado.

patch

Actualiza un usuario con la semántica de parche.

signOut

Cierra la sesión de un usuario en todas las sesiones web y de dispositivos, y restablece sus cookies de acceso.

undelete

Deshace el borrado de un usuario.

update

Actualiza un usuario.

watch

Observa los cambios en la lista de usuarios.