Account Summaries: list

نیاز به مجوز دارد

خلاصه‌های حساب را فهرست می‌کند (درخت سبک متشکل از حساب‌ها/ویژگی‌ها/پروفایل‌ها) که کاربر به آنها دسترسی دارد. اکنون آن را امتحان کنید یا نمونه ای را ببینید .

درخواست

درخواست HTTP

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

مولفه های

نام پارامتر ارزش شرح
پارامترهای پرس و جو اختیاری
max-results integer حداکثر تعداد خلاصه حساب برای درج در این پاسخ، که در آن بزرگترین مقدار قابل قبول 1000 است.
start-index integer شاخصی از اولین موجودی که بازیابی می شود. از این پارامتر به عنوان مکانیزم صفحه بندی به همراه پارامتر max-results استفاده کنید.

مجوز

این درخواست به مجوز حداقل با یکی از حوزه های زیر نیاز دارد ( در مورد احراز هویت و مجوز بیشتر بخوانید ).

محدوده
https://www.googleapis.com/auth/analytics.edit
https://www.googleapis.com/auth/analytics.readonly

درخواست بدن

با این روش بدنه درخواستی ارائه نکنید.

واکنش

در صورت موفقیت آمیز بودن، این روش یک بدنه پاسخ با ساختار زیر را برمی گرداند:

{
  "kind": "analytics#accountSummaries",
  "username": string,
  "totalResults": integer,
  "startIndex": integer,
  "itemsPerPage": integer,
  "previousLink": string,
  "nextLink": string,
  "items": [
    management.accountSummaries Resource
  ]
}
نام ملک ارزش شرح یادداشت
kind string نوع مجموعه
username string شناسه ایمیل کاربر احراز هویت شده
totalResults integer تعداد کل نتایج برای پرس و جو، صرف نظر از تعداد نتایج در پاسخ.
startIndex integer شاخص شروع منابع که به طور پیش‌فرض 1 است یا توسط پارامتر جستجوی start-index مشخص می‌شود.
itemsPerPage integer حداکثر تعداد منابعی که پاسخ می تواند داشته باشد، صرف نظر از تعداد واقعی منابع برگشتی. مقدار آن از 1 تا 1000 با مقدار 1000 به طور پیش فرض متغیر است، یا در غیر این صورت توسط پارامتر query max-results مشخص شده است.
items[] list لیستی از خلاصه حساب ها

مثال ها

توجه: نمونه‌های کد موجود برای این روش همه زبان‌های برنامه‌نویسی پشتیبانی‌شده را نشان نمی‌دهند (برای فهرست زبان‌های پشتیبانی‌شده به صفحه کتابخانه‌های سرویس گیرنده مراجعه کنید).

جاوا

از کتابخانه سرویس گیرنده جاوا استفاده می کند.

/**
 * 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());
  }
}

PHP

از کتابخانه مشتری 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;
}

پایتون

از کتابخانه کلاینت پایتون استفاده می کند.

# 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'))

جاوا اسکریپت

از کتابخانه سرویس گیرنده جاوا اسکریپت استفاده می کند.

/*
 * 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);
  }
}

آن را امتحان کنید!

از APIs Explorer زیر برای فراخوانی این روش در داده‌های زنده و دیدن پاسخ استفاده کنید. از طرف دیگر، اکسپلورر مستقل را امتحان کنید.