<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="analytics_v3.html">Google Analytics API</a> . <a href="analytics_v3.management.html">management</a> . <a href="analytics_v3.management.accounts.html">accounts</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#list">list(max_results=None, start_index=None)</a></code></p>
<p class="firstline">Lists all accounts to which the user has access.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="list">list(max_results=None, start_index=None)</code>
  <pre>Lists all accounts to which the user has access.

Args:
  max_results: integer, The maximum number of accounts to include in this response.
  start_index: integer, An index of the first account to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.

Returns:
  An object of the form:

    { # An account collection provides a list of Analytics accounts to which a user has access. The account collection is the entry point to all management information. Each resource in the collection corresponds to a single Analytics account.
    "username": "A String", # Email ID of the authenticated user
    "kind": "analytics#accounts", # Collection type.
    "items": [ # A list of accounts.
      { # JSON template for Analytics account entry.
        "kind": "analytics#account", # Resource type for Analytics account.
        "name": "A String", # Account name.
        "created": "A String", # Time the account was created.
        "updated": "A String", # Time the account was last modified.
        "childLink": { # Child link for an account entry. Points to the list of web properties for this account.
          "href": "A String", # Link to the list of web properties for this account.
          "type": "analytics#webproperties", # Type of the child link. Its value is "analytics#webproperties".
        },
        "id": "A String", # Account ID.
        "selfLink": "A String", # Link for this account.
      },
    ],
    "itemsPerPage": 42, # The maximum number of entries the response can contain, regardless of the actual number of entries returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.
    "previousLink": "A String", # Previous link for this account collection.
    "startIndex": 42, # The starting index of the entries, which is 1 by default or otherwise specified by the start-index query parameter.
    "nextLink": "A String", # Next link for this account collection.
    "totalResults": 42, # The total number of results for the query, regardless of the number of results in the response.
  }</pre>
</div>

</body></html>