Расширенное обслуживание людей

данные для пользователей Google в Apps Script.

Расширенная служба «Контакты» позволяет использовать API «Контакты» в Google Apps Script. Этот API позволяет скриптам создавать, считывать и обновлять контактные данные для авторизованного пользователя, а также считывать данные профиля для пользователей Google.

Это расширенная услуга, которую необходимо активировать перед использованием .

Ссылка

Подробную информацию об этой службе см. в справочной документации по API People. Как и все расширенные службы в Apps Script, расширенная служба People использует те же объекты, методы и параметры, что и общедоступный API. Дополнительную информацию см. в разделе «Как определяются сигнатуры методов» .

Чтобы сообщить о проблемах и получить другую поддержку, см. руководство по поддержке People v1 .

Пример кода

В приведенном ниже примере кода используется версия 1 API.

Получите информацию о подключениях пользователя.

Чтобы получить список людей из контактов пользователя , используйте следующий код:

/**
 * 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);
  }
}

Найдите человека, который будет отвечать за пользователя.

Чтобы получить профиль пользователя , необходимо запросить область действия https://www.googleapis.com/auth/userinfo.profile , следуя инструкциям по добавлению явных областей действия в файл манифеста appsscript.json . После добавления области действия вы можете использовать следующий код:

/**
 * 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);
  }
}

Получите у этого человека аккаунт Google.

Чтобы получить информацию о пользователе для любого аккаунта Google , используйте следующий код:

/**
 * 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);
  }
}