Profile User Links: list

需要授權

列出特定資料檢視 (個人資料) 的個人資料使用者連結。 立即試用參閱範例

除了標準參數以外,這個方法也支援參數表格中列出的參數。

要求

HTTP 要求

GET https://www.googleapis.com/analytics/v3/management/accounts/accountId/webproperties/webPropertyId/profiles/profileId/entityUserLinks

參數

參數名稱 說明
路徑參數
accountId string 指定資料檢視 (設定檔) 所屬的帳戶 ID。
profileId string 用來擷取設定檔使用者連結的資料檢視 (設定檔) ID。可以是特定的設定檔 ID 或「~all」,代表使用者可存取的所有設定檔。
webPropertyId string 特定資料檢視 (設定檔) 所屬的網站資源 ID。可以是特定網站資源 ID 或「~all」,代表使用者可存取的所有網站資源。
選用查詢參數
max-results integer 此回應中包含的個人資料使用者連結數量上限。
start-index integer 要擷取的第一個設定檔使用者連結的索引。請將這個參數當做分頁機制,並搭配 max-results 參數。

授權

這項要求需要至少下列其中一個範圍的授權 (進一步瞭解驗證和授權)。

內容範圍
https://www.googleapis.com/auth/analytics.manage.users
https://www.googleapis.com/auth/analytics.manage.users.readonly

要求主體

請勿使用這個方法提供要求主體。

回應

如果成功的話,這個方法會傳回回應內文,其結構如下:

{
  "kind": "analytics#entityUserLinks",
  "totalResults": integer,
  "startIndex": integer,
  "itemsPerPage": integer,
  "previousLink": string,
  "nextLink": string,
  "items": [
    management.profileUserLinks Resource
  ]
}
屬性名稱 說明 附註
kind string 集合類型。
totalResults integer 查詢結果的總數,無論回應中的結果數量為何。
startIndex integer 項目的起始索引,預設為 1,或由 start-index 查詢參數指定。
itemsPerPage integer 回應可包含的項目數量上限,無論傳回的項目數量為何。這個函式的值範圍從 1 到 1000,且預設值為 1000,或者是由 max-results 查詢參數指定。
items[] list 實體使用者連結清單。

示例

注意:這個方法適用的程式語言眾多,我們只在此提供部分程式碼範例,完整的支援語言清單請參閱用戶端程式庫頁面

Java

使用 Java 用戶端程式庫

/*
 * Note: This code assumes you have an authorized Analytics service object.
 * See the User Permissions Developer Guide for details.
 */

/*
 * Example #1:
 * This request lists all View (Profile) User Links for the authorized user.
 */
try {
  EntityUserLinks profileLinks = analytics.management().
      profileUserLinks().list("123456", "UA-123456-1", "7654321").execute();
} catch (GoogleJsonResponseException e) {
  System.err.println("There was a service error: "
      + e.getDetails().getCode() + " : "
      + e.getDetails().getMessage());
}

/**
 * Example #2:
 * The results of the list method are stored in the profileLinks object.
 * The following code shows how to iterate through them.
 */
for (EntityUserLink profileUserLink : profileLinks.getItems()) {
  Entity entity = profileUserLink.getEntity();
  ProfileRef profileRef = entity.getProfileRef();
  UserRef userRef = profileUserLink.getUserRef();
  Permissions permissions = profileUserLink.getPermissions();

  System.out.println("Profile User Link Id: " + profileUserLink.getId());
  System.out.println("Profile User Link kind: " + userRef.getKind());
  System.out.println("User Email: " + userRef.getEmail());
  System.out.println("Permissions effective: " + permissions.getEffective());
  System.out.println("Permissions local: " + permissions.getLocal());
  System.out.println("Profile Id: " + profileRef.getId());
  System.out.println("Profile Kind: " + profileRef.getKind());
  System.out.println("Profile Name: " + profileRef.getName());
}

PHP

使用 PHP 用戶端程式庫

/**
* Note: This code assumes you have an authorized Analytics service object.
* See the User Permissions Developer Guide for details.
*/

/**
 * Example #1:
 * Requests a list of all view (profile) user links for the authorized user.
 */
try {
  $profileUserlinks = $analytics->management_profileUserLinks
      ->listManagementProfileUserLinks('123456', 'UA-123456-1', '756321');
} catch (apiServiceException $e) {
  print 'There was an Analytics API service error '
      . $e->getCode() . ':' . $e->getMessage();

} catch (apiException $e) {
  print 'There was a general API error '
      . $e->getCode() . ':' . $e->getMessage();
}

/**
 * Example #2:
 * The results of the list method are stored in the profileUserlinks object.
 * The following code shows how to iterate through them.
 */
foreach ($profileUserlinks->getItems() as $profileUserLink) {
  $entity = $profileUserLink->getEntity();
  $profileRef = $entity->getProfileRef();
  $userRef = $profileUserLink->getUserRef();
  $permissions = $profileUserLink->getPermissions();

  $html = <<<HTML
<pre>
Profile user link id   = {$profileUserLink->getId()}
Profile user link kind = {$profileUserLink->getKind()}

Profile id   = {$profileRef->getId()}
Profile name = {$profileRef->getName()}
Profile kind = {$profileRef->getKind()}

Permissions local     = {$permissions->getLocal()}
Permissions effective = {$permissions->getEffective()}

User id    = {$userRef->getId()}
User kind  = {$userRef->getKind()}
User email = {$userRef->getEmail()}
</pre>
HTML;
  print $html;
}

Python

使用 Python 用戶端程式庫

# Note: This code assumes you have an authorized Analytics service object.
# See the User Permissions Developer Guide for details.

# Example #1:
# Requests a list of profile-user links for a given view (profile).
try:
  profile_links = analytics.management().profileUserLinks().list(
      accountId='123456',
      webPropertyId='UA-123456-1',
      profileId='12345678'
  ).execute()

except TypeError, error:
  # Handle errors in constructing a query.
  print 'There was an error in constructing your query : %s' % error

except HttpError, error:
  # Handle API errors.
  print ('There was an API error : %s : %s' %
         (error.resp.status, error.resp.reason))


# Example #2:
# The results of the list method are stored in the profile_links object.
# The following code shows how to iterate through them.
for profileUserLink in profile_links.get('items', []):
  entity = profileUserLink.get('entity', {})
  profileRef = entity.get('profileRef', {})
  userRef = profileUserLink.get('userRef', {})
  permissions = profileUserLink.get('permissions', {})

  print 'Profile User Link Id   = %s' % profileUserLink.get('id')
  print 'Profile User Link kind = %s' % profileUserLink.get('kind')
  print 'User Email             = %s' % userRef.get('email')
  print 'Permissions effective  = %s' % permissions.get('effective')
  print 'Permissions local      = %s' % permissions.get('local')
  print 'Profile Id             = %s' % profileRef.get('id')
  print 'Profile kind           = %s' % profileRef.get('kind')
  print 'Profile Name           = %s\n' % profileRef.get('name')

JavaScript

使用 JavaScript 用戶端程式庫

/*
 * Note: This code assumes you have an authorized Analytics client object.
 * See the User Permissions Developer Guide for details.
 */

/*
 * Example 1:
 * Requests a list of all View (Profile) User links for the authorized user.
 */
function listProfileUserLinks() {
  var request = gapi.client.analytics.management.profileUserLinks.list({
      'accountId': '123456',
      'webPropertyId': 'UA-123456-1',
      'profileId': '7654321'
  });
  request.execute(printProfileUserLinks);
}

/*
 * Example 2:
 * The results of the list method are passed as the results object.
 * The following code shows how to iterate through them.
 */
function printProfileUserLinks(results) {
  if (results && !results.error) {
    var profileLinks = results.items;
    for (var i = 0, profileUserLink; profileUserLink = profileLinks[i]; i++) {
      var entity = profileUserLink.entity;
      var profileRef = entity.profileRef;
      var userRef = profileUserLink.userRef;
      var permissions = profileUserLink.permissions;

      console.log('Profile User Link Id: ' + profileUserLink.id);
      console.log('Profile User Link Kind: ' + profileUserLink.kind);
      console.log('User Email: ' + userRef.email);
      console.log('Permissions effective: ' + permissions.effective);
      console.log('Permissions local: ' + permissions.local);
      console.log('Profile Id: ' + profileRef.id);
      console.log('Profile Kind: ' + profileRef.kind);
      console.log('Profile Name: ' + profileRef.name);
    }
  }
}

試試看!

使用下方的 APIs Explorer,針對有效資料呼叫這個方法,然後查看回應。 或者,您也可以試試獨立的 Explorer