Account Summaries: list

Cần có uỷ quyền

Liệt kê các bản tóm tắt tài khoản (cây nhỏ bao gồm tài khoản/tài sản/hồ sơ) mà người dùng có quyền truy cập. Thử ngay hoặc xem ví dụ.

Yêu cầu

Yêu cầu HTTP

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

Tham số

Tên thông số Giá trị Nội dung mô tả
Tham số truy vấn không bắt buộc
max-results integer Số lượng bản tóm tắt tài khoản tối đa có thể đưa vào phản hồi này, trong đó giá trị lớn nhất được chấp nhận là 1000.
start-index integer Chỉ mục của thực thể đầ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.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#accountSummaries",
  "username": string,
  "totalResults": integer,
  "startIndex": integer,
  "itemsPerPage": integer,
  "previousLink": string,
  "nextLink": string,
  "items": [
    management.accountSummaries 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 Danh sách các bản tóm tắt kế toán.

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 Account Summaries Developer Guide for details.
 */

/**
 * Example #1:
 * Requests a list of all account summaries for the authorized user.
 */
try {
  AccountSummaries accountSummaries = service.management().
      accountSummaries().list().execute();
} catch (IOException e) {
  System.out.println("An error occurred: " + e);
}

/**
 * Example #2:
 * The results of the list method are stored in the accountSummaries object.
 * The following code shows how to iterate through them.
 **/
public static void printAccountSummaries(AccountSummaries accountSummaries) {
  for (AccountSummary account : accountSummaries.getItems()) {
    System.out.println(account.getName() + " (" + account.getId() + ")");
    printPropertySummaries(account);
  }
}


private static void printPropertySummaries(AccountSummary accountSummary) {
  for (WebPropertySummary property : accountSummary.getWebProperties()) {
    System.out.println("  " + property.getName() + " ("
        + property.getId() + ")");
    System.out.println("  [" + property.getWebsiteUrl() + " | "
        + property.getLevel() + "]");
    printProfileSummary(property);
  }
}


private static void printProfileSummary(WebPropertySummary webPropertySummary) {
  for (ProfileSummary profile : webPropertySummary.getProfiles()) {
    System.out.println("    " + profile.getName()
        + " (" + profile.getId() + ") | " + profile.getType());
  }
}

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 Account Summaries Developer Guide for details.
 */

/**
 * Example #1:
 * Requests a list of all account summaries for the authorized user.
 */
try {
  $accounts = $analytics->management_accountSummaries
      ->listManagementAccountSummaries();
} 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 accounts object.
 * The following code shows how to iterate through them.
 */
foreach ($accounts->getItems() as $account) {
  $html = <<<HTML
<pre>
Account id   = {$account->getId()}
Account kind = {$account->getKind()}
Account name = {$account->getName()}
HTML;

  // Iterate through each Property.
  foreach ($account->getWebProperties() as $property) {
    $html .= <<<HTML
Property id          = {$property->getId()}
Property kind        = {$property->getKind()}
Property name        = {$property->getName()}
Internal property id = {$property->getInternalWebPropertyId()}
Property level       = {$property->getLevel()}
Property URL         = {$property->getWebsiteUrl()}
HTML;

    // Iterate through each view (profile).
    foreach ($property->getProfiles() as $profile) {
      $html .= <<<HTML
Profile id   = {$profile->getId()}
Profile kind = {$profile->getKind()}
Profile name = {$profile->getName()}
Profile type = {$profile->getType()}
HTML;
    }
  }
  $html .= '</pre>';
  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 Account Summaries Developer Guide for details.

# Example #1:
# Requests a list of all account summaries for the authorized user.
try:
  account_summaries = analytics.management().accountSummaries().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 account_summaries object.
# The following code shows how to iterate through them.

for account in account_summaries.get('items', []):
  print '\n%s (%s)' % (account.get('name'), account.get('id'))
  print_property_summaries(account)


def print_property_summaries(account_summary):
  if account_summary:
    for property in account_summary.get('webProperties', []):
      print '   %s (%s)' % (property.get('name'), property.get('id'))
      print '   [%s | %s]' % (property.get('websiteUrl'), property.get('level'))
      print_profile_summary(property)


def print_profile_summary(property_summary):
  if property_summary:
    for profile in property_summary.get('profiles', []):
      print '     %s (%s) | %s' % (profile.get('name'), profile.get('id'),
                                   profile.get('type'))

JavaScript

Sử dụng thư viện ứng dụng JavaScript.

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

/*
 * Example 1:
 * Requests a list of all account summaries for the authorized user.
 */
function listAccountSummaries() {
  var request = gapi.client.analytics.management.accountSummaries.list();
  request.execute(handleResponse);
}

/*
 * Example 2:
 * The results of the list method are passed as the response object.
 * The following code shows how to iterate through them.
 */
function handleResponse(response) {
  if (response && !response.error) {
    if (response.items) {
      printAccountSummaries(response.items);
    }
  } else {
    console.log('There was an error: ' + response.message);
  }
}


function printAccountSummaries(accounts) {
  for (var i = 0, account; account = accounts[i]; i++) {
    console.log('Account id: ' + account.id);
    console.log('Account name: ' + account.name);
    console.log('Account kind: ' + account.kind);

    // Print the properties.
    if (account.webProperties) {
      printProperties(account.webProperties);
    }
  }
}


function printProperties(properties) {
  for (var j = 0, property; property = properties[j]; j++) {
    console.log('Property id: ' + property.id);
    console.log('Property name: ' + property.name);
    console.log('Property kind: ' + property.kind);
    console.log('Internal id: ' + property.internalWebPropertyId);
    console.log('Property level: ' + property.level);
    console.log('Property url: ' + property.websiteUrl);

    // Print the views (profiles).
    if (property.profiles) {
      printProfiles(property.profiles);
    }
  }
}


function printProfiles(profiles) {
  for (var k = 0, profile; profile = profiles[k]; k++) {
    console.log('Profile id: ' + profile.id);
    console.log('Profile name: ' + profile.name);
    console.log('Profile kind: ' + profile.kind);
    console.log('Profile type: ' + profile.type);
  }
}

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.