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 sobre cuentas de usuario y la Guía para desarrolladores sobre alias de usuarios.

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
}
Campos
id

string

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

primaryEmail

string

La dirección de correo electrónico principal del usuario. Esta propiedad es obligatoria en una solicitud para crear una cuenta de usuario. 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 este está actualizando la contraseña de su cuenta. El valor de la contraseña nunca se muestra en el cuerpo de 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 con codificación 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 con codificación hexadecimal.
  • SHA-1: Acepta valores simples con codificación hexadecimal.
  • crypt: Cumple con la biblioteca de criptografía de C. Admite los algoritmos de hash DES, MD5 (prefijo hash $1$), SHA-256 (prefijo hash $5$) y SHA-512 (prefijo hash $6$).

Si se especifican rondas como parte del prefijo, deben ser de 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 Convertir a un usuario en administrador ( método makeAdmin). Si se edita en los métodos insert o update de usuario, el servicio de la API ignora la edición.

isDelegatedAdmin

boolean

Solo salida. Indica si el usuario es un administrador delegado.
Los administradores delegados son compatibles con la API, pero no pueden crear ni recuperar usuarios, ni convertirlos en administradores. El servicio de la API ignora estas solicitudes.
Los roles y privilegios de los 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 el usuario se ve obligado a cambiar la contraseña durante el siguiente acceso. Esta configuración no se aplica cuando el usuario accede mediante un proveedor de identidad de terceros.

ipWhitelisted

boolean

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

name

object (UserName)

Contiene los nombres de usuario y de familia, y el valor fullName de solo lectura. La cantidad máxima de caracteres en los valores givenName y familyName es 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 diagonales (/) y puntos (.). Para obtener más información sobre las reglas de uso de caracteres, consulta el Centro de ayuda de administración. 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 Usuarios, el valor es admin#directory#user.

etag

string

Solo salida. ETag del recurso.

emails

value (Value format)

La lista de direcciones de correo electrónico del usuario. El tamaño de datos máximo 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 un alias o la dirección de correo electrónico principal del usuario.

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 establece en custom, también se debe establecer customType.

Valores aceptables: custom, home, other, work.

externalIds

value (Value format)

La lista de ID externos para el usuario, como un ID de empleado o de red. El tamaño de datos máximo 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

El tipo de ID externo. Si se establece en custom, también se debe establecer customType.

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

externalIds[].value

string

El valor del ID externo.

relations

value (Value format)

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

Campos

relations[].customType

string

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

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

La dirección de correo electrónico de la persona con la que está relacionado el usuario.

aliases[]

string

Solo salida. La lista de alias de direcciones de correo electrónico del usuario.

isMailboxSetup

boolean

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

customerId

string

Solo salida. 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 revendedor, puedes usar el customerId de la cuenta del cliente de reventa. 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 de datos máximo permitido es de 10 KB.

Campos

addresses[].country

string

País.

addresses[].countryCode

string

El código del país Usa 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

Una dirección postal completa y no estructurada. Esta opción no está sincronizada con los campos de dirección estructurados. Incluye los siguientes atributos: dirección, P.O. cuadro, ciudad, estado o provincia, código postal, país o región.

addresses[].locality

string

El pueblo o la ciudad de la dirección.

addresses[].poBox

string

El apartado postal, si está presente

addresses[].postalCode

string

Código postal, si corresponde

addresses[].primary

boolean

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 provincia o el estado abreviados.

addresses[].sourceIsStructured

boolean

Indica si la dirección proporcionada por el usuario tiene formato. Actualmente, no se admiten direcciones con formato.

addresses[].streetAddress

string

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

addresses[].type

string

El tipo de dirección. Si se establece en custom, también se debe establecer 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 de datos máximo permitido es de 10 KB.

Campos

organizations[].costCenter

string

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

Indica el dominio al que pertenece la organización.

organizations[].fullTimeEquivalent

integer

Milipor ciento equivalente a tiempo completo 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 completamente calificada.

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 la cadena de texto de la organización. Por ejemplo, el símbolo de texto para Google es GOOG.

organizations[].title

string

Es el cargo 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. La última vez que el usuario accedió a la cuenta del usuario. El valor está en el formato de fecha y hora ISO 8601. La hora es la fecha completa más horas, minutos y segundos en el formulario 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 de datos máximo 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

Indica el tipo de número de teléfono. Si se establece en custom, también se debe establecer 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 y work_pager.

phones[].value

string

Un número de teléfono legible por humanos. Pueden estar en cualquier formato de número de teléfono.

suspensionReason

string

Solo salida. Tiene el motivo por el que el administrador o Google suspendieron la cuenta de usuario al momento de la suspensión. La propiedad solo se muestra si la propiedad suspended es true.

thumbnailPhotoUrl

string

Solo salida. 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 de datos máximo 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, no se puede establecer languageCode.

languages[].languageCode

string

Representación de cadena ISO 639 de un idioma. Consulta la sección Códigos de idioma para ver la lista de códigos compatibles. La API aceptará códigos de idioma válidos fuera del conjunto admitido, pero pueden generar un comportamiento inesperado. Los valores no permitidos causan SchemaException. Si se establece, no se puede establecer customLanguage.

languages[].preference

string

Opcional. Si está presente, controla si el languageCode especificado es el idioma preferido del usuario. Si estableces customLanguage, no se podrá establecer. 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

Un identificador de campo de cuenta de POSIX.

posixAccounts[].gecos

string

Los datos de GECOS (información del usuario) de esta cuenta.

posixAccounts[].gid

unsigned long

Indica el ID de grupo predeterminado.

posixAccounts[].homeDirectory

string

La ruta de acceso al directorio principal de esta cuenta.

posixAccounts[].operatingSystemType

string

Indica el tipo de sistema operativo de esta cuenta.

Valores aceptables: linux, unspecified, windows.

posixAccounts[].primary

boolean

Si esta es la cuenta principal del usuario dentro de SystemId.

posixAccounts[].shell

string

La ruta a la shell de acceso de esta cuenta.

posixAccounts[].systemId

string

Es el identificador del sistema a la cuenta a la que se aplican el nombre de usuario o UID.

posixAccounts[].uid

unsigned long

El ID de usuario que cumple con POSIX.

posixAccounts[].username

string

Indica el nombre de usuario de la cuenta.

creationTime

string

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

nonEditableAliases[]

string

Solo salida. La lista de las direcciones de correo electrónico de alias no editables del usuario. Por lo general, están fuera del dominio principal o subdominio principal de la cuenta.

sshPublicKeys

value (Value format)

Una lista de claves públicas SSH.

Campos

sshPublicKeys[].expirationTimeUsec

long

Un tiempo de vencimiento en microsegundos desde el ciclo de entrenamiento.

sshPublicKeys[].fingerprint

string

Una huella digital SHA-256 de la clave pública 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

Es el 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 los 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

Indica 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 establece en custom, también se debe establecer customType.

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

websites[].value

string

Es la URL del sitio web.

locations

value (Value format)

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

Campos

locations[].area

string

Ubicación del texto. Esto es muy útil para describir la ubicación de forma concisa y con fines de visualización. Por ejemplo, Mountain View, CA o Near Seattle.

locations[].buildingId

string

Es el identificador del edificio.

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 individual de un escritorio.

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 secciones A, B y C, este campo identificaría uno de esos valores.

locations[].type

string

El tipo de ubicación. Si se establece en custom, también se debe establecer customType.

Valores aceptables: custom, default, desk.

includeInGlobalAddressList

boolean

Indica si el perfil del usuario es visible en la lista de direcciones globales 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 de administración.

keywords

value (Value format)

Es la lista de palabras clave del usuario. El tamaño de datos máximo 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 puede ser del tipo occupation o outlook. Además del tipo estándar, una entrada puede tener un tipo custom y puede asignarle cualquier nombre. Si se establece en custom, también se debe establecer customType.

Valores aceptables: custom, mission, occupation, outlook.

keywords[].value

string

Palabra clave.

deletionTime

string

Solo salida. La hora en que se borró la cuenta del usuario. El valor está en el formato de fecha y hora ISO 8601. La hora es la fecha completa más horas, minutos y segundos en el formulario 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

Una cadena legible que contiene la manera adecuada de referirse al propietario del perfil, por ejemplo, “él” o “él” o "él/ellos/su".

gender.customGender

string

Es el nombre de un género personalizado.

gender.type

string

Indica 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)

Las cuentas de mensajería instantánea (IM) 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 IM.

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 type de IM es custom, esta propiedad contiene el valor personalizado y se debe establecer.

ims[].im

string

El ID de la red de IM del usuario.

ims[].primary

boolean

Si este es el IM principal del usuario. Solo una entrada de la lista de IM puede tener el valor verdadero.

ims[].protocol

string

Un protocolo IM identifica la red IM. El valor puede ser una red personalizada o la red estándar.

Valores aceptables:
  • aim: Protocolo de mensajería instantánea de AOL
  • custom_protocol: Es un protocolo de red de IM personalizado.
  • gtalk: Protocolo de Google Talk
  • icq: protocolo ICQ
  • jabber: Protocolo de Jabber
  • msn: Protocolo de MSN Messenger
  • net_meeting: Protocolo de reunión en red
  • qq: protocolo QQ
  • skype: Protocolo de Skype
  • yahoo: Protocolo de Yahoo Messenger

ims[].type

string

El tipo de cuenta de IM. Si se establece en custom, también se debe establecer customType.

Valores aceptables: custom, home, other, work.

customSchemas

value (Value format)

Son los campos personalizados del usuario. La clave es una 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. ¿Se aplica de manera forzosa la verificación en 2 pasos (solo lectura)?

archived

boolean

Indica si el usuario está archivado.

orgUnitPath

string

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

recoveryEmail

string

Es el correo de recuperación del usuario.

recoveryPhone

string

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

UserName

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

string

El nombre completo del usuario formado por la concatenación de los valores de nombre y apellido

familyName

string

Apellido del usuario. Es obligatorio cuando se crea una cuenta de usuario.

givenName

string

Es el nombre del usuario. Es obligatorio cuando se crea una cuenta de usuario.

displayName

string

El nombre visible del usuario. Límite: 256 caracteres.

Métodos

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 un administrador avanzado.

patch

Actualiza a un usuario mediante la semántica de parches.

signOut

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

undelete

Recupera un usuario borrado.

update

Actualiza un usuario.

watch

Observa los cambios en la lista de usuarios.