Сегменты: метод list

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

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

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

Запрос

HTTP-запрос

GET https://www.googleapis.com/analytics/v3/management/segments

Параметры

Название параметра Значение Описание
Необязательные параметры запроса
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

Тело запроса

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

Ответ

В ответе возвращается один ресурс Segment для каждого запрошенного сегмента.

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

Примеры

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

PHP

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

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

/**
 * Example #1:
 * Requests a list of all Segments for the authorized user.
 */
try {
  $segments = $analytics->management_segments->listManagementSegments();
} 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 segments object.
 * The following code shows how to iterate through them.
 */
foreach ($segments->getItems() as $segment) {
  $html .= <<<HTML
<pre>

Segment ID = {$segment->getId()}
Kind       = {$segment->getKind()}
Self Link  = {$segment->getSelfLink()}
Name       = {$segment->getName()}
Definition = {$segment->getDefinition()}
Created    = {$segment->getCreated()}
Updated    = {$segment->getUpdated()}

</pre>
HTML;
  print $html;
}

Python

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

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

# Example #1:
# Requests a list of segments to which the user has access.
try:
  segments = analytics.management().segments().list().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 segments object.
# The following code shows how to iterate through them.
for segment in segments.get('items', []):
  print 'Segment Id         = %s' % segment.get('id')
  print 'Segment kind       = %s' % segment.get('kind')
  print 'Segment segmentId  = %s' % segment.get('segmentId')
  print 'Segment Name       = %s' % segment.get('name')
  print 'Segment Definition = %s' % segment.get('definition')
  if segment.get('created'):
    print 'Created    = %s' % segment.get('created')
    print 'Updated    = %s' % segment.get('updated')
  print

JavaScript

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

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

/*
 * Example 1:
 * Requests a list of all Segments for the authorized user.
 */
function listSegments() {
  var request = gapi.client.analytics.management.segments.list();
  request.execute(printSegments);
}

/*
 * Example 2:
 * The results of the list method are passed as the results object.
 * The following code shows how to iterate through them.
 */
function printSegments(results) {
  if (results && !results.error) {
    var segments = results.items;
    for (var i = 0, segment; segment = segments[i]; i++) {
      console.log('Segment Id: ' + segment.id);
      console.log('Segment Kind: ' + segment.kind);
      console.log('Segment Name: ' + segment.name);
      console.log('Segment Definition: ' + segment.definition);

      // These fields are only set for custom segments and not default segments.
      if (segment.created) {
        console.log('Created: ' + segment.created);
        console.log('Updated: ' + segment.updated);
      }
    }
  }
}

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

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