Требуется авторизация
Выводит список пользовательских источников данных, доступных пользователю. Испытайте его в действии или изучите готовый пример.
Помимо стандартных параметров, этот метод поддерживает параметры, перечисленные в таблице ниже.
Запрос
HTTP-запрос
GET https://www.googleapis.com/analytics/v3/management/accounts/accountId/webproperties/webPropertyId/customDataSources
Параметры
Название параметра | Значение | Описание |
---|---|---|
Параметры пути | ||
accountId |
string |
Идентификатор аккаунта, для которого требуется извлечь пользовательские источники данных. |
webPropertyId |
string |
Идентификатор веб-ресурса, для которого требуется извлечь пользовательские источники данных. |
Необязательные параметры запроса | ||
max-results |
integer |
Максимальное количество пользовательских источников данных, включаемых в ответ. |
start-index |
integer |
Индекс первого извлекаемого пользовательского источника данных, начиная с 1. Используется совместно с параметром max-results для разбиения результатов на страницы. |
Авторизация
Для выполнения этого запроса требуется авторизация как минимум в одной из следующих областей доступа. Подробнее...
Область доступа |
---|
https://www.googleapis.com/auth/analytics |
https://www.googleapis.com/auth/analytics.edit |
https://www.googleapis.com/auth/analytics.readonly |
Тело запроса
При работе с данным методом тело запроса не используется.
Ответ
В случае успеха метод возвращает тело ответа со следующей структурой:
{ "kind": "analytics#customDataSources", "username": string, "totalResults": integer, "startIndex": integer, "itemsPerPage": integer, "previousLink": string, "nextLink": string, "items": [ management.customDataSources Resource ] }
Название свойства | Значение | Описание | Заметки |
---|---|---|---|
kind |
string |
Тип коллекции. | |
username |
string |
Электронный адрес пользователя, прошедшего аутентификацию. | |
totalResults |
integer |
Общее число результатов запроса, не зависящее от числа результатов в ответе. | |
startIndex |
integer |
Начальный индекс ресурса. По умолчанию равен 1 или задается с помощью параметра запроса start-index. | |
itemsPerPage |
integer |
Максимальное количество ресурсов в ответе, независимо от фактически возвращаемого количества ресурсов. Задается с помощью параметра max-results в диапазоне от 1 до 1000 (значение по умолчанию). | |
previousLink |
string |
Ссылка на предыдущую страницу этой коллекции пользовательских источников данных. | |
nextLink |
string |
Ссылка на следующую страницу этой коллекции пользовательских источников данных. | |
items[] |
list |
Коллекция пользовательских источников данных. |
Примеры
Примечание. Примеры кода для этого метода не охватывают все поддерживаемые языки программирования (их список опубликован на странице, посвященной клиентским библиотекам).
Java
Используется клиентская библиотека Java.
/* * Note: this code assumes you have an authorized Analytics service object. * See the Data Import Developer Guide for details. */ /* * Example #1: * Requests a list of all customDataSources for the authorized user. */ try { CustomDataSources sources = analytics.management(). customDataSources().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 sources object. * The following code shows how to iterate through them. */ for (CustomDataSource source : sources.getItems()) { System.out.println("Account Id = " + source.getAccountId()); System.out.println("Property Id = " + source.getWebPropertyId()); System.out.println("Custom Data Source Id = " + source.getId()); System.out.println("Custom Data Source Kind = " + source.getKind()); System.out.println("Custom Data Source Type = " + source.getType()); System.out.println("Custom Data Source Name = " + source.getName()); System.out.println("Custom Data Source Description = " + source.getDescription()); System.out.println("Custom Data Source Upload Type = " + source.getUploadType()); System.out.println("\n"); }
PHP
Используется клиентская библиотека PHP.
/** * Note: this code assumes you have an authorized Analytics service object. * See the Data Import Developer Guide for details. */ /** * Example #1: * Requests a list of all data sets for the authorized user. */ try { $dataSets = $analytics->management_customDataSources ->listManagementCustomDataSources('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 dataSets object. * The following code shows how to iterate through them. */ foreach ($dataSets->getItems() as $dataSet) { $html = <<<HTML <pre> Account id = {$dataSet->getAccountId()} Property id = {$dataSet->getWebPropertyId()} Data set id = {$dataSet->getId()} Data set kind = {$dataSet->getKind()} Data set type = {$dataSet->getType()} Data set name = {$dataSet->getName()} Data set description = {$dataSet->getDescription()} Data set upload type = {$dataSet->getUploadType()} </pre> HTML; print $html; }
Python
Используется клиентская библиотека Python.
# Note: This code assumes you have an authorized Analytics service object. # See the Custom Data Source Developer Guide for details. # Example #1: # Requests a list of all customDataSources for the authorized user. try: custom_data_sources = analytics.management().customDataSources().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 custom_data_sources object. # The following code shows how to iterate through them. for custom_data_source in custom_data_sources.get('items', []): print 'Account ID = %s' % custom_data_source.get('accountId') print 'Property ID = %s' % custom_data_source.get('webPropertyId') print 'Custom Data Source ID = %s' % custom_data_source.get('id') print 'Custom Data Source Kind = %s' % custom_data_source.get('kind') print 'Custom Data Source Type = %s' % custom_data_source.get('type') print 'Custom Data Source Name = %s' % custom_data_source.get('name') print 'Custom Data Source Description = %s' % custom_data_source.get('description') print 'Custom Data Source uploadType = %s' % custom_data_source.get('uploadType') print 'Linked Views (Profiles):' for profile in custom_data_source.get('profilesLinked', []): print ' View (Profile) ID = %s' % profile print 'Created = %s' % custom_data_source.get('created') print 'Updated = %s\n' % custom_data_source.get('updated')
JavaScript
Используется клиентская библиотека JavaScript.
/* * Note: This code assumes you have an authorized Analytics client object. * See the Data Import Developer Guide for details. */ /* * Example 1: * Requests a list of all data sets for the authorized user. */ function listCustomDataSources() { var request = gapi.client.analytics.management.customDataSources.list({ 'accountId': '123456', 'webPropertyId': 'UA-123456-1' }); request.execute(printCustomDataSources); } /* * Example 2: * The results of the list method are passed as the results object. * The following code shows how to iterate through them. */ function printCustomDataSources(results) { if (results && !results.error) { var datasets = results.items; for (var i = 0, dataset; dataset = datasets[i]; i++) { console.log('Account Id: ' + dataset.accountId); console.log('Property Id: ' + dataset.webPropertyId); console.log('Dataset Id: ' + dataset.id); console.log('Dataset Kind: ' + dataset.kind); console.log('Dataset Name: ' + dataset.name); console.log('Dataset Description: ' + dataset.description); console.log('Dataset uploadType: ' + dataset.uploadType); // Iterate through the linked views (profiles). var profiles = dataset.profilesLinked; if (profiles) { for (var j = 0, profile; profile = profiles[j]; j++) { console.log('Linked view (profile) Id: ' + profile); } } } } }
Практическое занятие
Воспользуйтесь инструментом API Explorer ниже, чтобы применить этот метод к реальным данным и посмотреть, как он работает. Также можно перейти на эту страницу.