Advanced People Service

Le service avancé People vous permet d'utiliser l'API People dans Apps Script. Cette API permet aux scripts de créer, de lire et de mettre à jour les données de contact de l'utilisateur connecté, ainsi que de lire les données de profil des utilisateurs Google.

Reference

Pour en savoir plus sur ce service, consultez la documentation de référence de l'API People. Comme tous les services avancés d'Apps Script, le service People People avancé utilise les mêmes objets, méthodes et paramètres que l'API publique. Pour en savoir plus, consultez la section Comment les signatures de méthode sont-elles déterminées.

Pour signaler des problèmes et obtenir de l'aide, consultez le guide d'assistance de People v1.

Exemple de code

L'exemple de code ci-dessous utilise la version 1 de l'API.

Obtenir les connexions de l'utilisateur

Pour obtenir la liste des personnes figurant dans les contacts de l'utilisateur, utilisez le code suivant:

Advanced/people.gs
/**
 * Gets a list of people in the user's contacts.
 * @see https://developers.google.com/people/api/rest/v1/people.connections/list
 */
function getConnections() {
  try {
    // Get the list of connections/contacts of user's profile
    const people = People.People.Connections.list('people/me', {
      personFields: 'names,emailAddresses'
    });
    // Print the connections/contacts
    console.log('Connections: %s', JSON.stringify(people, null, 2));
  } catch (err) {
    // TODO (developers) - Handle exception here
    console.log('Failed to get the connection with an error %s', err.message);
  }
}

Obtenir le nom de la personne de l'utilisateur

Pour obtenir le profil de l'utilisateur, vous devez demander le champ d'application https://www.googleapis.com/auth/userinfo.profile en suivant les instructions permettant d'ajouter des champs d'application explicites à votre fichier manifeste appsscript.json. Une fois le champ d'application ajouté, vous pouvez utiliser le code suivant:

Advanced/people.gs
/**
 * Gets the own user's profile.
 * @see https://developers.google.com/people/api/rest/v1/people/getBatchGet
 */
function getSelf() {
  try {
    // Get own user's profile using People.getBatchGet() method
    const people = People.People.getBatchGet({
      resourceNames: ['people/me'],
      personFields: 'names,emailAddresses'
      // Use other query parameter here if needed
    });
    console.log('Myself: %s', JSON.stringify(people, null, 2));
  } catch (err) {
    // TODO (developer) -Handle exception
    console.log('Failed to get own profile with an error %s', err.message);
  }
}

Obtenir un compte Google pour cette personne

Pour obtenir les informations sur la personne associées à n'importe quel compte Google, utilisez le code suivant:

Advanced/people.gs
/**
 * Gets the person information for any Google Account.
 * @param {string} accountId The account ID.
 * @see https://developers.google.com/people/api/rest/v1/people/get
 */
function getAccount(accountId) {
  try {
    // Get the Account details using account ID.
    const people = People.People.get('people/' + accountId, {
      personFields: 'names,emailAddresses'
    });
    // Print the profile details of Account.
    console.log('Public Profile: %s', JSON.stringify(people, null, 2));
  } catch (err) {
    // TODO (developer) - Handle exception
    console.log('Failed to get account with an error %s', err.message);
  }
}