Веб-ресурсы: метод list

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

Перечисляет ресурсы, к которым у пользователя есть доступ. Испытайте метод в действии или изучите пример.

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

Запрос

HTTP-запрос

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

Параметры

Название параметра Значение Описание
Параметры пути
accountId string Идентификатор аккаунта, для которого требуется получить веб-ресурсы. Вместо конкретного значения можно использовать атрибут ~all, который указывает на все доступные пользователю аккаунты.
Необязательные параметры запроса
max-results integer Максимальное количество веб-ресурсов, включаемых в ответ.
start-index integer Индекс первого извлекаемого объекта. Используется совместно с параметром max-results для разбиения результатов на страницы.

Авторизация

Для выполнения этого запроса требуется авторизация как минимум в одной из следующих областей доступа. Подробнее...

Область доступа
https://www.googleapis.com/auth/analytics
https://www.googleapis.com/auth/analytics.edit
https://www.googleapis.com/auth/analytics.readonly

Тело запроса

При работе с данным методом тело запроса не используется.

Ответ

В ответе возвращается один ресурс Webproperty для каждого запрошенного веб-ресурса Google Analytics.

{
  "kind": "analytics#webproperties",
  "username": string,
  "totalResults": integer,
  "startIndex": integer,
  "itemsPerPage": integer,
  "previousLink": string,
  "nextLink": string,
  "items": [
    management.webproperties Resource
  ]
}
Название свойства Значение Описание Заметки
kind string Тип коллекции. Значение:"analytics#webProperties".
username string Электронный адрес пользователя, прошедшего аутентификацию.
totalResults integer Общее число результатов запроса, не зависящее от числа результатов в ответе.
startIndex integer Начальный индекс ресурса. По умолчанию равен 1 или задается с помощью параметра запроса start-index.
itemsPerPage integer Максимальное количество ресурсов в ответе, независимо от фактически возвращаемого количества ресурсов. Задается с помощью параметра max-results в диапазоне от 1 до 1000 (значение по умолчанию).
items[] list Список веб-ресурсов.

Примеры

Примечание. Примеры кода для этого метода не охватывают все поддерживаемые языки программирования (их список опубликован на странице, посвященной клиентским библиотекам).

Java

Используется клиентская библиотека Java.

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

/**
 * Example #1:
 * Requests a list of all properties for the authorized user.
 */
try {
  Webproperties properties = analytics.management.
      webproperties.list("12345").execute();
} catch (GoogleJsonResponseException e) {
  System.err.println("There was a service error: "
      + e.getDetails().getCode() + " : "
      + e.getDetails().getMessage());
}

/**
 * Example #2:
 * Retrieves all properties for the user's account, using a
 * wildcard '~all' as the accountId.
 */
Webproperties properties = analytics.management.
    webproperties.list("~all").execute();

/**
 * Example #3:
 * The results of the list method are stored in the properties object.
 * The following code shows how to iterate through them.
 */
for (Webproperty property : properties.getItems()) {
  System.out.println("Account ID: " + property.getAccountId());
  System.out.println("Property ID: " + property.getId());
  System.out.println("Property Name: " + property.getName());
  System.out.println("Property Profile Count: " + property.getProfileCount());
  System.out.println("Property Industry Vertical: "
      + property.getIndustryVertical());
  System.out.println("Property Internal Id: "
      + property.getInternalWebPropertyId());
  System.out.println("Property Level: " + property.getLevel();
  if (property.getWebsiteUrl() != null) {
    System.out.println("Property URL: " + property.getWebsiteUrl());
  }
  System.out.println("Property Created: " + property.getCreated());
  System.out.println("Property Updated: " + property.getUpdated());
}

PHP

Используется клиентская библиотека PHP.

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

/**
 * Example #1:
 * Requests a list of all properties for the authorized user.
 */
try {
  $properties = $analytics->management_webproperties
      ->listManagementWebproperties('123456');

} 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:
 * Retrieves all properties for the user's account, using a
 * wildcard ~all as the accountId.
 */
$properties = $analytics->management_webproperties
    ->listManagementWebproperties('~all');

/**
 * Example #3:
 * The results of the list method are stored in the properties object.
 * The following code shows how to iterate through them.
 */
foreach ($properties->getItems() as $property) {

  $html = <<<HTML
<pre>
Account id    = {$property->getAccountId()}
Property id   = {$property->getId()}
Property name = {$property->getName()}
Property URL  = {$property->getWebsiteUrl()}
Created       = {$property->getCreated()}
Updated       = {$property->getUpdated()}
</pre>

HTML;
  print $html;
}

Python

Используется клиентская библиотека Python.

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

# Example #1:
# Requests a list of all properties for the authorized user.
try:
  properties = analytics.management().webproperties().list(
      accountId='12345').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:
# Retrieves all properties for the user's account, using a
# wildcard ~all as the accountId.
properties = service.management().webproperties().list(
    accountId='~all').execute()

# Example #3:
# The results of the list method are stored in the webproperties object.
# The following code shows how to iterate through them.
for property in properties.get('items', []):
  print 'Account ID         = %s' % property.get('accountId')
  print 'Property ID    = %s' % property.get('id')
  print 'Property Name  = %s' % property.get('name')
  print 'Property Profile Count = %s' % property.get('profileCount')
  print 'Property Industry Vertical = %s' % property.get('industryVertical')
  print 'Property Internal Id = %s' % property.get(
      'internalWebPropertyId')
  print 'Property Level = %s' % property.get('level')
  if property.get('websiteUrl'):
    print 'Property URL        = %s' % property.get('websiteUrl')
  print 'Created            = %s' % property.get('created')
  print 'Updated            = %s' % property.get('updated')

JavaScript

Используется клиентская библиотека JavaScript.

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

/*
 * Example 1:
 * Requests a list of all properties for the authorized user.
 */
function listProperties() {
  var request = gapi.client.analytics.management.webproperties.list({
    'accountId': '123456'
  });
  request.execute(printProperties);
}

/*
 * Example 2:
 * The results of the list method are passed as the results object.
 * The following code shows how to iterate through them.
 */
function printProperties(results) {
  if (results && !results.error) {
    var properties = results.items;
    for (var i = 0, property; property = properties[i]; i++) {
      console.log('Account Id: ' + property.accountId);
      console.log('Property Id: ' + property.id);
      console.log('Property Name: ' + property.name);
      console.log('Property Profile Count: ' + property.profileCount);
      console.log('Property Industry Vertical: ' + property.industryVertical);
      console.log('Property Internal Id: ' + property.internalWebPropertyId);
      console.log('Property Level: ' + property.level);
      if (property.websiteUrl) {
        console.log('Property URL: ' + property.websiteUrl);
      }

      console.log('Created: ' + property.created);
      console.log('Updated: ' + property.updated);
    }
  }
}

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

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