Ссылки webProperty-user: метод list

Требуется авторизация

Этот метод выводит список пользовательских ссылок для указанного веб-ресурса. Испытайте его в действии или изучите готовый пример.

Помимо стандартных параметров, этот метод поддерживает параметры, перечисленные в таблице ниже.

Запрос

HTTP-запрос

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

Параметры

Название параметра Значение Описание
Параметры пути
accountId string Идентификатор аккаунта, которому принадлежит указанный веб-ресурс.
webPropertyId string Идентификатор веб-ресурса, для которого требуется извлечь пользовательские ссылки. Вместо конкретного значения можно использовать атрибут "~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.webpropertyUserLinks Resource
  ]
}
Название свойства Значение Описание Примечания
kind string Тип коллекции.
totalResults integer Общее число результатов запроса, не зависящее от числа результатов в ответе.
startIndex integer Индекс первой извлекаемой записи. По умолчанию равен 1 и может задаваться с помощью параметра запроса start-index.
itemsPerPage integer Максимальное число записей, включаемых в ответ независимо от числа фактически возвращаемых записей. Задается с помощью параметра max-results в диапазоне от 1 до 1000 (по умолчанию 1000).
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 Property User Links for the authorized user.
 */
try {
  EntityUserLinks propertyLinks = analytics.management().
      webPropertyUserLinks().list("123456", "UA-123456-1").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 propertyLinks object.
 * The following code shows how to iterate through them.
 */
for (EntityUserLink propertyUserLink : propertyLinks.getItems()) {
  Entity entity = propertyUserLink.getEntity();
  WebPropertyRef webPropertyRef = entity.getWebPropertyRef();
  UserRef userRef = propertyUserLink.getUserRef();
  Permissions permissions = propertyUserLink.getPermissions();

  System.out.println("Property User Link Id: " + propertyUserLink.getId());
  System.out.println("Property 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("Property Id: " + webPropertyRef.getId());
  System.out.println("Property Kind: " + webPropertyRef.getKind());
  System.out.println("Property Name: " + webPropertyRef.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 property user links for the authorized user.
 */
try {
  $propertyUserlinks = $analytics->management_webpropertyUserLinks
      ->listManagementwebpropertyUserLinks('123456', 'UA-123456-1');
} 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 propertyUserlinks object.
 * The following code shows how to iterate through them.
 */
foreach ($propertyUserlinks->getItems() as $propertyUserLink) {
  $entity = $propertyUserLink->getEntity();
  $propertyeRef = $entity->getWebPropertyRef();
  $userRef = $propertyUserLink->getUserRef();
  $permissions = $propertyUserLink->getPermissions();

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

Property id   = {$propertyeRef->getId()}
Property name = {$propertyeRef->getName()}
Property kind = {$propertyeRef->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 all property user links for the authorized user.
try:
  property_links = analytics.management().webpropertyUserLinks().list(
      accountId='123456',
      webPropertyId='UA-123456-1'
  ).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 property_links object.
# The following code shows how to iterate through them.
for propertyUserLink in property_links.get('items', []):
  entity = propertyUserLink.get('entity', {})
  propertyRef = entity.get('webPropertyRef', {})
  userRef = propertyUserLink.get('userRef', {})
  permissions = propertyUserLink.get('permissions', {})

  print 'Property User Link Id   = %s' % propertyUserLink.get('id')
  print 'Property User Link Kind = %s' % propertyUserLink.get('kind')
  print 'User Email              = %s' % userRef.get('email')
  print 'Permissions effective   = %s' % permissions.get('effective')
  print 'Permissions local       = %s' % permissions.get('local')
  print 'Property Id             = %s' % propertyRef.get('id')
  print 'Property kind           = %s' % propertyRef.get('kind')
  print 'Property Name           = %s\n' % propertyRef.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 Property User links for the authorized user.
 */
function listProfileUserLinks() {
  var request = gapi.client.analytics.management.webpropertyUserLinks.list({
      'accountId': '123456',
      'webPropertyId': 'UA-123456-1'
  });
  request.execute(printPropertyUserLinks);
}

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

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

Практическое занятие

Воспользуйтесь инструментом API Explorer ниже, чтобы применить этот метод к реальным данным и посмотреть, как он работает. Также можно воспользоваться автономным вариантом инструмента.