Google Analytics

Views (Profiles): list

Requires authorization

Lists views (profiles) to which the user has access. Try it now or see an example.

In addition to the standard parameters, this method supports the parameters listed in the parameters table.

Request

HTTP request

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

Parameters

Parameter name Value Description
Required parameters
accountId string Account ID for the view (profiles) to retrieve. Can either be a specific account ID or '~all', which refers to all the accounts to which the user has access.
webPropertyId string Web property ID for the views (profiles) to retrieve. Can either be a specific web property ID or '~all', which refers to all the web properties to which the user has access.
Optional parameters
max-results integer The maximum number of views (profiles) to include in this response.
start-index integer An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.

Authorization

This request requires authorization with at least one of the following scopes (read more about authentication and authorization).

Scope
https://www.googleapis.com/auth/analytics 
https://www.googleapis.com/auth/analytics.edit 
https://www.googleapis.com/auth/analytics.readonly 

Request body

Do not supply a request body with this method.

Response

The response contains one Profile resource for each profile requested

{
  "kind": "analytics#profiles",
  "username": string,
  "totalResults": integer,
  "startIndex": integer,
  "itemsPerPage": integer,
  "previousLink": string,
  "nextLink": string,
  "items": [
    management.profiles Resource
  ]
}
Property name Value Description Notes
kind string Collection type. Value is "analytics#profiles".
username string Email ID of the authenticated user
totalResults integer The total number of results for the query, regardless of the number of results in the response.
startIndex integer The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.
itemsPerPage integer The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
items[] list A list of views (profiles).

Examples

Note: The code examples available for this method do not represent all supported programming languages (see the client libraries page for a list of supported languages).

Java

Uses the Java client library

/**
 * Note: This code assumes you have built an authorized Analytics service object.
 * See the View (Profile) Dev Guide for details.
 */

/**
 * Example #1:
 * Requests a list of views (profiles) account ID 12345 and web property ID UA-12345-1.
 */
try {
  Profiles profiles = analytics.management.profiles.list("12345", "UA-12345-1").execute();

} catch (GoogleJsonResponseException e) {
  System.err.println("There was a service error: "
      + e.getDetails().getCode() + " : "
      + e.getDetails().getMessage());
}


/**
 * Example #2:
 * Retrieves views (profiles) for all web properties of the user's account, using a
 * wildcard ~all as the webpropertyId.
 */
Profiles profiles = analytics.management.profiles.list("12345", "~all").execute();


/**
 * Example #3:
 * The results of the list method are stored in the Profiles object. The following
 * code shows how to iterate through them.
 */
for (Profile profile : profiles.getItems()) {
  System.out.println("Account ID: " + profile.getAccountId());
  System.out.println("Web Property ID: " + profile.getWebPropertyId());
  System.out.println("Web Property Internal ID: " + profile.getInternalWebPropertyId());
  System.out.println("View (Profile) ID: " + profile.getId());
  System.out.println("View (Profile) Name: " + profile.getName());

  System.out.println("View (Profile) defaultPage: " + profile.getDefaultPage());
  System.out.println("View (Profile) Exclude Query Parameters: " + profile.getExcludeQueryParameters());
  System.out.println("View (Profile) Site Search Query Parameters: " + profile.getSiteSearchQueryParameters());
  System.out.println("View (Profile) Site Search Category Parameters: " + profile.getSiteSearchCategoryParameters());

  System.out.println("View (Profile) Currency: " + profile.getCurrency());
  System.out.println("View (Profile) Timezone: " + profile.getTimezone());
  System.out.println("View (Profile) Created: " + profile.getCreated());
  System.out.println("View (Profile) Updated: " + profile.getUpdated());
}

PHP

Uses the PHP client library

/**
 * Note: This code assumes you have built an authorized Analytics service object.
 * See the View (Profile) Dev Guide for details.
 */

/**
 * Example #1:
 * Requests a list of views (profiles) account ID 12345 and web property ID UA-12345-1.
 */
try {
  $profiles = $analytics->management_profiles
                        ->listManagementProfiles('12345',
                                                 'UA-12345-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:
 * Retrieves views (profiles) for all web properties of the user's account, using a
 * wildcard ~all as the webpropertyId.
 */
$profiles = $analytics->management_profiles
                      ->listManagementProfiles('12345',
                                               '~all');


/**
 * Example #3:
 * The results of the list method are stored in the Profiles object. The following
 * code shows how to iterate through them.
 */
$items = $profiles->getItems();

if (count($items) != 0) {

  foreach ($items as &$profile) {
    $html .= <<<HTML

<pre>
Account ID               = {$profile->getAccountId()}
Web Property ID          = {$profile->getWebPropertyId()}
Internal Web Property ID = {$profile->getInternalWebPropertyId()}
View (Profile) ID        = {$profile->getId()}
View (Profile) Name      = {$profile->getName()}

Default Page             = {$profile->getDefaultPage()}
Exclude Query Parameters = {$profile->getExcludeQueryParameters()}
Site Search Category Parameters = {$profile->getSiteSearchCategoryParameters()}
Site Search Query Parameters = {$profile->getSiteSearchQueryParameters()}

Currency = {$profile->getCurrency()}
Timezone = {$profile->getTimezone()}
Created  = {$profile->getCreated()}
Updated  = {$profile->getUpdated()}
</pre>
HTML;
  }
}
return $html;

Python

Uses the Python client library

# Note: This code assumes you have built an authorized Analytics service object.
# See the View (Profile) Dev Guide for details.

# Example #1:
# Requests a list of views (profiles) account ID 12345 and web property ID UA-12345-1.
try:
  profiles = analytics.management().profiles().list(
        accountId='12345',
        webPropertyId='UA-12345-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 ('Arg, there was an API error : %s : %s' %
         (error.resp.status, error._get_reason()))


# Example #2:
# Retrieves views (profiles) for all web properties of the user's account, using a
# wildcard ~all as the webpropertyId.
profiles = analytics.management().profiles().list(accountId='12345',
                                                  webPropertyId='~all').execute()


# Example #3:
# The results of the list method are stored in the Profiles object. The following
# code shows how to iterate through them.
for profile in profiles_response.get('items', []):
  print 'Account ID                = %s' % profile.get('accountId')
  print 'Web Property ID           = %s' % profile.get('webPropertyId')
  print 'Internal Web Property ID  = %s' % profile.get('internalWebPropertyId')
  print 'View (Profile ID)         = %s' % profile.get('id')
  print 'View (Profile) Name       = %s' % profile.get('name')

  print 'Default Page                    = %s' % profile.get('defaultPage')
  print 'Exclude Query Parameters        = %s' % profile.get('excludeQueryParameters')
  print 'Site Search Category Parameters = %s' % profile.get('siteSearchCategoryParameters')
  print 'Site Search Query Parameters    = %s' % profile.get('siteSearchQueryParameters')

  print 'Currency = %s' % profile.get('currency')
  print 'Timezone = %s' % profile.get('timezone')
  print 'Created  = %s' % profile.get('created')
  print 'Updated  = %s' % profile.get('updated')

Try it!

Use the APIs Explorer below to call this method on live data and see the response. Alternatively, try the standalone Explorer.

Authentication required

You need to be signed in with Google+ to do that.

Signing you in...

Google Developers needs your permission to do that.