REST Resource: users

Ressource : Utilisateur

L'API Directory vous permet de créer et de gérer les utilisateurs, les alias utilisateur et les photos de profil Google de votre compte. Pour en savoir plus sur les tâches courantes, consultez le Guide du développeur de comptes utilisateur et le Guide du développeur relatif aux alias d'utilisateur.

Représentation 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
}
Champs
id

string

Identifiant unique de l'utilisateur. Un id utilisateur peut être utilisé comme userKey d'un URI de requête utilisateur.

primaryEmail

string

Adresse e-mail principale de l'utilisateur. Cette propriété est obligatoire dans une requête de création de compte utilisateur. L'primaryEmail doit être unique et ne pas être un alias d'un autre utilisateur.

password

value (Value format)

Stocke le mot de passe du compte utilisateur. La valeur du mot de passe de l'utilisateur est requise lors de la création d'un compte utilisateur. Il est facultatif lors de la mise à jour d'un utilisateur et ne doit être fourni que si l'utilisateur modifie le mot de passe de son compte. La valeur du mot de passe n'est jamais renvoyée dans le corps de la réponse de l'API.

Un mot de passe peut contenir n'importe quelle combinaison de caractères ASCII et doit comporter entre 8 et 100 caractères.

Nous vous recommandons d'envoyer le paramètre password sous la forme d'une valeur de hachage encodée en hexadécimal et de définir hashFunction en conséquence. Si hashFunction est spécifié, le mot de passe doit être une clé de hachage valide.

hashFunction

string

Stocke le format de hachage de la propriété password. Les valeurs hashFunction suivantes sont autorisées:

  • MD5 : accepte les valeurs encodées en hexadécimal simples.
  • SHA-1 : accepte les valeurs encodées en hexadécimal simples.
  • crypt : conforme à la bibliothèque de cryptographie C. Compatible avec les algorithmes de hachage DES, MD5 (préfixe de hachage $1$), SHA-256 (préfixe de hachage $5$) et SHA-512 (préfixe de hachage $6$).

Si des arrondis sont spécifiés dans le préfixe, ils ne doivent pas dépasser 10 000.

isAdmin

boolean

Uniquement en sortie. Indique un utilisateur disposant de droits de super-administrateur. La propriété isAdmin ne peut être modifiée que dans l'opération Désigner un utilisateur comme administrateur ( méthode makeAdmin). Si elles sont modifiées dans les méthodes insert ou update de l'utilisateur, les modifications sont ignorées par le service API.

isDelegatedAdmin

boolean

Uniquement en sortie. Indique si l'utilisateur est un administrateur délégué.
Les administrateurs délégués sont compatibles avec l'API, mais ne peuvent pas créer ou restaurer des utilisateurs, ni désigner des utilisateurs comme administrateurs. Ces requêtes sont ignorées par le service d'API.
Les rôles et les droits des administrateurs sont attribués via la console d'administration.

agreedToTerms

boolean

Uniquement en sortie. Cette propriété est true si l'utilisateur a effectué une première connexion et accepté les conditions d'utilisation.

suspended

boolean

Indique si l'utilisateur est suspendu.

changePasswordAtNextLogin

boolean

Indique si l'utilisateur doit modifier son mot de passe lors de sa prochaine connexion. Ce paramètre ne s'applique pas lorsque l'utilisateur se connecte via un fournisseur d'identité tiers.

ipWhitelisted

boolean

Si la valeur est true, l'adresse IP de l'utilisateur est soumise à une configuration d'adresse IP allowlist obsolète.

name

object (UserName)

Contient le nom et le nom de famille de l'utilisateur, ainsi que la valeur fullName en lecture seule. Le nombre maximal de caractères dans les valeurs givenName et familyName est de 60. De plus, les valeurs de nom acceptent les caractères Unicode/UTF-8 et peuvent contenir des espaces, des lettres (a-z), des chiffres (0-9), des tirets (-), des barres obliques (/) et des points (.). Pour en savoir plus sur les règles d'utilisation des caractères, consultez le Centre d'aide pour les administrateurs. La taille maximale de données autorisée pour ce champ est de 1 ko.

kind

string

Uniquement en sortie. Type de ressource d'API. Pour les ressources "Utilisateurs", la valeur est admin#directory#user.

etag

string

Uniquement en sortie. ETag de la ressource.

emails

value (Value format)

Liste des adresses e-mail de l'utilisateur. La taille maximale autorisée pour les données est de 10 Ko.

Fields

emails[].address

string

Adresse e-mail de l'utilisateur. Sert également d'ID d'adresse e-mail. Cette valeur peut être l'adresse e-mail principale de l'utilisateur ou un alias.

emails[].customType

string

Si l'adresse e-mail type est custom, cette propriété contient la valeur personnalisée et doit être définie.

emails[].primary

boolean

Indique s'il s'agit de l'adresse e-mail principale de l'utilisateur. Vous ne pouvez marquer qu'une seule entrée comme principale.

emails[].type

string

Type de compte de messagerie. Si la valeur est custom, customType doit également être définie.

Valeurs acceptées: custom, home, other, work.

externalIds

value (Value format)

Liste des ID externes de l'utilisateur, tels qu'un ID d'employé ou de réseau. La taille maximale de données autorisée est de 2 ko.

Fields

externalIds[].customType

string

Si l'ID externe type est custom, cette propriété contient la valeur personnalisée et doit être définie.

externalIds[].type

string

Type d'ID externe. Si la valeur est custom, customType doit également être définie.

Valeurs acceptées: account, custom, customer, login_id, network, organization.

externalIds[].value

string

Valeur de l'ID externe.

relations

value (Value format)

Liste des relations de l'utilisateur avec d'autres utilisateurs. La taille maximale de données autorisée pour ce champ est de 2 Ko. Pour en savoir plus, consultez Gérer les comptes utilisateur.

Fields

relations[].customType

string

Si la relation type est custom, cette propriété contient la valeur personnalisée et doit être définie.

relations[].type

string

Type de relation. Si la valeur est custom, customType doit également être défini.

Valeurs acceptées:
  • 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

Adresse e-mail de la personne à laquelle l'utilisateur est lié.

aliases[]

string

Uniquement en sortie. Liste des adresses e-mail d'alias de l'utilisateur.

isMailboxSetup

boolean

Uniquement en sortie. Indique si la boîte de messagerie Google de l'utilisateur est créée. Cette propriété n'est applicable que si une licence Gmail a été attribuée à l'utilisateur.

customerId

string

Uniquement en sortie. ID client permettant de récupérer tous les utilisateurs du compte.
Vous pouvez utiliser l'alias my_customer pour représenter l'customerId de votre compte.
En tant qu'administrateur de revendeur, vous pouvez utiliser l'customerId du compte client revendu. Pour obtenir un customerId, utilisez le domaine principal du compte dans le paramètre domain d'une requête users.list.

addresses

value (Value format)

Liste des adresses de l'utilisateur. La taille maximale autorisée pour les données est de 10 Ko.

Fields

addresses[].country

string

Pays.

addresses[].countryCode

string

Le code pays. Utilise la norme ISO 3166-1.

addresses[].customType

string

Si l'adresse type est custom, cette propriété contient la valeur personnalisée et doit être définie.

addresses[].extendedAddress

string

Pour les adresses étendues, telles qu'une adresse incluant une sous-région.

addresses[].formatted

string

Adresse postale complète et non structurée. Il n'est pas synchronisé avec les champs d'adresse structurés. Inclut les attributs suivants: adresse postale, boîte postale, ville, État/province, code postal, pays/région.

addresses[].locality

string

Ville de l'adresse.

addresses[].poBox

string

La boîte postale, le cas échéant

addresses[].postalCode

string

Le code postal, le cas échéant.

addresses[].primary

boolean

S'il s'agit de l'adresse principale de l'utilisateur. La liste d'adresses ne peut contenir qu'une seule adresse principale.

addresses[].region

string

Abréviation de la province ou de l'État.

addresses[].sourceIsStructured

boolean

Indique si l'adresse fournie par l'utilisateur a été mise en forme. Les adresses formatées ne sont pas acceptées pour le moment.

addresses[].streetAddress

string

L'adresse postale, par exemple 1600 Amphitheatre Parkway. Les espaces blancs dans la chaîne sont ignorés. Toutefois, les sauts de ligne sont importants.

addresses[].type

string

Type d'adresse. Si la valeur est custom, customType doit également être définie.

Valeurs acceptées: custom, home, other, work.

organizations

value (Value format)

Liste des organisations auxquelles l'utilisateur appartient. La taille maximale autorisée des données est de 10 Ko.

Fields

organizations[].costCenter

string

Centre de coûts de l'organisation de l'utilisateur.

organizations[].customType

string

Si la valeur de type est "custom", cette propriété contient le type personnalisé.

organizations[].department

string

Spécifie le service au sein de l'organisation, par exemple sales ou engineering.

organizations[].description

string

Description de l'organisation.

organizations[].domain

string

Domaine auquel appartient l'organisation.

organizations[].fullTimeEquivalent

integer

Pourcentage millimétrique équivalent temps plein dans l'organisation (100 000 = 100%).

organizations[].location

string

Adresse physique de l'organisation. Il ne s'agit pas nécessairement d'une adresse complète.

organizations[].name

string

Nom de l'organisme.

organizations[].primary

boolean

Indique si il s'agit de l'organisation principale de l'utilisateur. Un utilisateur ne peut avoir qu'une seule organisation principale.

organizations[].symbol

string

Symbole de chaîne de texte de l'organisation. Par exemple, le symbole textuel de Google est GOOG.

organizations[].title

string

Titre de l'utilisateur dans l'organisation. Par exemple, member ou engineer.

organizations[].type

string

Type d'organisation.

Valeurs acceptées: domain_only, school, unknown et work.

lastLoginTime

string

Uniquement en sortie. Date et heure de la dernière connexion de l'utilisateur à son compte La valeur est au format de date et d'heure ISO 8601. L'heure correspond à la date complète suivie des heures, des minutes et des secondes, au format YYYY-MM-DDThh:mm:ssTZD. Par exemple, 2010-04-05T17:30:04+01:00.

phones

value (Value format)

Liste des numéros de téléphone de l'utilisateur. La taille maximale de données autorisée est de 1 Ko.

Fields

phones[].customType

string

Si le numéro de téléphone type est custom, cette propriété contient la valeur personnalisée et doit être définie.

phones[].primary

boolean

Si la valeur est true, il s'agit du numéro de téléphone principal de l'utilisateur. Un utilisateur ne peut avoir qu'un seul numéro de téléphone principal.

phones[].type

string

Type de numéro de téléphone. Si la valeur est custom, customType doit également être défini.

Valeurs acceptées: assistant, callback, car, company_main, custom, grand_central, home, home_fax, isdn, main, mobile, other, other_fax, pager, radio, telex, tty_tdd, work,
,
.work_faxwork_mobilework_pager

phones[].value

string

Numéro de téléphone intelligible. Il peut être au format de votre choix.

suspensionReason

string

Uniquement en sortie. Indique le motif de suspension d'un compte utilisateur par l'administrateur ou par Google au moment de la suspension. La propriété n'est renvoyée que si la propriété suspended est true.

thumbnailPhotoUrl

string

Uniquement en sortie. URL de la photo de profil de l'utilisateur. L'URL peut être temporaire ou privée.

languages

value (Value format)

Liste des langues de l'utilisateur. La taille maximale de données autorisée est de 1 Ko.

Fields

languages[].customLanguage

string

Autre langue L'utilisateur peut fournir son propre nom de langue s'il n'existe pas de code de langue ISO 639 correspondant. Si cette valeur est définie, languageCode ne peut pas être défini.

languages[].languageCode

string

Représentation sous forme de chaîne ISO 639 d'une langue. Pour obtenir la liste des codes acceptés, consultez Codes de langue. L'API accepte les codes de langue autres que ceux qui sont acceptés, mais peut entraîner un comportement inattendu. Les valeurs non valides génèrent SchemaException. Si cette valeur est définie, customLanguage ne peut pas être défini.

languages[].preference

string

Facultatif. Si cet élément est présent, détermine si le languageCode spécifié est la langue préférée de l'utilisateur. Si customLanguage est défini, ce paramètre ne peut pas être défini. Les valeurs autorisées sont preferred et not_preferred.

posixAccounts

value (Value format)

Liste des informations de compte POSIX de l'utilisateur.

Fields

posixAccounts[].accountId

string

Identifiant de champ de compte POSIX.

posixAccounts[].gecos

string

GECOS (informations utilisateur) de ce compte.

posixAccounts[].gid

unsigned long

L'ID du groupe par défaut.

posixAccounts[].homeDirectory

string

Chemin d'accès au répertoire d'accueil de ce compte.

posixAccounts[].operatingSystemType

string

Type de système d'exploitation de ce compte.

Valeurs acceptées: linux, unspecified, windows.

posixAccounts[].primary

boolean

S'il s'agit du compte principal de l'utilisateur dans SystemId.

posixAccounts[].shell

string

Chemin d'accès à l'interface système de connexion de ce compte.

posixAccounts[].systemId

string

Identifiant système auquel le nom d'utilisateur ou l'ID utilisateur du compte s'applique.

posixAccounts[].uid

unsigned long

ID utilisateur compatible avec POSIX.

posixAccounts[].username

string

Nom d'utilisateur du compte.

creationTime

string

Uniquement en sortie. Heure de création du compte de l'utilisateur. La valeur est au format de date et d'heure ISO 8601. L'heure correspond à la date complète, suivie des heures, minutes et secondes au format YYYY-MM-DDThh:mm:ssTZD. Par exemple, 2010-04-05T17:30:04+01:00.

nonEditableAliases[]

string

Uniquement en sortie. Liste des adresses e-mail d'alias non modifiables de l'utilisateur. Il s'agit généralement de domaines ou de sous-domaines externes au domaine principal du compte.

sshPublicKeys

value (Value format)

Liste de clés publiques SSH.

Fields

sshPublicKeys[].expirationTimeUsec

long

Délai d'expiration en microsecondes depuis l'époque.

sshPublicKeys[].fingerprint

string

Empreinte SHA-256 de la clé publique SSH. (Lecture seule)

sshPublicKeys[].key

string

Clé publique SSH.

notes

value (Value format)

Remarques pour l'utilisateur sous forme d'objet imbriqué.

Fields

notes.contentType

string

Type de contenu de la note, au format texte brut ou HTML. La valeur par défaut est "Texte brut".

Valeurs acceptées: text_plain, text_html.

notes.value

string

Contenu des notes.

websites

value (Value format)

Liste des sites Web de l'utilisateur.

Fields

websites[].customType

string

Si le type du site Web est custom, cette propriété contient la valeur personnalisée et doit être définie.

websites[].primary

boolean

Si la valeur est true, il s'agit du site Web principal de l'utilisateur.

websites[].type

string

Type ou objectif du site Web. Par exemple, un site Web peut être associé au libellé home ou blog. Une entrée peut également être de type custom. Si la valeur est custom, customType doit également être définie.

Valeurs acceptées: app_install_page, blog, custom, ftp, home, home_page, other, profile, reservations, resume, work.

websites[].value

string

URL du site Web.

locations

value (Value format)

Liste des lieux de l'utilisateur. La taille maximale autorisée des données est de 10 Ko.

Fields

locations[].area

string

Emplacement textuel. Il est très utile pour afficher une description concise de l'emplacement. Par exemple, Mountain View, CA ou Near Seattle.

locations[].buildingId

string

Identifiant du bâtiment.

locations[].customType

string

Si l'emplacement type est custom, cette propriété contient la valeur personnalisée et doit être définie.

locations[].deskCode

string

Code textuel le plus spécifique pour chaque bureau.

locations[].floorName

string

Nom/numéro de l'étage

locations[].floorSection

string

Section de l'étage. Emplacement plus précis au sein du niveau Par exemple, si un étage est divisé en sections A, B et C, ce champ identifie l'une de ces valeurs.

locations[].type

string

Type de lieu. Si la valeur est custom, customType doit également être définie.

Valeurs acceptées: custom, default, desk.

includeInGlobalAddressList

boolean

Indique si le profil de l'utilisateur est visible dans la liste d'adresses globale Google Workspace lorsque la fonctionnalité de partage de contacts est activée pour le domaine. Pour en savoir plus sur l'exclusion de profils utilisateur, consultez le Centre d'aide pour les administrateurs.

keywords

value (Value format)

Liste des mots clés de l'utilisateur. La taille maximale de données autorisée est de 1 Ko.

Fields

keywords[].customType

string

Si le mot clé type est custom, cette propriété contient la valeur personnalisée et doit être définie.

keywords[].type

string

Chaque entrée peut avoir un type qui indique le type standard de cette entrée.

Par exemple, le mot clé peut être de type occupation ou outlook. En plus du type standard, une entrée peut avoir un type custom et peut lui attribuer n'importe quel nom. Si la valeur est custom, customType doit également être définie.

Valeurs acceptées: custom, mission, occupation, outlook.

keywords[].value

string

Mot clé.

deletionTime

string

Uniquement en sortie. Heure à laquelle le compte de l'utilisateur a été supprimé. La valeur est au format de date et d'heure ISO 8601. L'heure correspond à la date complète, suivie des heures, minutes et secondes au format YYYY-MM-DDThh:mm:ssTZD. Par exemple : 2010-04-05T17:30:04+01:00

gender

value (Value format)

Objet imbriqué contenant le genre de l'utilisateur. La taille maximale de données autorisée pour ce champ est de 1 ko.

Fields

gender.addressMeAs

string

Chaîne lisible par l'humain contenant la façon appropriée de désigner le propriétaire du profil par des humains, par exemple "il/lui/son" ou "ils/elles/leur".

gender.customGender

string

Nom d'un genre personnalisé.

gender.type

string

Type de genre.

Valeurs acceptées:
  • female
  • male
  • other
  • unknown

thumbnailPhotoEtag

string

Uniquement en sortie. ETag de la photo de l'utilisateur (lecture seule)

ims

value (Value format)

Les comptes de messagerie instantanée (IM) de l'utilisateur. Un compte utilisateur peut avoir plusieurs propriétés ims, mais une seule d'entre elles peut être le contact de chat principal.ims

Fields

ims[].customProtocol

string

Si la valeur du protocole est custom_protocol, cette propriété contient la chaîne du protocole personnalisé.

ims[].customType

string

Si l'type IM est custom, cette propriété contient la valeur personnalisée et doit être définie.

ims[].im

string

Identifiant de réseau de messagerie instantanée de l'utilisateur.

ims[].primary

boolean

S'il s'agit de l'application de chat principale de l'utilisateur. Seule une seule entrée de la liste de chat peut avoir la valeur "true".

ims[].protocol

string

Un protocole de messagerie instantanée identifie le réseau de messagerie instantanée. La valeur peut être un réseau personnalisé ou le réseau standard.

Valeurs acceptées:
  • aim: protocole AOL Instant Messenger
  • custom_protocol: protocole réseau de chat personnalisé
  • gtalk: protocole Google Talk
  • icq: protocole ICQ
  • jabber: protocole Jabber
  • msn: protocole MSN Messenger
  • net_meeting: protocole NetMeeting
  • qq: protocole QQ
  • skype: protocole Skype
  • yahoo: protocole Yahoo Messenger

ims[].type

string

Type de compte de chat. Si la valeur est custom, customType doit également être définie.

Valeurs acceptées: custom, home, other, work.

customSchemas

value (Value format)

Champs personnalisés de l'utilisateur. La clé est un schemaName et ses valeurs sont 'fieldName': 'field_value'.

  • customSchemas.(key) est un objet imbriqué.
  • customSchemas.(key).(key) peut être n'importe quelle valeur.
isEnrolledIn2Sv

boolean

Uniquement en sortie. Est inscrit à la validation en deux étapes (lecture seule)

isEnforcedIn2Sv

boolean

Uniquement en sortie. La validation en deux étapes est-elle obligatoire ? (lecture seule)

archived

boolean

Indique si l'utilisateur est archivé.

orgUnitPath

string

Chemin d'accès complet de l'organisation parente associée à l'utilisateur. Si l'organisation parente est de niveau supérieur, elle est représentée par une barre oblique (/).

recoveryEmail

string

Adresse e-mail de récupération de l'utilisateur.

recoveryPhone

string

Numéro de téléphone de récupération de l'utilisateur. Le numéro de téléphone doit être au format E.164 et commencer par le signe plus (+). Exemple: +16506661212.

UserName

Représentation JSON
{
  "fullName": string,
  "familyName": string,
  "givenName": string,
  "displayName": string
}
Champs
fullName

string

Nom complet de l'utilisateur formé en concaténant les valeurs de prénom et de nom.

familyName

string

Nom de l'utilisateur. Obligatoire lors de la création d'un compte utilisateur.

givenName

string

Prénom de l'utilisateur. Obligatoire lors de la création d'un compte utilisateur.

displayName

string

Nom à afficher de l'utilisateur. Limite: 256 caractères.

Méthodes

delete

Supprime un utilisateur.

get

Récupère un utilisateur.

insert

Crée un utilisateur.

list

Récupère une liste paginée d'utilisateurs supprimés ou de tous les utilisateurs d'un domaine.

makeAdmin

Désigne un utilisateur comme super-administrateur.

patch

Met à jour un utilisateur à l'aide de la sémantique patch.

signOut

Déconnecte un utilisateur de toutes les sessions sur le Web et sur l'appareil, et réinitialise ses cookies de connexion.

undelete

Réactive un utilisateur supprimé.

update

Met à jour un utilisateur.

watch

Surveille les modifications apportées à la liste des utilisateurs.