Gelişmiş Kişi Hizmeti

Gelişmiş Kişiler hizmeti, Apps Komut Dosyası'nda People API'yi kullanmanıza olanak tanır. Bu API, komut dosyalarının oturum açmış kullanıcının iletişim verilerini oluşturmasına, okumasına ve güncellemesine ve Google kullanıcılarının profil verilerini okumasına olanak tanır.

Referans

Bu hizmet hakkında ayrıntılı bilgi için People API'nin referans dokümanlarına bakın. Apps Komut Dosyası'ndaki tüm gelişmiş hizmetler gibi gelişmiş Kişiler hizmeti de herkese açık API ile aynı nesneleri, yöntemleri ve parametreleri kullanır. Daha fazla bilgi için Metod imzaları nasıl belirlenir? başlıklı makaleyi inceleyin.

Sorunları bildirmek ve başka destek almak için Kişiler v1 destek kılavuzuna göz atın.

Örnek kod

Aşağıdaki örnek kodda API'nin 1. sürümü kullanılmaktadır.

Kullanıcının bağlantılarını alma

Kullanıcının kişilerindeki kişilerin listesini almak için aşağıdaki kodu kullanın:

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

Kullanıcı için kişiyi alma

Kullanıcı profilini almak için appsscript.json manifest dosyanıza açık kapsam ekleme talimatlarını uygulayarak https://www.googleapis.com/auth/userinfo.profile kapsamını istemeniz gerekir. Kapsam eklendikten sonra aşağıdaki kodu kullanabilirsiniz:

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

Kullanıcının Google Hesabı'nı alma

Herhangi bir Google Hesabı'nın kullanıcı bilgilerini almak için aşağıdaki kodu kullanın:

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