REST Resource: users

Recurso: Usuario

La API de Directory te permite crear y administrar los usuarios, los alias y las fotos de perfil de Google de los usuarios de tu cuenta. Para obtener más información sobre 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
}
Campos
id

string

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

primaryEmail

string

La dirección de correo electrónico principal del usuario. Se requiere esta propiedad 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 para la cuenta del 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 está actualizando la contraseña de su cuenta. El valor de la contraseña nunca se muestra 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.

Recomendamos enviar el parámetro password como un valor de hash codificado en hexadecimal y configurar hashFunction según corresponda. Si se especifica hashFunction, la contraseña debe ser una clave de 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 de 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 Convertir a un usuario en administrador ( método makeAdmin). Si se edita en los métodos insert o update del usuario, el servicio de 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 mediante la Consola del administrador.

agreedToTerms

boolean

Solo salida. Esta propiedad estará 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 verá obligado a cambiar la contraseña durante el siguiente acceso. Este parámetro de 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 el nombre de pila y el apellido del usuario, además del valor de solo lectura de fullName. 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 administrativo. 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)

Es la lista de direcciones de correo electrónico del usuario. El tamaño de datos máximo permitido es 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 establece en custom, también se debe establecer customType.

Valores aceptables: custom, home, other, work.

externalIds

value (Value format)

Es la lista de ID externos del usuario, como un ID de empleado o red. El tamaño de datos máximo permitido es 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 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 las 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 el usuario tiene asignada una licencia de Gmail.

customerId

string

Solo salida. Es el ID de cliente para recuperar todos los usuarios de la cuenta.
Puede usar el alias my_customer para representar el customerId de su cuenta.
Como administrador de distribuidor, puede 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 las direcciones del usuario. El tamaño de datos máximo permitido es 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 acción no está sincronizada con los campos de direcciones estructuradas. Incluye los siguientes atributos: dirección, apartado postal, ciudad, estado o provincia, código postal y país o región.

addresses[].locality

string

Es la ciudad o el pueblo 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 puede contener solo una dirección principal.

addresses[].region

string

La provincia o el estado abreviado.

addresses[].sourceIsStructured

boolean

Indica si se le dio formato a la dirección que proporcionó el usuario. Actualmente, 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 string. 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 10 KB.

Campos

organizations[].costCenter

string

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

organizations[].customType

string

Si el valor de 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

El dominio al que pertenece la organización.

organizations[].fullTimeEquivalent

integer

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

organizations[].title

string

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 su cuenta. El valor está en formato de fecha y hora ISO 8601. La hora es la fecha completa más las horas, los minutos y los segundos en el formato YYYY-MM-DDThh:mm:ssTZD. Por ejemplo, 2010-04-05T17:30:04+01:00.

phones

value (Value format)

Una lista de los números de teléfono del usuario. El tamaño de datos máximo permitido es 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. Los usuarios solo pueden tener un número de teléfono principal.

phones[].type

string

Indica el tipo de número de teléfono. Si se configura en custom, también se debe establecer customType.

Los valores aceptables son assistant, callback, car, company_main, custom, grand_central, home, home_fax, isdn, main, mobile, other, other_fax, pager, radio, telex, tty_tdd, work y work_fax.work_mobilework_pager

phones[].value

string

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

suspensionReason

string

Solo salida. Indica el motivo por el que el administrador o Google suspendió una cuenta de usuario en el 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. La URL puede ser temporal o privada.

languages

value (Value format)

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

Campos

languages[].customLanguage

string

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

languages[].languageCode

string

Representación de string ISO 639 de un idioma. Consulta la sección Códigos de idioma para ver la lista de códigos compatibles. La API aceptará los códigos de idioma válidos que no pertenezcan al conjunto admitido, pero pueden generar un comportamiento inesperado. Los valores no válidos causan SchemaException. Si se establece, no se podrá 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 POSIX.

posixAccounts[].gecos

string

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

posixAccounts[].gid

unsigned long

Es 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 del SystemId.

posixAccounts[].shell

string

Es la ruta de acceso a la shell de acceso de esta cuenta.

posixAccounts[].systemId

string

Es el identificador del sistema al que se aplica el nombre de usuario o UID de la cuenta.

posixAccounts[].uid

unsigned long

El ID de usuario compatible con POSIX.

posixAccounts[].username

string

El nombre de usuario de la cuenta.

creationTime

string

Solo salida. Indica la 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 las horas, los minutos y los segundos en el formato YYYY-MM-DDThh:mm:ssTZD. Por ejemplo, 2010-04-05T17:30:04+01:00.

nonEditableAliases[]

string

Solo salida. La lista de alias de direcciones de correo electrónico no editables del usuario. Suelen estar fuera del dominio 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

Tipo de contenido de la nota, ya sea texto sin formato o HTML. La opción predeterminada 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

El tipo o propósito del sitio web. Por ejemplo, un sitio web se puede etiquetar como home o blog. Como alternativa, una entrada puede tener un tipo custom. Si se configura en custom, también se debe establecer customType.

Los valores aceptables son app_install_page, blog, custom, ftp, home, home_page, other, profile, reservations, resume y work.

websites[].value

string

Indica 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 10 KB.

Campos

locations[].area

string

Ubicación textual. Esto es muy útil para describir la ubicación de forma concisa 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

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

locations[].floorName

string

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

Valores aceptables: custom, default, desk.

includeInGlobalAddressList

boolean

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

keywords

value (Value format)

Es la lista de palabras clave del usuario. El tamaño de datos máximo permitido es 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 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. Indica la hora en la 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 las horas, los minutos y los 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 que contiene la forma correcta de referirse al propietario del perfil (por ejemplo, "él/su (él/su)" o "él/su (él/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 Instant Messenger (IM) del usuario Una cuenta de usuario puede tener varias propiedades ims, pero solo una de estas propiedades ims puede ser el contacto principal de IM.

Campos

ims[].customProtocol

string

Si el valor del protocolo es custom_protocol, esta propiedad contiene la string 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 red de IM del usuario.

ims[].primary

boolean

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

ims[].protocol

string

Un protocolo de IM identifica la red de 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: Un protocolo de red de IM personalizado
  • gtalk: Protocolo de Google Talk
  • icq: Protocolo ICQ
  • jabber: Protocolo Jabber
  • msn: Es el protocolo de MSN Messenger.
  • net_meeting: Protocolo de Net Meeting
  • qq: Protocolo de QQ
  • skype: Protocolo de Skype
  • yahoo: Es el protocolo de Yahoo Messenger.

ims[].type

string

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

Campos personalizados del usuario El tamaño de datos máximo permitido es de 32 KB. La clave es un 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 aplicó la verificación en 2 pasos de manera forzosa (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 principal es de nivel superior, se representa como 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 comenzar con el signo más (+). Ejemplo: +16506661212.

Nombre de usuario

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

El apellido del usuario. Es obligatorio cuando se crea una cuenta de usuario.

givenName

string

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 usuarios borrados o de todos los usuarios de un dominio.

makeAdmin

Convierte a un usuario en administrador avanzado.

patch

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

signOut

Permite que el usuario salga de todas las sesiones web y del dispositivo, y se restablecen sus cookies de acceso.

undelete

Recupera un usuario borrado.

update

Actualiza a un usuario.

watch

Observa los cambios en la lista de usuarios.