需要授权
列出用户有访问权限的帐号摘要(由帐号/媒体资源/配置文件组成的简明树状视图)。 立即试用或查看示例。
请求
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 |
已验证用户的电子邮件 ID | |
totalResults |
integer |
查询的结果总数,与响应中的结果数无关。 | |
startIndex |
integer |
资源的起始索引,默认为 1,或者通过 start-index 查询参数指定。 | |
itemsPerPage |
integer |
响应所能包含的资源数量上限,与返回的实际资源数无关。其值的范围为 1 至 1000,默认值为 1000,或者通过 max-results 查询参数指定。 | |
previousLink |
string |
指向此 AccountSummary 集合的上一页的链接。 | |
nextLink |
string |
指向此 AccountSummary 集合的下一页的链接。 | |
items[] |
list |
AccountSummaries 的列表。 |
示例
注意:此方法的代码示例并未列出所有受支持的编程语言(请参阅客户端库页面,查看受支持的语言列表)。
Java
使用 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()); } }
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; }
Python
使用 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
使用 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); } }
试试看!
请使用下面的 API Explorer 对实际数据调用此方法,并查看响应。或者,您也可以尝试使用独立的 Explorer。