配置文件用户关联: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);
    }
  }
}

试试看!

请使用下面的 API Explorer 针对实时数据调用此方法并查看响应。或者,您还可以尝试使用独立的 Explorer