Custom Data Sources: list

Cần có uỷ quyền

Liệt kê các nguồn dữ liệu tuỳ chỉnh mà người dùng có quyền truy cập. Thử ngay hoặc xem ví dụ.

Ngoài các thông số chuẩn, phương thức này còn hỗ trợ các thông số được liệt kê trong bảng thông số.

Yêu cầu

Yêu cầu HTTP

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

Tham số

Tên thông số Giá trị Nội dung mô tả
Tham số đường dẫn
accountId string Mã tài khoản để truy xuất các nguồn dữ liệu tuỳ chỉnh.
webPropertyId string Mã thuộc tính web cho các nguồn dữ liệu tuỳ chỉnh cần truy xuất.
Tham số truy vấn không bắt buộc
max-results integer Số nguồn dữ liệu tuỳ chỉnh tối đa cần đưa vào phản hồi này.
start-index integer Chỉ mục dựa trên 1 của nguồn dữ liệu tuỳ chỉnh đầu tiên cần truy xuất. Sử dụng thông số này làm cơ chế phân trang cùng với thông số kết quả tối đa.

Ủy quyền

Yêu cầu này cần được uỷ quyền với ít nhất một trong các phạm vi sau (đọc thêm về quy trình xác thực và uỷ quyền).

Phạm vi
https://www.googleapis.com/auth/analytics
https://www.googleapis.com/auth/analytics.edit
https://www.googleapis.com/auth/analytics.readonly

Nội dung yêu cầu

Không cung cấp nội dung yêu cầu bằng phương thức này.

Phản hồi

Nếu thành công, phương thức này sẽ trả về nội dung phản hồi có cấu trúc như sau:

{
  "kind": "analytics#customDataSources",
  "username": string,
  "totalResults": integer,
  "startIndex": integer,
  "itemsPerPage": integer,
  "previousLink": string,
  "nextLink": string,
  "items": [
    management.customDataSources Resource
  ]
}
Tên tài sản Giá trị Nội dung mô tả Ghi chú
kind string Loại bộ sưu tập.
username string Mã email của người dùng đã xác thực
totalResults integer Tổng số kết quả cho truy vấn, bất kể số lượng kết quả trong phản hồi.
startIndex integer Chỉ mục bắt đầu của tài nguyên, là 1 theo mặc định hoặc được chỉ định khác bởi tham số truy vấn chỉ mục bắt đầu.
itemsPerPage integer Số lượng tài nguyên tối đa mà phản hồi có thể chứa, bất kể số lượng tài nguyên thực tế được trả về. Giá trị của nó dao động từ 1 đến 1000 với giá trị là 1000 theo mặc định hoặc được chỉ định bởi tham số truy vấn kết quả tối đa.
items[] list Thu thập nguồn dữ liệu tuỳ chỉnh.

Ví dụ

Lưu ý: Các đoạn mã mẫu của phương thức này không phải là ví dụ cho mọi ngôn ngữ lập trình được hỗ trợ (xem trang thông tin về các thư viện dùng cho ứng dụng để biết danh sách các ngôn ngữ được hỗ trợ).

Java

Sử dụng thư viện ứng dụng 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");
}

1.199

Sử dụng thư viện ứng dụng 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

Sử dụng thư viện ứng dụng 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

Sử dụng thư viện ứng dụng 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);
        }
      }
    }
  }
}

Hãy dùng thử!

Sử dụng APIs Explorer bên dưới để gọi phương thức này trên dữ liệu trực tiếp và xem phản hồi. Ngoài ra, hãy dùng thử Trình khám phá độc lập.