diff --git a/docs/dyn/adexchangebuyer_v1.accounts.html b/docs/dyn/adexchangebuyer_v1.accounts.html
deleted file mode 100644
index 8f5342b..0000000
--- a/docs/dyn/adexchangebuyer_v1.accounts.html
+++ /dev/null
@@ -1,228 +0,0 @@
-<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="adexchangebuyer_v1.html">Ad Exchange Buyer API</a> . <a href="adexchangebuyer_v1.accounts.html">accounts</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#get">get(id)</a></code></p>
-<p class="firstline">Gets one account by ID.</p>
-<p class="toc_element">
-  <code><a href="#list">list()</a></code></p>
-<p class="firstline">Retrieves the authenticated user's list of accounts.</p>
-<p class="toc_element">
-  <code><a href="#patch">patch(id, body)</a></code></p>
-<p class="firstline">Updates an existing account. This method supports patch semantics.</p>
-<p class="toc_element">
-  <code><a href="#update">update(id, body)</a></code></p>
-<p class="firstline">Updates an existing account.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="get">get(id)</code>
-  <pre>Gets one account by ID.
-
-Args:
-  id: integer, The account id (required)
-
-Returns:
-  An object of the form:
-
-    { # Configuration data for an Ad Exchange buyer account.
-      "kind": "adexchangebuyer#account", # Resource type.
-      "maximumTotalQps": 42, # The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.
-      "bidderLocation": [ # Your bidder locations that have distinct URLs.
-        {
-          "url": "A String", # The URL to which the Ad Exchange will send bid requests.
-          "maximumQps": 42, # The maximum queries per second the Ad Exchange will send.
-        },
-      ],
-      "cookieMatchingNid": "A String", # The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.
-      "id": 42, # Account id.
-      "cookieMatchingUrl": "A String", # The base URL used in cookie match requests.
-    }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list">list()</code>
-  <pre>Retrieves the authenticated user's list of accounts.
-
-Args:
-
-Returns:
-  An object of the form:
-
-    { # An account feed lists Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single buyer account.
-    "items": [ # A list of accounts.
-      { # Configuration data for an Ad Exchange buyer account.
-          "kind": "adexchangebuyer#account", # Resource type.
-          "maximumTotalQps": 42, # The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.
-          "bidderLocation": [ # Your bidder locations that have distinct URLs.
-            {
-              "url": "A String", # The URL to which the Ad Exchange will send bid requests.
-              "maximumQps": 42, # The maximum queries per second the Ad Exchange will send.
-            },
-          ],
-          "cookieMatchingNid": "A String", # The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.
-          "id": 42, # Account id.
-          "cookieMatchingUrl": "A String", # The base URL used in cookie match requests.
-        },
-    ],
-    "kind": "adexchangebuyer#accountsList", # Resource type.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="patch">patch(id, body)</code>
-  <pre>Updates an existing account. This method supports patch semantics.
-
-Args:
-  id: integer, The account id (required)
-  body: object, The request body. (required)
-    The object takes the form of:
-
-{ # Configuration data for an Ad Exchange buyer account.
-    "kind": "adexchangebuyer#account", # Resource type.
-    "maximumTotalQps": 42, # The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.
-    "bidderLocation": [ # Your bidder locations that have distinct URLs.
-      {
-        "url": "A String", # The URL to which the Ad Exchange will send bid requests.
-        "maximumQps": 42, # The maximum queries per second the Ad Exchange will send.
-      },
-    ],
-    "cookieMatchingNid": "A String", # The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.
-    "id": 42, # Account id.
-    "cookieMatchingUrl": "A String", # The base URL used in cookie match requests.
-  }
-
-
-Returns:
-  An object of the form:
-
-    { # Configuration data for an Ad Exchange buyer account.
-      "kind": "adexchangebuyer#account", # Resource type.
-      "maximumTotalQps": 42, # The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.
-      "bidderLocation": [ # Your bidder locations that have distinct URLs.
-        {
-          "url": "A String", # The URL to which the Ad Exchange will send bid requests.
-          "maximumQps": 42, # The maximum queries per second the Ad Exchange will send.
-        },
-      ],
-      "cookieMatchingNid": "A String", # The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.
-      "id": 42, # Account id.
-      "cookieMatchingUrl": "A String", # The base URL used in cookie match requests.
-    }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="update">update(id, body)</code>
-  <pre>Updates an existing account.
-
-Args:
-  id: integer, The account id (required)
-  body: object, The request body. (required)
-    The object takes the form of:
-
-{ # Configuration data for an Ad Exchange buyer account.
-    "kind": "adexchangebuyer#account", # Resource type.
-    "maximumTotalQps": 42, # The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.
-    "bidderLocation": [ # Your bidder locations that have distinct URLs.
-      {
-        "url": "A String", # The URL to which the Ad Exchange will send bid requests.
-        "maximumQps": 42, # The maximum queries per second the Ad Exchange will send.
-      },
-    ],
-    "cookieMatchingNid": "A String", # The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.
-    "id": 42, # Account id.
-    "cookieMatchingUrl": "A String", # The base URL used in cookie match requests.
-  }
-
-
-Returns:
-  An object of the form:
-
-    { # Configuration data for an Ad Exchange buyer account.
-      "kind": "adexchangebuyer#account", # Resource type.
-      "maximumTotalQps": 42, # The sum of all bidderLocation.maximumQps values cannot exceed this. Please contact your technical account manager if you need to change this.
-      "bidderLocation": [ # Your bidder locations that have distinct URLs.
-        {
-          "url": "A String", # The URL to which the Ad Exchange will send bid requests.
-          "maximumQps": 42, # The maximum queries per second the Ad Exchange will send.
-        },
-      ],
-      "cookieMatchingNid": "A String", # The nid parameter value used in cookie match requests. Please contact your technical account manager if you need to change this.
-      "id": 42, # Account id.
-      "cookieMatchingUrl": "A String", # The base URL used in cookie match requests.
-    }</pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adexchangebuyer_v1.creatives.html b/docs/dyn/adexchangebuyer_v1.creatives.html
deleted file mode 100644
index 5c0d8b7..0000000
--- a/docs/dyn/adexchangebuyer_v1.creatives.html
+++ /dev/null
@@ -1,284 +0,0 @@
-<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="adexchangebuyer_v1.html">Ad Exchange Buyer API</a> . <a href="adexchangebuyer_v1.creatives.html">creatives</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#get">get(accountId, buyerCreativeId, adgroupId)</a></code></p>
-<p class="firstline">Gets the status for a single creative.</p>
-<p class="toc_element">
-  <code><a href="#insert">insert(body)</a></code></p>
-<p class="firstline">Submit a new creative.</p>
-<p class="toc_element">
-  <code><a href="#list">list(pageToken=None, maxResults=None)</a></code></p>
-<p class="firstline">Retrieves a list of the authenticated user's active creatives.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="get">get(accountId, buyerCreativeId, adgroupId)</code>
-  <pre>Gets the status for a single creative.
-
-Args:
-  accountId: integer, The id for the account that will serve this creative. (required)
-  buyerCreativeId: string, The buyer-specific id for this creative. (required)
-  adgroupId: string, The adgroup this creative belongs to. (required)
-
-Returns:
-  An object of the form:
-
-    { # A creative and its classification data.
-      "productCategories": [ # Detected product categories, if any. Read-only. This field should not be set in requests.
-        42,
-      ],
-      "advertiserName": "A String", # The name of the company being advertised in the creative.
-      "adgroupId": "A String", # The pretargeting adgroup id that this creative will be associated with.
-      "videoURL": "A String", # The url to fetch a video ad. If set, HTMLSnippet should not be set.
-      "width": 42, # Ad width.
-      "attribute": [ # All attributes for the ads that may be shown from this snippet.
-        42,
-      ],
-      "kind": "adexchangebuyer#creative", # Resource type.
-      "height": 42, # Ad height.
-      "advertiserId": [ # Detected advertiser id, if any. Read-only. This field should not be set in requests.
-        "A String",
-      ],
-      "HTMLSnippet": "A String", # The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
-      "status": "A String", # Creative serving status. Read-only. This field should not be set in requests.
-      "buyerCreativeId": "A String", # A buyer-specific id identifying the creative in this ad.
-      "clickThroughUrl": [ # The set of destination urls for the snippet.
-        "A String",
-      ],
-      "vendorType": [ # All vendor types for the ads that may be shown from this snippet.
-        42,
-      ],
-      "disapprovalReasons": [ # The reason for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.
-        "A String",
-      ],
-      "sensitiveCategories": [ # Detected sensitive categories, if any. Read-only. This field should not be set in requests.
-        42,
-      ],
-      "accountId": 42, # Account id.
-    }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="insert">insert(body)</code>
-  <pre>Submit a new creative.
-
-Args:
-  body: object, The request body. (required)
-    The object takes the form of:
-
-{ # A creative and its classification data.
-    "productCategories": [ # Detected product categories, if any. Read-only. This field should not be set in requests.
-      42,
-    ],
-    "advertiserName": "A String", # The name of the company being advertised in the creative.
-    "adgroupId": "A String", # The pretargeting adgroup id that this creative will be associated with.
-    "videoURL": "A String", # The url to fetch a video ad. If set, HTMLSnippet should not be set.
-    "width": 42, # Ad width.
-    "attribute": [ # All attributes for the ads that may be shown from this snippet.
-      42,
-    ],
-    "kind": "adexchangebuyer#creative", # Resource type.
-    "height": 42, # Ad height.
-    "advertiserId": [ # Detected advertiser id, if any. Read-only. This field should not be set in requests.
-      "A String",
-    ],
-    "HTMLSnippet": "A String", # The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
-    "status": "A String", # Creative serving status. Read-only. This field should not be set in requests.
-    "buyerCreativeId": "A String", # A buyer-specific id identifying the creative in this ad.
-    "clickThroughUrl": [ # The set of destination urls for the snippet.
-      "A String",
-    ],
-    "vendorType": [ # All vendor types for the ads that may be shown from this snippet.
-      42,
-    ],
-    "disapprovalReasons": [ # The reason for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.
-      "A String",
-    ],
-    "sensitiveCategories": [ # Detected sensitive categories, if any. Read-only. This field should not be set in requests.
-      42,
-    ],
-    "accountId": 42, # Account id.
-  }
-
-
-Returns:
-  An object of the form:
-
-    { # A creative and its classification data.
-      "productCategories": [ # Detected product categories, if any. Read-only. This field should not be set in requests.
-        42,
-      ],
-      "advertiserName": "A String", # The name of the company being advertised in the creative.
-      "adgroupId": "A String", # The pretargeting adgroup id that this creative will be associated with.
-      "videoURL": "A String", # The url to fetch a video ad. If set, HTMLSnippet should not be set.
-      "width": 42, # Ad width.
-      "attribute": [ # All attributes for the ads that may be shown from this snippet.
-        42,
-      ],
-      "kind": "adexchangebuyer#creative", # Resource type.
-      "height": 42, # Ad height.
-      "advertiserId": [ # Detected advertiser id, if any. Read-only. This field should not be set in requests.
-        "A String",
-      ],
-      "HTMLSnippet": "A String", # The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
-      "status": "A String", # Creative serving status. Read-only. This field should not be set in requests.
-      "buyerCreativeId": "A String", # A buyer-specific id identifying the creative in this ad.
-      "clickThroughUrl": [ # The set of destination urls for the snippet.
-        "A String",
-      ],
-      "vendorType": [ # All vendor types for the ads that may be shown from this snippet.
-        42,
-      ],
-      "disapprovalReasons": [ # The reason for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.
-        "A String",
-      ],
-      "sensitiveCategories": [ # Detected sensitive categories, if any. Read-only. This field should not be set in requests.
-        42,
-      ],
-      "accountId": 42, # Account id.
-    }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list">list(pageToken=None, maxResults=None)</code>
-  <pre>Retrieves a list of the authenticated user's active creatives.
-
-Args:
-  pageToken: string, A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response. Optional.
-  maxResults: integer, Maximum number of entries returned on one result page. If not set, the default is 100. Optional.
-
-Returns:
-  An object of the form:
-
-    { # The creatives feed lists the active creatives for the Ad Exchange buyer accounts that the user has access to. Each entry in the feed corresponds to a single creative.
-    "nextPageToken": "A String", # Continuation token used to page through creatives. To retrieve the next page of results, set the next request's "pageToken" value to this.
-    "items": [ # A list of creatives.
-      { # A creative and its classification data.
-          "productCategories": [ # Detected product categories, if any. Read-only. This field should not be set in requests.
-            42,
-          ],
-          "advertiserName": "A String", # The name of the company being advertised in the creative.
-          "adgroupId": "A String", # The pretargeting adgroup id that this creative will be associated with.
-          "videoURL": "A String", # The url to fetch a video ad. If set, HTMLSnippet should not be set.
-          "width": 42, # Ad width.
-          "attribute": [ # All attributes for the ads that may be shown from this snippet.
-            42,
-          ],
-          "kind": "adexchangebuyer#creative", # Resource type.
-          "height": 42, # Ad height.
-          "advertiserId": [ # Detected advertiser id, if any. Read-only. This field should not be set in requests.
-            "A String",
-          ],
-          "HTMLSnippet": "A String", # The HTML snippet that displays the ad when inserted in the web page. If set, videoURL should not be set.
-          "status": "A String", # Creative serving status. Read-only. This field should not be set in requests.
-          "buyerCreativeId": "A String", # A buyer-specific id identifying the creative in this ad.
-          "clickThroughUrl": [ # The set of destination urls for the snippet.
-            "A String",
-          ],
-          "vendorType": [ # All vendor types for the ads that may be shown from this snippet.
-            42,
-          ],
-          "disapprovalReasons": [ # The reason for disapproval, if any. Note that not all disapproval reasons may be categorized, so it is possible for the creative to have a status of DISAPPROVED with an empty list for disapproval_reasons. In this case, please reach out to your TAM to help debug the issue. Read-only. This field should not be set in requests.
-            "A String",
-          ],
-          "sensitiveCategories": [ # Detected sensitive categories, if any. Read-only. This field should not be set in requests.
-            42,
-          ],
-          "accountId": 42, # Account id.
-        },
-    ],
-    "kind": "adexchangebuyer#creativesList", # Resource type.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adexchangebuyer_v1.directDeals.html b/docs/dyn/adexchangebuyer_v1.directDeals.html
deleted file mode 100644
index 23990c0..0000000
--- a/docs/dyn/adexchangebuyer_v1.directDeals.html
+++ /dev/null
@@ -1,134 +0,0 @@
-<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="adexchangebuyer_v1.html">Ad Exchange Buyer API</a> . <a href="adexchangebuyer_v1.directDeals.html">directDeals</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#get">get(id)</a></code></p>
-<p class="firstline">Gets one direct deal by ID.</p>
-<p class="toc_element">
-  <code><a href="#list">list()</a></code></p>
-<p class="firstline">Retrieves the authenticated user's list of direct deals.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="get">get(id)</code>
-  <pre>Gets one direct deal by ID.
-
-Args:
-  id: string, The direct deal id (required)
-
-Returns:
-  An object of the form:
-
-    { # The configuration data for an Ad Exchange direct deal.
-    "advertiser": "A String", # The name of the advertiser this deal is for.
-    "kind": "adexchangebuyer#directDeal", # Resource type.
-    "currencyCode": "A String", # The currency code that applies to the fixed_cpm value. If not set then assumed to be USD.
-    "fixedCpm": "A String", # The fixed price for this direct deal. In cpm micros of currency according to currency_code.
-    "startTime": "A String", # Start time for when this deal becomes active. If not set then this deal is active immediately upon creation. In seconds since the epoch.
-    "endTime": "A String", # End time for when this deal stops being active. If not set then this deal is valid until manually disabled by the publisher. In seconds since the epoch.
-    "sellerNetwork": "A String", # The name of the publisher offering this direct deal.
-    "id": "A String", # Deal id.
-    "accountId": 42, # The account id of the buyer this deal is for.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list">list()</code>
-  <pre>Retrieves the authenticated user's list of direct deals.
-
-Args:
-
-Returns:
-  An object of the form:
-
-    { # A direct deals feed lists Direct Deals the Ad Exchange buyer account has access to. This includes direct deals set up for the buyer account as well as its merged stream seats.
-    "kind": "adexchangebuyer#directDealsList", # Resource type.
-    "directDeals": [ # A list of direct deals relevant for your account.
-      { # The configuration data for an Ad Exchange direct deal.
-        "advertiser": "A String", # The name of the advertiser this deal is for.
-        "kind": "adexchangebuyer#directDeal", # Resource type.
-        "currencyCode": "A String", # The currency code that applies to the fixed_cpm value. If not set then assumed to be USD.
-        "fixedCpm": "A String", # The fixed price for this direct deal. In cpm micros of currency according to currency_code.
-        "startTime": "A String", # Start time for when this deal becomes active. If not set then this deal is active immediately upon creation. In seconds since the epoch.
-        "endTime": "A String", # End time for when this deal stops being active. If not set then this deal is valid until manually disabled by the publisher. In seconds since the epoch.
-        "sellerNetwork": "A String", # The name of the publisher offering this direct deal.
-        "id": "A String", # Deal id.
-        "accountId": 42, # The account id of the buyer this deal is for.
-      },
-    ],
-  }</pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adexchangebuyer_v1.html b/docs/dyn/adexchangebuyer_v1.html
deleted file mode 100644
index abe3720..0000000
--- a/docs/dyn/adexchangebuyer_v1.html
+++ /dev/null
@@ -1,92 +0,0 @@
-<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="adexchangebuyer_v1.html">Ad Exchange Buyer API</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="adexchangebuyer_v1.accounts.html">accounts()</a></code>
-</p>
-<p class="firstline">Returns the accounts Resource.</p>
-
-<p class="toc_element">
-  <code><a href="adexchangebuyer_v1.creatives.html">creatives()</a></code>
-</p>
-<p class="firstline">Returns the creatives Resource.</p>
-
-<p class="toc_element">
-  <code><a href="adexchangebuyer_v1.directDeals.html">directDeals()</a></code>
-</p>
-<p class="firstline">Returns the directDeals Resource.</p>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.accounts.adclients.html b/docs/dyn/adsense_v1_1.accounts.adclients.html
deleted file mode 100644
index f182cce..0000000
--- a/docs/dyn/adsense_v1_1.accounts.adclients.html
+++ /dev/null
@@ -1,125 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.accounts.html">accounts</a> . <a href="adsense_v1_1.accounts.adclients.html">adclients</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#list">list(accountId, pageToken=None, maxResults=None)</a></code></p>
-<p class="firstline">List all ad clients in the specified account.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="list">list(accountId, pageToken=None, maxResults=None)</code>
-  <pre>List all ad clients in the specified account.
-
-Args:
-  accountId: string, Account for which to list ad clients. (required)
-  pageToken: string, A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
-  maxResults: integer, The maximum number of ad clients to include in the response, used for paging.
-
-Returns:
-  An object of the form:
-
-    {
-    "nextPageToken": "A String", # Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's "pageToken" value to this.
-    "items": [ # The ad clients returned in this list response.
-      {
-        "productCode": "A String", # This ad client's product code, which corresponds to the PRODUCT_CODE report dimension.
-        "kind": "adsense#adClient", # Kind of resource this is, in this case adsense#adClient.
-        "id": "A String", # Unique identifier of this ad client.
-        "supportsReporting": True or False, # Whether this ad client supports being reported on.
-      },
-    ],
-    "kind": "adsense#adClients", # Kind of list this is, in this case adsense#adClients.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.accounts.adunits.customchannels.html b/docs/dyn/adsense_v1_1.accounts.adunits.customchannels.html
deleted file mode 100644
index de2b2db..0000000
--- a/docs/dyn/adsense_v1_1.accounts.adunits.customchannels.html
+++ /dev/null
@@ -1,133 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.accounts.html">accounts</a> . <a href="adsense_v1_1.accounts.adunits.html">adunits</a> . <a href="adsense_v1_1.accounts.adunits.customchannels.html">customchannels</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#list">list(accountId, adClientId, adUnitId, pageToken=None, maxResults=None)</a></code></p>
-<p class="firstline">List all custom channels which the specified ad unit belongs to.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="list">list(accountId, adClientId, adUnitId, pageToken=None, maxResults=None)</code>
-  <pre>List all custom channels which the specified ad unit belongs to.
-
-Args:
-  accountId: string, Account to which the ad client belongs. (required)
-  adClientId: string, Ad client which contains the ad unit. (required)
-  adUnitId: string, Ad unit for which to list custom channels. (required)
-  pageToken: string, A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
-  maxResults: integer, The maximum number of custom channels to include in the response, used for paging.
-
-Returns:
-  An object of the form:
-
-    {
-    "nextPageToken": "A String", # Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's "pageToken" value to this.
-    "items": [ # The custom channels returned in this list response.
-      {
-        "kind": "adsense#customChannel", # Kind of resource this is, in this case adsense#customChannel.
-        "code": "A String", # Code of this custom channel, not necessarily unique across ad clients.
-        "targetingInfo": { # The targeting information of this custom channel, if activated.
-          "location": "A String", # The locations in which ads appear. (Only valid for content and mobile content ads). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads are: TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS.
-          "adsAppearOn": "A String", # The name used to describe this channel externally.
-          "siteLanguage": "A String", # The language of the sites ads will be displayed on.
-          "description": "A String", # The external description of the channel.
-        },
-        "id": "A String", # Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
-        "name": "A String", # Name of this custom channel.
-      },
-    ],
-    "kind": "adsense#customChannels", # Kind of list this is, in this case adsense#customChannels.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.accounts.adunits.html b/docs/dyn/adsense_v1_1.accounts.adunits.html
deleted file mode 100644
index f0c1e3e..0000000
--- a/docs/dyn/adsense_v1_1.accounts.adunits.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.accounts.html">accounts</a> . <a href="adsense_v1_1.accounts.adunits.html">adunits</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="adsense_v1_1.accounts.adunits.customchannels.html">customchannels()</a></code>
-</p>
-<p class="firstline">Returns the customchannels Resource.</p>
-
-<p class="toc_element">
-  <code><a href="#get">get(accountId, adClientId, adUnitId)</a></code></p>
-<p class="firstline">Gets the specified ad unit in the specified ad client for the specified account.</p>
-<p class="toc_element">
-  <code><a href="#list">list(accountId, adClientId, pageToken=None, includeInactive=None, maxResults=None)</a></code></p>
-<p class="firstline">List all ad units in the specified ad client for the specified account.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="get">get(accountId, adClientId, adUnitId)</code>
-  <pre>Gets the specified ad unit in the specified ad client for the specified account.
-
-Args:
-  accountId: string, Account to which the ad client belongs. (required)
-  adClientId: string, Ad client for which to get the ad unit. (required)
-  adUnitId: string, Ad unit to retrieve. (required)
-
-Returns:
-  An object of the form:
-
-    {
-    "status": "A String", # Status of this ad unit. Possible values are:
-        # NEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.
-        #
-        # ACTIVE: Indicates that there has been activity on this ad unit in the last seven days.
-        #
-        # INACTIVE: Indicates that there has been no activity on this ad unit in the last seven days.
-    "kind": "adsense#adUnit", # Kind of resource this is, in this case adsense#adUnit.
-    "code": "A String", # Identity code of this ad unit, not necessarily unique across ad clients.
-    "id": "A String", # Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
-    "name": "A String", # Name of this ad unit.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list">list(accountId, adClientId, pageToken=None, includeInactive=None, maxResults=None)</code>
-  <pre>List all ad units in the specified ad client for the specified account.
-
-Args:
-  accountId: string, Account to which the ad client belongs. (required)
-  adClientId: string, Ad client for which to list ad units. (required)
-  pageToken: string, A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
-  includeInactive: boolean, Whether to include inactive ad units. Default: true.
-  maxResults: integer, The maximum number of ad units to include in the response, used for paging.
-
-Returns:
-  An object of the form:
-
-    {
-    "nextPageToken": "A String", # Continuation token used to page through ad units. To retrieve the next page of results, set the next request's "pageToken" value to this.
-    "items": [ # The ad units returned in this list response.
-      {
-        "status": "A String", # Status of this ad unit. Possible values are:
-            # NEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.
-            #
-            # ACTIVE: Indicates that there has been activity on this ad unit in the last seven days.
-            #
-            # INACTIVE: Indicates that there has been no activity on this ad unit in the last seven days.
-        "kind": "adsense#adUnit", # Kind of resource this is, in this case adsense#adUnit.
-        "code": "A String", # Identity code of this ad unit, not necessarily unique across ad clients.
-        "id": "A String", # Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
-        "name": "A String", # Name of this ad unit.
-      },
-    ],
-    "kind": "adsense#adUnits", # Kind of list this is, in this case adsense#adUnits.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.accounts.customchannels.adunits.html b/docs/dyn/adsense_v1_1.accounts.customchannels.adunits.html
deleted file mode 100644
index 8369ae9..0000000
--- a/docs/dyn/adsense_v1_1.accounts.customchannels.adunits.html
+++ /dev/null
@@ -1,134 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.accounts.html">accounts</a> . <a href="adsense_v1_1.accounts.customchannels.html">customchannels</a> . <a href="adsense_v1_1.accounts.customchannels.adunits.html">adunits</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#list">list(accountId, adClientId, customChannelId, pageToken=None, includeInactive=None, maxResults=None)</a></code></p>
-<p class="firstline">List all ad units in the specified custom channel.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="list">list(accountId, adClientId, customChannelId, pageToken=None, includeInactive=None, maxResults=None)</code>
-  <pre>List all ad units in the specified custom channel.
-
-Args:
-  accountId: string, Account to which the ad client belongs. (required)
-  adClientId: string, Ad client which contains the custom channel. (required)
-  customChannelId: string, Custom channel for which to list ad units. (required)
-  pageToken: string, A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
-  includeInactive: boolean, Whether to include inactive ad units. Default: true.
-  maxResults: integer, The maximum number of ad units to include in the response, used for paging.
-
-Returns:
-  An object of the form:
-
-    {
-    "nextPageToken": "A String", # Continuation token used to page through ad units. To retrieve the next page of results, set the next request's "pageToken" value to this.
-    "items": [ # The ad units returned in this list response.
-      {
-        "status": "A String", # Status of this ad unit. Possible values are:
-            # NEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.
-            #
-            # ACTIVE: Indicates that there has been activity on this ad unit in the last seven days.
-            #
-            # INACTIVE: Indicates that there has been no activity on this ad unit in the last seven days.
-        "kind": "adsense#adUnit", # Kind of resource this is, in this case adsense#adUnit.
-        "code": "A String", # Identity code of this ad unit, not necessarily unique across ad clients.
-        "id": "A String", # Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
-        "name": "A String", # Name of this ad unit.
-      },
-    ],
-    "kind": "adsense#adUnits", # Kind of list this is, in this case adsense#adUnits.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.accounts.customchannels.html b/docs/dyn/adsense_v1_1.accounts.customchannels.html
deleted file mode 100644
index 03d3fa8..0000000
--- a/docs/dyn/adsense_v1_1.accounts.customchannels.html
+++ /dev/null
@@ -1,166 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.accounts.html">accounts</a> . <a href="adsense_v1_1.accounts.customchannels.html">customchannels</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="adsense_v1_1.accounts.customchannels.adunits.html">adunits()</a></code>
-</p>
-<p class="firstline">Returns the adunits Resource.</p>
-
-<p class="toc_element">
-  <code><a href="#get">get(accountId, adClientId, customChannelId)</a></code></p>
-<p class="firstline">Get the specified custom channel from the specified ad client for the specified account.</p>
-<p class="toc_element">
-  <code><a href="#list">list(accountId, adClientId, pageToken=None, maxResults=None)</a></code></p>
-<p class="firstline">List all custom channels in the specified ad client for the specified account.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="get">get(accountId, adClientId, customChannelId)</code>
-  <pre>Get the specified custom channel from the specified ad client for the specified account.
-
-Args:
-  accountId: string, Account to which the ad client belongs. (required)
-  adClientId: string, Ad client which contains the custom channel. (required)
-  customChannelId: string, Custom channel to retrieve. (required)
-
-Returns:
-  An object of the form:
-
-    {
-    "kind": "adsense#customChannel", # Kind of resource this is, in this case adsense#customChannel.
-    "code": "A String", # Code of this custom channel, not necessarily unique across ad clients.
-    "targetingInfo": { # The targeting information of this custom channel, if activated.
-      "location": "A String", # The locations in which ads appear. (Only valid for content and mobile content ads). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads are: TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS.
-      "adsAppearOn": "A String", # The name used to describe this channel externally.
-      "siteLanguage": "A String", # The language of the sites ads will be displayed on.
-      "description": "A String", # The external description of the channel.
-    },
-    "id": "A String", # Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
-    "name": "A String", # Name of this custom channel.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list">list(accountId, adClientId, pageToken=None, maxResults=None)</code>
-  <pre>List all custom channels in the specified ad client for the specified account.
-
-Args:
-  accountId: string, Account to which the ad client belongs. (required)
-  adClientId: string, Ad client for which to list custom channels. (required)
-  pageToken: string, A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
-  maxResults: integer, The maximum number of custom channels to include in the response, used for paging.
-
-Returns:
-  An object of the form:
-
-    {
-    "nextPageToken": "A String", # Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's "pageToken" value to this.
-    "items": [ # The custom channels returned in this list response.
-      {
-        "kind": "adsense#customChannel", # Kind of resource this is, in this case adsense#customChannel.
-        "code": "A String", # Code of this custom channel, not necessarily unique across ad clients.
-        "targetingInfo": { # The targeting information of this custom channel, if activated.
-          "location": "A String", # The locations in which ads appear. (Only valid for content and mobile content ads). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads are: TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS.
-          "adsAppearOn": "A String", # The name used to describe this channel externally.
-          "siteLanguage": "A String", # The language of the sites ads will be displayed on.
-          "description": "A String", # The external description of the channel.
-        },
-        "id": "A String", # Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
-        "name": "A String", # Name of this custom channel.
-      },
-    ],
-    "kind": "adsense#customChannels", # Kind of list this is, in this case adsense#customChannels.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.accounts.html b/docs/dyn/adsense_v1_1.accounts.html
deleted file mode 100644
index da700ce..0000000
--- a/docs/dyn/adsense_v1_1.accounts.html
+++ /dev/null
@@ -1,175 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.accounts.html">accounts</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="adsense_v1_1.accounts.adclients.html">adclients()</a></code>
-</p>
-<p class="firstline">Returns the adclients Resource.</p>
-
-<p class="toc_element">
-  <code><a href="adsense_v1_1.accounts.adunits.html">adunits()</a></code>
-</p>
-<p class="firstline">Returns the adunits Resource.</p>
-
-<p class="toc_element">
-  <code><a href="adsense_v1_1.accounts.customchannels.html">customchannels()</a></code>
-</p>
-<p class="firstline">Returns the customchannels Resource.</p>
-
-<p class="toc_element">
-  <code><a href="adsense_v1_1.accounts.reports.html">reports()</a></code>
-</p>
-<p class="firstline">Returns the reports Resource.</p>
-
-<p class="toc_element">
-  <code><a href="adsense_v1_1.accounts.urlchannels.html">urlchannels()</a></code>
-</p>
-<p class="firstline">Returns the urlchannels Resource.</p>
-
-<p class="toc_element">
-  <code><a href="#get">get(accountId, tree=None)</a></code></p>
-<p class="firstline">Get information about the selected AdSense account.</p>
-<p class="toc_element">
-  <code><a href="#list">list(pageToken=None, maxResults=None)</a></code></p>
-<p class="firstline">List all accounts available to this AdSense account.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="get">get(accountId, tree=None)</code>
-  <pre>Get information about the selected AdSense account.
-
-Args:
-  accountId: string, Account to get information about. (required)
-  tree: boolean, Whether the tree of sub accounts should be returned.
-
-Returns:
-  An object of the form:
-
-    {
-    "kind": "adsense#account", # Kind of resource this is, in this case adsense#account.
-    "id": "A String", # Unique identifier of this account.
-    "subAccounts": [ # Sub accounts of the this account.
-      # Object with schema name: Account
-    ],
-    "name": "A String", # Name of this account.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list">list(pageToken=None, maxResults=None)</code>
-  <pre>List all accounts available to this AdSense account.
-
-Args:
-  pageToken: string, A continuation token, used to page through accounts. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
-  maxResults: integer, The maximum number of accounts to include in the response, used for paging.
-
-Returns:
-  An object of the form:
-
-    {
-    "nextPageToken": "A String", # Continuation token used to page through accounts. To retrieve the next page of results, set the next request's "pageToken" value to this.
-    "items": [ # The accounts returned in this list response.
-      {
-        "kind": "adsense#account", # Kind of resource this is, in this case adsense#account.
-        "id": "A String", # Unique identifier of this account.
-        "subAccounts": [ # Sub accounts of the this account.
-          # Object with schema name: Account
-        ],
-        "name": "A String", # Name of this account.
-      },
-    ],
-    "kind": "adsense#accounts", # Kind of list this is, in this case adsense#accounts.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.accounts.reports.html b/docs/dyn/adsense_v1_1.accounts.reports.html
deleted file mode 100644
index 104951f..0000000
--- a/docs/dyn/adsense_v1_1.accounts.reports.html
+++ /dev/null
@@ -1,154 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.accounts.html">accounts</a> . <a href="adsense_v1_1.accounts.reports.html">reports</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#generate">generate(accountId, startDate, endDate, locale=None, metric=None, currency=None, startIndex=None, sort=None, maxResults=None, filter=None, dimension=None)</a></code></p>
-<p class="firstline">Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify "alt=csv" as a query parameter.</p>
-<p class="toc_element">
-  <code><a href="#generate_media">generate_media(accountId, startDate, endDate, locale=None, metric=None, currency=None, startIndex=None, sort=None, maxResults=None, filter=None, dimension=None)</a></code></p>
-<p class="firstline">Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify "alt=csv" as a query parameter.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="generate">generate(accountId, startDate, endDate, locale=None, metric=None, currency=None, startIndex=None, sort=None, maxResults=None, filter=None, dimension=None)</code>
-  <pre>Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify "alt=csv" as a query parameter.
-
-Args:
-  accountId: string, Account upon which to report. (required)
-  startDate: string, Start of the date range to report on in "YYYY-MM-DD" format, inclusive. (required)
-  endDate: string, End of the date range to report on in "YYYY-MM-DD" format, inclusive. (required)
-  locale: string, Optional locale to use for translating report output to a local language. Defaults to "en_US" if not specified.
-  metric: string, Numeric columns to include in the report. (repeated)
-  currency: string, Optional currency to use when reporting on monetary metrics. Defaults to the account's currency if not set.
-  startIndex: integer, Index of the first row of report data to return.
-  sort: string, The name of a dimension or metric to sort the resulting report on, optionally prefixed with "+" to sort ascending or "-" to sort descending. If no prefix is specified, the column is sorted ascending. (repeated)
-  maxResults: integer, The maximum number of rows of report data to return.
-  filter: string, Filters to be run on the report. (repeated)
-  dimension: string, Dimensions to base the report on. (repeated)
-
-Returns:
-  An object of the form:
-
-    {
-    "kind": "adsense#report", # Kind this is, in this case adsense#report.
-    "rows": [ # The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.
-      [
-        "A String",
-      ],
-    ],
-    "warnings": [ # Any warnings associated with generation of the report.
-      "A String",
-    ],
-    "totals": [ # The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.
-      "A String",
-    ],
-    "headers": [ # The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.
-      {
-        "currency": "A String", # The currency of this column. Only present if the header type is METRIC_CURRENCY.
-        "type": "A String", # The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or METRIC_CURRENCY.
-        "name": "A String", # The name of the header.
-      },
-    ],
-    "totalMatchedRows": "A String", # The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.
-    "averages": [ # The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.
-      "A String",
-    ],
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="generate_media">generate_media(accountId, startDate, endDate, locale=None, metric=None, currency=None, startIndex=None, sort=None, maxResults=None, filter=None, dimension=None)</code>
-  <pre>Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify "alt=csv" as a query parameter.
-
-Args:
-  accountId: string, Account upon which to report. (required)
-  startDate: string, Start of the date range to report on in "YYYY-MM-DD" format, inclusive. (required)
-  endDate: string, End of the date range to report on in "YYYY-MM-DD" format, inclusive. (required)
-  locale: string, Optional locale to use for translating report output to a local language. Defaults to "en_US" if not specified.
-  metric: string, Numeric columns to include in the report. (repeated)
-  currency: string, Optional currency to use when reporting on monetary metrics. Defaults to the account's currency if not set.
-  startIndex: integer, Index of the first row of report data to return.
-  sort: string, The name of a dimension or metric to sort the resulting report on, optionally prefixed with "+" to sort ascending or "-" to sort descending. If no prefix is specified, the column is sorted ascending. (repeated)
-  maxResults: integer, The maximum number of rows of report data to return.
-  filter: string, Filters to be run on the report. (repeated)
-  dimension: string, Dimensions to base the report on. (repeated)
-
-Returns:
-  The media object as a string.
-
-    </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.accounts.urlchannels.html b/docs/dyn/adsense_v1_1.accounts.urlchannels.html
deleted file mode 100644
index 126b7e4..0000000
--- a/docs/dyn/adsense_v1_1.accounts.urlchannels.html
+++ /dev/null
@@ -1,125 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.accounts.html">accounts</a> . <a href="adsense_v1_1.accounts.urlchannels.html">urlchannels</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#list">list(accountId, adClientId, pageToken=None, maxResults=None)</a></code></p>
-<p class="firstline">List all URL channels in the specified ad client for the specified account.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="list">list(accountId, adClientId, pageToken=None, maxResults=None)</code>
-  <pre>List all URL channels in the specified ad client for the specified account.
-
-Args:
-  accountId: string, Account to which the ad client belongs. (required)
-  adClientId: string, Ad client for which to list URL channels. (required)
-  pageToken: string, A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
-  maxResults: integer, The maximum number of URL channels to include in the response, used for paging.
-
-Returns:
-  An object of the form:
-
-    {
-    "nextPageToken": "A String", # Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's "pageToken" value to this.
-    "items": [ # The URL channels returned in this list response.
-      {
-        "kind": "adsense#urlChannel", # Kind of resource this is, in this case adsense#urlChannel.
-        "id": "A String", # Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
-        "urlPattern": "A String", # URL Pattern of this URL channel. Does not include "http://" or "https://". Example: www.example.com/home
-      },
-    ],
-    "kind": "adsense#urlChannels", # Kind of list this is, in this case adsense#urlChannels.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.adclients.html b/docs/dyn/adsense_v1_1.adclients.html
deleted file mode 100644
index ed0457e..0000000
--- a/docs/dyn/adsense_v1_1.adclients.html
+++ /dev/null
@@ -1,124 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.adclients.html">adclients</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#list">list(pageToken=None, maxResults=None)</a></code></p>
-<p class="firstline">List all ad clients in this AdSense account.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="list">list(pageToken=None, maxResults=None)</code>
-  <pre>List all ad clients in this AdSense account.
-
-Args:
-  pageToken: string, A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
-  maxResults: integer, The maximum number of ad clients to include in the response, used for paging.
-
-Returns:
-  An object of the form:
-
-    {
-    "nextPageToken": "A String", # Continuation token used to page through ad clients. To retrieve the next page of results, set the next request's "pageToken" value to this.
-    "items": [ # The ad clients returned in this list response.
-      {
-        "productCode": "A String", # This ad client's product code, which corresponds to the PRODUCT_CODE report dimension.
-        "kind": "adsense#adClient", # Kind of resource this is, in this case adsense#adClient.
-        "id": "A String", # Unique identifier of this ad client.
-        "supportsReporting": True or False, # Whether this ad client supports being reported on.
-      },
-    ],
-    "kind": "adsense#adClients", # Kind of list this is, in this case adsense#adClients.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.adunits.customchannels.html b/docs/dyn/adsense_v1_1.adunits.customchannels.html
deleted file mode 100644
index 5b4e25b..0000000
--- a/docs/dyn/adsense_v1_1.adunits.customchannels.html
+++ /dev/null
@@ -1,132 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.adunits.html">adunits</a> . <a href="adsense_v1_1.adunits.customchannels.html">customchannels</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#list">list(adClientId, adUnitId, pageToken=None, maxResults=None)</a></code></p>
-<p class="firstline">List all custom channels which the specified ad unit belongs to.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="list">list(adClientId, adUnitId, pageToken=None, maxResults=None)</code>
-  <pre>List all custom channels which the specified ad unit belongs to.
-
-Args:
-  adClientId: string, Ad client which contains the ad unit. (required)
-  adUnitId: string, Ad unit for which to list custom channels. (required)
-  pageToken: string, A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
-  maxResults: integer, The maximum number of custom channels to include in the response, used for paging.
-
-Returns:
-  An object of the form:
-
-    {
-    "nextPageToken": "A String", # Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's "pageToken" value to this.
-    "items": [ # The custom channels returned in this list response.
-      {
-        "kind": "adsense#customChannel", # Kind of resource this is, in this case adsense#customChannel.
-        "code": "A String", # Code of this custom channel, not necessarily unique across ad clients.
-        "targetingInfo": { # The targeting information of this custom channel, if activated.
-          "location": "A String", # The locations in which ads appear. (Only valid for content and mobile content ads). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads are: TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS.
-          "adsAppearOn": "A String", # The name used to describe this channel externally.
-          "siteLanguage": "A String", # The language of the sites ads will be displayed on.
-          "description": "A String", # The external description of the channel.
-        },
-        "id": "A String", # Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
-        "name": "A String", # Name of this custom channel.
-      },
-    ],
-    "kind": "adsense#customChannels", # Kind of list this is, in this case adsense#customChannels.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.adunits.html b/docs/dyn/adsense_v1_1.adunits.html
deleted file mode 100644
index 02d1fcc..0000000
--- a/docs/dyn/adsense_v1_1.adunits.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.adunits.html">adunits</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="adsense_v1_1.adunits.customchannels.html">customchannels()</a></code>
-</p>
-<p class="firstline">Returns the customchannels Resource.</p>
-
-<p class="toc_element">
-  <code><a href="#get">get(adClientId, adUnitId)</a></code></p>
-<p class="firstline">Gets the specified ad unit in the specified ad client.</p>
-<p class="toc_element">
-  <code><a href="#list">list(adClientId, pageToken=None, includeInactive=None, maxResults=None)</a></code></p>
-<p class="firstline">List all ad units in the specified ad client for this AdSense account.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="get">get(adClientId, adUnitId)</code>
-  <pre>Gets the specified ad unit in the specified ad client.
-
-Args:
-  adClientId: string, Ad client for which to get the ad unit. (required)
-  adUnitId: string, Ad unit to retrieve. (required)
-
-Returns:
-  An object of the form:
-
-    {
-    "status": "A String", # Status of this ad unit. Possible values are:
-        # NEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.
-        #
-        # ACTIVE: Indicates that there has been activity on this ad unit in the last seven days.
-        #
-        # INACTIVE: Indicates that there has been no activity on this ad unit in the last seven days.
-    "kind": "adsense#adUnit", # Kind of resource this is, in this case adsense#adUnit.
-    "code": "A String", # Identity code of this ad unit, not necessarily unique across ad clients.
-    "id": "A String", # Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
-    "name": "A String", # Name of this ad unit.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list">list(adClientId, pageToken=None, includeInactive=None, maxResults=None)</code>
-  <pre>List all ad units in the specified ad client for this AdSense account.
-
-Args:
-  adClientId: string, Ad client for which to list ad units. (required)
-  pageToken: string, A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
-  includeInactive: boolean, Whether to include inactive ad units. Default: true.
-  maxResults: integer, The maximum number of ad units to include in the response, used for paging.
-
-Returns:
-  An object of the form:
-
-    {
-    "nextPageToken": "A String", # Continuation token used to page through ad units. To retrieve the next page of results, set the next request's "pageToken" value to this.
-    "items": [ # The ad units returned in this list response.
-      {
-        "status": "A String", # Status of this ad unit. Possible values are:
-            # NEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.
-            #
-            # ACTIVE: Indicates that there has been activity on this ad unit in the last seven days.
-            #
-            # INACTIVE: Indicates that there has been no activity on this ad unit in the last seven days.
-        "kind": "adsense#adUnit", # Kind of resource this is, in this case adsense#adUnit.
-        "code": "A String", # Identity code of this ad unit, not necessarily unique across ad clients.
-        "id": "A String", # Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
-        "name": "A String", # Name of this ad unit.
-      },
-    ],
-    "kind": "adsense#adUnits", # Kind of list this is, in this case adsense#adUnits.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.customchannels.adunits.html b/docs/dyn/adsense_v1_1.customchannels.adunits.html
deleted file mode 100644
index a87b870..0000000
--- a/docs/dyn/adsense_v1_1.customchannels.adunits.html
+++ /dev/null
@@ -1,133 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.customchannels.html">customchannels</a> . <a href="adsense_v1_1.customchannels.adunits.html">adunits</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#list">list(adClientId, customChannelId, pageToken=None, includeInactive=None, maxResults=None)</a></code></p>
-<p class="firstline">List all ad units in the specified custom channel.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="list">list(adClientId, customChannelId, pageToken=None, includeInactive=None, maxResults=None)</code>
-  <pre>List all ad units in the specified custom channel.
-
-Args:
-  adClientId: string, Ad client which contains the custom channel. (required)
-  customChannelId: string, Custom channel for which to list ad units. (required)
-  pageToken: string, A continuation token, used to page through ad units. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
-  includeInactive: boolean, Whether to include inactive ad units. Default: true.
-  maxResults: integer, The maximum number of ad units to include in the response, used for paging.
-
-Returns:
-  An object of the form:
-
-    {
-    "nextPageToken": "A String", # Continuation token used to page through ad units. To retrieve the next page of results, set the next request's "pageToken" value to this.
-    "items": [ # The ad units returned in this list response.
-      {
-        "status": "A String", # Status of this ad unit. Possible values are:
-            # NEW: Indicates that the ad unit was created within the last seven days and does not yet have any activity associated with it.
-            #
-            # ACTIVE: Indicates that there has been activity on this ad unit in the last seven days.
-            #
-            # INACTIVE: Indicates that there has been no activity on this ad unit in the last seven days.
-        "kind": "adsense#adUnit", # Kind of resource this is, in this case adsense#adUnit.
-        "code": "A String", # Identity code of this ad unit, not necessarily unique across ad clients.
-        "id": "A String", # Unique identifier of this ad unit. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
-        "name": "A String", # Name of this ad unit.
-      },
-    ],
-    "kind": "adsense#adUnits", # Kind of list this is, in this case adsense#adUnits.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.customchannels.html b/docs/dyn/adsense_v1_1.customchannels.html
deleted file mode 100644
index e4dcc82..0000000
--- a/docs/dyn/adsense_v1_1.customchannels.html
+++ /dev/null
@@ -1,164 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.customchannels.html">customchannels</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="adsense_v1_1.customchannels.adunits.html">adunits()</a></code>
-</p>
-<p class="firstline">Returns the adunits Resource.</p>
-
-<p class="toc_element">
-  <code><a href="#get">get(adClientId, customChannelId)</a></code></p>
-<p class="firstline">Get the specified custom channel from the specified ad client.</p>
-<p class="toc_element">
-  <code><a href="#list">list(adClientId, pageToken=None, maxResults=None)</a></code></p>
-<p class="firstline">List all custom channels in the specified ad client for this AdSense account.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="get">get(adClientId, customChannelId)</code>
-  <pre>Get the specified custom channel from the specified ad client.
-
-Args:
-  adClientId: string, Ad client which contains the custom channel. (required)
-  customChannelId: string, Custom channel to retrieve. (required)
-
-Returns:
-  An object of the form:
-
-    {
-    "kind": "adsense#customChannel", # Kind of resource this is, in this case adsense#customChannel.
-    "code": "A String", # Code of this custom channel, not necessarily unique across ad clients.
-    "targetingInfo": { # The targeting information of this custom channel, if activated.
-      "location": "A String", # The locations in which ads appear. (Only valid for content and mobile content ads). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads are: TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS.
-      "adsAppearOn": "A String", # The name used to describe this channel externally.
-      "siteLanguage": "A String", # The language of the sites ads will be displayed on.
-      "description": "A String", # The external description of the channel.
-    },
-    "id": "A String", # Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
-    "name": "A String", # Name of this custom channel.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list">list(adClientId, pageToken=None, maxResults=None)</code>
-  <pre>List all custom channels in the specified ad client for this AdSense account.
-
-Args:
-  adClientId: string, Ad client for which to list custom channels. (required)
-  pageToken: string, A continuation token, used to page through custom channels. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
-  maxResults: integer, The maximum number of custom channels to include in the response, used for paging.
-
-Returns:
-  An object of the form:
-
-    {
-    "nextPageToken": "A String", # Continuation token used to page through custom channels. To retrieve the next page of results, set the next request's "pageToken" value to this.
-    "items": [ # The custom channels returned in this list response.
-      {
-        "kind": "adsense#customChannel", # Kind of resource this is, in this case adsense#customChannel.
-        "code": "A String", # Code of this custom channel, not necessarily unique across ad clients.
-        "targetingInfo": { # The targeting information of this custom channel, if activated.
-          "location": "A String", # The locations in which ads appear. (Only valid for content and mobile content ads). Acceptable values for content ads are: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT, MULTIPLE_LOCATIONS. Acceptable values for mobile content ads are: TOP, MIDDLE, BOTTOM, MULTIPLE_LOCATIONS.
-          "adsAppearOn": "A String", # The name used to describe this channel externally.
-          "siteLanguage": "A String", # The language of the sites ads will be displayed on.
-          "description": "A String", # The external description of the channel.
-        },
-        "id": "A String", # Unique identifier of this custom channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
-        "name": "A String", # Name of this custom channel.
-      },
-    ],
-    "kind": "adsense#customChannels", # Kind of list this is, in this case adsense#customChannels.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.html b/docs/dyn/adsense_v1_1.html
deleted file mode 100644
index a6eb902..0000000
--- a/docs/dyn/adsense_v1_1.html
+++ /dev/null
@@ -1,107 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="adsense_v1_1.accounts.html">accounts()</a></code>
-</p>
-<p class="firstline">Returns the accounts Resource.</p>
-
-<p class="toc_element">
-  <code><a href="adsense_v1_1.adclients.html">adclients()</a></code>
-</p>
-<p class="firstline">Returns the adclients Resource.</p>
-
-<p class="toc_element">
-  <code><a href="adsense_v1_1.adunits.html">adunits()</a></code>
-</p>
-<p class="firstline">Returns the adunits Resource.</p>
-
-<p class="toc_element">
-  <code><a href="adsense_v1_1.customchannels.html">customchannels()</a></code>
-</p>
-<p class="firstline">Returns the customchannels Resource.</p>
-
-<p class="toc_element">
-  <code><a href="adsense_v1_1.reports.html">reports()</a></code>
-</p>
-<p class="firstline">Returns the reports Resource.</p>
-
-<p class="toc_element">
-  <code><a href="adsense_v1_1.urlchannels.html">urlchannels()</a></code>
-</p>
-<p class="firstline">Returns the urlchannels Resource.</p>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.reports.html b/docs/dyn/adsense_v1_1.reports.html
deleted file mode 100644
index 813f116..0000000
--- a/docs/dyn/adsense_v1_1.reports.html
+++ /dev/null
@@ -1,154 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.reports.html">reports</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#generate">generate(startDate, endDate, locale=None, metric=None, currency=None, startIndex=None, accountId=None, sort=None, maxResults=None, filter=None, dimension=None)</a></code></p>
-<p class="firstline">Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify "alt=csv" as a query parameter.</p>
-<p class="toc_element">
-  <code><a href="#generate_media">generate_media(startDate, endDate, locale=None, metric=None, currency=None, startIndex=None, accountId=None, sort=None, maxResults=None, filter=None, dimension=None)</a></code></p>
-<p class="firstline">Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify "alt=csv" as a query parameter.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="generate">generate(startDate, endDate, locale=None, metric=None, currency=None, startIndex=None, accountId=None, sort=None, maxResults=None, filter=None, dimension=None)</code>
-  <pre>Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify "alt=csv" as a query parameter.
-
-Args:
-  startDate: string, Start of the date range to report on in "YYYY-MM-DD" format, inclusive. (required)
-  endDate: string, End of the date range to report on in "YYYY-MM-DD" format, inclusive. (required)
-  locale: string, Optional locale to use for translating report output to a local language. Defaults to "en_US" if not specified.
-  metric: string, Numeric columns to include in the report. (repeated)
-  currency: string, Optional currency to use when reporting on monetary metrics. Defaults to the account's currency if not set.
-  startIndex: integer, Index of the first row of report data to return.
-  accountId: string, Accounts upon which to report. (repeated)
-  sort: string, The name of a dimension or metric to sort the resulting report on, optionally prefixed with "+" to sort ascending or "-" to sort descending. If no prefix is specified, the column is sorted ascending. (repeated)
-  maxResults: integer, The maximum number of rows of report data to return.
-  filter: string, Filters to be run on the report. (repeated)
-  dimension: string, Dimensions to base the report on. (repeated)
-
-Returns:
-  An object of the form:
-
-    {
-    "kind": "adsense#report", # Kind this is, in this case adsense#report.
-    "rows": [ # The output rows of the report. Each row is a list of cells; one for each dimension in the request, followed by one for each metric in the request. The dimension cells contain strings, and the metric cells contain numbers.
-      [
-        "A String",
-      ],
-    ],
-    "warnings": [ # Any warnings associated with generation of the report.
-      "A String",
-    ],
-    "totals": [ # The totals of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.
-      "A String",
-    ],
-    "headers": [ # The header information of the columns requested in the report. This is a list of headers; one for each dimension in the request, followed by one for each metric in the request.
-      {
-        "currency": "A String", # The currency of this column. Only present if the header type is METRIC_CURRENCY.
-        "type": "A String", # The type of the header; one of DIMENSION, METRIC_TALLY, METRIC_RATIO, or METRIC_CURRENCY.
-        "name": "A String", # The name of the header.
-      },
-    ],
-    "totalMatchedRows": "A String", # The total number of rows matched by the report request. Fewer rows may be returned in the response due to being limited by the row count requested or the report row limit.
-    "averages": [ # The averages of the report. This is the same length as any other row in the report; cells corresponding to dimension columns are empty.
-      "A String",
-    ],
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="generate_media">generate_media(startDate, endDate, locale=None, metric=None, currency=None, startIndex=None, accountId=None, sort=None, maxResults=None, filter=None, dimension=None)</code>
-  <pre>Generate an AdSense report based on the report request sent in the query parameters. Returns the result as JSON; to retrieve output in CSV format specify "alt=csv" as a query parameter.
-
-Args:
-  startDate: string, Start of the date range to report on in "YYYY-MM-DD" format, inclusive. (required)
-  endDate: string, End of the date range to report on in "YYYY-MM-DD" format, inclusive. (required)
-  locale: string, Optional locale to use for translating report output to a local language. Defaults to "en_US" if not specified.
-  metric: string, Numeric columns to include in the report. (repeated)
-  currency: string, Optional currency to use when reporting on monetary metrics. Defaults to the account's currency if not set.
-  startIndex: integer, Index of the first row of report data to return.
-  accountId: string, Accounts upon which to report. (repeated)
-  sort: string, The name of a dimension or metric to sort the resulting report on, optionally prefixed with "+" to sort ascending or "-" to sort descending. If no prefix is specified, the column is sorted ascending. (repeated)
-  maxResults: integer, The maximum number of rows of report data to return.
-  filter: string, Filters to be run on the report. (repeated)
-  dimension: string, Dimensions to base the report on. (repeated)
-
-Returns:
-  The media object as a string.
-
-    </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adsense_v1_1.urlchannels.html b/docs/dyn/adsense_v1_1.urlchannels.html
deleted file mode 100644
index c70a67e..0000000
--- a/docs/dyn/adsense_v1_1.urlchannels.html
+++ /dev/null
@@ -1,124 +0,0 @@
-<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="adsense_v1_1.html">AdSense Management API</a> . <a href="adsense_v1_1.urlchannels.html">urlchannels</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#list">list(adClientId, pageToken=None, maxResults=None)</a></code></p>
-<p class="firstline">List all URL channels in the specified ad client for this AdSense account.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="list">list(adClientId, pageToken=None, maxResults=None)</code>
-  <pre>List all URL channels in the specified ad client for this AdSense account.
-
-Args:
-  adClientId: string, Ad client for which to list URL channels. (required)
-  pageToken: string, A continuation token, used to page through URL channels. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
-  maxResults: integer, The maximum number of URL channels to include in the response, used for paging.
-
-Returns:
-  An object of the form:
-
-    {
-    "nextPageToken": "A String", # Continuation token used to page through URL channels. To retrieve the next page of results, set the next request's "pageToken" value to this.
-    "items": [ # The URL channels returned in this list response.
-      {
-        "kind": "adsense#urlChannel", # Kind of resource this is, in this case adsense#urlChannel.
-        "id": "A String", # Unique identifier of this URL channel. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
-        "urlPattern": "A String", # URL Pattern of this URL channel. Does not include "http://" or "https://". Example: www.example.com/home
-      },
-    ],
-    "kind": "adsense#urlChannels", # Kind of list this is, in this case adsense#urlChannels.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/dfareporting_v1.dimensionValues.html b/docs/dyn/dfareporting_v1.dimensionValues.html
deleted file mode 100644
index 3c87fc2..0000000
--- a/docs/dyn/dfareporting_v1.dimensionValues.html
+++ /dev/null
@@ -1,143 +0,0 @@
-<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="dfareporting_v1.html">DFA Reporting API</a> . <a href="dfareporting_v1.dimensionValues.html">dimensionValues</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#query">query(profileId, body, pageToken=None, maxResults=None)</a></code></p>
-<p class="firstline">Retrieves list of report dimension values for a list of filters.</p>
-<p class="toc_element">
-  <code><a href="#query_next">query_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="query">query(profileId, body, pageToken=None, maxResults=None)</code>
-  <pre>Retrieves list of report dimension values for a list of filters.
-
-Args:
-  profileId: string, The DFA user profile id. (required)
-  body: object, The request body. (required)
-    The object takes the form of:
-
-{ # Represents a DimensionValuesRequest.
-    "dimensionName": "A String", # The name of the dimension values should be requested for.
-    "startDate": "A String", # The start date of the date range for which to retrieve dimension values. A string of the format: "yyyy-MM-dd".
-    "kind": "dfareporting#dimensionValueRequest", # Kind of request this is, in this case dfareporting#dimensionValueRequest.
-    "endDate": "A String", # The end date of the date range for which to retrieve dimension values. A string of the format: "yyyy-MM-dd".
-    "filters": [ # List of filters to filter values by. The filters are ANDed.
-      { # Represents a dimension filter.
-        "dimensionName": "A String", # The name of the dimension to filter.
-        "kind": "dfareporting#dimensionFilter", # Kind of resource this is, in this case dfareporting#dimensionFilter.
-        "value": "A String", # The value of the dimension to filter for.
-      },
-    ],
-  }
-
-  pageToken: string, The value of the nextToken from the previous result page.
-  maxResults: integer, Maximum number of results to return.
-
-Returns:
-  An object of the form:
-
-    { # Represents the list of DimensionValue resources.
-    "nextPageToken": "A String", # Continuation token used to page through dimension values. To retrieve the next page of results, set the next request's "pageToken" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.
-    "items": [ # The dimension values returned in this response.
-      { # Represents a DimensionValue resource.
-        "dimensionName": "A String", # Name of the dimension.
-        "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-        "etag": "A String", # ETag of this response for caching purposes.
-        "id": "A String", # The ID associated with the value if available.
-        "value": "A String", # The value of the dimension.
-      },
-    ],
-    "kind": "dfareporting#dimensionValueList", # Kind of list this is, in this case dfareporting#dimensionValueList.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="query_next">query_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/dfareporting_v1.files.html b/docs/dyn/dfareporting_v1.files.html
deleted file mode 100644
index 14464e0..0000000
--- a/docs/dyn/dfareporting_v1.files.html
+++ /dev/null
@@ -1,150 +0,0 @@
-<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="dfareporting_v1.html">DFA Reporting API</a> . <a href="dfareporting_v1.files.html">files</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#list">list(profileId, pageToken=None, sortField=None, maxResults=None, sortOrder=None)</a></code></p>
-<p class="firstline">Lists files for a user profile.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="list">list(profileId, pageToken=None, sortField=None, maxResults=None, sortOrder=None)</code>
-  <pre>Lists files for a user profile.
-
-Args:
-  profileId: string, The DFA profile id. (required)
-  pageToken: string, The value of the nextToken from the previous result page.
-  sortField: string, The field to sort the list by.
-    Allowed values
-      ID - Sort by file id.
-      LAST_MODIFIED_TIME - Sort by 'lastmodifiedAt' field.
-  maxResults: integer, Maximum number of results to return.
-  sortOrder: string, Order of sorted results, default is 'DESCENDING'.
-    Allowed values
-      ASCENDING - Ascending order.
-      DESCENDING - Descending order.
-
-Returns:
-  An object of the form:
-
-    { # Represents the list of File resources.
-    "nextPageToken": "A String", # Continuation token used to page through files. To retrieve the next page of results, set the next request's "pageToken" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.
-    "items": [ # The files returned in this response.
-      { # Represents a File resource. A File contains the meta-data for a report run. It shows the status of the run and holds the urls to the generated report data if the run is finished and the status is "REPORT_AVAILABLE".
-        "status": "A String", # The status of the report file, one of:
-            # - "PROCESSING"
-            # - "REPORT_AVAILABLE"
-            # - "FAILED"
-            # - "CANCELLED"
-        "kind": "dfareporting#file", # Kind of resource this is, in this case dfareporting#file.
-        "dateRange": { # The date range for which the file has report data.
-          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-        },
-        "fileName": "A String", # The file name of the file.
-        "etag": "A String", # ETag of this response for caching purposes.
-        "reportId": "A String", # The ID of the report this file was generated from.
-        "urls": { # The urls where the completed report file can be downloaded.
-          "csv": { # Urls for generated CSV data.
-            "browserUrl": "A String", # The url for downloading the report data through a browser.
-            "apiUrl": "A String", # The url for downloading the report data through the API.
-          },
-        },
-        "lastModifiedTime": "A String", # The timestamp in milliseconds since epoch when this file was last modified.
-        "id": "A String", # The unique ID of this report file.
-      },
-    ],
-    "kind": "dfareporting#fileList", # Kind of list this is, in this case dfareporting#fileList.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/dfareporting_v1.html b/docs/dyn/dfareporting_v1.html
deleted file mode 100644
index 2a207f9..0000000
--- a/docs/dyn/dfareporting_v1.html
+++ /dev/null
@@ -1,97 +0,0 @@
-<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="dfareporting_v1.html">DFA Reporting API</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="dfareporting_v1.dimensionValues.html">dimensionValues()</a></code>
-</p>
-<p class="firstline">Returns the dimensionValues Resource.</p>
-
-<p class="toc_element">
-  <code><a href="dfareporting_v1.files.html">files()</a></code>
-</p>
-<p class="firstline">Returns the files Resource.</p>
-
-<p class="toc_element">
-  <code><a href="dfareporting_v1.reports.html">reports()</a></code>
-</p>
-<p class="firstline">Returns the reports Resource.</p>
-
-<p class="toc_element">
-  <code><a href="dfareporting_v1.userProfiles.html">userProfiles()</a></code>
-</p>
-<p class="firstline">Returns the userProfiles Resource.</p>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/dfareporting_v1.reports.html b/docs/dyn/dfareporting_v1.reports.html
deleted file mode 100644
index fcf10d2..0000000
--- a/docs/dyn/dfareporting_v1.reports.html
+++ /dev/null
@@ -1,1069 +0,0 @@
-<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="dfareporting_v1.html">DFA Reporting API</a> . <a href="dfareporting_v1.reports.html">reports</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="dfareporting_v1.reports.files.html">files()</a></code>
-</p>
-<p class="firstline">Returns the files Resource.</p>
-
-<p class="toc_element">
-  <code><a href="#delete">delete(profileId, reportId)</a></code></p>
-<p class="firstline">Deletes a report by its id.</p>
-<p class="toc_element">
-  <code><a href="#get">get(profileId, reportId)</a></code></p>
-<p class="firstline">Retrieves a report by its id.</p>
-<p class="toc_element">
-  <code><a href="#insert">insert(profileId, body)</a></code></p>
-<p class="firstline">Creates a report.</p>
-<p class="toc_element">
-  <code><a href="#list">list(profileId, pageToken=None, sortField=None, maxResults=None, sortOrder=None)</a></code></p>
-<p class="firstline">Retrieves list of reports.</p>
-<p class="toc_element">
-  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
-<p class="firstline">Retrieves the next page of results.</p>
-<p class="toc_element">
-  <code><a href="#patch">patch(profileId, reportId, body)</a></code></p>
-<p class="firstline">Updates a report. This method supports patch semantics.</p>
-<p class="toc_element">
-  <code><a href="#run">run(profileId, reportId, synchronous=None)</a></code></p>
-<p class="firstline">Runs a report.</p>
-<p class="toc_element">
-  <code><a href="#update">update(profileId, reportId, body)</a></code></p>
-<p class="firstline">Updates a report.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="delete">delete(profileId, reportId)</code>
-  <pre>Deletes a report by its id.
-
-Args:
-  profileId: string, The DFA user profile id. (required)
-  reportId: string, The id of the report. (required)
-</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="get">get(profileId, reportId)</code>
-  <pre>Retrieves a report by its id.
-
-Args:
-  profileId: string, The DFA user profile id. (required)
-  reportId: string, The id of the report. (required)
-
-Returns:
-  An object of the form:
-
-    { # Represents a Report resource.
-      "kind": "dfareporting#report", # Kind of resource this is, in this case dfareporting#report.
-      "subAccountId": "A String", # The subbaccount id this report belongs to if applicable.
-      "name": "A String", # The name of the report.
-      "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
-        "startDate": "A String", # Start date of date range for which scheduled reports should be run.
-        "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
-            # - DAY_OF_MONTH
-            # - WEEK_OF_MONTH
-            # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
-        "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
-        "expirationDate": "A String", # The expiration date when the scheduled report stops running.
-        "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
-        "repeats": "A String", # The interval the report is repeated for, one of:
-            # - "DAILY", also requires field "every" to be set.
-            # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
-            # - "TWICE_A_MONTH"
-            # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
-            # - "QUARTERLY"
-            # - "YEARLY"
-        "repeatsOnWeekDays": [ # List of week days "WEEKLY" scheduled reports should run on.
-          "A String",
-        ],
-      },
-      "ownerProfileId": "A String", # The user profile id of the owner of this report.
-      "fileName": "A String", # The file name used when generating report files for this report.
-      "etag": "A String", # ETag of this response for caching purposes.
-      "criteria": { # The report criteria.
-        "activities": { # Activity group.
-          "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
-            { # Represents a DimensionValue resource.
-              "dimensionName": "A String", # Name of the dimension.
-              "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-              "etag": "A String", # ETag of this response for caching purposes.
-              "id": "A String", # The ID associated with the value if available.
-              "value": "A String", # The value of the dimension.
-            },
-          ],
-          "metricNames": [ # List of names of floodlight activity metrics.
-            "A String",
-          ],
-        },
-        "dimensions": [ # The list of dimensions the report should include.
-          { # Represents a sorted dimension.
-            "kind": "dfareporting#sortedDimension", # Kind of resource this is, in this case dfareporting#sortedDimension.
-            "name": "A String", # The name of the dimension.
-            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
-                # - "ASCENDING"
-                # - "DESCENDING"
-          },
-        ],
-        "metricNames": [ # The list of names of metrics the report should include.
-          "A String",
-        ],
-        "dateRange": { # The date range this report should be run for.
-          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
-              # - "TODAY"
-              # - "YESTERDAY"
-              # - "WEEK_TO_DATE"
-              # - "MONTH_TO_DATE"
-              # - "QUARTER_TO_DATE"
-              # - "YEAR_TO_DATE"
-              # - "PREVIOUS_WEEK"
-              # - "PREVIOUS_MONTH"
-              # - "PREVIOUS_QUARTER"
-              # - "PREVIOUS_YEAR"
-              # - "LAST_7_DAYS"
-              # - "LAST_30_DAYS"
-              # - "LAST_90_DAYS"
-              # - "LAST_365_DAYS"
-              # - "LAST_24_MONTHS"
-          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-        },
-        "dimensionFilters": [ # The list of filters dimensions are filtered on.
-            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
-          { # Represents a DimensionValue resource.
-            "dimensionName": "A String", # Name of the dimension.
-            "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-            "etag": "A String", # ETag of this response for caching purposes.
-            "id": "A String", # The ID associated with the value if available.
-            "value": "A String", # The value of the dimension.
-          },
-        ],
-        "customRichMediaEvents": { # Custom Rich Media Events group.
-          "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
-            { # Represents a DimensionValue resource.
-              "dimensionName": "A String", # Name of the dimension.
-              "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-              "etag": "A String", # ETag of this response for caching purposes.
-              "id": "A String", # The ID associated with the value if available.
-              "value": "A String", # The value of the dimension.
-            },
-          ],
-        },
-      },
-      "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
-      "type": "A String", # The type of the report, currently only "STANDARD" is supported.
-      "id": "A String", # The unique ID identifying this report resource.
-      "accountId": "A String", # The account id this report belongs to.
-    }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="insert">insert(profileId, body)</code>
-  <pre>Creates a report.
-
-Args:
-  profileId: string, The DFA user profile id. (required)
-  body: object, The request body. (required)
-    The object takes the form of:
-
-{ # Represents a Report resource.
-    "kind": "dfareporting#report", # Kind of resource this is, in this case dfareporting#report.
-    "subAccountId": "A String", # The subbaccount id this report belongs to if applicable.
-    "name": "A String", # The name of the report.
-    "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
-      "startDate": "A String", # Start date of date range for which scheduled reports should be run.
-      "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
-          # - DAY_OF_MONTH
-          # - WEEK_OF_MONTH
-          # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
-      "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
-      "expirationDate": "A String", # The expiration date when the scheduled report stops running.
-      "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
-      "repeats": "A String", # The interval the report is repeated for, one of:
-          # - "DAILY", also requires field "every" to be set.
-          # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
-          # - "TWICE_A_MONTH"
-          # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
-          # - "QUARTERLY"
-          # - "YEARLY"
-      "repeatsOnWeekDays": [ # List of week days "WEEKLY" scheduled reports should run on.
-        "A String",
-      ],
-    },
-    "ownerProfileId": "A String", # The user profile id of the owner of this report.
-    "fileName": "A String", # The file name used when generating report files for this report.
-    "etag": "A String", # ETag of this response for caching purposes.
-    "criteria": { # The report criteria.
-      "activities": { # Activity group.
-        "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
-          { # Represents a DimensionValue resource.
-            "dimensionName": "A String", # Name of the dimension.
-            "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-            "etag": "A String", # ETag of this response for caching purposes.
-            "id": "A String", # The ID associated with the value if available.
-            "value": "A String", # The value of the dimension.
-          },
-        ],
-        "metricNames": [ # List of names of floodlight activity metrics.
-          "A String",
-        ],
-      },
-      "dimensions": [ # The list of dimensions the report should include.
-        { # Represents a sorted dimension.
-          "kind": "dfareporting#sortedDimension", # Kind of resource this is, in this case dfareporting#sortedDimension.
-          "name": "A String", # The name of the dimension.
-          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
-              # - "ASCENDING"
-              # - "DESCENDING"
-        },
-      ],
-      "metricNames": [ # The list of names of metrics the report should include.
-        "A String",
-      ],
-      "dateRange": { # The date range this report should be run for.
-        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
-            # - "TODAY"
-            # - "YESTERDAY"
-            # - "WEEK_TO_DATE"
-            # - "MONTH_TO_DATE"
-            # - "QUARTER_TO_DATE"
-            # - "YEAR_TO_DATE"
-            # - "PREVIOUS_WEEK"
-            # - "PREVIOUS_MONTH"
-            # - "PREVIOUS_QUARTER"
-            # - "PREVIOUS_YEAR"
-            # - "LAST_7_DAYS"
-            # - "LAST_30_DAYS"
-            # - "LAST_90_DAYS"
-            # - "LAST_365_DAYS"
-            # - "LAST_24_MONTHS"
-        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-      },
-      "dimensionFilters": [ # The list of filters dimensions are filtered on.
-          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
-        { # Represents a DimensionValue resource.
-          "dimensionName": "A String", # Name of the dimension.
-          "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-          "etag": "A String", # ETag of this response for caching purposes.
-          "id": "A String", # The ID associated with the value if available.
-          "value": "A String", # The value of the dimension.
-        },
-      ],
-      "customRichMediaEvents": { # Custom Rich Media Events group.
-        "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
-          { # Represents a DimensionValue resource.
-            "dimensionName": "A String", # Name of the dimension.
-            "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-            "etag": "A String", # ETag of this response for caching purposes.
-            "id": "A String", # The ID associated with the value if available.
-            "value": "A String", # The value of the dimension.
-          },
-        ],
-      },
-    },
-    "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
-    "type": "A String", # The type of the report, currently only "STANDARD" is supported.
-    "id": "A String", # The unique ID identifying this report resource.
-    "accountId": "A String", # The account id this report belongs to.
-  }
-
-
-Returns:
-  An object of the form:
-
-    { # Represents a Report resource.
-      "kind": "dfareporting#report", # Kind of resource this is, in this case dfareporting#report.
-      "subAccountId": "A String", # The subbaccount id this report belongs to if applicable.
-      "name": "A String", # The name of the report.
-      "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
-        "startDate": "A String", # Start date of date range for which scheduled reports should be run.
-        "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
-            # - DAY_OF_MONTH
-            # - WEEK_OF_MONTH
-            # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
-        "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
-        "expirationDate": "A String", # The expiration date when the scheduled report stops running.
-        "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
-        "repeats": "A String", # The interval the report is repeated for, one of:
-            # - "DAILY", also requires field "every" to be set.
-            # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
-            # - "TWICE_A_MONTH"
-            # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
-            # - "QUARTERLY"
-            # - "YEARLY"
-        "repeatsOnWeekDays": [ # List of week days "WEEKLY" scheduled reports should run on.
-          "A String",
-        ],
-      },
-      "ownerProfileId": "A String", # The user profile id of the owner of this report.
-      "fileName": "A String", # The file name used when generating report files for this report.
-      "etag": "A String", # ETag of this response for caching purposes.
-      "criteria": { # The report criteria.
-        "activities": { # Activity group.
-          "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
-            { # Represents a DimensionValue resource.
-              "dimensionName": "A String", # Name of the dimension.
-              "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-              "etag": "A String", # ETag of this response for caching purposes.
-              "id": "A String", # The ID associated with the value if available.
-              "value": "A String", # The value of the dimension.
-            },
-          ],
-          "metricNames": [ # List of names of floodlight activity metrics.
-            "A String",
-          ],
-        },
-        "dimensions": [ # The list of dimensions the report should include.
-          { # Represents a sorted dimension.
-            "kind": "dfareporting#sortedDimension", # Kind of resource this is, in this case dfareporting#sortedDimension.
-            "name": "A String", # The name of the dimension.
-            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
-                # - "ASCENDING"
-                # - "DESCENDING"
-          },
-        ],
-        "metricNames": [ # The list of names of metrics the report should include.
-          "A String",
-        ],
-        "dateRange": { # The date range this report should be run for.
-          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
-              # - "TODAY"
-              # - "YESTERDAY"
-              # - "WEEK_TO_DATE"
-              # - "MONTH_TO_DATE"
-              # - "QUARTER_TO_DATE"
-              # - "YEAR_TO_DATE"
-              # - "PREVIOUS_WEEK"
-              # - "PREVIOUS_MONTH"
-              # - "PREVIOUS_QUARTER"
-              # - "PREVIOUS_YEAR"
-              # - "LAST_7_DAYS"
-              # - "LAST_30_DAYS"
-              # - "LAST_90_DAYS"
-              # - "LAST_365_DAYS"
-              # - "LAST_24_MONTHS"
-          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-        },
-        "dimensionFilters": [ # The list of filters dimensions are filtered on.
-            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
-          { # Represents a DimensionValue resource.
-            "dimensionName": "A String", # Name of the dimension.
-            "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-            "etag": "A String", # ETag of this response for caching purposes.
-            "id": "A String", # The ID associated with the value if available.
-            "value": "A String", # The value of the dimension.
-          },
-        ],
-        "customRichMediaEvents": { # Custom Rich Media Events group.
-          "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
-            { # Represents a DimensionValue resource.
-              "dimensionName": "A String", # Name of the dimension.
-              "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-              "etag": "A String", # ETag of this response for caching purposes.
-              "id": "A String", # The ID associated with the value if available.
-              "value": "A String", # The value of the dimension.
-            },
-          ],
-        },
-      },
-      "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
-      "type": "A String", # The type of the report, currently only "STANDARD" is supported.
-      "id": "A String", # The unique ID identifying this report resource.
-      "accountId": "A String", # The account id this report belongs to.
-    }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list">list(profileId, pageToken=None, sortField=None, maxResults=None, sortOrder=None)</code>
-  <pre>Retrieves list of reports.
-
-Args:
-  profileId: string, The DFA user profile id. (required)
-  pageToken: string, The value of the nextToken from the previous result page.
-  sortField: string, The field to sort the list by.
-    Allowed values
-      ID - Sort by report id.
-      LAST_MODIFIED_TIME - Sort by 'lastModifiedTime' field.
-      NAME - Sort by display name of reports.
-  maxResults: integer, Maximum number of results to return.
-  sortOrder: string, Order of sorted results, default is 'DESCENDING'.
-    Allowed values
-      ASCENDING - Ascending order.
-      DESCENDING - Descending order.
-
-Returns:
-  An object of the form:
-
-    { # Represents the list of reports.
-    "nextPageToken": "A String", # Continuation token used to page through reports. To retrieve the next page of results, set the next request's "pageToken" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.
-    "items": [ # The reports returned in this response.
-      { # Represents a Report resource.
-          "kind": "dfareporting#report", # Kind of resource this is, in this case dfareporting#report.
-          "subAccountId": "A String", # The subbaccount id this report belongs to if applicable.
-          "name": "A String", # The name of the report.
-          "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
-            "startDate": "A String", # Start date of date range for which scheduled reports should be run.
-            "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
-                # - DAY_OF_MONTH
-                # - WEEK_OF_MONTH
-                # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
-            "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
-            "expirationDate": "A String", # The expiration date when the scheduled report stops running.
-            "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
-            "repeats": "A String", # The interval the report is repeated for, one of:
-                # - "DAILY", also requires field "every" to be set.
-                # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
-                # - "TWICE_A_MONTH"
-                # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
-                # - "QUARTERLY"
-                # - "YEARLY"
-            "repeatsOnWeekDays": [ # List of week days "WEEKLY" scheduled reports should run on.
-              "A String",
-            ],
-          },
-          "ownerProfileId": "A String", # The user profile id of the owner of this report.
-          "fileName": "A String", # The file name used when generating report files for this report.
-          "etag": "A String", # ETag of this response for caching purposes.
-          "criteria": { # The report criteria.
-            "activities": { # Activity group.
-              "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
-                { # Represents a DimensionValue resource.
-                  "dimensionName": "A String", # Name of the dimension.
-                  "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-                  "etag": "A String", # ETag of this response for caching purposes.
-                  "id": "A String", # The ID associated with the value if available.
-                  "value": "A String", # The value of the dimension.
-                },
-              ],
-              "metricNames": [ # List of names of floodlight activity metrics.
-                "A String",
-              ],
-            },
-            "dimensions": [ # The list of dimensions the report should include.
-              { # Represents a sorted dimension.
-                "kind": "dfareporting#sortedDimension", # Kind of resource this is, in this case dfareporting#sortedDimension.
-                "name": "A String", # The name of the dimension.
-                "sortOrder": "A String", # An optional sort order for the dimension column, one of:
-                    # - "ASCENDING"
-                    # - "DESCENDING"
-              },
-            ],
-            "metricNames": [ # The list of names of metrics the report should include.
-              "A String",
-            ],
-            "dateRange": { # The date range this report should be run for.
-              "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-              "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
-                  # - "TODAY"
-                  # - "YESTERDAY"
-                  # - "WEEK_TO_DATE"
-                  # - "MONTH_TO_DATE"
-                  # - "QUARTER_TO_DATE"
-                  # - "YEAR_TO_DATE"
-                  # - "PREVIOUS_WEEK"
-                  # - "PREVIOUS_MONTH"
-                  # - "PREVIOUS_QUARTER"
-                  # - "PREVIOUS_YEAR"
-                  # - "LAST_7_DAYS"
-                  # - "LAST_30_DAYS"
-                  # - "LAST_90_DAYS"
-                  # - "LAST_365_DAYS"
-                  # - "LAST_24_MONTHS"
-              "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-            },
-            "dimensionFilters": [ # The list of filters dimensions are filtered on.
-                # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
-              { # Represents a DimensionValue resource.
-                "dimensionName": "A String", # Name of the dimension.
-                "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-                "etag": "A String", # ETag of this response for caching purposes.
-                "id": "A String", # The ID associated with the value if available.
-                "value": "A String", # The value of the dimension.
-              },
-            ],
-            "customRichMediaEvents": { # Custom Rich Media Events group.
-              "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
-                { # Represents a DimensionValue resource.
-                  "dimensionName": "A String", # Name of the dimension.
-                  "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-                  "etag": "A String", # ETag of this response for caching purposes.
-                  "id": "A String", # The ID associated with the value if available.
-                  "value": "A String", # The value of the dimension.
-                },
-              ],
-            },
-          },
-          "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
-          "type": "A String", # The type of the report, currently only "STANDARD" is supported.
-          "id": "A String", # The unique ID identifying this report resource.
-          "accountId": "A String", # The account id this report belongs to.
-        },
-    ],
-    "kind": "dfareporting#reportList", # Kind of list this is, in this case dfareporting#reportList.
-    "etag": "A String", # ETag of this response for caching purposes.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
-  <pre>Retrieves the next page of results.
-
-Args:
-  previous_request: The request for the previous page. (required)
-  previous_response: The response from the request for the previous page. (required)
-
-Returns:
-  A request object that you can call 'execute()' on to request the next
-  page. Returns None if there are no more items in the collection.
-      </pre>
-</div>
-
-<div class="method">
-    <code class="details" id="patch">patch(profileId, reportId, body)</code>
-  <pre>Updates a report. This method supports patch semantics.
-
-Args:
-  profileId: string, The DFA user profile id. (required)
-  reportId: string, The id of the report. (required)
-  body: object, The request body. (required)
-    The object takes the form of:
-
-{ # Represents a Report resource.
-    "kind": "dfareporting#report", # Kind of resource this is, in this case dfareporting#report.
-    "subAccountId": "A String", # The subbaccount id this report belongs to if applicable.
-    "name": "A String", # The name of the report.
-    "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
-      "startDate": "A String", # Start date of date range for which scheduled reports should be run.
-      "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
-          # - DAY_OF_MONTH
-          # - WEEK_OF_MONTH
-          # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
-      "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
-      "expirationDate": "A String", # The expiration date when the scheduled report stops running.
-      "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
-      "repeats": "A String", # The interval the report is repeated for, one of:
-          # - "DAILY", also requires field "every" to be set.
-          # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
-          # - "TWICE_A_MONTH"
-          # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
-          # - "QUARTERLY"
-          # - "YEARLY"
-      "repeatsOnWeekDays": [ # List of week days "WEEKLY" scheduled reports should run on.
-        "A String",
-      ],
-    },
-    "ownerProfileId": "A String", # The user profile id of the owner of this report.
-    "fileName": "A String", # The file name used when generating report files for this report.
-    "etag": "A String", # ETag of this response for caching purposes.
-    "criteria": { # The report criteria.
-      "activities": { # Activity group.
-        "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
-          { # Represents a DimensionValue resource.
-            "dimensionName": "A String", # Name of the dimension.
-            "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-            "etag": "A String", # ETag of this response for caching purposes.
-            "id": "A String", # The ID associated with the value if available.
-            "value": "A String", # The value of the dimension.
-          },
-        ],
-        "metricNames": [ # List of names of floodlight activity metrics.
-          "A String",
-        ],
-      },
-      "dimensions": [ # The list of dimensions the report should include.
-        { # Represents a sorted dimension.
-          "kind": "dfareporting#sortedDimension", # Kind of resource this is, in this case dfareporting#sortedDimension.
-          "name": "A String", # The name of the dimension.
-          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
-              # - "ASCENDING"
-              # - "DESCENDING"
-        },
-      ],
-      "metricNames": [ # The list of names of metrics the report should include.
-        "A String",
-      ],
-      "dateRange": { # The date range this report should be run for.
-        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
-            # - "TODAY"
-            # - "YESTERDAY"
-            # - "WEEK_TO_DATE"
-            # - "MONTH_TO_DATE"
-            # - "QUARTER_TO_DATE"
-            # - "YEAR_TO_DATE"
-            # - "PREVIOUS_WEEK"
-            # - "PREVIOUS_MONTH"
-            # - "PREVIOUS_QUARTER"
-            # - "PREVIOUS_YEAR"
-            # - "LAST_7_DAYS"
-            # - "LAST_30_DAYS"
-            # - "LAST_90_DAYS"
-            # - "LAST_365_DAYS"
-            # - "LAST_24_MONTHS"
-        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-      },
-      "dimensionFilters": [ # The list of filters dimensions are filtered on.
-          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
-        { # Represents a DimensionValue resource.
-          "dimensionName": "A String", # Name of the dimension.
-          "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-          "etag": "A String", # ETag of this response for caching purposes.
-          "id": "A String", # The ID associated with the value if available.
-          "value": "A String", # The value of the dimension.
-        },
-      ],
-      "customRichMediaEvents": { # Custom Rich Media Events group.
-        "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
-          { # Represents a DimensionValue resource.
-            "dimensionName": "A String", # Name of the dimension.
-            "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-            "etag": "A String", # ETag of this response for caching purposes.
-            "id": "A String", # The ID associated with the value if available.
-            "value": "A String", # The value of the dimension.
-          },
-        ],
-      },
-    },
-    "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
-    "type": "A String", # The type of the report, currently only "STANDARD" is supported.
-    "id": "A String", # The unique ID identifying this report resource.
-    "accountId": "A String", # The account id this report belongs to.
-  }
-
-
-Returns:
-  An object of the form:
-
-    { # Represents a Report resource.
-      "kind": "dfareporting#report", # Kind of resource this is, in this case dfareporting#report.
-      "subAccountId": "A String", # The subbaccount id this report belongs to if applicable.
-      "name": "A String", # The name of the report.
-      "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
-        "startDate": "A String", # Start date of date range for which scheduled reports should be run.
-        "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
-            # - DAY_OF_MONTH
-            # - WEEK_OF_MONTH
-            # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
-        "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
-        "expirationDate": "A String", # The expiration date when the scheduled report stops running.
-        "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
-        "repeats": "A String", # The interval the report is repeated for, one of:
-            # - "DAILY", also requires field "every" to be set.
-            # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
-            # - "TWICE_A_MONTH"
-            # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
-            # - "QUARTERLY"
-            # - "YEARLY"
-        "repeatsOnWeekDays": [ # List of week days "WEEKLY" scheduled reports should run on.
-          "A String",
-        ],
-      },
-      "ownerProfileId": "A String", # The user profile id of the owner of this report.
-      "fileName": "A String", # The file name used when generating report files for this report.
-      "etag": "A String", # ETag of this response for caching purposes.
-      "criteria": { # The report criteria.
-        "activities": { # Activity group.
-          "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
-            { # Represents a DimensionValue resource.
-              "dimensionName": "A String", # Name of the dimension.
-              "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-              "etag": "A String", # ETag of this response for caching purposes.
-              "id": "A String", # The ID associated with the value if available.
-              "value": "A String", # The value of the dimension.
-            },
-          ],
-          "metricNames": [ # List of names of floodlight activity metrics.
-            "A String",
-          ],
-        },
-        "dimensions": [ # The list of dimensions the report should include.
-          { # Represents a sorted dimension.
-            "kind": "dfareporting#sortedDimension", # Kind of resource this is, in this case dfareporting#sortedDimension.
-            "name": "A String", # The name of the dimension.
-            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
-                # - "ASCENDING"
-                # - "DESCENDING"
-          },
-        ],
-        "metricNames": [ # The list of names of metrics the report should include.
-          "A String",
-        ],
-        "dateRange": { # The date range this report should be run for.
-          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
-              # - "TODAY"
-              # - "YESTERDAY"
-              # - "WEEK_TO_DATE"
-              # - "MONTH_TO_DATE"
-              # - "QUARTER_TO_DATE"
-              # - "YEAR_TO_DATE"
-              # - "PREVIOUS_WEEK"
-              # - "PREVIOUS_MONTH"
-              # - "PREVIOUS_QUARTER"
-              # - "PREVIOUS_YEAR"
-              # - "LAST_7_DAYS"
-              # - "LAST_30_DAYS"
-              # - "LAST_90_DAYS"
-              # - "LAST_365_DAYS"
-              # - "LAST_24_MONTHS"
-          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-        },
-        "dimensionFilters": [ # The list of filters dimensions are filtered on.
-            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
-          { # Represents a DimensionValue resource.
-            "dimensionName": "A String", # Name of the dimension.
-            "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-            "etag": "A String", # ETag of this response for caching purposes.
-            "id": "A String", # The ID associated with the value if available.
-            "value": "A String", # The value of the dimension.
-          },
-        ],
-        "customRichMediaEvents": { # Custom Rich Media Events group.
-          "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
-            { # Represents a DimensionValue resource.
-              "dimensionName": "A String", # Name of the dimension.
-              "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-              "etag": "A String", # ETag of this response for caching purposes.
-              "id": "A String", # The ID associated with the value if available.
-              "value": "A String", # The value of the dimension.
-            },
-          ],
-        },
-      },
-      "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
-      "type": "A String", # The type of the report, currently only "STANDARD" is supported.
-      "id": "A String", # The unique ID identifying this report resource.
-      "accountId": "A String", # The account id this report belongs to.
-    }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="run">run(profileId, reportId, synchronous=None)</code>
-  <pre>Runs a report.
-
-Args:
-  profileId: string, The DFA profile id. (required)
-  reportId: string, The id of the report. (required)
-  synchronous: boolean, If set and true, tries to run the report synchronously.
-
-Returns:
-  An object of the form:
-
-    { # Represents a File resource. A File contains the meta-data for a report run. It shows the status of the run and holds the urls to the generated report data if the run is finished and the status is "REPORT_AVAILABLE".
-    "status": "A String", # The status of the report file, one of:
-        # - "PROCESSING"
-        # - "REPORT_AVAILABLE"
-        # - "FAILED"
-        # - "CANCELLED"
-    "kind": "dfareporting#file", # Kind of resource this is, in this case dfareporting#file.
-    "dateRange": { # The date range for which the file has report data.
-      "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-      "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-    },
-    "fileName": "A String", # The file name of the file.
-    "etag": "A String", # ETag of this response for caching purposes.
-    "reportId": "A String", # The ID of the report this file was generated from.
-    "urls": { # The urls where the completed report file can be downloaded.
-      "csv": { # Urls for generated CSV data.
-        "browserUrl": "A String", # The url for downloading the report data through a browser.
-        "apiUrl": "A String", # The url for downloading the report data through the API.
-      },
-    },
-    "lastModifiedTime": "A String", # The timestamp in milliseconds since epoch when this file was last modified.
-    "id": "A String", # The unique ID of this report file.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="update">update(profileId, reportId, body)</code>
-  <pre>Updates a report.
-
-Args:
-  profileId: string, The DFA user profile id. (required)
-  reportId: string, The id of the report. (required)
-  body: object, The request body. (required)
-    The object takes the form of:
-
-{ # Represents a Report resource.
-    "kind": "dfareporting#report", # Kind of resource this is, in this case dfareporting#report.
-    "subAccountId": "A String", # The subbaccount id this report belongs to if applicable.
-    "name": "A String", # The name of the report.
-    "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
-      "startDate": "A String", # Start date of date range for which scheduled reports should be run.
-      "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
-          # - DAY_OF_MONTH
-          # - WEEK_OF_MONTH
-          # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
-      "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
-      "expirationDate": "A String", # The expiration date when the scheduled report stops running.
-      "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
-      "repeats": "A String", # The interval the report is repeated for, one of:
-          # - "DAILY", also requires field "every" to be set.
-          # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
-          # - "TWICE_A_MONTH"
-          # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
-          # - "QUARTERLY"
-          # - "YEARLY"
-      "repeatsOnWeekDays": [ # List of week days "WEEKLY" scheduled reports should run on.
-        "A String",
-      ],
-    },
-    "ownerProfileId": "A String", # The user profile id of the owner of this report.
-    "fileName": "A String", # The file name used when generating report files for this report.
-    "etag": "A String", # ETag of this response for caching purposes.
-    "criteria": { # The report criteria.
-      "activities": { # Activity group.
-        "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
-          { # Represents a DimensionValue resource.
-            "dimensionName": "A String", # Name of the dimension.
-            "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-            "etag": "A String", # ETag of this response for caching purposes.
-            "id": "A String", # The ID associated with the value if available.
-            "value": "A String", # The value of the dimension.
-          },
-        ],
-        "metricNames": [ # List of names of floodlight activity metrics.
-          "A String",
-        ],
-      },
-      "dimensions": [ # The list of dimensions the report should include.
-        { # Represents a sorted dimension.
-          "kind": "dfareporting#sortedDimension", # Kind of resource this is, in this case dfareporting#sortedDimension.
-          "name": "A String", # The name of the dimension.
-          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
-              # - "ASCENDING"
-              # - "DESCENDING"
-        },
-      ],
-      "metricNames": [ # The list of names of metrics the report should include.
-        "A String",
-      ],
-      "dateRange": { # The date range this report should be run for.
-        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
-            # - "TODAY"
-            # - "YESTERDAY"
-            # - "WEEK_TO_DATE"
-            # - "MONTH_TO_DATE"
-            # - "QUARTER_TO_DATE"
-            # - "YEAR_TO_DATE"
-            # - "PREVIOUS_WEEK"
-            # - "PREVIOUS_MONTH"
-            # - "PREVIOUS_QUARTER"
-            # - "PREVIOUS_YEAR"
-            # - "LAST_7_DAYS"
-            # - "LAST_30_DAYS"
-            # - "LAST_90_DAYS"
-            # - "LAST_365_DAYS"
-            # - "LAST_24_MONTHS"
-        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-      },
-      "dimensionFilters": [ # The list of filters dimensions are filtered on.
-          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
-        { # Represents a DimensionValue resource.
-          "dimensionName": "A String", # Name of the dimension.
-          "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-          "etag": "A String", # ETag of this response for caching purposes.
-          "id": "A String", # The ID associated with the value if available.
-          "value": "A String", # The value of the dimension.
-        },
-      ],
-      "customRichMediaEvents": { # Custom Rich Media Events group.
-        "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
-          { # Represents a DimensionValue resource.
-            "dimensionName": "A String", # Name of the dimension.
-            "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-            "etag": "A String", # ETag of this response for caching purposes.
-            "id": "A String", # The ID associated with the value if available.
-            "value": "A String", # The value of the dimension.
-          },
-        ],
-      },
-    },
-    "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
-    "type": "A String", # The type of the report, currently only "STANDARD" is supported.
-    "id": "A String", # The unique ID identifying this report resource.
-    "accountId": "A String", # The account id this report belongs to.
-  }
-
-
-Returns:
-  An object of the form:
-
-    { # Represents a Report resource.
-      "kind": "dfareporting#report", # Kind of resource this is, in this case dfareporting#report.
-      "subAccountId": "A String", # The subbaccount id this report belongs to if applicable.
-      "name": "A String", # The name of the report.
-      "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
-        "startDate": "A String", # Start date of date range for which scheduled reports should be run.
-        "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
-            # - DAY_OF_MONTH
-            # - WEEK_OF_MONTH
-            # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
-        "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
-        "expirationDate": "A String", # The expiration date when the scheduled report stops running.
-        "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
-        "repeats": "A String", # The interval the report is repeated for, one of:
-            # - "DAILY", also requires field "every" to be set.
-            # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
-            # - "TWICE_A_MONTH"
-            # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
-            # - "QUARTERLY"
-            # - "YEARLY"
-        "repeatsOnWeekDays": [ # List of week days "WEEKLY" scheduled reports should run on.
-          "A String",
-        ],
-      },
-      "ownerProfileId": "A String", # The user profile id of the owner of this report.
-      "fileName": "A String", # The file name used when generating report files for this report.
-      "etag": "A String", # ETag of this response for caching purposes.
-      "criteria": { # The report criteria.
-        "activities": { # Activity group.
-          "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
-            { # Represents a DimensionValue resource.
-              "dimensionName": "A String", # Name of the dimension.
-              "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-              "etag": "A String", # ETag of this response for caching purposes.
-              "id": "A String", # The ID associated with the value if available.
-              "value": "A String", # The value of the dimension.
-            },
-          ],
-          "metricNames": [ # List of names of floodlight activity metrics.
-            "A String",
-          ],
-        },
-        "dimensions": [ # The list of dimensions the report should include.
-          { # Represents a sorted dimension.
-            "kind": "dfareporting#sortedDimension", # Kind of resource this is, in this case dfareporting#sortedDimension.
-            "name": "A String", # The name of the dimension.
-            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
-                # - "ASCENDING"
-                # - "DESCENDING"
-          },
-        ],
-        "metricNames": [ # The list of names of metrics the report should include.
-          "A String",
-        ],
-        "dateRange": { # The date range this report should be run for.
-          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
-              # - "TODAY"
-              # - "YESTERDAY"
-              # - "WEEK_TO_DATE"
-              # - "MONTH_TO_DATE"
-              # - "QUARTER_TO_DATE"
-              # - "YEAR_TO_DATE"
-              # - "PREVIOUS_WEEK"
-              # - "PREVIOUS_MONTH"
-              # - "PREVIOUS_QUARTER"
-              # - "PREVIOUS_YEAR"
-              # - "LAST_7_DAYS"
-              # - "LAST_30_DAYS"
-              # - "LAST_90_DAYS"
-              # - "LAST_365_DAYS"
-              # - "LAST_24_MONTHS"
-          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
-        },
-        "dimensionFilters": [ # The list of filters dimensions are filtered on.
-            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
-          { # Represents a DimensionValue resource.
-            "dimensionName": "A String", # Name of the dimension.
-            "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-            "etag": "A String", # ETag of this response for caching purposes.
-            "id": "A String", # The ID associated with the value if available.
-            "value": "A String", # The value of the dimension.
-          },
-        ],
-        "customRichMediaEvents": { # Custom Rich Media Events group.
-          "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
-            { # Represents a DimensionValue resource.
-              "dimensionName": "A String", # Name of the dimension.
-              "kind": "dfareporting#dimensionValue", # Kind of resource this is, in this case dfareporting#dimensionValue.
-              "etag": "A String", # ETag of this response for caching purposes.
-              "id": "A String", # The ID associated with the value if available.
-              "value": "A String", # The value of the dimension.
-            },
-          ],
-        },
-      },
-      "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
-      "type": "A String", # The type of the report, currently only "STANDARD" is supported.
-      "id": "A String", # The unique ID identifying this report resource.
-      "accountId": "A String", # The account id this report belongs to.
-    }</pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/dfareporting_v1.reports.files.html b/docs/dyn/dfareporting_v1_1.reports.files.html
similarity index 61%
rename from docs/dyn/dfareporting_v1.reports.files.html
rename to docs/dyn/dfareporting_v1_1.reports.files.html
index 47a5cb7..630fb89 100644
--- a/docs/dyn/dfareporting_v1.reports.files.html
+++ b/docs/dyn/dfareporting_v1_1.reports.files.html
@@ -72,7 +72,7 @@
 
 </style>
 
-<h1><a href="dfareporting_v1.html">DFA Reporting API</a> . <a href="dfareporting_v1.reports.html">reports</a> . <a href="dfareporting_v1.reports.files.html">files</a></h1>
+<h1><a href="dfareporting_v1_1.html">DFA Reporting API</a> . <a href="dfareporting_v1_1.reports.html">reports</a> . <a href="dfareporting_v1_1.reports.files.html">files</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
   <code><a href="#get">get(profileId, reportId, fileId)</a></code></p>
@@ -89,9 +89,9 @@
   <pre>Retrieves a report file.
 
 Args:
-  profileId: string, The DFA profile id. (required)
-  reportId: string, The id of the report. (required)
-  fileId: string, The id of the report file. (required)
+  profileId: string, The DFA profile ID. (required)
+  reportId: string, The ID of the report. (required)
+  fileId: string, The ID of the report file. (required)
 
 Returns:
   An object of the form:
@@ -102,19 +102,35 @@
         # - "REPORT_AVAILABLE"
         # - "FAILED"
         # - "CANCELLED"
-    "kind": "dfareporting#file", # Kind of resource this is, in this case dfareporting#file.
-    "dateRange": { # The date range for which the file has report data.
+    "kind": "dfareporting#file", # The kind of resource this is, in this case dfareporting#file.
+    "format": "A String", # The output format of the report. Only available once the file is available.
+    "dateRange": { # Represents a date range. # The date range for which the file has report data. The date range will always be the absolute date range for which the report is run.
       "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+      "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
       "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+      "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+          # - "TODAY"
+          # - "YESTERDAY"
+          # - "WEEK_TO_DATE"
+          # - "MONTH_TO_DATE"
+          # - "QUARTER_TO_DATE"
+          # - "YEAR_TO_DATE"
+          # - "PREVIOUS_WEEK"
+          # - "PREVIOUS_MONTH"
+          # - "PREVIOUS_QUARTER"
+          # - "PREVIOUS_YEAR"
+          # - "LAST_7_DAYS"
+          # - "LAST_30_DAYS"
+          # - "LAST_90_DAYS"
+          # - "LAST_365_DAYS"
+          # - "LAST_24_MONTHS"
     },
     "fileName": "A String", # The file name of the file.
-    "etag": "A String", # ETag of this response for caching purposes.
+    "etag": "A String", # The eTag of this response for caching purposes.
     "reportId": "A String", # The ID of the report this file was generated from.
     "urls": { # The urls where the completed report file can be downloaded.
-      "csv": { # Urls for generated CSV data.
-        "browserUrl": "A String", # The url for downloading the report data through a browser.
-        "apiUrl": "A String", # The url for downloading the report data through the API.
-      },
+      "browserUrl": "A String", # The url for downloading the report data through a browser.
+      "apiUrl": "A String", # The url for downloading the report data through the API.
     },
     "lastModifiedTime": "A String", # The timestamp in milliseconds since epoch when this file was last modified.
     "id": "A String", # The unique ID of this report file.
@@ -126,12 +142,12 @@
   <pre>Lists files for a report.
 
 Args:
-  profileId: string, The DFA profile id. (required)
-  reportId: string, The id of the parent report. (required)
+  profileId: string, The DFA profile ID. (required)
+  reportId: string, The ID of the parent report. (required)
   pageToken: string, The value of the nextToken from the previous result page.
-  sortField: string, The field to sort the list by.
+  sortField: string, The field by which to sort the list.
     Allowed values
-      ID - Sort by file id.
+      ID - Sort by file ID.
       LAST_MODIFIED_TIME - Sort by 'lastmodifiedAt' field.
   maxResults: integer, Maximum number of results to return.
   sortOrder: string, Order of sorted results, default is 'DESCENDING'.
@@ -151,26 +167,42 @@
             # - "REPORT_AVAILABLE"
             # - "FAILED"
             # - "CANCELLED"
-        "kind": "dfareporting#file", # Kind of resource this is, in this case dfareporting#file.
-        "dateRange": { # The date range for which the file has report data.
+        "kind": "dfareporting#file", # The kind of resource this is, in this case dfareporting#file.
+        "format": "A String", # The output format of the report. Only available once the file is available.
+        "dateRange": { # Represents a date range. # The date range for which the file has report data. The date range will always be the absolute date range for which the report is run.
           "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
           "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
         },
         "fileName": "A String", # The file name of the file.
-        "etag": "A String", # ETag of this response for caching purposes.
+        "etag": "A String", # The eTag of this response for caching purposes.
         "reportId": "A String", # The ID of the report this file was generated from.
         "urls": { # The urls where the completed report file can be downloaded.
-          "csv": { # Urls for generated CSV data.
-            "browserUrl": "A String", # The url for downloading the report data through a browser.
-            "apiUrl": "A String", # The url for downloading the report data through the API.
-          },
+          "browserUrl": "A String", # The url for downloading the report data through a browser.
+          "apiUrl": "A String", # The url for downloading the report data through the API.
         },
         "lastModifiedTime": "A String", # The timestamp in milliseconds since epoch when this file was last modified.
         "id": "A String", # The unique ID of this report file.
       },
     ],
-    "kind": "dfareporting#fileList", # Kind of list this is, in this case dfareporting#fileList.
-    "etag": "A String", # ETag of this response for caching purposes.
+    "kind": "dfareporting#fileList", # The kind of list this is, in this case dfareporting#fileList.
+    "etag": "A String", # The eTag of this response for caching purposes.
   }</pre>
 </div>
 
diff --git a/docs/dyn/dfareporting_v1_1.reports.html b/docs/dyn/dfareporting_v1_1.reports.html
index e69de29..fa979c1 100644
--- a/docs/dyn/dfareporting_v1_1.reports.html
+++ b/docs/dyn/dfareporting_v1_1.reports.html
@@ -0,0 +1,3765 @@
+<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="dfareporting_v1_1.html">DFA Reporting API</a> . <a href="dfareporting_v1_1.reports.html">reports</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="dfareporting_v1_1.reports.files.html">files()</a></code>
+</p>
+<p class="firstline">Returns the files Resource.</p>
+
+<p class="toc_element">
+  <code><a href="#delete">delete(profileId, reportId)</a></code></p>
+<p class="firstline">Deletes a report by its ID.</p>
+<p class="toc_element">
+  <code><a href="#get">get(profileId, reportId)</a></code></p>
+<p class="firstline">Retrieves a report by its ID.</p>
+<p class="toc_element">
+  <code><a href="#insert">insert(profileId, body)</a></code></p>
+<p class="firstline">Creates a report.</p>
+<p class="toc_element">
+  <code><a href="#list">list(profileId, pageToken=None, sortField=None, maxResults=None, sortOrder=None)</a></code></p>
+<p class="firstline">Retrieves list of reports.</p>
+<p class="toc_element">
+  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(profileId, reportId, body)</a></code></p>
+<p class="firstline">Updates a report. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#run">run(profileId, reportId, synchronous=None)</a></code></p>
+<p class="firstline">Runs a report.</p>
+<p class="toc_element">
+  <code><a href="#update">update(profileId, reportId, body)</a></code></p>
+<p class="firstline">Updates a report.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="delete">delete(profileId, reportId)</code>
+  <pre>Deletes a report by its ID.
+
+Args:
+  profileId: string, The DFA user profile ID. (required)
+  reportId: string, The ID of the report. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(profileId, reportId)</code>
+  <pre>Retrieves a report by its ID.
+
+Args:
+  profileId: string, The DFA user profile ID. (required)
+  reportId: string, The ID of the report. (required)
+
+Returns:
+  An object of the form:
+
+    { # Represents a Report resource.
+      "pathToConversionCriteria": { # The report criteria for a report of type "PATH_TO_CONVERSION".
+        "conversionDimensions": [ # The list of conversion dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "reportProperties": { # The properties of the report.
+          "clicksLookbackWindow": 42, # DFA checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+          "pivotOnInteractionPath": True or False, # Enable pivoting on interaction path.
+          "impressionsLookbackWindow": 42, # DFA checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+          "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+          "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+          "maximumInteractionGap": 42, # The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.
+          "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+          "maximumClickInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+          "maximumImpressionInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+        },
+        "perInteractionDimensions": [ # The list of per interaction dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "activityFilters": [ # The list of 'dfa:activity' values to filter on.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+        "customFloodlightVariables": [ # The list of custom floodlight variables the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+      },
+      "kind": "dfareporting#report", # The kind of resource this is, in this case dfareporting#report.
+      "subAccountId": "A String", # The subbaccount ID to which this report belongs if applicable.
+      "name": "A String", # The name of the report.
+      "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
+        "startDate": "A String", # Start date of date range for which scheduled reports should be run.
+        "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
+            # - DAY_OF_MONTH
+            # - WEEK_OF_MONTH
+            # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
+        "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
+        "expirationDate": "A String", # The expiration date when the scheduled report stops running.
+        "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
+        "repeats": "A String", # The interval for which the report is repeated, one of:
+            # - "DAILY", also requires field "every" to be set.
+            # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
+            # - "TWICE_A_MONTH"
+            # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
+            # - "QUARTERLY"
+            # - "YEARLY"
+        "repeatsOnWeekDays": [ # List of week days "WEEKLY" on which scheduled reports should run.
+          "A String",
+        ],
+      },
+      "format": "A String", # The output format of the report, currently only "CSV" is supported. If not specified, default format is "CSV". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. "CSV" will then be the fallback format.
+      "ownerProfileId": "A String", # The user profile id of the owner of this report.
+      "reachCriteria": { # The report criteria for a report of type "REACH".
+        "activities": { # Represents an activity group. # Activity group.
+          "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+          "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+          "metricNames": [ # List of names of floodlight activity metrics.
+            "A String",
+          ],
+        },
+        "dimensions": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "reachByFrequencyMetricNames": [ # The list of names of  Reach By Frequency metrics the report should include.
+          "A String",
+        ],
+        "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+          "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+          "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+        },
+      },
+      "floodlightCriteria": { # The report criteria for a report of type "FLOODLIGHT".
+        "dimensions": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+        "reportProperties": { # The properties of the report.
+          "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+          "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+          "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+        },
+      },
+      "activeGrpCriteria": { # The report criteria for a report of type "ACTIVE_GRP".
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+            # A valid active GRP report needs to have exactly one DimensionValue for the United States in addition to any advertiser or campaign dimension values.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "dimensions": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+      },
+      "delivery": { # The report's email delivery settings.
+        "message": "A String", # The message to be sent with each email.
+        "emailOwnerDeliveryType": "A String", # The type of delivery for the owner to receive, if enabled. One of:
+            # - "ATTACHMENT"  (support for additional options will be added later)
+        "recipients": [ # The list of recipients to which to email the report.
+          { # Represents a recipient.
+            "kind": "dfareporting#recipient", # The kind of resource this is, in this case dfareporting#recipient.
+            "deliveryType": "A String", # The delivery type for the recipient, one of:
+                # - "ATTACHMENT"  (support for additional options will be added later)
+            "email": "A String", # The email address of the recipient.
+          },
+        ],
+        "emailOwner": True or False, # Whether the report should be emailed to the report owner.
+      },
+      "etag": "A String", # The eTag of this response for caching purposes.
+      "criteria": { # The report criteria for a report of type "STANDARD".
+        "activities": { # Represents an activity group. # Activity group.
+          "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+          "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+          "metricNames": [ # List of names of floodlight activity metrics.
+            "A String",
+          ],
+        },
+        "dimensions": [ # The list of standard dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range for which this report should be run.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+          "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+          "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+        },
+      },
+      "id": "A String", # The unique ID identifying this report resource.
+      "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
+      "fileName": "A String", # The file name used when generating report files for this report.
+      "type": "A String", # The type of the report, one of:
+          # - STANDARD
+          # - REACH
+          # - ACTIVE_GRP
+          # - PATH_TO_CONVERSION
+          # - FLOODLIGHT
+          # - CROSS_DIMENSION_REACH
+      "crossDimensionReachCriteria": { # The report criteria for a report of type "CROSS_DIMENSION_REACH".
+        "breakdown": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "overlapMetricNames": [ # The list of names of overlap metrics the report should include.
+          "A String",
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "pivoted": True or False, # Whether the report is pivoted or not. Defaults to true.
+        "dimension": "A String", # The dimension option, one of:
+            # - "ADVERTISER"
+            # - "CAMPAIGN"
+            # - "SITE_BY_ADVERTISER"
+            # - "SITE_BY_CAMPAIGN"
+      },
+      "accountId": "A String", # The account ID to which this report belongs.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="insert">insert(profileId, body)</code>
+  <pre>Creates a report.
+
+Args:
+  profileId: string, The DFA user profile ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Report resource.
+    "pathToConversionCriteria": { # The report criteria for a report of type "PATH_TO_CONVERSION".
+      "conversionDimensions": [ # The list of conversion dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "reportProperties": { # The properties of the report.
+        "clicksLookbackWindow": 42, # DFA checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+        "pivotOnInteractionPath": True or False, # Enable pivoting on interaction path.
+        "impressionsLookbackWindow": 42, # DFA checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+        "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+        "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+        "maximumInteractionGap": 42, # The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.
+        "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+        "maximumClickInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+        "maximumImpressionInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+      },
+      "perInteractionDimensions": [ # The list of per interaction dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "activityFilters": [ # The list of 'dfa:activity' values to filter on.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+        "dimensionName": "A String", # The name of the dimension.
+        "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+        "etag": "A String", # The eTag of this response for caching purposes.
+        "id": "A String", # The ID associated with the value if available.
+        "value": "A String", # The value of the dimension.
+      },
+      "customFloodlightVariables": [ # The list of custom floodlight variables the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+    },
+    "kind": "dfareporting#report", # The kind of resource this is, in this case dfareporting#report.
+    "subAccountId": "A String", # The subbaccount ID to which this report belongs if applicable.
+    "name": "A String", # The name of the report.
+    "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
+      "startDate": "A String", # Start date of date range for which scheduled reports should be run.
+      "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
+          # - DAY_OF_MONTH
+          # - WEEK_OF_MONTH
+          # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
+      "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
+      "expirationDate": "A String", # The expiration date when the scheduled report stops running.
+      "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
+      "repeats": "A String", # The interval for which the report is repeated, one of:
+          # - "DAILY", also requires field "every" to be set.
+          # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
+          # - "TWICE_A_MONTH"
+          # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
+          # - "QUARTERLY"
+          # - "YEARLY"
+      "repeatsOnWeekDays": [ # List of week days "WEEKLY" on which scheduled reports should run.
+        "A String",
+      ],
+    },
+    "format": "A String", # The output format of the report, currently only "CSV" is supported. If not specified, default format is "CSV". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. "CSV" will then be the fallback format.
+    "ownerProfileId": "A String", # The user profile id of the owner of this report.
+    "reachCriteria": { # The report criteria for a report of type "REACH".
+      "activities": { # Represents an activity group. # Activity group.
+        "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+        "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "metricNames": [ # List of names of floodlight activity metrics.
+          "A String",
+        ],
+      },
+      "dimensions": [ # The list of dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "reachByFrequencyMetricNames": [ # The list of names of  Reach By Frequency metrics the report should include.
+        "A String",
+      ],
+      "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+        "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+        "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+      },
+    },
+    "floodlightCriteria": { # The report criteria for a report of type "FLOODLIGHT".
+      "dimensions": [ # The list of dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+        "dimensionName": "A String", # The name of the dimension.
+        "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+        "etag": "A String", # The eTag of this response for caching purposes.
+        "id": "A String", # The ID associated with the value if available.
+        "value": "A String", # The value of the dimension.
+      },
+      "reportProperties": { # The properties of the report.
+        "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+        "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+        "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+      },
+    },
+    "activeGrpCriteria": { # The report criteria for a report of type "ACTIVE_GRP".
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          # A valid active GRP report needs to have exactly one DimensionValue for the United States in addition to any advertiser or campaign dimension values.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "dimensions": [ # The list of dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+    },
+    "delivery": { # The report's email delivery settings.
+      "message": "A String", # The message to be sent with each email.
+      "emailOwnerDeliveryType": "A String", # The type of delivery for the owner to receive, if enabled. One of:
+          # - "ATTACHMENT"  (support for additional options will be added later)
+      "recipients": [ # The list of recipients to which to email the report.
+        { # Represents a recipient.
+          "kind": "dfareporting#recipient", # The kind of resource this is, in this case dfareporting#recipient.
+          "deliveryType": "A String", # The delivery type for the recipient, one of:
+              # - "ATTACHMENT"  (support for additional options will be added later)
+          "email": "A String", # The email address of the recipient.
+        },
+      ],
+      "emailOwner": True or False, # Whether the report should be emailed to the report owner.
+    },
+    "etag": "A String", # The eTag of this response for caching purposes.
+    "criteria": { # The report criteria for a report of type "STANDARD".
+      "activities": { # Represents an activity group. # Activity group.
+        "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+        "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "metricNames": [ # List of names of floodlight activity metrics.
+          "A String",
+        ],
+      },
+      "dimensions": [ # The list of standard dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range for which this report should be run.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+        "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+        "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+      },
+    },
+    "id": "A String", # The unique ID identifying this report resource.
+    "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
+    "fileName": "A String", # The file name used when generating report files for this report.
+    "type": "A String", # The type of the report, one of:
+        # - STANDARD
+        # - REACH
+        # - ACTIVE_GRP
+        # - PATH_TO_CONVERSION
+        # - FLOODLIGHT
+        # - CROSS_DIMENSION_REACH
+    "crossDimensionReachCriteria": { # The report criteria for a report of type "CROSS_DIMENSION_REACH".
+      "breakdown": [ # The list of dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "overlapMetricNames": [ # The list of names of overlap metrics the report should include.
+        "A String",
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "pivoted": True or False, # Whether the report is pivoted or not. Defaults to true.
+      "dimension": "A String", # The dimension option, one of:
+          # - "ADVERTISER"
+          # - "CAMPAIGN"
+          # - "SITE_BY_ADVERTISER"
+          # - "SITE_BY_CAMPAIGN"
+    },
+    "accountId": "A String", # The account ID to which this report belongs.
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # Represents a Report resource.
+      "pathToConversionCriteria": { # The report criteria for a report of type "PATH_TO_CONVERSION".
+        "conversionDimensions": [ # The list of conversion dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "reportProperties": { # The properties of the report.
+          "clicksLookbackWindow": 42, # DFA checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+          "pivotOnInteractionPath": True or False, # Enable pivoting on interaction path.
+          "impressionsLookbackWindow": 42, # DFA checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+          "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+          "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+          "maximumInteractionGap": 42, # The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.
+          "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+          "maximumClickInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+          "maximumImpressionInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+        },
+        "perInteractionDimensions": [ # The list of per interaction dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "activityFilters": [ # The list of 'dfa:activity' values to filter on.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+        "customFloodlightVariables": [ # The list of custom floodlight variables the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+      },
+      "kind": "dfareporting#report", # The kind of resource this is, in this case dfareporting#report.
+      "subAccountId": "A String", # The subbaccount ID to which this report belongs if applicable.
+      "name": "A String", # The name of the report.
+      "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
+        "startDate": "A String", # Start date of date range for which scheduled reports should be run.
+        "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
+            # - DAY_OF_MONTH
+            # - WEEK_OF_MONTH
+            # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
+        "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
+        "expirationDate": "A String", # The expiration date when the scheduled report stops running.
+        "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
+        "repeats": "A String", # The interval for which the report is repeated, one of:
+            # - "DAILY", also requires field "every" to be set.
+            # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
+            # - "TWICE_A_MONTH"
+            # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
+            # - "QUARTERLY"
+            # - "YEARLY"
+        "repeatsOnWeekDays": [ # List of week days "WEEKLY" on which scheduled reports should run.
+          "A String",
+        ],
+      },
+      "format": "A String", # The output format of the report, currently only "CSV" is supported. If not specified, default format is "CSV". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. "CSV" will then be the fallback format.
+      "ownerProfileId": "A String", # The user profile id of the owner of this report.
+      "reachCriteria": { # The report criteria for a report of type "REACH".
+        "activities": { # Represents an activity group. # Activity group.
+          "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+          "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+          "metricNames": [ # List of names of floodlight activity metrics.
+            "A String",
+          ],
+        },
+        "dimensions": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "reachByFrequencyMetricNames": [ # The list of names of  Reach By Frequency metrics the report should include.
+          "A String",
+        ],
+        "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+          "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+          "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+        },
+      },
+      "floodlightCriteria": { # The report criteria for a report of type "FLOODLIGHT".
+        "dimensions": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+        "reportProperties": { # The properties of the report.
+          "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+          "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+          "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+        },
+      },
+      "activeGrpCriteria": { # The report criteria for a report of type "ACTIVE_GRP".
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+            # A valid active GRP report needs to have exactly one DimensionValue for the United States in addition to any advertiser or campaign dimension values.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "dimensions": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+      },
+      "delivery": { # The report's email delivery settings.
+        "message": "A String", # The message to be sent with each email.
+        "emailOwnerDeliveryType": "A String", # The type of delivery for the owner to receive, if enabled. One of:
+            # - "ATTACHMENT"  (support for additional options will be added later)
+        "recipients": [ # The list of recipients to which to email the report.
+          { # Represents a recipient.
+            "kind": "dfareporting#recipient", # The kind of resource this is, in this case dfareporting#recipient.
+            "deliveryType": "A String", # The delivery type for the recipient, one of:
+                # - "ATTACHMENT"  (support for additional options will be added later)
+            "email": "A String", # The email address of the recipient.
+          },
+        ],
+        "emailOwner": True or False, # Whether the report should be emailed to the report owner.
+      },
+      "etag": "A String", # The eTag of this response for caching purposes.
+      "criteria": { # The report criteria for a report of type "STANDARD".
+        "activities": { # Represents an activity group. # Activity group.
+          "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+          "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+          "metricNames": [ # List of names of floodlight activity metrics.
+            "A String",
+          ],
+        },
+        "dimensions": [ # The list of standard dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range for which this report should be run.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+          "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+          "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+        },
+      },
+      "id": "A String", # The unique ID identifying this report resource.
+      "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
+      "fileName": "A String", # The file name used when generating report files for this report.
+      "type": "A String", # The type of the report, one of:
+          # - STANDARD
+          # - REACH
+          # - ACTIVE_GRP
+          # - PATH_TO_CONVERSION
+          # - FLOODLIGHT
+          # - CROSS_DIMENSION_REACH
+      "crossDimensionReachCriteria": { # The report criteria for a report of type "CROSS_DIMENSION_REACH".
+        "breakdown": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "overlapMetricNames": [ # The list of names of overlap metrics the report should include.
+          "A String",
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "pivoted": True or False, # Whether the report is pivoted or not. Defaults to true.
+        "dimension": "A String", # The dimension option, one of:
+            # - "ADVERTISER"
+            # - "CAMPAIGN"
+            # - "SITE_BY_ADVERTISER"
+            # - "SITE_BY_CAMPAIGN"
+      },
+      "accountId": "A String", # The account ID to which this report belongs.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(profileId, pageToken=None, sortField=None, maxResults=None, sortOrder=None)</code>
+  <pre>Retrieves list of reports.
+
+Args:
+  profileId: string, The DFA user profile ID. (required)
+  pageToken: string, The value of the nextToken from the previous result page.
+  sortField: string, The field by which to sort the list.
+    Allowed values
+      ID - Sort by report ID.
+      LAST_MODIFIED_TIME - Sort by 'lastModifiedTime' field.
+      NAME - Sort by name of reports.
+  maxResults: integer, Maximum number of results to return.
+  sortOrder: string, Order of sorted results, default is 'DESCENDING'.
+    Allowed values
+      ASCENDING - Ascending order.
+      DESCENDING - Descending order.
+
+Returns:
+  An object of the form:
+
+    { # Represents the list of reports.
+    "nextPageToken": "A String", # Continuation token used to page through reports. To retrieve the next page of results, set the next request's "pageToken" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted.
+    "items": [ # The reports returned in this response.
+      { # Represents a Report resource.
+          "pathToConversionCriteria": { # The report criteria for a report of type "PATH_TO_CONVERSION".
+            "conversionDimensions": [ # The list of conversion dimensions the report should include.
+              { # Represents a sorted dimension.
+                "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+                "name": "A String", # The name of the dimension.
+                "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                    # - "ASCENDING"
+                    # - "DESCENDING"
+              },
+            ],
+            "metricNames": [ # The list of names of metrics the report should include.
+              "A String",
+            ],
+            "dateRange": { # Represents a date range. # The date range this report should be run for.
+              "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+              "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+              "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+              "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+                  # - "TODAY"
+                  # - "YESTERDAY"
+                  # - "WEEK_TO_DATE"
+                  # - "MONTH_TO_DATE"
+                  # - "QUARTER_TO_DATE"
+                  # - "YEAR_TO_DATE"
+                  # - "PREVIOUS_WEEK"
+                  # - "PREVIOUS_MONTH"
+                  # - "PREVIOUS_QUARTER"
+                  # - "PREVIOUS_YEAR"
+                  # - "LAST_7_DAYS"
+                  # - "LAST_30_DAYS"
+                  # - "LAST_90_DAYS"
+                  # - "LAST_365_DAYS"
+                  # - "LAST_24_MONTHS"
+            },
+            "reportProperties": { # The properties of the report.
+              "clicksLookbackWindow": 42, # DFA checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+              "pivotOnInteractionPath": True or False, # Enable pivoting on interaction path.
+              "impressionsLookbackWindow": 42, # DFA checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+              "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+              "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+              "maximumInteractionGap": 42, # The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.
+              "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+              "maximumClickInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+              "maximumImpressionInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+            },
+            "perInteractionDimensions": [ # The list of per interaction dimensions the report should include.
+              { # Represents a sorted dimension.
+                "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+                "name": "A String", # The name of the dimension.
+                "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                    # - "ASCENDING"
+                    # - "DESCENDING"
+              },
+            ],
+            "activityFilters": [ # The list of 'dfa:activity' values to filter on.
+              { # Represents a DimensionValue resource.
+                "dimensionName": "A String", # The name of the dimension.
+                "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+                "etag": "A String", # The eTag of this response for caching purposes.
+                "id": "A String", # The ID associated with the value if available.
+                "value": "A String", # The value of the dimension.
+              },
+            ],
+            "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+            "customFloodlightVariables": [ # The list of custom floodlight variables the report should include.
+              { # Represents a sorted dimension.
+                "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+                "name": "A String", # The name of the dimension.
+                "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                    # - "ASCENDING"
+                    # - "DESCENDING"
+              },
+            ],
+          },
+          "kind": "dfareporting#report", # The kind of resource this is, in this case dfareporting#report.
+          "subAccountId": "A String", # The subbaccount ID to which this report belongs if applicable.
+          "name": "A String", # The name of the report.
+          "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
+            "startDate": "A String", # Start date of date range for which scheduled reports should be run.
+            "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
+                # - DAY_OF_MONTH
+                # - WEEK_OF_MONTH
+                # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
+            "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
+            "expirationDate": "A String", # The expiration date when the scheduled report stops running.
+            "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
+            "repeats": "A String", # The interval for which the report is repeated, one of:
+                # - "DAILY", also requires field "every" to be set.
+                # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
+                # - "TWICE_A_MONTH"
+                # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
+                # - "QUARTERLY"
+                # - "YEARLY"
+            "repeatsOnWeekDays": [ # List of week days "WEEKLY" on which scheduled reports should run.
+              "A String",
+            ],
+          },
+          "format": "A String", # The output format of the report, currently only "CSV" is supported. If not specified, default format is "CSV". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. "CSV" will then be the fallback format.
+          "ownerProfileId": "A String", # The user profile id of the owner of this report.
+          "reachCriteria": { # The report criteria for a report of type "REACH".
+            "activities": { # Represents an activity group. # Activity group.
+              "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+              "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+                { # Represents a DimensionValue resource.
+                  "dimensionName": "A String", # The name of the dimension.
+                  "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+                  "etag": "A String", # The eTag of this response for caching purposes.
+                  "id": "A String", # The ID associated with the value if available.
+                  "value": "A String", # The value of the dimension.
+                },
+              ],
+              "metricNames": [ # List of names of floodlight activity metrics.
+                "A String",
+              ],
+            },
+            "dimensions": [ # The list of dimensions the report should include.
+              { # Represents a sorted dimension.
+                "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+                "name": "A String", # The name of the dimension.
+                "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                    # - "ASCENDING"
+                    # - "DESCENDING"
+              },
+            ],
+            "metricNames": [ # The list of names of metrics the report should include.
+              "A String",
+            ],
+            "dateRange": { # Represents a date range. # The date range this report should be run for.
+              "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+              "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+              "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+              "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+                  # - "TODAY"
+                  # - "YESTERDAY"
+                  # - "WEEK_TO_DATE"
+                  # - "MONTH_TO_DATE"
+                  # - "QUARTER_TO_DATE"
+                  # - "YEAR_TO_DATE"
+                  # - "PREVIOUS_WEEK"
+                  # - "PREVIOUS_MONTH"
+                  # - "PREVIOUS_QUARTER"
+                  # - "PREVIOUS_YEAR"
+                  # - "LAST_7_DAYS"
+                  # - "LAST_30_DAYS"
+                  # - "LAST_90_DAYS"
+                  # - "LAST_365_DAYS"
+                  # - "LAST_24_MONTHS"
+            },
+            "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+                # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+              { # Represents a DimensionValue resource.
+                "dimensionName": "A String", # The name of the dimension.
+                "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+                "etag": "A String", # The eTag of this response for caching purposes.
+                "id": "A String", # The ID associated with the value if available.
+                "value": "A String", # The value of the dimension.
+              },
+            ],
+            "reachByFrequencyMetricNames": [ # The list of names of  Reach By Frequency metrics the report should include.
+              "A String",
+            ],
+            "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+              "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+              "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+                { # Represents a DimensionValue resource.
+                  "dimensionName": "A String", # The name of the dimension.
+                  "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+                  "etag": "A String", # The eTag of this response for caching purposes.
+                  "id": "A String", # The ID associated with the value if available.
+                  "value": "A String", # The value of the dimension.
+                },
+              ],
+            },
+          },
+          "floodlightCriteria": { # The report criteria for a report of type "FLOODLIGHT".
+            "dimensions": [ # The list of dimensions the report should include.
+              { # Represents a sorted dimension.
+                "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+                "name": "A String", # The name of the dimension.
+                "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                    # - "ASCENDING"
+                    # - "DESCENDING"
+              },
+            ],
+            "metricNames": [ # The list of names of metrics the report should include.
+              "A String",
+            ],
+            "dateRange": { # Represents a date range. # The date range this report should be run for.
+              "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+              "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+              "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+              "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+                  # - "TODAY"
+                  # - "YESTERDAY"
+                  # - "WEEK_TO_DATE"
+                  # - "MONTH_TO_DATE"
+                  # - "QUARTER_TO_DATE"
+                  # - "YEAR_TO_DATE"
+                  # - "PREVIOUS_WEEK"
+                  # - "PREVIOUS_MONTH"
+                  # - "PREVIOUS_QUARTER"
+                  # - "PREVIOUS_YEAR"
+                  # - "LAST_7_DAYS"
+                  # - "LAST_30_DAYS"
+                  # - "LAST_90_DAYS"
+                  # - "LAST_365_DAYS"
+                  # - "LAST_24_MONTHS"
+            },
+            "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+                # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+              { # Represents a DimensionValue resource.
+                "dimensionName": "A String", # The name of the dimension.
+                "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+                "etag": "A String", # The eTag of this response for caching purposes.
+                "id": "A String", # The ID associated with the value if available.
+                "value": "A String", # The value of the dimension.
+              },
+            ],
+            "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+            "reportProperties": { # The properties of the report.
+              "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+              "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+              "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+            },
+          },
+          "activeGrpCriteria": { # The report criteria for a report of type "ACTIVE_GRP".
+            "dateRange": { # Represents a date range. # The date range this report should be run for.
+              "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+              "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+              "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+              "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+                  # - "TODAY"
+                  # - "YESTERDAY"
+                  # - "WEEK_TO_DATE"
+                  # - "MONTH_TO_DATE"
+                  # - "QUARTER_TO_DATE"
+                  # - "YEAR_TO_DATE"
+                  # - "PREVIOUS_WEEK"
+                  # - "PREVIOUS_MONTH"
+                  # - "PREVIOUS_QUARTER"
+                  # - "PREVIOUS_YEAR"
+                  # - "LAST_7_DAYS"
+                  # - "LAST_30_DAYS"
+                  # - "LAST_90_DAYS"
+                  # - "LAST_365_DAYS"
+                  # - "LAST_24_MONTHS"
+            },
+            "metricNames": [ # The list of names of metrics the report should include.
+              "A String",
+            ],
+            "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+                # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+                # A valid active GRP report needs to have exactly one DimensionValue for the United States in addition to any advertiser or campaign dimension values.
+              { # Represents a DimensionValue resource.
+                "dimensionName": "A String", # The name of the dimension.
+                "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+                "etag": "A String", # The eTag of this response for caching purposes.
+                "id": "A String", # The ID associated with the value if available.
+                "value": "A String", # The value of the dimension.
+              },
+            ],
+            "dimensions": [ # The list of dimensions the report should include.
+              { # Represents a sorted dimension.
+                "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+                "name": "A String", # The name of the dimension.
+                "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                    # - "ASCENDING"
+                    # - "DESCENDING"
+              },
+            ],
+          },
+          "delivery": { # The report's email delivery settings.
+            "message": "A String", # The message to be sent with each email.
+            "emailOwnerDeliveryType": "A String", # The type of delivery for the owner to receive, if enabled. One of:
+                # - "ATTACHMENT"  (support for additional options will be added later)
+            "recipients": [ # The list of recipients to which to email the report.
+              { # Represents a recipient.
+                "kind": "dfareporting#recipient", # The kind of resource this is, in this case dfareporting#recipient.
+                "deliveryType": "A String", # The delivery type for the recipient, one of:
+                    # - "ATTACHMENT"  (support for additional options will be added later)
+                "email": "A String", # The email address of the recipient.
+              },
+            ],
+            "emailOwner": True or False, # Whether the report should be emailed to the report owner.
+          },
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "criteria": { # The report criteria for a report of type "STANDARD".
+            "activities": { # Represents an activity group. # Activity group.
+              "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+              "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+                { # Represents a DimensionValue resource.
+                  "dimensionName": "A String", # The name of the dimension.
+                  "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+                  "etag": "A String", # The eTag of this response for caching purposes.
+                  "id": "A String", # The ID associated with the value if available.
+                  "value": "A String", # The value of the dimension.
+                },
+              ],
+              "metricNames": [ # List of names of floodlight activity metrics.
+                "A String",
+              ],
+            },
+            "dimensions": [ # The list of standard dimensions the report should include.
+              { # Represents a sorted dimension.
+                "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+                "name": "A String", # The name of the dimension.
+                "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                    # - "ASCENDING"
+                    # - "DESCENDING"
+              },
+            ],
+            "metricNames": [ # The list of names of metrics the report should include.
+              "A String",
+            ],
+            "dateRange": { # Represents a date range. # The date range for which this report should be run.
+              "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+              "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+              "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+              "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+                  # - "TODAY"
+                  # - "YESTERDAY"
+                  # - "WEEK_TO_DATE"
+                  # - "MONTH_TO_DATE"
+                  # - "QUARTER_TO_DATE"
+                  # - "YEAR_TO_DATE"
+                  # - "PREVIOUS_WEEK"
+                  # - "PREVIOUS_MONTH"
+                  # - "PREVIOUS_QUARTER"
+                  # - "PREVIOUS_YEAR"
+                  # - "LAST_7_DAYS"
+                  # - "LAST_30_DAYS"
+                  # - "LAST_90_DAYS"
+                  # - "LAST_365_DAYS"
+                  # - "LAST_24_MONTHS"
+            },
+            "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+                # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+              { # Represents a DimensionValue resource.
+                "dimensionName": "A String", # The name of the dimension.
+                "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+                "etag": "A String", # The eTag of this response for caching purposes.
+                "id": "A String", # The ID associated with the value if available.
+                "value": "A String", # The value of the dimension.
+              },
+            ],
+            "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+              "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+              "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+                { # Represents a DimensionValue resource.
+                  "dimensionName": "A String", # The name of the dimension.
+                  "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+                  "etag": "A String", # The eTag of this response for caching purposes.
+                  "id": "A String", # The ID associated with the value if available.
+                  "value": "A String", # The value of the dimension.
+                },
+              ],
+            },
+          },
+          "id": "A String", # The unique ID identifying this report resource.
+          "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
+          "fileName": "A String", # The file name used when generating report files for this report.
+          "type": "A String", # The type of the report, one of:
+              # - STANDARD
+              # - REACH
+              # - ACTIVE_GRP
+              # - PATH_TO_CONVERSION
+              # - FLOODLIGHT
+              # - CROSS_DIMENSION_REACH
+          "crossDimensionReachCriteria": { # The report criteria for a report of type "CROSS_DIMENSION_REACH".
+            "breakdown": [ # The list of dimensions the report should include.
+              { # Represents a sorted dimension.
+                "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+                "name": "A String", # The name of the dimension.
+                "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                    # - "ASCENDING"
+                    # - "DESCENDING"
+              },
+            ],
+            "overlapMetricNames": [ # The list of names of overlap metrics the report should include.
+              "A String",
+            ],
+            "metricNames": [ # The list of names of metrics the report should include.
+              "A String",
+            ],
+            "dateRange": { # Represents a date range. # The date range this report should be run for.
+              "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+              "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+              "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+              "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+                  # - "TODAY"
+                  # - "YESTERDAY"
+                  # - "WEEK_TO_DATE"
+                  # - "MONTH_TO_DATE"
+                  # - "QUARTER_TO_DATE"
+                  # - "YEAR_TO_DATE"
+                  # - "PREVIOUS_WEEK"
+                  # - "PREVIOUS_MONTH"
+                  # - "PREVIOUS_QUARTER"
+                  # - "PREVIOUS_YEAR"
+                  # - "LAST_7_DAYS"
+                  # - "LAST_30_DAYS"
+                  # - "LAST_90_DAYS"
+                  # - "LAST_365_DAYS"
+                  # - "LAST_24_MONTHS"
+            },
+            "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+              { # Represents a DimensionValue resource.
+                "dimensionName": "A String", # The name of the dimension.
+                "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+                "etag": "A String", # The eTag of this response for caching purposes.
+                "id": "A String", # The ID associated with the value if available.
+                "value": "A String", # The value of the dimension.
+              },
+            ],
+            "pivoted": True or False, # Whether the report is pivoted or not. Defaults to true.
+            "dimension": "A String", # The dimension option, one of:
+                # - "ADVERTISER"
+                # - "CAMPAIGN"
+                # - "SITE_BY_ADVERTISER"
+                # - "SITE_BY_CAMPAIGN"
+          },
+          "accountId": "A String", # The account ID to which this report belongs.
+        },
+    ],
+    "kind": "dfareporting#reportList", # The kind of list this is, in this case dfareporting#reportList.
+    "etag": "A String", # The eTag of this response for caching purposes.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
+  <pre>Retrieves the next page of results.
+
+Args:
+  previous_request: The request for the previous page. (required)
+  previous_response: The response from the request for the previous page. (required)
+
+Returns:
+  A request object that you can call 'execute()' on to request the next
+  page. Returns None if there are no more items in the collection.
+      </pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(profileId, reportId, body)</code>
+  <pre>Updates a report. This method supports patch semantics.
+
+Args:
+  profileId: string, The DFA user profile ID. (required)
+  reportId: string, The ID of the report. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Report resource.
+    "pathToConversionCriteria": { # The report criteria for a report of type "PATH_TO_CONVERSION".
+      "conversionDimensions": [ # The list of conversion dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "reportProperties": { # The properties of the report.
+        "clicksLookbackWindow": 42, # DFA checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+        "pivotOnInteractionPath": True or False, # Enable pivoting on interaction path.
+        "impressionsLookbackWindow": 42, # DFA checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+        "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+        "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+        "maximumInteractionGap": 42, # The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.
+        "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+        "maximumClickInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+        "maximumImpressionInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+      },
+      "perInteractionDimensions": [ # The list of per interaction dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "activityFilters": [ # The list of 'dfa:activity' values to filter on.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+        "dimensionName": "A String", # The name of the dimension.
+        "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+        "etag": "A String", # The eTag of this response for caching purposes.
+        "id": "A String", # The ID associated with the value if available.
+        "value": "A String", # The value of the dimension.
+      },
+      "customFloodlightVariables": [ # The list of custom floodlight variables the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+    },
+    "kind": "dfareporting#report", # The kind of resource this is, in this case dfareporting#report.
+    "subAccountId": "A String", # The subbaccount ID to which this report belongs if applicable.
+    "name": "A String", # The name of the report.
+    "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
+      "startDate": "A String", # Start date of date range for which scheduled reports should be run.
+      "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
+          # - DAY_OF_MONTH
+          # - WEEK_OF_MONTH
+          # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
+      "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
+      "expirationDate": "A String", # The expiration date when the scheduled report stops running.
+      "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
+      "repeats": "A String", # The interval for which the report is repeated, one of:
+          # - "DAILY", also requires field "every" to be set.
+          # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
+          # - "TWICE_A_MONTH"
+          # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
+          # - "QUARTERLY"
+          # - "YEARLY"
+      "repeatsOnWeekDays": [ # List of week days "WEEKLY" on which scheduled reports should run.
+        "A String",
+      ],
+    },
+    "format": "A String", # The output format of the report, currently only "CSV" is supported. If not specified, default format is "CSV". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. "CSV" will then be the fallback format.
+    "ownerProfileId": "A String", # The user profile id of the owner of this report.
+    "reachCriteria": { # The report criteria for a report of type "REACH".
+      "activities": { # Represents an activity group. # Activity group.
+        "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+        "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "metricNames": [ # List of names of floodlight activity metrics.
+          "A String",
+        ],
+      },
+      "dimensions": [ # The list of dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "reachByFrequencyMetricNames": [ # The list of names of  Reach By Frequency metrics the report should include.
+        "A String",
+      ],
+      "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+        "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+        "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+      },
+    },
+    "floodlightCriteria": { # The report criteria for a report of type "FLOODLIGHT".
+      "dimensions": [ # The list of dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+        "dimensionName": "A String", # The name of the dimension.
+        "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+        "etag": "A String", # The eTag of this response for caching purposes.
+        "id": "A String", # The ID associated with the value if available.
+        "value": "A String", # The value of the dimension.
+      },
+      "reportProperties": { # The properties of the report.
+        "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+        "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+        "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+      },
+    },
+    "activeGrpCriteria": { # The report criteria for a report of type "ACTIVE_GRP".
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          # A valid active GRP report needs to have exactly one DimensionValue for the United States in addition to any advertiser or campaign dimension values.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "dimensions": [ # The list of dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+    },
+    "delivery": { # The report's email delivery settings.
+      "message": "A String", # The message to be sent with each email.
+      "emailOwnerDeliveryType": "A String", # The type of delivery for the owner to receive, if enabled. One of:
+          # - "ATTACHMENT"  (support for additional options will be added later)
+      "recipients": [ # The list of recipients to which to email the report.
+        { # Represents a recipient.
+          "kind": "dfareporting#recipient", # The kind of resource this is, in this case dfareporting#recipient.
+          "deliveryType": "A String", # The delivery type for the recipient, one of:
+              # - "ATTACHMENT"  (support for additional options will be added later)
+          "email": "A String", # The email address of the recipient.
+        },
+      ],
+      "emailOwner": True or False, # Whether the report should be emailed to the report owner.
+    },
+    "etag": "A String", # The eTag of this response for caching purposes.
+    "criteria": { # The report criteria for a report of type "STANDARD".
+      "activities": { # Represents an activity group. # Activity group.
+        "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+        "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "metricNames": [ # List of names of floodlight activity metrics.
+          "A String",
+        ],
+      },
+      "dimensions": [ # The list of standard dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range for which this report should be run.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+        "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+        "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+      },
+    },
+    "id": "A String", # The unique ID identifying this report resource.
+    "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
+    "fileName": "A String", # The file name used when generating report files for this report.
+    "type": "A String", # The type of the report, one of:
+        # - STANDARD
+        # - REACH
+        # - ACTIVE_GRP
+        # - PATH_TO_CONVERSION
+        # - FLOODLIGHT
+        # - CROSS_DIMENSION_REACH
+    "crossDimensionReachCriteria": { # The report criteria for a report of type "CROSS_DIMENSION_REACH".
+      "breakdown": [ # The list of dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "overlapMetricNames": [ # The list of names of overlap metrics the report should include.
+        "A String",
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "pivoted": True or False, # Whether the report is pivoted or not. Defaults to true.
+      "dimension": "A String", # The dimension option, one of:
+          # - "ADVERTISER"
+          # - "CAMPAIGN"
+          # - "SITE_BY_ADVERTISER"
+          # - "SITE_BY_CAMPAIGN"
+    },
+    "accountId": "A String", # The account ID to which this report belongs.
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # Represents a Report resource.
+      "pathToConversionCriteria": { # The report criteria for a report of type "PATH_TO_CONVERSION".
+        "conversionDimensions": [ # The list of conversion dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "reportProperties": { # The properties of the report.
+          "clicksLookbackWindow": 42, # DFA checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+          "pivotOnInteractionPath": True or False, # Enable pivoting on interaction path.
+          "impressionsLookbackWindow": 42, # DFA checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+          "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+          "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+          "maximumInteractionGap": 42, # The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.
+          "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+          "maximumClickInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+          "maximumImpressionInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+        },
+        "perInteractionDimensions": [ # The list of per interaction dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "activityFilters": [ # The list of 'dfa:activity' values to filter on.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+        "customFloodlightVariables": [ # The list of custom floodlight variables the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+      },
+      "kind": "dfareporting#report", # The kind of resource this is, in this case dfareporting#report.
+      "subAccountId": "A String", # The subbaccount ID to which this report belongs if applicable.
+      "name": "A String", # The name of the report.
+      "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
+        "startDate": "A String", # Start date of date range for which scheduled reports should be run.
+        "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
+            # - DAY_OF_MONTH
+            # - WEEK_OF_MONTH
+            # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
+        "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
+        "expirationDate": "A String", # The expiration date when the scheduled report stops running.
+        "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
+        "repeats": "A String", # The interval for which the report is repeated, one of:
+            # - "DAILY", also requires field "every" to be set.
+            # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
+            # - "TWICE_A_MONTH"
+            # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
+            # - "QUARTERLY"
+            # - "YEARLY"
+        "repeatsOnWeekDays": [ # List of week days "WEEKLY" on which scheduled reports should run.
+          "A String",
+        ],
+      },
+      "format": "A String", # The output format of the report, currently only "CSV" is supported. If not specified, default format is "CSV". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. "CSV" will then be the fallback format.
+      "ownerProfileId": "A String", # The user profile id of the owner of this report.
+      "reachCriteria": { # The report criteria for a report of type "REACH".
+        "activities": { # Represents an activity group. # Activity group.
+          "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+          "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+          "metricNames": [ # List of names of floodlight activity metrics.
+            "A String",
+          ],
+        },
+        "dimensions": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "reachByFrequencyMetricNames": [ # The list of names of  Reach By Frequency metrics the report should include.
+          "A String",
+        ],
+        "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+          "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+          "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+        },
+      },
+      "floodlightCriteria": { # The report criteria for a report of type "FLOODLIGHT".
+        "dimensions": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+        "reportProperties": { # The properties of the report.
+          "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+          "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+          "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+        },
+      },
+      "activeGrpCriteria": { # The report criteria for a report of type "ACTIVE_GRP".
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+            # A valid active GRP report needs to have exactly one DimensionValue for the United States in addition to any advertiser or campaign dimension values.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "dimensions": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+      },
+      "delivery": { # The report's email delivery settings.
+        "message": "A String", # The message to be sent with each email.
+        "emailOwnerDeliveryType": "A String", # The type of delivery for the owner to receive, if enabled. One of:
+            # - "ATTACHMENT"  (support for additional options will be added later)
+        "recipients": [ # The list of recipients to which to email the report.
+          { # Represents a recipient.
+            "kind": "dfareporting#recipient", # The kind of resource this is, in this case dfareporting#recipient.
+            "deliveryType": "A String", # The delivery type for the recipient, one of:
+                # - "ATTACHMENT"  (support for additional options will be added later)
+            "email": "A String", # The email address of the recipient.
+          },
+        ],
+        "emailOwner": True or False, # Whether the report should be emailed to the report owner.
+      },
+      "etag": "A String", # The eTag of this response for caching purposes.
+      "criteria": { # The report criteria for a report of type "STANDARD".
+        "activities": { # Represents an activity group. # Activity group.
+          "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+          "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+          "metricNames": [ # List of names of floodlight activity metrics.
+            "A String",
+          ],
+        },
+        "dimensions": [ # The list of standard dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range for which this report should be run.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+          "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+          "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+        },
+      },
+      "id": "A String", # The unique ID identifying this report resource.
+      "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
+      "fileName": "A String", # The file name used when generating report files for this report.
+      "type": "A String", # The type of the report, one of:
+          # - STANDARD
+          # - REACH
+          # - ACTIVE_GRP
+          # - PATH_TO_CONVERSION
+          # - FLOODLIGHT
+          # - CROSS_DIMENSION_REACH
+      "crossDimensionReachCriteria": { # The report criteria for a report of type "CROSS_DIMENSION_REACH".
+        "breakdown": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "overlapMetricNames": [ # The list of names of overlap metrics the report should include.
+          "A String",
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "pivoted": True or False, # Whether the report is pivoted or not. Defaults to true.
+        "dimension": "A String", # The dimension option, one of:
+            # - "ADVERTISER"
+            # - "CAMPAIGN"
+            # - "SITE_BY_ADVERTISER"
+            # - "SITE_BY_CAMPAIGN"
+      },
+      "accountId": "A String", # The account ID to which this report belongs.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="run">run(profileId, reportId, synchronous=None)</code>
+  <pre>Runs a report.
+
+Args:
+  profileId: string, The DFA profile ID. (required)
+  reportId: string, The ID of the report. (required)
+  synchronous: boolean, If set and true, tries to run the report synchronously.
+
+Returns:
+  An object of the form:
+
+    { # Represents a File resource. A File contains the meta-data for a report run. It shows the status of the run and holds the urls to the generated report data if the run is finished and the status is "REPORT_AVAILABLE".
+    "status": "A String", # The status of the report file, one of:
+        # - "PROCESSING"
+        # - "REPORT_AVAILABLE"
+        # - "FAILED"
+        # - "CANCELLED"
+    "kind": "dfareporting#file", # The kind of resource this is, in this case dfareporting#file.
+    "format": "A String", # The output format of the report. Only available once the file is available.
+    "dateRange": { # Represents a date range. # The date range for which the file has report data. The date range will always be the absolute date range for which the report is run.
+      "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+      "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+      "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+      "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+          # - "TODAY"
+          # - "YESTERDAY"
+          # - "WEEK_TO_DATE"
+          # - "MONTH_TO_DATE"
+          # - "QUARTER_TO_DATE"
+          # - "YEAR_TO_DATE"
+          # - "PREVIOUS_WEEK"
+          # - "PREVIOUS_MONTH"
+          # - "PREVIOUS_QUARTER"
+          # - "PREVIOUS_YEAR"
+          # - "LAST_7_DAYS"
+          # - "LAST_30_DAYS"
+          # - "LAST_90_DAYS"
+          # - "LAST_365_DAYS"
+          # - "LAST_24_MONTHS"
+    },
+    "fileName": "A String", # The file name of the file.
+    "etag": "A String", # The eTag of this response for caching purposes.
+    "reportId": "A String", # The ID of the report this file was generated from.
+    "urls": { # The urls where the completed report file can be downloaded.
+      "browserUrl": "A String", # The url for downloading the report data through a browser.
+      "apiUrl": "A String", # The url for downloading the report data through the API.
+    },
+    "lastModifiedTime": "A String", # The timestamp in milliseconds since epoch when this file was last modified.
+    "id": "A String", # The unique ID of this report file.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(profileId, reportId, body)</code>
+  <pre>Updates a report.
+
+Args:
+  profileId: string, The DFA user profile ID. (required)
+  reportId: string, The ID of the report. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Report resource.
+    "pathToConversionCriteria": { # The report criteria for a report of type "PATH_TO_CONVERSION".
+      "conversionDimensions": [ # The list of conversion dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "reportProperties": { # The properties of the report.
+        "clicksLookbackWindow": 42, # DFA checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+        "pivotOnInteractionPath": True or False, # Enable pivoting on interaction path.
+        "impressionsLookbackWindow": 42, # DFA checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+        "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+        "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+        "maximumInteractionGap": 42, # The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.
+        "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+        "maximumClickInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+        "maximumImpressionInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+      },
+      "perInteractionDimensions": [ # The list of per interaction dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "activityFilters": [ # The list of 'dfa:activity' values to filter on.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+        "dimensionName": "A String", # The name of the dimension.
+        "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+        "etag": "A String", # The eTag of this response for caching purposes.
+        "id": "A String", # The ID associated with the value if available.
+        "value": "A String", # The value of the dimension.
+      },
+      "customFloodlightVariables": [ # The list of custom floodlight variables the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+    },
+    "kind": "dfareporting#report", # The kind of resource this is, in this case dfareporting#report.
+    "subAccountId": "A String", # The subbaccount ID to which this report belongs if applicable.
+    "name": "A String", # The name of the report.
+    "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
+      "startDate": "A String", # Start date of date range for which scheduled reports should be run.
+      "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
+          # - DAY_OF_MONTH
+          # - WEEK_OF_MONTH
+          # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
+      "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
+      "expirationDate": "A String", # The expiration date when the scheduled report stops running.
+      "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
+      "repeats": "A String", # The interval for which the report is repeated, one of:
+          # - "DAILY", also requires field "every" to be set.
+          # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
+          # - "TWICE_A_MONTH"
+          # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
+          # - "QUARTERLY"
+          # - "YEARLY"
+      "repeatsOnWeekDays": [ # List of week days "WEEKLY" on which scheduled reports should run.
+        "A String",
+      ],
+    },
+    "format": "A String", # The output format of the report, currently only "CSV" is supported. If not specified, default format is "CSV". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. "CSV" will then be the fallback format.
+    "ownerProfileId": "A String", # The user profile id of the owner of this report.
+    "reachCriteria": { # The report criteria for a report of type "REACH".
+      "activities": { # Represents an activity group. # Activity group.
+        "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+        "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "metricNames": [ # List of names of floodlight activity metrics.
+          "A String",
+        ],
+      },
+      "dimensions": [ # The list of dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "reachByFrequencyMetricNames": [ # The list of names of  Reach By Frequency metrics the report should include.
+        "A String",
+      ],
+      "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+        "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+        "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+      },
+    },
+    "floodlightCriteria": { # The report criteria for a report of type "FLOODLIGHT".
+      "dimensions": [ # The list of dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+        "dimensionName": "A String", # The name of the dimension.
+        "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+        "etag": "A String", # The eTag of this response for caching purposes.
+        "id": "A String", # The ID associated with the value if available.
+        "value": "A String", # The value of the dimension.
+      },
+      "reportProperties": { # The properties of the report.
+        "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+        "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+        "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+      },
+    },
+    "activeGrpCriteria": { # The report criteria for a report of type "ACTIVE_GRP".
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          # A valid active GRP report needs to have exactly one DimensionValue for the United States in addition to any advertiser or campaign dimension values.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "dimensions": [ # The list of dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+    },
+    "delivery": { # The report's email delivery settings.
+      "message": "A String", # The message to be sent with each email.
+      "emailOwnerDeliveryType": "A String", # The type of delivery for the owner to receive, if enabled. One of:
+          # - "ATTACHMENT"  (support for additional options will be added later)
+      "recipients": [ # The list of recipients to which to email the report.
+        { # Represents a recipient.
+          "kind": "dfareporting#recipient", # The kind of resource this is, in this case dfareporting#recipient.
+          "deliveryType": "A String", # The delivery type for the recipient, one of:
+              # - "ATTACHMENT"  (support for additional options will be added later)
+          "email": "A String", # The email address of the recipient.
+        },
+      ],
+      "emailOwner": True or False, # Whether the report should be emailed to the report owner.
+    },
+    "etag": "A String", # The eTag of this response for caching purposes.
+    "criteria": { # The report criteria for a report of type "STANDARD".
+      "activities": { # Represents an activity group. # Activity group.
+        "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+        "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "metricNames": [ # List of names of floodlight activity metrics.
+          "A String",
+        ],
+      },
+      "dimensions": [ # The list of standard dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range for which this report should be run.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+        "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+        "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+      },
+    },
+    "id": "A String", # The unique ID identifying this report resource.
+    "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
+    "fileName": "A String", # The file name used when generating report files for this report.
+    "type": "A String", # The type of the report, one of:
+        # - STANDARD
+        # - REACH
+        # - ACTIVE_GRP
+        # - PATH_TO_CONVERSION
+        # - FLOODLIGHT
+        # - CROSS_DIMENSION_REACH
+    "crossDimensionReachCriteria": { # The report criteria for a report of type "CROSS_DIMENSION_REACH".
+      "breakdown": [ # The list of dimensions the report should include.
+        { # Represents a sorted dimension.
+          "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+          "name": "A String", # The name of the dimension.
+          "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+              # - "ASCENDING"
+              # - "DESCENDING"
+        },
+      ],
+      "overlapMetricNames": [ # The list of names of overlap metrics the report should include.
+        "A String",
+      ],
+      "metricNames": [ # The list of names of metrics the report should include.
+        "A String",
+      ],
+      "dateRange": { # Represents a date range. # The date range this report should be run for.
+        "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+        "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+        "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+            # - "TODAY"
+            # - "YESTERDAY"
+            # - "WEEK_TO_DATE"
+            # - "MONTH_TO_DATE"
+            # - "QUARTER_TO_DATE"
+            # - "YEAR_TO_DATE"
+            # - "PREVIOUS_WEEK"
+            # - "PREVIOUS_MONTH"
+            # - "PREVIOUS_QUARTER"
+            # - "PREVIOUS_YEAR"
+            # - "LAST_7_DAYS"
+            # - "LAST_30_DAYS"
+            # - "LAST_90_DAYS"
+            # - "LAST_365_DAYS"
+            # - "LAST_24_MONTHS"
+      },
+      "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+        { # Represents a DimensionValue resource.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+      ],
+      "pivoted": True or False, # Whether the report is pivoted or not. Defaults to true.
+      "dimension": "A String", # The dimension option, one of:
+          # - "ADVERTISER"
+          # - "CAMPAIGN"
+          # - "SITE_BY_ADVERTISER"
+          # - "SITE_BY_CAMPAIGN"
+    },
+    "accountId": "A String", # The account ID to which this report belongs.
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # Represents a Report resource.
+      "pathToConversionCriteria": { # The report criteria for a report of type "PATH_TO_CONVERSION".
+        "conversionDimensions": [ # The list of conversion dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "reportProperties": { # The properties of the report.
+          "clicksLookbackWindow": 42, # DFA checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+          "pivotOnInteractionPath": True or False, # Enable pivoting on interaction path.
+          "impressionsLookbackWindow": 42, # DFA checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.
+          "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+          "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+          "maximumInteractionGap": 42, # The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.
+          "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+          "maximumClickInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+          "maximumImpressionInteractions": 42, # The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.
+        },
+        "perInteractionDimensions": [ # The list of per interaction dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "activityFilters": [ # The list of 'dfa:activity' values to filter on.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+        "customFloodlightVariables": [ # The list of custom floodlight variables the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+      },
+      "kind": "dfareporting#report", # The kind of resource this is, in this case dfareporting#report.
+      "subAccountId": "A String", # The subbaccount ID to which this report belongs if applicable.
+      "name": "A String", # The name of the report.
+      "schedule": { # The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not "TODAY".
+        "startDate": "A String", # Start date of date range for which scheduled reports should be run.
+        "runsOnDayOfMonth": "A String", # Enum to define for "MONTHLY" scheduled reports whether reports should be repeated on the same day of the month as "startDate" or the same day of the week of the month. Possible values are:
+            # - DAY_OF_MONTH
+            # - WEEK_OF_MONTH
+            # Example: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), "DAY_OF_MONTH" would run subsequent reports on the 2nd of every Month, and "WEEK_OF_MONTH" would run subsequent reports on the first Monday of the month.
+        "every": 42, # Defines every how many days, weeks or months the report should be run. Needs to be set when "repeats" is either "DAILY", "WEEKLY" or "MONTHLY".
+        "expirationDate": "A String", # The expiration date when the scheduled report stops running.
+        "active": True or False, # Whether the schedule is active or not. Must be set to either true or false.
+        "repeats": "A String", # The interval for which the report is repeated, one of:
+            # - "DAILY", also requires field "every" to be set.
+            # - "WEEKLY", also requires fields "every" and "repeatsOnWeekDays" to be set.
+            # - "TWICE_A_MONTH"
+            # - "MONTHLY", also requires fields "every" and "runsOnDayOfMonth" to be set.
+            # - "QUARTERLY"
+            # - "YEARLY"
+        "repeatsOnWeekDays": [ # List of week days "WEEKLY" on which scheduled reports should run.
+          "A String",
+        ],
+      },
+      "format": "A String", # The output format of the report, currently only "CSV" is supported. If not specified, default format is "CSV". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. "CSV" will then be the fallback format.
+      "ownerProfileId": "A String", # The user profile id of the owner of this report.
+      "reachCriteria": { # The report criteria for a report of type "REACH".
+        "activities": { # Represents an activity group. # Activity group.
+          "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+          "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+          "metricNames": [ # List of names of floodlight activity metrics.
+            "A String",
+          ],
+        },
+        "dimensions": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "reachByFrequencyMetricNames": [ # The list of names of  Reach By Frequency metrics the report should include.
+          "A String",
+        ],
+        "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+          "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+          "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+        },
+      },
+      "floodlightCriteria": { # The report criteria for a report of type "FLOODLIGHT".
+        "dimensions": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "floodlightConfigId": { # Represents a DimensionValue resource. # The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'.
+          "dimensionName": "A String", # The name of the dimension.
+          "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+          "etag": "A String", # The eTag of this response for caching purposes.
+          "id": "A String", # The ID associated with the value if available.
+          "value": "A String", # The value of the dimension.
+        },
+        "reportProperties": { # The properties of the report.
+          "includeUnattributedIPConversions": True or False, # Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion.
+          "includeUnattributedCookieConversions": True or False, # Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window.
+          "includeAttributedIPConversions": True or False, # Include conversions that have no cookie, but do have an exposure path.
+        },
+      },
+      "activeGrpCriteria": { # The report criteria for a report of type "ACTIVE_GRP".
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+            # A valid active GRP report needs to have exactly one DimensionValue for the United States in addition to any advertiser or campaign dimension values.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "dimensions": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+      },
+      "delivery": { # The report's email delivery settings.
+        "message": "A String", # The message to be sent with each email.
+        "emailOwnerDeliveryType": "A String", # The type of delivery for the owner to receive, if enabled. One of:
+            # - "ATTACHMENT"  (support for additional options will be added later)
+        "recipients": [ # The list of recipients to which to email the report.
+          { # Represents a recipient.
+            "kind": "dfareporting#recipient", # The kind of resource this is, in this case dfareporting#recipient.
+            "deliveryType": "A String", # The delivery type for the recipient, one of:
+                # - "ATTACHMENT"  (support for additional options will be added later)
+            "email": "A String", # The email address of the recipient.
+          },
+        ],
+        "emailOwner": True or False, # Whether the report should be emailed to the report owner.
+      },
+      "etag": "A String", # The eTag of this response for caching purposes.
+      "criteria": { # The report criteria for a report of type "STANDARD".
+        "activities": { # Represents an activity group. # Activity group.
+          "kind": "dfareporting#activities", # The kind of resource this is, in this case dfareporting#activities.
+          "filters": [ # List of activity filters. The dimension values need to be all either of type "dfa:activity" or "dfa:activityGroup".
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+          "metricNames": [ # List of names of floodlight activity metrics.
+            "A String",
+          ],
+        },
+        "dimensions": [ # The list of standard dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range for which this report should be run.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+            # Filters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "customRichMediaEvents": { # Represents a Custom Rich Media Events group. # Custom Rich Media Events group.
+          "kind": "dfareporting#customRichMediaEvents", # The kind of resource this is, in this case dfareporting#customRichMediaEvents.
+          "filteredEventIds": [ # List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.
+            { # Represents a DimensionValue resource.
+              "dimensionName": "A String", # The name of the dimension.
+              "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+              "etag": "A String", # The eTag of this response for caching purposes.
+              "id": "A String", # The ID associated with the value if available.
+              "value": "A String", # The value of the dimension.
+            },
+          ],
+        },
+      },
+      "id": "A String", # The unique ID identifying this report resource.
+      "lastModifiedTime": "A String", # The timestamp (in milliseconds since epoch) of when this report was last modified.
+      "fileName": "A String", # The file name used when generating report files for this report.
+      "type": "A String", # The type of the report, one of:
+          # - STANDARD
+          # - REACH
+          # - ACTIVE_GRP
+          # - PATH_TO_CONVERSION
+          # - FLOODLIGHT
+          # - CROSS_DIMENSION_REACH
+      "crossDimensionReachCriteria": { # The report criteria for a report of type "CROSS_DIMENSION_REACH".
+        "breakdown": [ # The list of dimensions the report should include.
+          { # Represents a sorted dimension.
+            "kind": "dfareporting#sortedDimension", # The kind of resource this is, in this case dfareporting#sortedDimension.
+            "name": "A String", # The name of the dimension.
+            "sortOrder": "A String", # An optional sort order for the dimension column, one of:
+                # - "ASCENDING"
+                # - "DESCENDING"
+          },
+        ],
+        "overlapMetricNames": [ # The list of names of overlap metrics the report should include.
+          "A String",
+        ],
+        "metricNames": [ # The list of names of metrics the report should include.
+          "A String",
+        ],
+        "dateRange": { # Represents a date range. # The date range this report should be run for.
+          "startDate": "A String", # The start date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "kind": "dfareporting#dateRange", # The kind of resource this is, in this case dfareporting#dateRange.
+          "endDate": "A String", # The end date of the date range, inclusive. A string of the format: "yyyy-MM-dd".
+          "relativeDateRange": "A String", # The date range relative to the date of when the report is run, one of:
+              # - "TODAY"
+              # - "YESTERDAY"
+              # - "WEEK_TO_DATE"
+              # - "MONTH_TO_DATE"
+              # - "QUARTER_TO_DATE"
+              # - "YEAR_TO_DATE"
+              # - "PREVIOUS_WEEK"
+              # - "PREVIOUS_MONTH"
+              # - "PREVIOUS_QUARTER"
+              # - "PREVIOUS_YEAR"
+              # - "LAST_7_DAYS"
+              # - "LAST_30_DAYS"
+              # - "LAST_90_DAYS"
+              # - "LAST_365_DAYS"
+              # - "LAST_24_MONTHS"
+        },
+        "dimensionFilters": [ # The list of filters on which dimensions are filtered.
+          { # Represents a DimensionValue resource.
+            "dimensionName": "A String", # The name of the dimension.
+            "kind": "dfareporting#dimensionValue", # The kind of resource this is, in this case dfareporting#dimensionValue.
+            "etag": "A String", # The eTag of this response for caching purposes.
+            "id": "A String", # The ID associated with the value if available.
+            "value": "A String", # The value of the dimension.
+          },
+        ],
+        "pivoted": True or False, # Whether the report is pivoted or not. Defaults to true.
+        "dimension": "A String", # The dimension option, one of:
+            # - "ADVERTISER"
+            # - "CAMPAIGN"
+            # - "SITE_BY_ADVERTISER"
+            # - "SITE_BY_CAMPAIGN"
+      },
+      "accountId": "A String", # The account ID to which this report belongs.
+    }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/dfareporting_v1.userProfiles.html b/docs/dyn/dfareporting_v1_1.userProfiles.html
similarity index 73%
rename from docs/dyn/dfareporting_v1.userProfiles.html
rename to docs/dyn/dfareporting_v1_1.userProfiles.html
index b339c72..141450f 100644
--- a/docs/dyn/dfareporting_v1.userProfiles.html
+++ b/docs/dyn/dfareporting_v1_1.userProfiles.html
@@ -72,34 +72,34 @@
 
 </style>
 
-<h1><a href="dfareporting_v1.html">DFA Reporting API</a> . <a href="dfareporting_v1.userProfiles.html">userProfiles</a></h1>
+<h1><a href="dfareporting_v1_1.html">DFA Reporting API</a> . <a href="dfareporting_v1_1.userProfiles.html">userProfiles</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
   <code><a href="#get">get(profileId)</a></code></p>
-<p class="firstline">Gets one user profile by id.</p>
+<p class="firstline">Gets one user profile by ID.</p>
 <p class="toc_element">
   <code><a href="#list">list()</a></code></p>
 <p class="firstline">Retrieves list of user profiles for a user.</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="get">get(profileId)</code>
-  <pre>Gets one user profile by id.
+  <pre>Gets one user profile by ID.
 
 Args:
-  profileId: string, The user profile id. (required)
+  profileId: string, The user profile ID. (required)
 
 Returns:
   An object of the form:
 
     { # Represents a UserProfile resource.
     "userName": "A String", # The user name.
-    "kind": "dfareporting#userProfile", # Kind of resource this is, in this case dfareporting#userProfile.
+    "kind": "dfareporting#userProfile", # The kind of resource this is, in this case dfareporting#userProfile.
     "subAccountId": "A String", # The sub account ID this profile belongs to if applicable.
     "accountName": "A String", # The account name this profile belongs to.
-    "etag": "A String", # ETag of this response for caching purposes.
+    "etag": "A String", # The eTag of this response for caching purposes.
     "subAccountName": "A String", # The sub account name this profile belongs to if applicable.
     "profileId": "A String", # The unique ID of the user profile.
-    "accountId": "A String", # The account ID this profile belongs to.
+    "accountId": "A String", # The account ID to which this profile belongs.
   }</pre>
 </div>
 
@@ -116,17 +116,17 @@
     "items": [ # The user profiles returned in this response.
       { # Represents a UserProfile resource.
         "userName": "A String", # The user name.
-        "kind": "dfareporting#userProfile", # Kind of resource this is, in this case dfareporting#userProfile.
+        "kind": "dfareporting#userProfile", # The kind of resource this is, in this case dfareporting#userProfile.
         "subAccountId": "A String", # The sub account ID this profile belongs to if applicable.
         "accountName": "A String", # The account name this profile belongs to.
-        "etag": "A String", # ETag of this response for caching purposes.
+        "etag": "A String", # The eTag of this response for caching purposes.
         "subAccountName": "A String", # The sub account name this profile belongs to if applicable.
         "profileId": "A String", # The unique ID of the user profile.
-        "accountId": "A String", # The account ID this profile belongs to.
+        "accountId": "A String", # The account ID to which this profile belongs.
       },
     ],
-    "kind": "dfareporting#userProfileList", # Kind of list this is, in this case dfareporting#userProfileList.
-    "etag": "A String", # ETag of this response for caching purposes.
+    "kind": "dfareporting#userProfileList", # The kind of list this is, in this case dfareporting#userProfileList.
+    "etag": "A String", # The eTag of this response for caching purposes.
   }</pre>
 </div>
 
diff --git a/docs/dyn/discovery_v1.apis.html b/docs/dyn/discovery_v1.apis.html
index 21904fe..160f3bc 100644
--- a/docs/dyn/discovery_v1.apis.html
+++ b/docs/dyn/discovery_v1.apis.html
@@ -97,7 +97,7 @@
     "methods": { # API-level methods for this API.
       "a_key": { # An individual method description.
         "scopes": [ # OAuth 2.0 scopes applicable to this method.
-          "",
+          "A String",
         ],
         "description": "A String", # Description of this method.
         "parameters": { # Details for all parameters in this method.
@@ -240,17 +240,18 @@
       "x16": "A String", # The url of the 16x16 icon.
     },
     "baseUrl": "A String", # [DEPRECATED] The base URL for REST requests.
-    "version": "A String", # The version of this API.
+    "etag": "A String", # The etag for this response.
     "features": [ # A list of supported features for this API.
       "A String",
     ],
+    "version": "A String", # The version of this API.
     "servicePath": "A String", # The base path for all REST requests.
     "resources": { # The resources in this API.
       "a_key": { # An individual resource description. Contains methods and sub-resources related to this resource.
         "methods": { # Methods on this resource.
           "a_key": { # Description for any methods on this resource.
             "scopes": [ # OAuth 2.0 scopes applicable to this method.
-              "",
+              "A String",
             ],
             "description": "A String", # Description of this method.
             "parameters": { # Details for all parameters in this method.
diff --git a/docs/dyn/drive_v2.about.html b/docs/dyn/drive_v2.about.html
index 168fad3..4349974 100644
--- a/docs/dyn/drive_v2.about.html
+++ b/docs/dyn/drive_v2.about.html
@@ -99,6 +99,14 @@
       },
     ],
     "quotaBytesUsed": "A String", # The number of quota bytes used.
+    "user": { # The JSON template for a user. # The authenticated user.
+      "picture": { # The user's profile picture.
+        "url": "A String", # A URL that points to a profile picture of this user.
+      },
+      "kind": "drive#user", # This is always drive#user.
+      "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+      "displayName": "A String", # A plain text displayable name for this user.
+    },
     "permissionId": "A String", # The current user's ID as visible in the permissions collection.
     "maxUploadSizes": [ # List of max upload sizes for each file type. The most specific type takes precedence.
       {
@@ -142,6 +150,7 @@
         ],
       },
     ],
+    "quotaBytesUsedAggregate": "A String", # The number of quota bytes used by all Google apps (Drive, Picasa, etc.).
     "domainSharingPolicy": "A String", # The domain sharing policy for the current user.
     "selfLink": "A String", # A link back to this item.
     "isCurrentAppInstalled": True or False, # A boolean indicating whether the authenticated app is installed by the authenticated user.
diff --git a/docs/dyn/drive_v2.changes.html b/docs/dyn/drive_v2.changes.html
index 609d385..df48a0e 100644
--- a/docs/dyn/drive_v2.changes.html
+++ b/docs/dyn/drive_v2.changes.html
@@ -134,6 +134,10 @@
       "exportLinks": { # Links for exporting Google Docs to specific formats.
         "a_key": "A String", # A mapping from export format to URL
       },
+      "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+        "mimeType": "A String", # The MIME type of the thumbnail.
+        "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+      },
       "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
       "description": "A String", # A short description of the file.
       "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -144,14 +148,22 @@
       "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
       "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
       "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-        "width": 42, # The width of the image in pixels.
-        "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+        "flashUsed": True or False, # Whether a flash was used to create the photo.
+        "exposureTime": 3.14, # The length of the exposure, in seconds.
+        "cameraMake": "A String", # The make of the camera used to create the photo.
+        "isoSpeed": 42, # The ISO speed used to create the photo.
+        "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+        "height": 42, # The height of the image in pixels.
+        "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
         "location": { # Geographic location information stored in the image.
           "latitude": 3.14, # The latitude stored in the image.
           "altitude": 3.14, # The altitude stored in the image.
           "longitude": 3.14, # The longitude stored in the image.
         },
-        "height": 42, # The height of the image in pixels.
+        "aperture": 3.14, # The aperture used to create the photo (f-number).
+        "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+        "width": 42, # The width of the image in pixels.
+        "cameraModel": "A String", # The model of the camera used to create the photo.
       },
       "embedLink": "A String", # A link for embedding the file.
       "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
@@ -248,6 +260,10 @@
           "exportLinks": { # Links for exporting Google Docs to specific formats.
             "a_key": "A String", # A mapping from export format to URL
           },
+          "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+            "mimeType": "A String", # The MIME type of the thumbnail.
+            "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+          },
           "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
           "description": "A String", # A short description of the file.
           "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -258,14 +274,22 @@
           "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
           "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
           "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-            "width": 42, # The width of the image in pixels.
-            "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+            "flashUsed": True or False, # Whether a flash was used to create the photo.
+            "exposureTime": 3.14, # The length of the exposure, in seconds.
+            "cameraMake": "A String", # The make of the camera used to create the photo.
+            "isoSpeed": 42, # The ISO speed used to create the photo.
+            "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+            "height": 42, # The height of the image in pixels.
+            "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
             "location": { # Geographic location information stored in the image.
               "latitude": 3.14, # The latitude stored in the image.
               "altitude": 3.14, # The altitude stored in the image.
               "longitude": 3.14, # The longitude stored in the image.
             },
-            "height": 42, # The height of the image in pixels.
+            "aperture": 3.14, # The aperture used to create the photo (f-number).
+            "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+            "width": 42, # The width of the image in pixels.
+            "cameraModel": "A String", # The model of the camera used to create the photo.
           },
           "embedLink": "A String", # A link for embedding the file.
           "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
diff --git a/docs/dyn/drive_v2.comments.html b/docs/dyn/drive_v2.comments.html
new file mode 100644
index 0000000..8db2aae
--- /dev/null
+++ b/docs/dyn/drive_v2.comments.html
@@ -0,0 +1,609 @@
+<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="drive_v2.html">Drive API</a> . <a href="drive_v2.comments.html">comments</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#delete">delete(fileId, commentId)</a></code></p>
+<p class="firstline">Deletes a comment.</p>
+<p class="toc_element">
+  <code><a href="#get">get(fileId, commentId, includeDeleted=None)</a></code></p>
+<p class="firstline">Gets a comment by ID.</p>
+<p class="toc_element">
+  <code><a href="#insert">insert(fileId, body)</a></code></p>
+<p class="firstline">Creates a new comment on the given file.</p>
+<p class="toc_element">
+  <code><a href="#list">list(fileId, includeDeleted=None, pageToken=None, updatedMin=None, maxResults=None)</a></code></p>
+<p class="firstline">Lists a file's comments.</p>
+<p class="toc_element">
+  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(fileId, commentId, body)</a></code></p>
+<p class="firstline">Updates an existing comment. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#update">update(fileId, commentId, body)</a></code></p>
+<p class="firstline">Updates an existing comment.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="delete">delete(fileId, commentId)</code>
+  <pre>Deletes a comment.
+
+Args:
+  fileId: string, The ID of the file. (required)
+  commentId: string, The ID of the comment. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(fileId, commentId, includeDeleted=None)</code>
+  <pre>Gets a comment by ID.
+
+Args:
+  fileId: string, The ID of the file. (required)
+  commentId: string, The ID of the comment. (required)
+  includeDeleted: boolean, If set, this will succeed when retrieving a deleted comment, and will include any deleted replies.
+
+Returns:
+  An object of the form:
+
+    { # A JSON representation of a comment on a file in Google Drive.
+      "status": "", # The status of this comment. Status can be changed by posting a reply to a comment with the desired status.
+          # - "open" - The comment is still open.
+          # - "resolved" - The comment has been resolved by one of its replies.
+      "selfLink": "A String", # A link back to this comment.
+      "kind": "drive#comment", # This is always drive#comment.
+      "author": { # The JSON template for a user. # The user who wrote this comment.
+        "picture": { # The user's profile picture.
+          "url": "A String", # A URL that points to a profile picture of this user.
+        },
+        "kind": "drive#user", # This is always drive#user.
+        "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+        "displayName": "A String", # A plain text displayable name for this user.
+      },
+      "deleted": True or False, # Whether this comment has been deleted. If a comment has been deleted the content will be cleared and this will only represent a comment that once existed.
+      "replies": [ # Replies to this post.
+        { # A JSON representation of a reply to a comment on a file in Google Drive.
+          "kind": "drive#commentReply", # This is always drive#commentReply.
+          "author": { # The JSON template for a user. # The user who wrote this reply.
+            "picture": { # The user's profile picture.
+              "url": "A String", # A URL that points to a profile picture of this user.
+            },
+            "kind": "drive#user", # This is always drive#user.
+            "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+            "displayName": "A String", # A plain text displayable name for this user.
+          },
+          "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+          "htmlContent": "A String", # HTML formatted content for this reply.
+          "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+          "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+              # - "resolve" - To resolve a comment.
+              # - "reopen" - To reopen (un-resolve) a comment.
+          "replyId": "A String", # The ID of the reply.
+          "modifiedDate": "A String", # The date when this reply was last modified.
+          "createdDate": "A String", # The date when this reply was first created.
+        },
+      ],
+      "htmlContent": "A String", # HTML formatted content for this comment.
+      "content": "A String", # The plain text content used to create this comment. This is not HTML safe and should only be used as a starting point to make edits to a comment's content.
+      "modifiedDate": "A String", # The date when this comment or any of its replies were last modified.
+      "context": { # The context of the file which is being commented on.
+        "type": "A String", # The MIME type of the context snippet.
+        "value": "A String", # Data representation of the segment of the file being commented on. In the case of a text file for example, this would be the actual text that the comment is about.
+      },
+      "createdDate": "A String", # The date when this comment was first created.
+      "commentId": "A String", # The ID of the comment.
+      "anchor": "A String", # A region of the document represented as a JSON string. See anchor documentation for details on how to define and interpret anchor properties.
+      "fileTitle": "A String", # The title of the file which this comment is addressing.
+      "fileId": "A String", # The file which this comment is addressing.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="insert">insert(fileId, body)</code>
+  <pre>Creates a new comment on the given file.
+
+Args:
+  fileId: string, The ID of the file. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A JSON representation of a comment on a file in Google Drive.
+    "status": "", # The status of this comment. Status can be changed by posting a reply to a comment with the desired status.
+        # - "open" - The comment is still open.
+        # - "resolved" - The comment has been resolved by one of its replies.
+    "selfLink": "A String", # A link back to this comment.
+    "kind": "drive#comment", # This is always drive#comment.
+    "author": { # The JSON template for a user. # The user who wrote this comment.
+      "picture": { # The user's profile picture.
+        "url": "A String", # A URL that points to a profile picture of this user.
+      },
+      "kind": "drive#user", # This is always drive#user.
+      "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+      "displayName": "A String", # A plain text displayable name for this user.
+    },
+    "deleted": True or False, # Whether this comment has been deleted. If a comment has been deleted the content will be cleared and this will only represent a comment that once existed.
+    "replies": [ # Replies to this post.
+      { # A JSON representation of a reply to a comment on a file in Google Drive.
+        "kind": "drive#commentReply", # This is always drive#commentReply.
+        "author": { # The JSON template for a user. # The user who wrote this reply.
+          "picture": { # The user's profile picture.
+            "url": "A String", # A URL that points to a profile picture of this user.
+          },
+          "kind": "drive#user", # This is always drive#user.
+          "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+          "displayName": "A String", # A plain text displayable name for this user.
+        },
+        "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+        "htmlContent": "A String", # HTML formatted content for this reply.
+        "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+        "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+            # - "resolve" - To resolve a comment.
+            # - "reopen" - To reopen (un-resolve) a comment.
+        "replyId": "A String", # The ID of the reply.
+        "modifiedDate": "A String", # The date when this reply was last modified.
+        "createdDate": "A String", # The date when this reply was first created.
+      },
+    ],
+    "htmlContent": "A String", # HTML formatted content for this comment.
+    "content": "A String", # The plain text content used to create this comment. This is not HTML safe and should only be used as a starting point to make edits to a comment's content.
+    "modifiedDate": "A String", # The date when this comment or any of its replies were last modified.
+    "context": { # The context of the file which is being commented on.
+      "type": "A String", # The MIME type of the context snippet.
+      "value": "A String", # Data representation of the segment of the file being commented on. In the case of a text file for example, this would be the actual text that the comment is about.
+    },
+    "createdDate": "A String", # The date when this comment was first created.
+    "commentId": "A String", # The ID of the comment.
+    "anchor": "A String", # A region of the document represented as a JSON string. See anchor documentation for details on how to define and interpret anchor properties.
+    "fileTitle": "A String", # The title of the file which this comment is addressing.
+    "fileId": "A String", # The file which this comment is addressing.
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # A JSON representation of a comment on a file in Google Drive.
+      "status": "", # The status of this comment. Status can be changed by posting a reply to a comment with the desired status.
+          # - "open" - The comment is still open.
+          # - "resolved" - The comment has been resolved by one of its replies.
+      "selfLink": "A String", # A link back to this comment.
+      "kind": "drive#comment", # This is always drive#comment.
+      "author": { # The JSON template for a user. # The user who wrote this comment.
+        "picture": { # The user's profile picture.
+          "url": "A String", # A URL that points to a profile picture of this user.
+        },
+        "kind": "drive#user", # This is always drive#user.
+        "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+        "displayName": "A String", # A plain text displayable name for this user.
+      },
+      "deleted": True or False, # Whether this comment has been deleted. If a comment has been deleted the content will be cleared and this will only represent a comment that once existed.
+      "replies": [ # Replies to this post.
+        { # A JSON representation of a reply to a comment on a file in Google Drive.
+          "kind": "drive#commentReply", # This is always drive#commentReply.
+          "author": { # The JSON template for a user. # The user who wrote this reply.
+            "picture": { # The user's profile picture.
+              "url": "A String", # A URL that points to a profile picture of this user.
+            },
+            "kind": "drive#user", # This is always drive#user.
+            "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+            "displayName": "A String", # A plain text displayable name for this user.
+          },
+          "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+          "htmlContent": "A String", # HTML formatted content for this reply.
+          "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+          "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+              # - "resolve" - To resolve a comment.
+              # - "reopen" - To reopen (un-resolve) a comment.
+          "replyId": "A String", # The ID of the reply.
+          "modifiedDate": "A String", # The date when this reply was last modified.
+          "createdDate": "A String", # The date when this reply was first created.
+        },
+      ],
+      "htmlContent": "A String", # HTML formatted content for this comment.
+      "content": "A String", # The plain text content used to create this comment. This is not HTML safe and should only be used as a starting point to make edits to a comment's content.
+      "modifiedDate": "A String", # The date when this comment or any of its replies were last modified.
+      "context": { # The context of the file which is being commented on.
+        "type": "A String", # The MIME type of the context snippet.
+        "value": "A String", # Data representation of the segment of the file being commented on. In the case of a text file for example, this would be the actual text that the comment is about.
+      },
+      "createdDate": "A String", # The date when this comment was first created.
+      "commentId": "A String", # The ID of the comment.
+      "anchor": "A String", # A region of the document represented as a JSON string. See anchor documentation for details on how to define and interpret anchor properties.
+      "fileTitle": "A String", # The title of the file which this comment is addressing.
+      "fileId": "A String", # The file which this comment is addressing.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(fileId, includeDeleted=None, pageToken=None, updatedMin=None, maxResults=None)</code>
+  <pre>Lists a file's comments.
+
+Args:
+  fileId: string, The ID of the file. (required)
+  includeDeleted: boolean, If set, all comments and replies, including deleted comments and replies (with content stripped) will be returned.
+  pageToken: string, The continuation token, used to page through large result sets. To get the next page of results, set this parameter to the value of "nextPageToken" from the previous response.
+  updatedMin: string, Only discussions that were updated after this timestamp will be returned. Formatted as an RFC 3339 timestamp.
+  maxResults: integer, The maximum number of discussions to include in the response, used for paging.
+
+Returns:
+  An object of the form:
+
+    { # A JSON representation of a list of comments on a file in Google Drive.
+    "nextPageToken": "A String", # The token to use to request the next page of results.
+    "items": [ # List of comments.
+      { # A JSON representation of a comment on a file in Google Drive.
+          "status": "", # The status of this comment. Status can be changed by posting a reply to a comment with the desired status.
+              # - "open" - The comment is still open.
+              # - "resolved" - The comment has been resolved by one of its replies.
+          "selfLink": "A String", # A link back to this comment.
+          "kind": "drive#comment", # This is always drive#comment.
+          "author": { # The JSON template for a user. # The user who wrote this comment.
+            "picture": { # The user's profile picture.
+              "url": "A String", # A URL that points to a profile picture of this user.
+            },
+            "kind": "drive#user", # This is always drive#user.
+            "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+            "displayName": "A String", # A plain text displayable name for this user.
+          },
+          "deleted": True or False, # Whether this comment has been deleted. If a comment has been deleted the content will be cleared and this will only represent a comment that once existed.
+          "replies": [ # Replies to this post.
+            { # A JSON representation of a reply to a comment on a file in Google Drive.
+              "kind": "drive#commentReply", # This is always drive#commentReply.
+              "author": { # The JSON template for a user. # The user who wrote this reply.
+                "picture": { # The user's profile picture.
+                  "url": "A String", # A URL that points to a profile picture of this user.
+                },
+                "kind": "drive#user", # This is always drive#user.
+                "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+                "displayName": "A String", # A plain text displayable name for this user.
+              },
+              "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+              "htmlContent": "A String", # HTML formatted content for this reply.
+              "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+              "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+                  # - "resolve" - To resolve a comment.
+                  # - "reopen" - To reopen (un-resolve) a comment.
+              "replyId": "A String", # The ID of the reply.
+              "modifiedDate": "A String", # The date when this reply was last modified.
+              "createdDate": "A String", # The date when this reply was first created.
+            },
+          ],
+          "htmlContent": "A String", # HTML formatted content for this comment.
+          "content": "A String", # The plain text content used to create this comment. This is not HTML safe and should only be used as a starting point to make edits to a comment's content.
+          "modifiedDate": "A String", # The date when this comment or any of its replies were last modified.
+          "context": { # The context of the file which is being commented on.
+            "type": "A String", # The MIME type of the context snippet.
+            "value": "A String", # Data representation of the segment of the file being commented on. In the case of a text file for example, this would be the actual text that the comment is about.
+          },
+          "createdDate": "A String", # The date when this comment was first created.
+          "commentId": "A String", # The ID of the comment.
+          "anchor": "A String", # A region of the document represented as a JSON string. See anchor documentation for details on how to define and interpret anchor properties.
+          "fileTitle": "A String", # The title of the file which this comment is addressing.
+          "fileId": "A String", # The file which this comment is addressing.
+        },
+    ],
+    "kind": "drive#commentList", # This is always drive#commentList.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
+  <pre>Retrieves the next page of results.
+
+Args:
+  previous_request: The request for the previous page. (required)
+  previous_response: The response from the request for the previous page. (required)
+
+Returns:
+  A request object that you can call 'execute()' on to request the next
+  page. Returns None if there are no more items in the collection.
+      </pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(fileId, commentId, body)</code>
+  <pre>Updates an existing comment. This method supports patch semantics.
+
+Args:
+  fileId: string, The ID of the file. (required)
+  commentId: string, The ID of the comment. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A JSON representation of a comment on a file in Google Drive.
+    "status": "", # The status of this comment. Status can be changed by posting a reply to a comment with the desired status.
+        # - "open" - The comment is still open.
+        # - "resolved" - The comment has been resolved by one of its replies.
+    "selfLink": "A String", # A link back to this comment.
+    "kind": "drive#comment", # This is always drive#comment.
+    "author": { # The JSON template for a user. # The user who wrote this comment.
+      "picture": { # The user's profile picture.
+        "url": "A String", # A URL that points to a profile picture of this user.
+      },
+      "kind": "drive#user", # This is always drive#user.
+      "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+      "displayName": "A String", # A plain text displayable name for this user.
+    },
+    "deleted": True or False, # Whether this comment has been deleted. If a comment has been deleted the content will be cleared and this will only represent a comment that once existed.
+    "replies": [ # Replies to this post.
+      { # A JSON representation of a reply to a comment on a file in Google Drive.
+        "kind": "drive#commentReply", # This is always drive#commentReply.
+        "author": { # The JSON template for a user. # The user who wrote this reply.
+          "picture": { # The user's profile picture.
+            "url": "A String", # A URL that points to a profile picture of this user.
+          },
+          "kind": "drive#user", # This is always drive#user.
+          "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+          "displayName": "A String", # A plain text displayable name for this user.
+        },
+        "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+        "htmlContent": "A String", # HTML formatted content for this reply.
+        "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+        "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+            # - "resolve" - To resolve a comment.
+            # - "reopen" - To reopen (un-resolve) a comment.
+        "replyId": "A String", # The ID of the reply.
+        "modifiedDate": "A String", # The date when this reply was last modified.
+        "createdDate": "A String", # The date when this reply was first created.
+      },
+    ],
+    "htmlContent": "A String", # HTML formatted content for this comment.
+    "content": "A String", # The plain text content used to create this comment. This is not HTML safe and should only be used as a starting point to make edits to a comment's content.
+    "modifiedDate": "A String", # The date when this comment or any of its replies were last modified.
+    "context": { # The context of the file which is being commented on.
+      "type": "A String", # The MIME type of the context snippet.
+      "value": "A String", # Data representation of the segment of the file being commented on. In the case of a text file for example, this would be the actual text that the comment is about.
+    },
+    "createdDate": "A String", # The date when this comment was first created.
+    "commentId": "A String", # The ID of the comment.
+    "anchor": "A String", # A region of the document represented as a JSON string. See anchor documentation for details on how to define and interpret anchor properties.
+    "fileTitle": "A String", # The title of the file which this comment is addressing.
+    "fileId": "A String", # The file which this comment is addressing.
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # A JSON representation of a comment on a file in Google Drive.
+      "status": "", # The status of this comment. Status can be changed by posting a reply to a comment with the desired status.
+          # - "open" - The comment is still open.
+          # - "resolved" - The comment has been resolved by one of its replies.
+      "selfLink": "A String", # A link back to this comment.
+      "kind": "drive#comment", # This is always drive#comment.
+      "author": { # The JSON template for a user. # The user who wrote this comment.
+        "picture": { # The user's profile picture.
+          "url": "A String", # A URL that points to a profile picture of this user.
+        },
+        "kind": "drive#user", # This is always drive#user.
+        "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+        "displayName": "A String", # A plain text displayable name for this user.
+      },
+      "deleted": True or False, # Whether this comment has been deleted. If a comment has been deleted the content will be cleared and this will only represent a comment that once existed.
+      "replies": [ # Replies to this post.
+        { # A JSON representation of a reply to a comment on a file in Google Drive.
+          "kind": "drive#commentReply", # This is always drive#commentReply.
+          "author": { # The JSON template for a user. # The user who wrote this reply.
+            "picture": { # The user's profile picture.
+              "url": "A String", # A URL that points to a profile picture of this user.
+            },
+            "kind": "drive#user", # This is always drive#user.
+            "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+            "displayName": "A String", # A plain text displayable name for this user.
+          },
+          "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+          "htmlContent": "A String", # HTML formatted content for this reply.
+          "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+          "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+              # - "resolve" - To resolve a comment.
+              # - "reopen" - To reopen (un-resolve) a comment.
+          "replyId": "A String", # The ID of the reply.
+          "modifiedDate": "A String", # The date when this reply was last modified.
+          "createdDate": "A String", # The date when this reply was first created.
+        },
+      ],
+      "htmlContent": "A String", # HTML formatted content for this comment.
+      "content": "A String", # The plain text content used to create this comment. This is not HTML safe and should only be used as a starting point to make edits to a comment's content.
+      "modifiedDate": "A String", # The date when this comment or any of its replies were last modified.
+      "context": { # The context of the file which is being commented on.
+        "type": "A String", # The MIME type of the context snippet.
+        "value": "A String", # Data representation of the segment of the file being commented on. In the case of a text file for example, this would be the actual text that the comment is about.
+      },
+      "createdDate": "A String", # The date when this comment was first created.
+      "commentId": "A String", # The ID of the comment.
+      "anchor": "A String", # A region of the document represented as a JSON string. See anchor documentation for details on how to define and interpret anchor properties.
+      "fileTitle": "A String", # The title of the file which this comment is addressing.
+      "fileId": "A String", # The file which this comment is addressing.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(fileId, commentId, body)</code>
+  <pre>Updates an existing comment.
+
+Args:
+  fileId: string, The ID of the file. (required)
+  commentId: string, The ID of the comment. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A JSON representation of a comment on a file in Google Drive.
+    "status": "", # The status of this comment. Status can be changed by posting a reply to a comment with the desired status.
+        # - "open" - The comment is still open.
+        # - "resolved" - The comment has been resolved by one of its replies.
+    "selfLink": "A String", # A link back to this comment.
+    "kind": "drive#comment", # This is always drive#comment.
+    "author": { # The JSON template for a user. # The user who wrote this comment.
+      "picture": { # The user's profile picture.
+        "url": "A String", # A URL that points to a profile picture of this user.
+      },
+      "kind": "drive#user", # This is always drive#user.
+      "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+      "displayName": "A String", # A plain text displayable name for this user.
+    },
+    "deleted": True or False, # Whether this comment has been deleted. If a comment has been deleted the content will be cleared and this will only represent a comment that once existed.
+    "replies": [ # Replies to this post.
+      { # A JSON representation of a reply to a comment on a file in Google Drive.
+        "kind": "drive#commentReply", # This is always drive#commentReply.
+        "author": { # The JSON template for a user. # The user who wrote this reply.
+          "picture": { # The user's profile picture.
+            "url": "A String", # A URL that points to a profile picture of this user.
+          },
+          "kind": "drive#user", # This is always drive#user.
+          "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+          "displayName": "A String", # A plain text displayable name for this user.
+        },
+        "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+        "htmlContent": "A String", # HTML formatted content for this reply.
+        "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+        "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+            # - "resolve" - To resolve a comment.
+            # - "reopen" - To reopen (un-resolve) a comment.
+        "replyId": "A String", # The ID of the reply.
+        "modifiedDate": "A String", # The date when this reply was last modified.
+        "createdDate": "A String", # The date when this reply was first created.
+      },
+    ],
+    "htmlContent": "A String", # HTML formatted content for this comment.
+    "content": "A String", # The plain text content used to create this comment. This is not HTML safe and should only be used as a starting point to make edits to a comment's content.
+    "modifiedDate": "A String", # The date when this comment or any of its replies were last modified.
+    "context": { # The context of the file which is being commented on.
+      "type": "A String", # The MIME type of the context snippet.
+      "value": "A String", # Data representation of the segment of the file being commented on. In the case of a text file for example, this would be the actual text that the comment is about.
+    },
+    "createdDate": "A String", # The date when this comment was first created.
+    "commentId": "A String", # The ID of the comment.
+    "anchor": "A String", # A region of the document represented as a JSON string. See anchor documentation for details on how to define and interpret anchor properties.
+    "fileTitle": "A String", # The title of the file which this comment is addressing.
+    "fileId": "A String", # The file which this comment is addressing.
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # A JSON representation of a comment on a file in Google Drive.
+      "status": "", # The status of this comment. Status can be changed by posting a reply to a comment with the desired status.
+          # - "open" - The comment is still open.
+          # - "resolved" - The comment has been resolved by one of its replies.
+      "selfLink": "A String", # A link back to this comment.
+      "kind": "drive#comment", # This is always drive#comment.
+      "author": { # The JSON template for a user. # The user who wrote this comment.
+        "picture": { # The user's profile picture.
+          "url": "A String", # A URL that points to a profile picture of this user.
+        },
+        "kind": "drive#user", # This is always drive#user.
+        "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+        "displayName": "A String", # A plain text displayable name for this user.
+      },
+      "deleted": True or False, # Whether this comment has been deleted. If a comment has been deleted the content will be cleared and this will only represent a comment that once existed.
+      "replies": [ # Replies to this post.
+        { # A JSON representation of a reply to a comment on a file in Google Drive.
+          "kind": "drive#commentReply", # This is always drive#commentReply.
+          "author": { # The JSON template for a user. # The user who wrote this reply.
+            "picture": { # The user's profile picture.
+              "url": "A String", # A URL that points to a profile picture of this user.
+            },
+            "kind": "drive#user", # This is always drive#user.
+            "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+            "displayName": "A String", # A plain text displayable name for this user.
+          },
+          "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+          "htmlContent": "A String", # HTML formatted content for this reply.
+          "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+          "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+              # - "resolve" - To resolve a comment.
+              # - "reopen" - To reopen (un-resolve) a comment.
+          "replyId": "A String", # The ID of the reply.
+          "modifiedDate": "A String", # The date when this reply was last modified.
+          "createdDate": "A String", # The date when this reply was first created.
+        },
+      ],
+      "htmlContent": "A String", # HTML formatted content for this comment.
+      "content": "A String", # The plain text content used to create this comment. This is not HTML safe and should only be used as a starting point to make edits to a comment's content.
+      "modifiedDate": "A String", # The date when this comment or any of its replies were last modified.
+      "context": { # The context of the file which is being commented on.
+        "type": "A String", # The MIME type of the context snippet.
+        "value": "A String", # Data representation of the segment of the file being commented on. In the case of a text file for example, this would be the actual text that the comment is about.
+      },
+      "createdDate": "A String", # The date when this comment was first created.
+      "commentId": "A String", # The ID of the comment.
+      "anchor": "A String", # A region of the document represented as a JSON string. See anchor documentation for details on how to define and interpret anchor properties.
+      "fileTitle": "A String", # The title of the file which this comment is addressing.
+      "fileId": "A String", # The file which this comment is addressing.
+    }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/drive_v2.files.html b/docs/dyn/drive_v2.files.html
index c234e1a..18f27ce 100644
--- a/docs/dyn/drive_v2.files.html
+++ b/docs/dyn/drive_v2.files.html
@@ -154,6 +154,10 @@
   "exportLinks": { # Links for exporting Google Docs to specific formats.
     "a_key": "A String", # A mapping from export format to URL
   },
+  "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+    "mimeType": "A String", # The MIME type of the thumbnail.
+    "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+  },
   "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
   "description": "A String", # A short description of the file.
   "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -164,14 +168,22 @@
   "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
   "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
   "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-    "width": 42, # The width of the image in pixels.
-    "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+    "flashUsed": True or False, # Whether a flash was used to create the photo.
+    "exposureTime": 3.14, # The length of the exposure, in seconds.
+    "cameraMake": "A String", # The make of the camera used to create the photo.
+    "isoSpeed": 42, # The ISO speed used to create the photo.
+    "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+    "height": 42, # The height of the image in pixels.
+    "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
     "location": { # Geographic location information stored in the image.
       "latitude": 3.14, # The latitude stored in the image.
       "altitude": 3.14, # The altitude stored in the image.
       "longitude": 3.14, # The longitude stored in the image.
     },
-    "height": 42, # The height of the image in pixels.
+    "aperture": 3.14, # The aperture used to create the photo (f-number).
+    "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+    "width": 42, # The width of the image in pixels.
+    "cameraModel": "A String", # The model of the camera used to create the photo.
   },
   "embedLink": "A String", # A link for embedding the file.
   "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
@@ -207,7 +219,7 @@
 
   pinned: boolean, Whether to pin the head revision of the new copy.
   convert: boolean, Whether to convert this file to the corresponding Google Docs format.
-  ocr: boolean, Whether to attempt OCR on .jpg, .png, or .gif uploads.
+  ocr: boolean, Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.
   sourceLanguage: string, The language of the original file to be translated.
   ocrLanguage: string, If ocr is true, hints at the language to use. Valid values are ISO 639-1 codes.
   targetLanguage: string, Target language to translate the file to. If no sourceLanguage is provided, the API will attempt to detect the language.
@@ -254,6 +266,10 @@
     "exportLinks": { # Links for exporting Google Docs to specific formats.
       "a_key": "A String", # A mapping from export format to URL
     },
+    "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+      "mimeType": "A String", # The MIME type of the thumbnail.
+      "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+    },
     "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
     "description": "A String", # A short description of the file.
     "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -264,14 +280,22 @@
     "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
     "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
     "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-      "width": 42, # The width of the image in pixels.
-      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "flashUsed": True or False, # Whether a flash was used to create the photo.
+      "exposureTime": 3.14, # The length of the exposure, in seconds.
+      "cameraMake": "A String", # The make of the camera used to create the photo.
+      "isoSpeed": 42, # The ISO speed used to create the photo.
+      "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+      "height": 42, # The height of the image in pixels.
+      "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
       "location": { # Geographic location information stored in the image.
         "latitude": 3.14, # The latitude stored in the image.
         "altitude": 3.14, # The altitude stored in the image.
         "longitude": 3.14, # The longitude stored in the image.
       },
-      "height": 42, # The height of the image in pixels.
+      "aperture": 3.14, # The aperture used to create the photo (f-number).
+      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "width": 42, # The width of the image in pixels.
+      "cameraModel": "A String", # The model of the camera used to create the photo.
     },
     "embedLink": "A String", # A link for embedding the file.
     "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
@@ -367,6 +391,10 @@
     "exportLinks": { # Links for exporting Google Docs to specific formats.
       "a_key": "A String", # A mapping from export format to URL
     },
+    "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+      "mimeType": "A String", # The MIME type of the thumbnail.
+      "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+    },
     "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
     "description": "A String", # A short description of the file.
     "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -377,14 +405,22 @@
     "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
     "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
     "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-      "width": 42, # The width of the image in pixels.
-      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "flashUsed": True or False, # Whether a flash was used to create the photo.
+      "exposureTime": 3.14, # The length of the exposure, in seconds.
+      "cameraMake": "A String", # The make of the camera used to create the photo.
+      "isoSpeed": 42, # The ISO speed used to create the photo.
+      "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+      "height": 42, # The height of the image in pixels.
+      "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
       "location": { # Geographic location information stored in the image.
         "latitude": 3.14, # The latitude stored in the image.
         "altitude": 3.14, # The altitude stored in the image.
         "longitude": 3.14, # The longitude stored in the image.
       },
-      "height": 42, # The height of the image in pixels.
+      "aperture": 3.14, # The aperture used to create the photo (f-number).
+      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "width": 42, # The width of the image in pixels.
+      "cameraModel": "A String", # The model of the camera used to create the photo.
     },
     "embedLink": "A String", # A link for embedding the file.
     "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
@@ -464,6 +500,10 @@
   "exportLinks": { # Links for exporting Google Docs to specific formats.
     "a_key": "A String", # A mapping from export format to URL
   },
+  "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+    "mimeType": "A String", # The MIME type of the thumbnail.
+    "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+  },
   "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
   "description": "A String", # A short description of the file.
   "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -474,14 +514,22 @@
   "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
   "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
   "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-    "width": 42, # The width of the image in pixels.
-    "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+    "flashUsed": True or False, # Whether a flash was used to create the photo.
+    "exposureTime": 3.14, # The length of the exposure, in seconds.
+    "cameraMake": "A String", # The make of the camera used to create the photo.
+    "isoSpeed": 42, # The ISO speed used to create the photo.
+    "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+    "height": 42, # The height of the image in pixels.
+    "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
     "location": { # Geographic location information stored in the image.
       "latitude": 3.14, # The latitude stored in the image.
       "altitude": 3.14, # The altitude stored in the image.
       "longitude": 3.14, # The longitude stored in the image.
     },
-    "height": 42, # The height of the image in pixels.
+    "aperture": 3.14, # The aperture used to create the photo (f-number).
+    "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+    "width": 42, # The width of the image in pixels.
+    "cameraModel": "A String", # The model of the camera used to create the photo.
   },
   "embedLink": "A String", # A link for embedding the file.
   "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
@@ -517,7 +565,7 @@
 
   media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
   convert: boolean, Whether to convert this file to the corresponding Google Docs format.
-  ocr: boolean, Whether to attempt OCR on .jpg, .png, or .gif uploads.
+  ocr: boolean, Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.
   sourceLanguage: string, The language of the original file to be translated.
   ocrLanguage: string, If ocr is true, hints at the language to use. Valid values are ISO 639-1 codes.
   targetLanguage: string, Target language to translate the file to. If no sourceLanguage is provided, the API will attempt to detect the language.
@@ -565,6 +613,10 @@
     "exportLinks": { # Links for exporting Google Docs to specific formats.
       "a_key": "A String", # A mapping from export format to URL
     },
+    "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+      "mimeType": "A String", # The MIME type of the thumbnail.
+      "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+    },
     "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
     "description": "A String", # A short description of the file.
     "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -575,14 +627,22 @@
     "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
     "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
     "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-      "width": 42, # The width of the image in pixels.
-      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "flashUsed": True or False, # Whether a flash was used to create the photo.
+      "exposureTime": 3.14, # The length of the exposure, in seconds.
+      "cameraMake": "A String", # The make of the camera used to create the photo.
+      "isoSpeed": 42, # The ISO speed used to create the photo.
+      "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+      "height": 42, # The height of the image in pixels.
+      "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
       "location": { # Geographic location information stored in the image.
         "latitude": 3.14, # The latitude stored in the image.
         "altitude": 3.14, # The altitude stored in the image.
         "longitude": 3.14, # The longitude stored in the image.
       },
-      "height": 42, # The height of the image in pixels.
+      "aperture": 3.14, # The aperture used to create the photo (f-number).
+      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "width": 42, # The width of the image in pixels.
+      "cameraModel": "A String", # The model of the camera used to create the photo.
     },
     "embedLink": "A String", # A link for embedding the file.
     "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
@@ -674,6 +734,10 @@
         "exportLinks": { # Links for exporting Google Docs to specific formats.
           "a_key": "A String", # A mapping from export format to URL
         },
+        "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+          "mimeType": "A String", # The MIME type of the thumbnail.
+          "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+        },
         "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
         "description": "A String", # A short description of the file.
         "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -684,14 +748,22 @@
         "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
         "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
         "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-          "width": 42, # The width of the image in pixels.
-          "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+          "flashUsed": True or False, # Whether a flash was used to create the photo.
+          "exposureTime": 3.14, # The length of the exposure, in seconds.
+          "cameraMake": "A String", # The make of the camera used to create the photo.
+          "isoSpeed": 42, # The ISO speed used to create the photo.
+          "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+          "height": 42, # The height of the image in pixels.
+          "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
           "location": { # Geographic location information stored in the image.
             "latitude": 3.14, # The latitude stored in the image.
             "altitude": 3.14, # The altitude stored in the image.
             "longitude": 3.14, # The longitude stored in the image.
           },
-          "height": 42, # The height of the image in pixels.
+          "aperture": 3.14, # The aperture used to create the photo (f-number).
+          "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+          "width": 42, # The width of the image in pixels.
+          "cameraModel": "A String", # The model of the camera used to create the photo.
         },
         "embedLink": "A String", # A link for embedding the file.
         "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
@@ -791,6 +863,10 @@
   "exportLinks": { # Links for exporting Google Docs to specific formats.
     "a_key": "A String", # A mapping from export format to URL
   },
+  "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+    "mimeType": "A String", # The MIME type of the thumbnail.
+    "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+  },
   "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
   "description": "A String", # A short description of the file.
   "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -801,14 +877,22 @@
   "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
   "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
   "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-    "width": 42, # The width of the image in pixels.
-    "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+    "flashUsed": True or False, # Whether a flash was used to create the photo.
+    "exposureTime": 3.14, # The length of the exposure, in seconds.
+    "cameraMake": "A String", # The make of the camera used to create the photo.
+    "isoSpeed": 42, # The ISO speed used to create the photo.
+    "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+    "height": 42, # The height of the image in pixels.
+    "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
     "location": { # Geographic location information stored in the image.
       "latitude": 3.14, # The latitude stored in the image.
       "altitude": 3.14, # The altitude stored in the image.
       "longitude": 3.14, # The longitude stored in the image.
     },
-    "height": 42, # The height of the image in pixels.
+    "aperture": 3.14, # The aperture used to create the photo (f-number).
+    "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+    "width": 42, # The width of the image in pixels.
+    "cameraModel": "A String", # The model of the camera used to create the photo.
   },
   "embedLink": "A String", # A link for embedding the file.
   "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
@@ -846,7 +930,7 @@
   pinned: boolean, Whether to pin the new revision.
   targetLanguage: string, Target language to translate the file to. If no sourceLanguage is provided, the API will attempt to detect the language.
   ocrLanguage: string, If ocr is true, hints at the language to use. Valid values are ISO 639-1 codes.
-  ocr: boolean, Whether to attempt OCR on .jpg, .png, or .gif uploads.
+  ocr: boolean, Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.
   sourceLanguage: string, The language of the original file to be translated.
   updateViewedDate: boolean, Whether to update the view date after successfully updating the file.
   timedTextTrackName: string, The timed text track name.
@@ -894,6 +978,10 @@
     "exportLinks": { # Links for exporting Google Docs to specific formats.
       "a_key": "A String", # A mapping from export format to URL
     },
+    "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+      "mimeType": "A String", # The MIME type of the thumbnail.
+      "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+    },
     "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
     "description": "A String", # A short description of the file.
     "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -904,14 +992,22 @@
     "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
     "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
     "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-      "width": 42, # The width of the image in pixels.
-      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "flashUsed": True or False, # Whether a flash was used to create the photo.
+      "exposureTime": 3.14, # The length of the exposure, in seconds.
+      "cameraMake": "A String", # The make of the camera used to create the photo.
+      "isoSpeed": 42, # The ISO speed used to create the photo.
+      "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+      "height": 42, # The height of the image in pixels.
+      "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
       "location": { # Geographic location information stored in the image.
         "latitude": 3.14, # The latitude stored in the image.
         "altitude": 3.14, # The altitude stored in the image.
         "longitude": 3.14, # The longitude stored in the image.
       },
-      "height": 42, # The height of the image in pixels.
+      "aperture": 3.14, # The aperture used to create the photo (f-number).
+      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "width": 42, # The width of the image in pixels.
+      "cameraModel": "A String", # The model of the camera used to create the photo.
     },
     "embedLink": "A String", # A link for embedding the file.
     "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
@@ -993,6 +1089,10 @@
     "exportLinks": { # Links for exporting Google Docs to specific formats.
       "a_key": "A String", # A mapping from export format to URL
     },
+    "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+      "mimeType": "A String", # The MIME type of the thumbnail.
+      "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+    },
     "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
     "description": "A String", # A short description of the file.
     "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -1003,14 +1103,22 @@
     "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
     "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
     "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-      "width": 42, # The width of the image in pixels.
-      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "flashUsed": True or False, # Whether a flash was used to create the photo.
+      "exposureTime": 3.14, # The length of the exposure, in seconds.
+      "cameraMake": "A String", # The make of the camera used to create the photo.
+      "isoSpeed": 42, # The ISO speed used to create the photo.
+      "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+      "height": 42, # The height of the image in pixels.
+      "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
       "location": { # Geographic location information stored in the image.
         "latitude": 3.14, # The latitude stored in the image.
         "altitude": 3.14, # The altitude stored in the image.
         "longitude": 3.14, # The longitude stored in the image.
       },
-      "height": 42, # The height of the image in pixels.
+      "aperture": 3.14, # The aperture used to create the photo (f-number).
+      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "width": 42, # The width of the image in pixels.
+      "cameraModel": "A String", # The model of the camera used to create the photo.
     },
     "embedLink": "A String", # A link for embedding the file.
     "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
@@ -1092,6 +1200,10 @@
     "exportLinks": { # Links for exporting Google Docs to specific formats.
       "a_key": "A String", # A mapping from export format to URL
     },
+    "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+      "mimeType": "A String", # The MIME type of the thumbnail.
+      "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+    },
     "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
     "description": "A String", # A short description of the file.
     "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -1102,14 +1214,22 @@
     "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
     "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
     "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-      "width": 42, # The width of the image in pixels.
-      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "flashUsed": True or False, # Whether a flash was used to create the photo.
+      "exposureTime": 3.14, # The length of the exposure, in seconds.
+      "cameraMake": "A String", # The make of the camera used to create the photo.
+      "isoSpeed": 42, # The ISO speed used to create the photo.
+      "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+      "height": 42, # The height of the image in pixels.
+      "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
       "location": { # Geographic location information stored in the image.
         "latitude": 3.14, # The latitude stored in the image.
         "altitude": 3.14, # The altitude stored in the image.
         "longitude": 3.14, # The longitude stored in the image.
       },
-      "height": 42, # The height of the image in pixels.
+      "aperture": 3.14, # The aperture used to create the photo (f-number).
+      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "width": 42, # The width of the image in pixels.
+      "cameraModel": "A String", # The model of the camera used to create the photo.
     },
     "embedLink": "A String", # A link for embedding the file.
     "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
@@ -1191,6 +1311,10 @@
     "exportLinks": { # Links for exporting Google Docs to specific formats.
       "a_key": "A String", # A mapping from export format to URL
     },
+    "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+      "mimeType": "A String", # The MIME type of the thumbnail.
+      "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+    },
     "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
     "description": "A String", # A short description of the file.
     "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -1201,14 +1325,22 @@
     "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
     "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
     "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-      "width": 42, # The width of the image in pixels.
-      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "flashUsed": True or False, # Whether a flash was used to create the photo.
+      "exposureTime": 3.14, # The length of the exposure, in seconds.
+      "cameraMake": "A String", # The make of the camera used to create the photo.
+      "isoSpeed": 42, # The ISO speed used to create the photo.
+      "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+      "height": 42, # The height of the image in pixels.
+      "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
       "location": { # Geographic location information stored in the image.
         "latitude": 3.14, # The latitude stored in the image.
         "altitude": 3.14, # The altitude stored in the image.
         "longitude": 3.14, # The longitude stored in the image.
       },
-      "height": 42, # The height of the image in pixels.
+      "aperture": 3.14, # The aperture used to create the photo (f-number).
+      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "width": 42, # The width of the image in pixels.
+      "cameraModel": "A String", # The model of the camera used to create the photo.
     },
     "embedLink": "A String", # A link for embedding the file.
     "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
@@ -1289,6 +1421,10 @@
   "exportLinks": { # Links for exporting Google Docs to specific formats.
     "a_key": "A String", # A mapping from export format to URL
   },
+  "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+    "mimeType": "A String", # The MIME type of the thumbnail.
+    "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+  },
   "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
   "description": "A String", # A short description of the file.
   "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -1299,14 +1435,22 @@
   "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
   "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
   "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-    "width": 42, # The width of the image in pixels.
-    "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+    "flashUsed": True or False, # Whether a flash was used to create the photo.
+    "exposureTime": 3.14, # The length of the exposure, in seconds.
+    "cameraMake": "A String", # The make of the camera used to create the photo.
+    "isoSpeed": 42, # The ISO speed used to create the photo.
+    "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+    "height": 42, # The height of the image in pixels.
+    "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
     "location": { # Geographic location information stored in the image.
       "latitude": 3.14, # The latitude stored in the image.
       "altitude": 3.14, # The altitude stored in the image.
       "longitude": 3.14, # The longitude stored in the image.
     },
-    "height": 42, # The height of the image in pixels.
+    "aperture": 3.14, # The aperture used to create the photo (f-number).
+    "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+    "width": 42, # The width of the image in pixels.
+    "cameraModel": "A String", # The model of the camera used to create the photo.
   },
   "embedLink": "A String", # A link for embedding the file.
   "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
@@ -1344,7 +1488,7 @@
   media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
   targetLanguage: string, Target language to translate the file to. If no sourceLanguage is provided, the API will attempt to detect the language.
   ocrLanguage: string, If ocr is true, hints at the language to use. Valid values are ISO 639-1 codes.
-  ocr: boolean, Whether to attempt OCR on .jpg, .png, or .gif uploads.
+  ocr: boolean, Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.
   pinned: boolean, Whether to pin the new revision.
   sourceLanguage: string, The language of the original file to be translated.
   updateViewedDate: boolean, Whether to update the view date after successfully updating the file.
@@ -1393,6 +1537,10 @@
     "exportLinks": { # Links for exporting Google Docs to specific formats.
       "a_key": "A String", # A mapping from export format to URL
     },
+    "thumbnail": { # Thumbnail for the file. Only accepted on upload and for files that are not already thumbnailed by Google.
+      "mimeType": "A String", # The MIME type of the thumbnail.
+      "image": "A String", # The URL-safe Base64 encoded bytes of the thumbnail image.
+    },
     "originalFilename": "A String", # The original filename if the file was uploaded manually, or the original title if the file was inserted through the API. Note that renames of the title will not change the original filename. This will only be populated on files with content stored in Drive.
     "description": "A String", # A short description of the file.
     "webContentLink": "A String", # A link for downloading the content of the file in a browser using cookie based authentication. In cases where the content is shared publicly, the content can be downloaded without any credentials.
@@ -1403,14 +1551,22 @@
     "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
     "md5Checksum": "A String", # An MD5 checksum for the content of this file. This will only be populated on files with content stored in Drive.
     "imageMediaMetadata": { # Metadata about image media. This will only be present for image types, and its contents will depend on what can be parsed from the image content.
-      "width": 42, # The width of the image in pixels.
-      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "flashUsed": True or False, # Whether a flash was used to create the photo.
+      "exposureTime": 3.14, # The length of the exposure, in seconds.
+      "cameraMake": "A String", # The make of the camera used to create the photo.
+      "isoSpeed": 42, # The ISO speed used to create the photo.
+      "focalLength": 3.14, # The focal length used to create the photo, in millimeters.
+      "height": 42, # The height of the image in pixels.
+      "date": "A String", # The date and time the photo was taken (EXIF format timestamp).
       "location": { # Geographic location information stored in the image.
         "latitude": 3.14, # The latitude stored in the image.
         "altitude": 3.14, # The altitude stored in the image.
         "longitude": 3.14, # The longitude stored in the image.
       },
-      "height": 42, # The height of the image in pixels.
+      "aperture": 3.14, # The aperture used to create the photo (f-number).
+      "rotation": 42, # The rotation in clockwise degrees from the image's original orientation.
+      "width": 42, # The width of the image in pixels.
+      "cameraModel": "A String", # The model of the camera used to create the photo.
     },
     "embedLink": "A String", # A link for embedding the file.
     "alternateLink": "A String", # A link for opening the file in using a relevant Google editor or viewer.
diff --git a/docs/dyn/drive_v2.html b/docs/dyn/drive_v2.html
index 3d03d08..29e6b8e 100644
--- a/docs/dyn/drive_v2.html
+++ b/docs/dyn/drive_v2.html
@@ -95,6 +95,11 @@
 <p class="firstline">Returns the children Resource.</p>
 
 <p class="toc_element">
+  <code><a href="drive_v2.comments.html">comments()</a></code>
+</p>
+<p class="firstline">Returns the comments Resource.</p>
+
+<p class="toc_element">
   <code><a href="drive_v2.files.html">files()</a></code>
 </p>
 <p class="firstline">Returns the files Resource.</p>
@@ -110,6 +115,11 @@
 <p class="firstline">Returns the permissions Resource.</p>
 
 <p class="toc_element">
+  <code><a href="drive_v2.replies.html">replies()</a></code>
+</p>
+<p class="firstline">Returns the replies Resource.</p>
+
+<p class="toc_element">
   <code><a href="drive_v2.revisions.html">revisions()</a></code>
 </p>
 <p class="firstline">Returns the revisions Resource.</p>
diff --git a/docs/dyn/drive_v2.replies.html b/docs/dyn/drive_v2.replies.html
new file mode 100644
index 0000000..c4f3d4a
--- /dev/null
+++ b/docs/dyn/drive_v2.replies.html
@@ -0,0 +1,374 @@
+<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="drive_v2.html">Drive API</a> . <a href="drive_v2.replies.html">replies</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#delete">delete(fileId, commentId, replyId)</a></code></p>
+<p class="firstline">Deletes a reply.</p>
+<p class="toc_element">
+  <code><a href="#get">get(fileId, commentId, replyId, includeDeleted=None)</a></code></p>
+<p class="firstline">Gets a reply.</p>
+<p class="toc_element">
+  <code><a href="#insert">insert(fileId, commentId, body)</a></code></p>
+<p class="firstline">Creates a new reply to the given comment.</p>
+<p class="toc_element">
+  <code><a href="#list">list(fileId, commentId, includeDeleted=None, pageToken=None, maxResults=None)</a></code></p>
+<p class="firstline">Lists all of the replies to a comment.</p>
+<p class="toc_element">
+  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(fileId, commentId, replyId, body)</a></code></p>
+<p class="firstline">Updates an existing reply. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#update">update(fileId, commentId, replyId, body)</a></code></p>
+<p class="firstline">Updates an existing reply.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="delete">delete(fileId, commentId, replyId)</code>
+  <pre>Deletes a reply.
+
+Args:
+  fileId: string, The ID of the file. (required)
+  commentId: string, The ID of the comment. (required)
+  replyId: string, The ID of the reply. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(fileId, commentId, replyId, includeDeleted=None)</code>
+  <pre>Gets a reply.
+
+Args:
+  fileId: string, The ID of the file. (required)
+  commentId: string, The ID of the comment. (required)
+  replyId: string, The ID of the reply. (required)
+  includeDeleted: boolean, If set, this will succeed when retrieving a deleted reply.
+
+Returns:
+  An object of the form:
+
+    { # A JSON representation of a reply to a comment on a file in Google Drive.
+    "kind": "drive#commentReply", # This is always drive#commentReply.
+    "author": { # The JSON template for a user. # The user who wrote this reply.
+      "picture": { # The user's profile picture.
+        "url": "A String", # A URL that points to a profile picture of this user.
+      },
+      "kind": "drive#user", # This is always drive#user.
+      "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+      "displayName": "A String", # A plain text displayable name for this user.
+    },
+    "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+    "htmlContent": "A String", # HTML formatted content for this reply.
+    "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+    "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+        # - "resolve" - To resolve a comment.
+        # - "reopen" - To reopen (un-resolve) a comment.
+    "replyId": "A String", # The ID of the reply.
+    "modifiedDate": "A String", # The date when this reply was last modified.
+    "createdDate": "A String", # The date when this reply was first created.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="insert">insert(fileId, commentId, body)</code>
+  <pre>Creates a new reply to the given comment.
+
+Args:
+  fileId: string, The ID of the file. (required)
+  commentId: string, The ID of the comment. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A JSON representation of a reply to a comment on a file in Google Drive.
+  "kind": "drive#commentReply", # This is always drive#commentReply.
+  "author": { # The JSON template for a user. # The user who wrote this reply.
+    "picture": { # The user's profile picture.
+      "url": "A String", # A URL that points to a profile picture of this user.
+    },
+    "kind": "drive#user", # This is always drive#user.
+    "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+    "displayName": "A String", # A plain text displayable name for this user.
+  },
+  "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+  "htmlContent": "A String", # HTML formatted content for this reply.
+  "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+  "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+      # - "resolve" - To resolve a comment.
+      # - "reopen" - To reopen (un-resolve) a comment.
+  "replyId": "A String", # The ID of the reply.
+  "modifiedDate": "A String", # The date when this reply was last modified.
+  "createdDate": "A String", # The date when this reply was first created.
+}
+
+
+Returns:
+  An object of the form:
+
+    { # A JSON representation of a reply to a comment on a file in Google Drive.
+    "kind": "drive#commentReply", # This is always drive#commentReply.
+    "author": { # The JSON template for a user. # The user who wrote this reply.
+      "picture": { # The user's profile picture.
+        "url": "A String", # A URL that points to a profile picture of this user.
+      },
+      "kind": "drive#user", # This is always drive#user.
+      "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+      "displayName": "A String", # A plain text displayable name for this user.
+    },
+    "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+    "htmlContent": "A String", # HTML formatted content for this reply.
+    "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+    "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+        # - "resolve" - To resolve a comment.
+        # - "reopen" - To reopen (un-resolve) a comment.
+    "replyId": "A String", # The ID of the reply.
+    "modifiedDate": "A String", # The date when this reply was last modified.
+    "createdDate": "A String", # The date when this reply was first created.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(fileId, commentId, includeDeleted=None, pageToken=None, maxResults=None)</code>
+  <pre>Lists all of the replies to a comment.
+
+Args:
+  fileId: string, The ID of the file. (required)
+  commentId: string, The ID of the comment. (required)
+  includeDeleted: boolean, If set, all replies, including deleted replies (with content stripped) will be returned.
+  pageToken: string, The continuation token, used to page through large result sets. To get the next page of results, set this parameter to the value of "nextPageToken" from the previous response.
+  maxResults: integer, The maximum number of replies to include in the response, used for paging.
+
+Returns:
+  An object of the form:
+
+    { # A JSON representation of a list of replies to a comment on a file in Google Drive.
+    "nextPageToken": "A String", # The token to use to request the next page of results.
+    "items": [ # List of reply.
+      { # A JSON representation of a reply to a comment on a file in Google Drive.
+        "kind": "drive#commentReply", # This is always drive#commentReply.
+        "author": { # The JSON template for a user. # The user who wrote this reply.
+          "picture": { # The user's profile picture.
+            "url": "A String", # A URL that points to a profile picture of this user.
+          },
+          "kind": "drive#user", # This is always drive#user.
+          "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+          "displayName": "A String", # A plain text displayable name for this user.
+        },
+        "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+        "htmlContent": "A String", # HTML formatted content for this reply.
+        "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+        "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+            # - "resolve" - To resolve a comment.
+            # - "reopen" - To reopen (un-resolve) a comment.
+        "replyId": "A String", # The ID of the reply.
+        "modifiedDate": "A String", # The date when this reply was last modified.
+        "createdDate": "A String", # The date when this reply was first created.
+      },
+    ],
+    "kind": "drive#commentReplyList", # This is always drive#commentReplyList.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
+  <pre>Retrieves the next page of results.
+
+Args:
+  previous_request: The request for the previous page. (required)
+  previous_response: The response from the request for the previous page. (required)
+
+Returns:
+  A request object that you can call 'execute()' on to request the next
+  page. Returns None if there are no more items in the collection.
+      </pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(fileId, commentId, replyId, body)</code>
+  <pre>Updates an existing reply. This method supports patch semantics.
+
+Args:
+  fileId: string, The ID of the file. (required)
+  commentId: string, The ID of the comment. (required)
+  replyId: string, The ID of the reply. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A JSON representation of a reply to a comment on a file in Google Drive.
+  "kind": "drive#commentReply", # This is always drive#commentReply.
+  "author": { # The JSON template for a user. # The user who wrote this reply.
+    "picture": { # The user's profile picture.
+      "url": "A String", # A URL that points to a profile picture of this user.
+    },
+    "kind": "drive#user", # This is always drive#user.
+    "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+    "displayName": "A String", # A plain text displayable name for this user.
+  },
+  "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+  "htmlContent": "A String", # HTML formatted content for this reply.
+  "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+  "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+      # - "resolve" - To resolve a comment.
+      # - "reopen" - To reopen (un-resolve) a comment.
+  "replyId": "A String", # The ID of the reply.
+  "modifiedDate": "A String", # The date when this reply was last modified.
+  "createdDate": "A String", # The date when this reply was first created.
+}
+
+
+Returns:
+  An object of the form:
+
+    { # A JSON representation of a reply to a comment on a file in Google Drive.
+    "kind": "drive#commentReply", # This is always drive#commentReply.
+    "author": { # The JSON template for a user. # The user who wrote this reply.
+      "picture": { # The user's profile picture.
+        "url": "A String", # A URL that points to a profile picture of this user.
+      },
+      "kind": "drive#user", # This is always drive#user.
+      "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+      "displayName": "A String", # A plain text displayable name for this user.
+    },
+    "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+    "htmlContent": "A String", # HTML formatted content for this reply.
+    "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+    "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+        # - "resolve" - To resolve a comment.
+        # - "reopen" - To reopen (un-resolve) a comment.
+    "replyId": "A String", # The ID of the reply.
+    "modifiedDate": "A String", # The date when this reply was last modified.
+    "createdDate": "A String", # The date when this reply was first created.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(fileId, commentId, replyId, body)</code>
+  <pre>Updates an existing reply.
+
+Args:
+  fileId: string, The ID of the file. (required)
+  commentId: string, The ID of the comment. (required)
+  replyId: string, The ID of the reply. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A JSON representation of a reply to a comment on a file in Google Drive.
+  "kind": "drive#commentReply", # This is always drive#commentReply.
+  "author": { # The JSON template for a user. # The user who wrote this reply.
+    "picture": { # The user's profile picture.
+      "url": "A String", # A URL that points to a profile picture of this user.
+    },
+    "kind": "drive#user", # This is always drive#user.
+    "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+    "displayName": "A String", # A plain text displayable name for this user.
+  },
+  "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+  "htmlContent": "A String", # HTML formatted content for this reply.
+  "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+  "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+      # - "resolve" - To resolve a comment.
+      # - "reopen" - To reopen (un-resolve) a comment.
+  "replyId": "A String", # The ID of the reply.
+  "modifiedDate": "A String", # The date when this reply was last modified.
+  "createdDate": "A String", # The date when this reply was first created.
+}
+
+
+Returns:
+  An object of the form:
+
+    { # A JSON representation of a reply to a comment on a file in Google Drive.
+    "kind": "drive#commentReply", # This is always drive#commentReply.
+    "author": { # The JSON template for a user. # The user who wrote this reply.
+      "picture": { # The user's profile picture.
+        "url": "A String", # A URL that points to a profile picture of this user.
+      },
+      "kind": "drive#user", # This is always drive#user.
+      "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user of which the request was made on behalf.
+      "displayName": "A String", # A plain text displayable name for this user.
+    },
+    "deleted": True or False, # Whether this reply has been deleted. If a reply has been deleted the content will be cleared and this will only represent a reply that once existed.
+    "htmlContent": "A String", # HTML formatted content for this reply.
+    "content": "A String", # The plain text content used to create this reply. This is not HTML safe and should only be used as a starting point to make edits to a reply's content. This field is required on inserts if no verb is specified (resolve/reopen).
+    "verb": "A String", # The action this reply performed to the parent comment. When creating a new reply this is the action to be perform to the parent comment. Possible values are:
+        # - "resolve" - To resolve a comment.
+        # - "reopen" - To reopen (un-resolve) a comment.
+    "replyId": "A String", # The ID of the reply.
+    "modifiedDate": "A String", # The date when this reply was last modified.
+    "createdDate": "A String", # The date when this reply was first created.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/freebase_v1.html b/docs/dyn/freebase_v1.html
index 33a0a76..c5a4ae2 100644
--- a/docs/dyn/freebase_v1.html
+++ b/docs/dyn/freebase_v1.html
@@ -80,6 +80,11 @@
 <p class="firstline">Returns the text Resource.</p>
 
 <p class="toc_element">
+  <code><a href="freebase_v1.topic.html">topic()</a></code>
+</p>
+<p class="firstline">Returns the topic Resource.</p>
+
+<p class="toc_element">
   <code><a href="#image">image(id, maxwidth=None, maxheight=None, fallbackid=None, pad=None, mode=None)</a></code></p>
 <p class="firstline">Returns the scaled/cropped image attached to a freebase node.</p>
 <p class="toc_element">
@@ -91,6 +96,12 @@
 <p class="toc_element">
   <code><a href="#mqlread_media">mqlread_media(query, lang=None, indent=None, callback=None, uniqueness_failure=None, dateline=None, html_escape=None, cursor=None, cost=None, as_of_time=None)</a></code></p>
 <p class="firstline">Performs MQL Queries.</p>
+<p class="toc_element">
+  <code><a href="#mqlwrite">mqlwrite(query, indent=None, callback=None, dateline=None, use_permission_of=None)</a></code></p>
+<p class="firstline">Performs MQL Write Operations.</p>
+<p class="toc_element">
+  <code><a href="#mqlwrite_media">mqlwrite_media(query, indent=None, callback=None, dateline=None, use_permission_of=None)</a></code></p>
+<p class="firstline">Performs MQL Write Operations.</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="image">image(id, maxwidth=None, maxheight=None, fallbackid=None, pad=None, mode=None)</code>
@@ -172,4 +183,30 @@
 </pre>
 </div>
 
+<div class="method">
+    <code class="details" id="mqlwrite">mqlwrite(query, indent=None, callback=None, dateline=None, use_permission_of=None)</code>
+  <pre>Performs MQL Write Operations.
+
+Args:
+  query: string, An MQL query with write directives. (required)
+  indent: integer, How many spaces to indent the json.
+  callback: string, JS method name for JSONP callbacks.
+  dateline: string, The dateline that you get in a mqlwrite response to ensure consistent results.
+  use_permission_of: string, Use the same permission node of the object with the specified id.
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="mqlwrite_media">mqlwrite_media(query, indent=None, callback=None, dateline=None, use_permission_of=None)</code>
+  <pre>Performs MQL Write Operations.
+
+Args:
+  query: string, An MQL query with write directives. (required)
+  indent: integer, How many spaces to indent the json.
+  callback: string, JS method name for JSONP callbacks.
+  dateline: string, The dateline that you get in a mqlwrite response to ensure consistent results.
+  use_permission_of: string, Use the same permission node of the object with the specified id.
+</pre>
+</div>
+
 </body></html>
\ No newline at end of file
diff --git a/docs/dyn/freebase_v1.topic.html b/docs/dyn/freebase_v1.topic.html
new file mode 100644
index 0000000..a06db8e
--- /dev/null
+++ b/docs/dyn/freebase_v1.topic.html
@@ -0,0 +1,124 @@
+<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="freebase_v1.html">Freebase API</a> . <a href="freebase_v1.topic.html">topic</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#lookup">lookup(id, lang=None, filter=None, raw=None, dateline=None, limit=None)</a></code></p>
+<p class="firstline">Get properties and meta-data about a topic.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="lookup">lookup(id, lang=None, filter=None, raw=None, dateline=None, limit=None)</code>
+  <pre>Get properties and meta-data about a topic.
+
+Args:
+  id: string, The id of the item that you want data about. (required) (repeated)
+  lang: string, The language you 'd like the content in - a freebase /type/lang language key.
+  filter: string, A frebase domain, type or property id, 'suggest', 'commons', or 'all'. Filter the results and returns only appropriate properties. (repeated)
+  raw: boolean, Do not apply any constraints, or get any names.
+  dateline: string, Determines how up-to-date the data returned is. A unix epoch time, a guid or a 'now'
+  limit: integer, The maximum number of property values to return for each property.
+
+Returns:
+  An object of the form:
+
+    {
+    "property": {
+      "/freebase/object_profile/linkcount": {
+        "values": [
+          {
+            "count": 42,
+            "values": [
+              {
+                "count": 42,
+                "values": [
+                  {
+                    "count": 42,
+                    "id": "A String",
+                  },
+                ],
+                "id": "A String",
+              },
+            ],
+            "id": "A String",
+          },
+        ],
+        "type": "custom",
+      },
+    },
+    "id": "A String",
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/fusiontables_v1.html b/docs/dyn/fusiontables_v1.html
index 6ba92f7..b5c0ca6 100644
--- a/docs/dyn/fusiontables_v1.html
+++ b/docs/dyn/fusiontables_v1.html
@@ -80,11 +80,6 @@
 <p class="firstline">Returns the column Resource.</p>
 
 <p class="toc_element">
-  <code><a href="fusiontables_v1.import_.html">import_()</a></code>
-</p>
-<p class="firstline">Returns the import_ Resource.</p>
-
-<p class="toc_element">
   <code><a href="fusiontables_v1.query.html">query()</a></code>
 </p>
 <p class="firstline">Returns the query Resource.</p>
diff --git a/docs/dyn/fusiontables_v1.import_.html b/docs/dyn/fusiontables_v1.import_.html
deleted file mode 100644
index 5c08504..0000000
--- a/docs/dyn/fusiontables_v1.import_.html
+++ /dev/null
@@ -1,100 +0,0 @@
-<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="fusiontables_v1.html">Fusion Tables API</a> . <a href="fusiontables_v1.import_.html">import_</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#insert">insert(tableId, media_body=None, encoding=None, delimiter=None)</a></code></p>
-<p class="firstline">Import more rows into a table.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="insert">insert(tableId, media_body=None, encoding=None, delimiter=None)</code>
-  <pre>Import more rows into a table.
-
-Args:
-  tableId: string, The table into which new rows are being imported. (required)
-  media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
-  encoding: string, The encoding of the content. Default is UTF-8.
-  delimiter: string, The delimiter used to separate cell values. Default is ','.
-
-Returns:
-  An object of the form:
-
-    { # Represents an import request.
-    "numRowsReceived": "A String", # The number of rows received from the import request.
-    "kind": "fusiontables#import", # Type name: a template for an import request.
-  }</pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/fusiontables_v1.style.html b/docs/dyn/fusiontables_v1.style.html
index f10db5f..e85e481 100644
--- a/docs/dyn/fusiontables_v1.style.html
+++ b/docs/dyn/fusiontables_v1.style.html
@@ -226,7 +226,6 @@
         "strokeColor": "A String", # Color of the polygon border in #RRGGBB format.
         "fillOpacity": 3.14, # Opacity of the interior of the polygon: 0.0 (transparent) to 1.0 (opaque).
       },
-      "isDefaultForTable": True or False, # Is this the default style for the table.
       "polylineOptions": { # Represents a LineStyle within a StyleSetting # Style definition for lines in the table.
         "strokeWeight": 42, # Width of the line in pixels.
         "strokeWeightStyler": { # Represents a StyleFunction within a StyleSetting # Column-value or bucket styler that is used to determine the width of the line.
@@ -403,7 +402,6 @@
       "strokeColor": "A String", # Color of the polygon border in #RRGGBB format.
       "fillOpacity": 3.14, # Opacity of the interior of the polygon: 0.0 (transparent) to 1.0 (opaque).
     },
-    "isDefaultForTable": True or False, # Is this the default style for the table.
     "polylineOptions": { # Represents a LineStyle within a StyleSetting # Style definition for lines in the table.
       "strokeWeight": 42, # Width of the line in pixels.
       "strokeWeightStyler": { # Represents a StyleFunction within a StyleSetting # Column-value or bucket styler that is used to determine the width of the line.
@@ -574,7 +572,6 @@
         "strokeColor": "A String", # Color of the polygon border in #RRGGBB format.
         "fillOpacity": 3.14, # Opacity of the interior of the polygon: 0.0 (transparent) to 1.0 (opaque).
       },
-      "isDefaultForTable": True or False, # Is this the default style for the table.
       "polylineOptions": { # Represents a LineStyle within a StyleSetting # Style definition for lines in the table.
         "strokeWeight": 42, # Width of the line in pixels.
         "strokeWeightStyler": { # Represents a StyleFunction within a StyleSetting # Column-value or bucket styler that is used to determine the width of the line.
@@ -757,7 +754,6 @@
             "strokeColor": "A String", # Color of the polygon border in #RRGGBB format.
             "fillOpacity": 3.14, # Opacity of the interior of the polygon: 0.0 (transparent) to 1.0 (opaque).
           },
-          "isDefaultForTable": True or False, # Is this the default style for the table.
           "polylineOptions": { # Represents a LineStyle within a StyleSetting # Style definition for lines in the table.
             "strokeWeight": 42, # Width of the line in pixels.
             "strokeWeightStyler": { # Represents a StyleFunction within a StyleSetting # Column-value or bucket styler that is used to determine the width of the line.
@@ -953,7 +949,6 @@
       "strokeColor": "A String", # Color of the polygon border in #RRGGBB format.
       "fillOpacity": 3.14, # Opacity of the interior of the polygon: 0.0 (transparent) to 1.0 (opaque).
     },
-    "isDefaultForTable": True or False, # Is this the default style for the table.
     "polylineOptions": { # Represents a LineStyle within a StyleSetting # Style definition for lines in the table.
       "strokeWeight": 42, # Width of the line in pixels.
       "strokeWeightStyler": { # Represents a StyleFunction within a StyleSetting # Column-value or bucket styler that is used to determine the width of the line.
@@ -1124,7 +1119,6 @@
         "strokeColor": "A String", # Color of the polygon border in #RRGGBB format.
         "fillOpacity": 3.14, # Opacity of the interior of the polygon: 0.0 (transparent) to 1.0 (opaque).
       },
-      "isDefaultForTable": True or False, # Is this the default style for the table.
       "polylineOptions": { # Represents a LineStyle within a StyleSetting # Style definition for lines in the table.
         "strokeWeight": 42, # Width of the line in pixels.
         "strokeWeightStyler": { # Represents a StyleFunction within a StyleSetting # Column-value or bucket styler that is used to determine the width of the line.
@@ -1302,7 +1296,6 @@
       "strokeColor": "A String", # Color of the polygon border in #RRGGBB format.
       "fillOpacity": 3.14, # Opacity of the interior of the polygon: 0.0 (transparent) to 1.0 (opaque).
     },
-    "isDefaultForTable": True or False, # Is this the default style for the table.
     "polylineOptions": { # Represents a LineStyle within a StyleSetting # Style definition for lines in the table.
       "strokeWeight": 42, # Width of the line in pixels.
       "strokeWeightStyler": { # Represents a StyleFunction within a StyleSetting # Column-value or bucket styler that is used to determine the width of the line.
@@ -1473,7 +1466,6 @@
         "strokeColor": "A String", # Color of the polygon border in #RRGGBB format.
         "fillOpacity": 3.14, # Opacity of the interior of the polygon: 0.0 (transparent) to 1.0 (opaque).
       },
-      "isDefaultForTable": True or False, # Is this the default style for the table.
       "polylineOptions": { # Represents a LineStyle within a StyleSetting # Style definition for lines in the table.
         "strokeWeight": 42, # Width of the line in pixels.
         "strokeWeightStyler": { # Represents a StyleFunction within a StyleSetting # Column-value or bucket styler that is used to determine the width of the line.
diff --git a/docs/dyn/fusiontables_v1.table.html b/docs/dyn/fusiontables_v1.table.html
index 2709f64..d19fc40 100644
--- a/docs/dyn/fusiontables_v1.table.html
+++ b/docs/dyn/fusiontables_v1.table.html
@@ -75,12 +75,18 @@
 <h1><a href="fusiontables_v1.html">Fusion Tables API</a> . <a href="fusiontables_v1.table.html">table</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
+  <code><a href="#copy">copy(tableId)</a></code></p>
+<p class="firstline">Copies a table.</p>
+<p class="toc_element">
   <code><a href="#delete">delete(tableId)</a></code></p>
 <p class="firstline">Deletes a table.</p>
 <p class="toc_element">
   <code><a href="#get">get(tableId)</a></code></p>
 <p class="firstline">Retrieves a specific table by its id.</p>
 <p class="toc_element">
+  <code><a href="#importRows">importRows(tableId, media_body=None, startLine=None, isStrict=None, encoding=None, delimiter=None, endLine=None)</a></code></p>
+<p class="firstline">Import more rows into a table.</p>
+<p class="toc_element">
   <code><a href="#insert">insert(body)</a></code></p>
 <p class="firstline">Creates a new table.</p>
 <p class="toc_element">
@@ -97,11 +103,48 @@
 <p class="firstline">Updates an existing table. Unless explicitly requested, only the name, description, and attribution will be updated.</p>
 <h3>Method Details</h3>
 <div class="method">
+    <code class="details" id="copy">copy(tableId)</code>
+  <pre>Copies a table.
+
+Args:
+  tableId: string, ID of the table that is being copied. (required)
+
+Returns:
+  An object of the form:
+
+    { # Represents a table. Specifies the name, whether it is exportable, description, attribution, and attribution link.
+      "kind": "fusiontables#table", # Type name: a template for an individual table.
+      "attribution": "A String", # Optional attribution assigned to the table.
+      "description": "A String", # Optional description assigned to the table.
+      "isExportable": True or False, # Variable for whether table is exportable.
+      "baseTableIds": [ # Optional base table identifier if this table is a view or merged table.
+        "A String",
+      ],
+      "attributionLink": "A String", # Optional link for attribution.
+      "sql": "A String", # Optional sql that encodes the table definition for derived tables.
+      "tableId": "A String", # Encrypted unique alphanumeric identifier for the table.
+      "columns": [ # Columns in the table.
+        { # Specifies the id, name and type of a column in a table.
+            "kind": "fusiontables#column", # Type name: a template for an individual column.
+            "type": "A String", # Required type of the column.
+            "columnId": 42, # Identifier for the column.
+            "name": "A String", # Required name of the column.
+            "baseColumn": { # Optional identifier of the base column. If present, this column is derived from the specified base column.
+              "tableIndex": 42, # Offset to the entry in the list of base tables in the table definition.
+              "columnId": 42, # The id of the column in the base table from which this column is derived.
+            },
+          },
+      ],
+      "name": "A String", # Name assigned to a table.
+    }</pre>
+</div>
+
+<div class="method">
     <code class="details" id="delete">delete(tableId)</code>
   <pre>Deletes a table.
 
 Args:
-  tableId: string, Id of the table that is being deleted. (required)
+  tableId: string, ID of the table that is being deleted. (required)
 </pre>
 </div>
 
@@ -143,6 +186,28 @@
 </div>
 
 <div class="method">
+    <code class="details" id="importRows">importRows(tableId, media_body=None, startLine=None, isStrict=None, encoding=None, delimiter=None, endLine=None)</code>
+  <pre>Import more rows into a table.
+
+Args:
+  tableId: string, The table into which new rows are being imported. (required)
+  media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
+  startLine: integer, The index of the first line from which to start importing, inclusive. Default is 0.
+  isStrict: boolean, Whether the CSV must have the same number of values for each row. If false, rows with fewer values will be padded with empty values. Default is true.
+  encoding: string, The encoding of the content. Default is UTF-8. Use 'auto-detect' if you are unsure of the encoding.
+  delimiter: string, The delimiter used to separate cell values. This can only consist of a single character. Default is ','.
+  endLine: integer, The index of the last line from which to start importing, exclusive. Thus, the number of imported lines is endLine - startLine. If this parameter is not provided, the file will be imported until the last line of the file. If endLine is negative, then the imported content will exclude the last endLine lines. That is, if endline is negative, no line will be imported whose index is greater than N + endLine where N is the number of lines in the file, and the number of imported lines will be N + endLine - startLine.
+
+Returns:
+  An object of the form:
+
+    { # Represents an import request.
+    "numRowsReceived": "A String", # The number of rows received from the import request.
+    "kind": "fusiontables#import", # Type name: a template for an import request.
+  }</pre>
+</div>
+
+<div class="method">
     <code class="details" id="insert">insert(body)</code>
   <pre>Creates a new table.
 
@@ -270,7 +335,7 @@
   <pre>Updates an existing table. Unless explicitly requested, only the name, description, and attribution will be updated. This method supports patch semantics.
 
 Args:
-  tableId: string, Id of the table that is being updated. (required)
+  tableId: string, ID of the table that is being updated. (required)
   body: object, The request body. (required)
     The object takes the form of:
 
@@ -337,7 +402,7 @@
   <pre>Updates an existing table. Unless explicitly requested, only the name, description, and attribution will be updated.
 
 Args:
-  tableId: string, Id of the table that is being updated. (required)
+  tableId: string, ID of the table that is being updated. (required)
   body: object, The request body. (required)
     The object takes the form of:
 
diff --git a/docs/dyn/fusiontables_v1.template.html b/docs/dyn/fusiontables_v1.template.html
index d5d9a43..431db63 100644
--- a/docs/dyn/fusiontables_v1.template.html
+++ b/docs/dyn/fusiontables_v1.template.html
@@ -124,7 +124,6 @@
       "automaticColumnNames": [ # List of columns from which the template is to be automatically constructed. Only one of body or automaticColumns can be specified.
         "A String",
       ],
-      "isDefaultForTable": True or False, # Is this the default template for the table.
       "tableId": "A String", # Identifier for the table for which the template is defined.
       "templateId": 42, # Identifier for the template, unique within the context of a particular table.
     }</pre>
@@ -146,7 +145,6 @@
     "automaticColumnNames": [ # List of columns from which the template is to be automatically constructed. Only one of body or automaticColumns can be specified.
       "A String",
     ],
-    "isDefaultForTable": True or False, # Is this the default template for the table.
     "tableId": "A String", # Identifier for the table for which the template is defined.
     "templateId": 42, # Identifier for the template, unique within the context of a particular table.
   }
@@ -162,7 +160,6 @@
       "automaticColumnNames": [ # List of columns from which the template is to be automatically constructed. Only one of body or automaticColumns can be specified.
         "A String",
       ],
-      "isDefaultForTable": True or False, # Is this the default template for the table.
       "tableId": "A String", # Identifier for the table for which the template is defined.
       "templateId": 42, # Identifier for the template, unique within the context of a particular table.
     }</pre>
@@ -190,7 +187,6 @@
           "automaticColumnNames": [ # List of columns from which the template is to be automatically constructed. Only one of body or automaticColumns can be specified.
             "A String",
           ],
-          "isDefaultForTable": True or False, # Is this the default template for the table.
           "tableId": "A String", # Identifier for the table for which the template is defined.
           "templateId": 42, # Identifier for the template, unique within the context of a particular table.
         },
@@ -231,7 +227,6 @@
     "automaticColumnNames": [ # List of columns from which the template is to be automatically constructed. Only one of body or automaticColumns can be specified.
       "A String",
     ],
-    "isDefaultForTable": True or False, # Is this the default template for the table.
     "tableId": "A String", # Identifier for the table for which the template is defined.
     "templateId": 42, # Identifier for the template, unique within the context of a particular table.
   }
@@ -247,7 +242,6 @@
       "automaticColumnNames": [ # List of columns from which the template is to be automatically constructed. Only one of body or automaticColumns can be specified.
         "A String",
       ],
-      "isDefaultForTable": True or False, # Is this the default template for the table.
       "tableId": "A String", # Identifier for the table for which the template is defined.
       "templateId": 42, # Identifier for the template, unique within the context of a particular table.
     }</pre>
@@ -270,7 +264,6 @@
     "automaticColumnNames": [ # List of columns from which the template is to be automatically constructed. Only one of body or automaticColumns can be specified.
       "A String",
     ],
-    "isDefaultForTable": True or False, # Is this the default template for the table.
     "tableId": "A String", # Identifier for the table for which the template is defined.
     "templateId": 42, # Identifier for the template, unique within the context of a particular table.
   }
@@ -286,7 +279,6 @@
       "automaticColumnNames": [ # List of columns from which the template is to be automatically constructed. Only one of body or automaticColumns can be specified.
         "A String",
       ],
-      "isDefaultForTable": True or False, # Is this the default template for the table.
       "tableId": "A String", # Identifier for the table for which the template is defined.
       "templateId": 42, # Identifier for the template, unique within the context of a particular table.
     }</pre>
diff --git a/docs/dyn/gan_v1beta1.advertisers.html b/docs/dyn/gan_v1beta1.advertisers.html
index e88b477..6818be5 100644
--- a/docs/dyn/gan_v1beta1.advertisers.html
+++ b/docs/dyn/gan_v1beta1.advertisers.html
@@ -106,15 +106,18 @@
     "siteUrl": "A String", # URL of the website this advertiser advertises from.
     "contactPhone": "A String", # Phone that this advertiser would like publishers to contact them with.
     "description": "A String", # Description of the website the advertiser advertises from.
-    "payoutRank": "A String", # A rank based on commissions paid to publishers over the past 90 days. A number between 1 and 4 where 4 means the top quartile (most money paid) and 1 means the bottom quartile (least money paid).
+    "merchantCenterIds": [ # List of merchant center ids for this advertiser
+      "A String",
+    ],
     "defaultLinkId": "A String", # The default link id for this advertiser.
-    "epcSevenDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past seven days. Values are multiplied by 100 for display purposes.
+    "epcSevenDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past seven days. This value should be multiplied by 100 at the time of display.
       "amount": 3.14, # The amount of money.
       "currencyCode": "A String", # The 3-letter code of the currency in question.
     },
     "commissionDuration": 42, # The longest possible length of a commission (how long the cookies on the customer's browser last before they expire).
     "status": "A String", # The status of the requesting publisher's relationship this advertiser.
-    "epcNinetyDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past three months. Values are multiplied by 100 for display purposes.
+    "payoutRank": "A String", # A rank based on commissions paid to publishers over the past 90 days. A number between 1 and 4 where 4 means the top quartile (most money paid) and 1 means the bottom quartile (least money paid).
+    "epcNinetyDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past three months. This value should be multiplied by 100 at the time of display.
       "amount": 3.14, # The amount of money.
       "currencyCode": "A String", # The 3-letter code of the currency in question.
     },
@@ -122,6 +125,9 @@
     "item": # Object with schema name: Advertiser # The requested advertiser.
     "joinDate": "A String", # Date that this advertiser was approved as a Google Affiliate Network advertiser.
     "logoUrl": "A String", # URL to the logo this advertiser uses on the Google Affiliate Network.
+    "redirectDomains": [ # List of redirect URLs for this advertiser
+      "A String",
+    ],
     "id": "A String", # The ID of this advertiser.
     "productFeedsEnabled": True or False, # Allows advertisers to submit product listings to Google Product Search.
     "name": "A String", # The name of this advertiser.
@@ -165,15 +171,18 @@
         "siteUrl": "A String", # URL of the website this advertiser advertises from.
         "contactPhone": "A String", # Phone that this advertiser would like publishers to contact them with.
         "description": "A String", # Description of the website the advertiser advertises from.
-        "payoutRank": "A String", # A rank based on commissions paid to publishers over the past 90 days. A number between 1 and 4 where 4 means the top quartile (most money paid) and 1 means the bottom quartile (least money paid).
+        "merchantCenterIds": [ # List of merchant center ids for this advertiser
+          "A String",
+        ],
         "defaultLinkId": "A String", # The default link id for this advertiser.
-        "epcSevenDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past seven days. Values are multiplied by 100 for display purposes.
+        "epcSevenDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past seven days. This value should be multiplied by 100 at the time of display.
           "amount": 3.14, # The amount of money.
           "currencyCode": "A String", # The 3-letter code of the currency in question.
         },
         "commissionDuration": 42, # The longest possible length of a commission (how long the cookies on the customer's browser last before they expire).
         "status": "A String", # The status of the requesting publisher's relationship this advertiser.
-        "epcNinetyDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past three months. Values are multiplied by 100 for display purposes.
+        "payoutRank": "A String", # A rank based on commissions paid to publishers over the past 90 days. A number between 1 and 4 where 4 means the top quartile (most money paid) and 1 means the bottom quartile (least money paid).
+        "epcNinetyDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past three months. This value should be multiplied by 100 at the time of display.
           "amount": 3.14, # The amount of money.
           "currencyCode": "A String", # The 3-letter code of the currency in question.
         },
@@ -181,6 +190,9 @@
         "item": # Object with schema name: Advertiser # The requested advertiser.
         "joinDate": "A String", # Date that this advertiser was approved as a Google Affiliate Network advertiser.
         "logoUrl": "A String", # URL to the logo this advertiser uses on the Google Affiliate Network.
+        "redirectDomains": [ # List of redirect URLs for this advertiser
+          "A String",
+        ],
         "id": "A String", # The ID of this advertiser.
         "productFeedsEnabled": True or False, # Allows advertisers to submit product listings to Google Product Search.
         "name": "A String", # The name of this advertiser.
diff --git a/docs/dyn/gan_v1beta1.links.html b/docs/dyn/gan_v1beta1.links.html
index ae6a889..efe8f11 100644
--- a/docs/dyn/gan_v1beta1.links.html
+++ b/docs/dyn/gan_v1beta1.links.html
@@ -81,7 +81,7 @@
   <code><a href="#insert">insert(role, roleId, body)</a></code></p>
 <p class="firstline">Inserts a new link.</p>
 <p class="toc_element">
-  <code><a href="#list">list(role, roleId, linkType=None, promotionType=None, advertiserId=None, pageToken=None, relationshipStatus=None, maxResults=None, advertiserCategory=None, authorship=None, startDateMin=None, assetSize=None, startDateMax=None)</a></code></p>
+  <code><a href="#list">list(role, roleId, linkType=None, promotionType=None, createDateMax=None, advertiserId=None, pageToken=None, relationshipStatus=None, maxResults=None, authorship=None, startDateMin=None, assetSize=None, searchText=None, startDateMax=None, createDateMin=None)</a></code></p>
 <p class="firstline">Retrieves all links that match the query parameters.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
@@ -109,15 +109,47 @@
       "endDate": "A String", # Date that this link becomes inactive.
       "description": "A String", # Description.
       "name": "A String", # The logical name for this link.
-      "startDate": "A String", # Date that this link becomes active.
+      "specialOffers": { # Special offers on the link.
+        "priceCut": { # An ApiMoneyProto. # Price cut on the purchase
+          "amount": 3.14, # The amount of money.
+          "currencyCode": "A String", # The 3-letter code of the currency in question.
+        },
+        "priceCutMin": { # An ApiMoneyProto. # Minimum purchase amount for price cut promotion
+          "amount": 3.14, # The amount of money.
+          "currencyCode": "A String", # The 3-letter code of the currency in question.
+        },
+        "freeShipping": True or False, # Whether there is free shipping
+        "promotionCodes": [ # List of promotion code associated with the link
+          "A String",
+        ],
+        "percentOff": 3.14, # Percent off on the purchase
+        "percentOffMin": { # An ApiMoneyProto. # Minimum purchase amount for percent off promotion
+          "amount": 3.14, # The amount of money.
+          "currencyCode": "A String", # The 3-letter code of the currency in question.
+        },
+        "freeGift": True or False, # Whether there is a free gift
+        "freeShippingMin": { # An ApiMoneyProto. # Minimum purchase amount for free shipping promotion
+          "amount": 3.14, # The amount of money.
+          "currencyCode": "A String", # The 3-letter code of the currency in question.
+        },
+      },
+      "epcSevenDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past seven days on this link. This value should be multiplied by 100 at the time of display.
+        "amount": 3.14, # The amount of money.
+        "currencyCode": "A String", # The 3-letter code of the currency in question.
+      },
       "createDate": "A String", # Date that this link was created.
       "imageAltText": "A String", # image alt text.
-      "id": "A String", # The ID of this link.
+      "epcNinetyDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past three months on this link. This value should be multiplied by 100 at the time of display.
+        "amount": 3.14, # The amount of money.
+        "currencyCode": "A String", # The 3-letter code of the currency in question.
+      },
       "advertiserId": "A String", # The advertiser id for the advertiser who owns this link.
+      "id": "A String", # The ID of this link.
       "impressionTrackingUrl": "A String", # Tracking url for impressions.
       "promotionType": "A String", # Promotion Type
       "duration": "A String", # Duration
       "authorship": "A String", # Authorship
+      "startDate": "A String", # Date that this link becomes active.
       "availability": "A String", # Availability.
       "clickTrackingUrl": "A String", # Tracking url for clicks.
       "destinationUrl": "A String", # The destination URL for the link.
@@ -144,15 +176,47 @@
     "endDate": "A String", # Date that this link becomes inactive.
     "description": "A String", # Description.
     "name": "A String", # The logical name for this link.
-    "startDate": "A String", # Date that this link becomes active.
+    "specialOffers": { # Special offers on the link.
+      "priceCut": { # An ApiMoneyProto. # Price cut on the purchase
+        "amount": 3.14, # The amount of money.
+        "currencyCode": "A String", # The 3-letter code of the currency in question.
+      },
+      "priceCutMin": { # An ApiMoneyProto. # Minimum purchase amount for price cut promotion
+        "amount": 3.14, # The amount of money.
+        "currencyCode": "A String", # The 3-letter code of the currency in question.
+      },
+      "freeShipping": True or False, # Whether there is free shipping
+      "promotionCodes": [ # List of promotion code associated with the link
+        "A String",
+      ],
+      "percentOff": 3.14, # Percent off on the purchase
+      "percentOffMin": { # An ApiMoneyProto. # Minimum purchase amount for percent off promotion
+        "amount": 3.14, # The amount of money.
+        "currencyCode": "A String", # The 3-letter code of the currency in question.
+      },
+      "freeGift": True or False, # Whether there is a free gift
+      "freeShippingMin": { # An ApiMoneyProto. # Minimum purchase amount for free shipping promotion
+        "amount": 3.14, # The amount of money.
+        "currencyCode": "A String", # The 3-letter code of the currency in question.
+      },
+    },
+    "epcSevenDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past seven days on this link. This value should be multiplied by 100 at the time of display.
+      "amount": 3.14, # The amount of money.
+      "currencyCode": "A String", # The 3-letter code of the currency in question.
+    },
     "createDate": "A String", # Date that this link was created.
     "imageAltText": "A String", # image alt text.
-    "id": "A String", # The ID of this link.
+    "epcNinetyDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past three months on this link. This value should be multiplied by 100 at the time of display.
+      "amount": 3.14, # The amount of money.
+      "currencyCode": "A String", # The 3-letter code of the currency in question.
+    },
     "advertiserId": "A String", # The advertiser id for the advertiser who owns this link.
+    "id": "A String", # The ID of this link.
     "impressionTrackingUrl": "A String", # Tracking url for impressions.
     "promotionType": "A String", # Promotion Type
     "duration": "A String", # Duration
     "authorship": "A String", # Authorship
+    "startDate": "A String", # Date that this link becomes active.
     "availability": "A String", # Availability.
     "clickTrackingUrl": "A String", # Tracking url for clicks.
     "destinationUrl": "A String", # The destination URL for the link.
@@ -169,15 +233,47 @@
       "endDate": "A String", # Date that this link becomes inactive.
       "description": "A String", # Description.
       "name": "A String", # The logical name for this link.
-      "startDate": "A String", # Date that this link becomes active.
+      "specialOffers": { # Special offers on the link.
+        "priceCut": { # An ApiMoneyProto. # Price cut on the purchase
+          "amount": 3.14, # The amount of money.
+          "currencyCode": "A String", # The 3-letter code of the currency in question.
+        },
+        "priceCutMin": { # An ApiMoneyProto. # Minimum purchase amount for price cut promotion
+          "amount": 3.14, # The amount of money.
+          "currencyCode": "A String", # The 3-letter code of the currency in question.
+        },
+        "freeShipping": True or False, # Whether there is free shipping
+        "promotionCodes": [ # List of promotion code associated with the link
+          "A String",
+        ],
+        "percentOff": 3.14, # Percent off on the purchase
+        "percentOffMin": { # An ApiMoneyProto. # Minimum purchase amount for percent off promotion
+          "amount": 3.14, # The amount of money.
+          "currencyCode": "A String", # The 3-letter code of the currency in question.
+        },
+        "freeGift": True or False, # Whether there is a free gift
+        "freeShippingMin": { # An ApiMoneyProto. # Minimum purchase amount for free shipping promotion
+          "amount": 3.14, # The amount of money.
+          "currencyCode": "A String", # The 3-letter code of the currency in question.
+        },
+      },
+      "epcSevenDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past seven days on this link. This value should be multiplied by 100 at the time of display.
+        "amount": 3.14, # The amount of money.
+        "currencyCode": "A String", # The 3-letter code of the currency in question.
+      },
       "createDate": "A String", # Date that this link was created.
       "imageAltText": "A String", # image alt text.
-      "id": "A String", # The ID of this link.
+      "epcNinetyDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past three months on this link. This value should be multiplied by 100 at the time of display.
+        "amount": 3.14, # The amount of money.
+        "currencyCode": "A String", # The 3-letter code of the currency in question.
+      },
       "advertiserId": "A String", # The advertiser id for the advertiser who owns this link.
+      "id": "A String", # The ID of this link.
       "impressionTrackingUrl": "A String", # Tracking url for impressions.
       "promotionType": "A String", # Promotion Type
       "duration": "A String", # Duration
       "authorship": "A String", # Authorship
+      "startDate": "A String", # Date that this link becomes active.
       "availability": "A String", # Availability.
       "clickTrackingUrl": "A String", # Tracking url for clicks.
       "destinationUrl": "A String", # The destination URL for the link.
@@ -185,7 +281,7 @@
 </div>
 
 <div class="method">
-    <code class="details" id="list">list(role, roleId, linkType=None, promotionType=None, advertiserId=None, pageToken=None, relationshipStatus=None, maxResults=None, advertiserCategory=None, authorship=None, startDateMin=None, assetSize=None, startDateMax=None)</code>
+    <code class="details" id="list">list(role, roleId, linkType=None, promotionType=None, createDateMax=None, advertiserId=None, pageToken=None, relationshipStatus=None, maxResults=None, authorship=None, startDateMin=None, assetSize=None, searchText=None, startDateMax=None, createDateMin=None)</code>
   <pre>Retrieves all links that match the query parameters.
 
 Args:
@@ -200,18 +296,12 @@
       text - 
   promotionType: string, The promotion type. (repeated)
     Allowed values
-      buy_get - 
       coupon - 
       free_gift - 
-      free_gift_wrap - 
       free_shipping - 
-      none - 
-      ongoing - 
       percent_off - 
       price_cut - 
-      product_promotion - 
-      sale - 
-      sweepstakes - 
+  createDateMax: string, The end of the create date range.
   advertiserId: string, Limits the resulting links to the ones belonging to the listed advertisers. (repeated)
   pageToken: string, The value of 'nextPageToken' from the previous page. Optional.
   relationshipStatus: string, The status of the relationship.
@@ -219,55 +309,15 @@
       approved - 
       available - 
   maxResults: integer, Max number of items to return in this page. Optional. Defaults to 20.
-  advertiserCategory: string, The advertiser's primary vertical. (repeated)
-    Allowed values
-      apparel_accessories - 
-      appliances_electronics - 
-      auto_dealer - 
-      automotive - 
-      babies_kids - 
-      blogs_personal_sites - 
-      books_magazines - 
-      computers - 
-      dating - 
-      department_stores - 
-      education - 
-      employment - 
-      financial_credit_cards - 
-      financial_other - 
-      flowers_gifts - 
-      grocery - 
-      health_beauty - 
-      home_garden - 
-      hosting_domain - 
-      internet_providers - 
-      legal - 
-      media_entertainment - 
-      medical - 
-      movies_games - 
-      music - 
-      nonprofit - 
-      office_supplies - 
-      online_games - 
-      outdoor - 
-      pets - 
-      real_estate - 
-      restaurants - 
-      sport_fitness - 
-      telecom - 
-      ticketing - 
-      toys_hobbies - 
-      travel - 
-      utilities - 
-      wholesale_relationship - 
-      wine_spirits - 
   authorship: string, The role of the author of the link.
     Allowed values
       advertiser - 
       publisher - 
   startDateMin: string, The beginning of the start date range.
   assetSize: string, The size of the given asset. (repeated)
+  searchText: string, Field for full text search across title and merchandising text, supports link id search.
   startDateMax: string, The end of the start date range.
+  createDateMin: string, The beginning of the create date range.
 
 Returns:
   An object of the form:
@@ -282,15 +332,47 @@
           "endDate": "A String", # Date that this link becomes inactive.
           "description": "A String", # Description.
           "name": "A String", # The logical name for this link.
-          "startDate": "A String", # Date that this link becomes active.
+          "specialOffers": { # Special offers on the link.
+            "priceCut": { # An ApiMoneyProto. # Price cut on the purchase
+              "amount": 3.14, # The amount of money.
+              "currencyCode": "A String", # The 3-letter code of the currency in question.
+            },
+            "priceCutMin": { # An ApiMoneyProto. # Minimum purchase amount for price cut promotion
+              "amount": 3.14, # The amount of money.
+              "currencyCode": "A String", # The 3-letter code of the currency in question.
+            },
+            "freeShipping": True or False, # Whether there is free shipping
+            "promotionCodes": [ # List of promotion code associated with the link
+              "A String",
+            ],
+            "percentOff": 3.14, # Percent off on the purchase
+            "percentOffMin": { # An ApiMoneyProto. # Minimum purchase amount for percent off promotion
+              "amount": 3.14, # The amount of money.
+              "currencyCode": "A String", # The 3-letter code of the currency in question.
+            },
+            "freeGift": True or False, # Whether there is a free gift
+            "freeShippingMin": { # An ApiMoneyProto. # Minimum purchase amount for free shipping promotion
+              "amount": 3.14, # The amount of money.
+              "currencyCode": "A String", # The 3-letter code of the currency in question.
+            },
+          },
+          "epcSevenDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past seven days on this link. This value should be multiplied by 100 at the time of display.
+            "amount": 3.14, # The amount of money.
+            "currencyCode": "A String", # The 3-letter code of the currency in question.
+          },
           "createDate": "A String", # Date that this link was created.
           "imageAltText": "A String", # image alt text.
-          "id": "A String", # The ID of this link.
+          "epcNinetyDayAverage": { # An ApiMoneyProto. # The sum of fees paid to publishers divided by the total number of clicks over the past three months on this link. This value should be multiplied by 100 at the time of display.
+            "amount": 3.14, # The amount of money.
+            "currencyCode": "A String", # The 3-letter code of the currency in question.
+          },
           "advertiserId": "A String", # The advertiser id for the advertiser who owns this link.
+          "id": "A String", # The ID of this link.
           "impressionTrackingUrl": "A String", # Tracking url for impressions.
           "promotionType": "A String", # Promotion Type
           "duration": "A String", # Duration
           "authorship": "A String", # Authorship
+          "startDate": "A String", # Date that this link becomes active.
           "availability": "A String", # Availability.
           "clickTrackingUrl": "A String", # Tracking url for clicks.
           "destinationUrl": "A String", # The destination URL for the link.
diff --git a/docs/dyn/oauth2_v2.html b/docs/dyn/oauth2_v2.html
index 27b06d8..8c22fe5 100644
--- a/docs/dyn/oauth2_v2.html
+++ b/docs/dyn/oauth2_v2.html
@@ -72,7 +72,7 @@
 
 </style>
 
-<h1><a href="oauth2_v2.html">oauth2_v2</a></h1>
+<h1><a href="oauth2_v2.html">Google OAuth2 API</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
   <code><a href="oauth2_v2.userinfo.html">userinfo()</a></code>
diff --git a/docs/dyn/oauth2_v2.userinfo.html b/docs/dyn/oauth2_v2.userinfo.html
index 63beec6..bc00dbb 100644
--- a/docs/dyn/oauth2_v2.userinfo.html
+++ b/docs/dyn/oauth2_v2.userinfo.html
@@ -72,7 +72,7 @@
 
 </style>
 
-<h1><a href="oauth2_v2.html">oauth2_v2</a> . <a href="oauth2_v2.userinfo.html">userinfo</a></h1>
+<h1><a href="oauth2_v2.html">Google OAuth2 API</a> . <a href="oauth2_v2.userinfo.html">userinfo</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
   <code><a href="oauth2_v2.userinfo.v2.html">v2()</a></code>
diff --git a/docs/dyn/oauth2_v2.userinfo.v2.html b/docs/dyn/oauth2_v2.userinfo.v2.html
index f1280c4..230b0b3 100644
--- a/docs/dyn/oauth2_v2.userinfo.v2.html
+++ b/docs/dyn/oauth2_v2.userinfo.v2.html
@@ -72,7 +72,7 @@
 
 </style>
 
-<h1><a href="oauth2_v2.html">oauth2_v2</a> . <a href="oauth2_v2.userinfo.html">userinfo</a> . <a href="oauth2_v2.userinfo.v2.html">v2</a></h1>
+<h1><a href="oauth2_v2.html">Google OAuth2 API</a> . <a href="oauth2_v2.userinfo.html">userinfo</a> . <a href="oauth2_v2.userinfo.v2.html">v2</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
   <code><a href="oauth2_v2.userinfo.v2.me.html">me()</a></code>
diff --git a/docs/dyn/oauth2_v2.userinfo.v2.me.html b/docs/dyn/oauth2_v2.userinfo.v2.me.html
index 1e75468..e56faaf 100644
--- a/docs/dyn/oauth2_v2.userinfo.v2.me.html
+++ b/docs/dyn/oauth2_v2.userinfo.v2.me.html
@@ -72,7 +72,7 @@
 
 </style>
 
-<h1><a href="oauth2_v2.html">oauth2_v2</a> . <a href="oauth2_v2.userinfo.html">userinfo</a> . <a href="oauth2_v2.userinfo.v2.html">v2</a> . <a href="oauth2_v2.userinfo.v2.me.html">me</a></h1>
+<h1><a href="oauth2_v2.html">Google OAuth2 API</a> . <a href="oauth2_v2.userinfo.html">userinfo</a> . <a href="oauth2_v2.userinfo.v2.html">v2</a> . <a href="oauth2_v2.userinfo.v2.me.html">me</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
   <code><a href="#get">get()</a></code></p>
diff --git a/docs/dyn/plus_v1.activities.html b/docs/dyn/plus_v1.activities.html
index 7e3e8c3..363ea42 100644
--- a/docs/dyn/plus_v1.activities.html
+++ b/docs/dyn/plus_v1.activities.html
@@ -118,32 +118,45 @@
       "attachments": [ # The media objects attached to this activity.
         {
           "displayName": "A String", # The title of the attachment (such as a photo caption or an article title).
-          "fullImage": { # The full image url for photo attachments.
-            "url": "A String", # URL of the link.
+          "thumbnails": [ # If the attachment is an album, potential additional thumbnails from the album.
+            {
+              "url": "A String", # URL to the webpage containing the image.
+              "image": { # Image resource.
+                "url": "A String", # Image url.
+                "width": 42, # The width, in pixels, of the linked resource.
+                "type": "A String", # Media type of the link.
+                "height": 42, # The height, in pixels, of the linked resource.
+              },
+              "description": "A String", # Potential name of the thumbnail.
+            },
+          ],
+          "fullImage": { # The full image URL for photo attachments.
+            "url": "A String", # URL to the image.
             "width": 42, # The width, in pixels, of the linked resource.
             "type": "A String", # Media type of the link.
             "height": 42, # The height, in pixels, of the linked resource.
           },
           "url": "A String", # The link to the attachment, should be of type text/html.
           "image": { # The preview image for photos or videos.
-            "url": "A String", # URL of the link.
+            "url": "A String", # Image url.
             "width": 42, # The width, in pixels, of the linked resource.
             "type": "A String", # Media type of the link.
             "height": 42, # The height, in pixels, of the linked resource.
           },
-          "content": "A String", # If the attachment is an article, this property contains a snippet of text from the article.
+          "content": "A String", # If the attachment is an article, this property contains a snippet of text from the article. It can also include descriptions for other types.
           "embed": { # If the attachment is a video, the embeddable link.
             "url": "A String", # URL of the link.
             "type": "A String", # Media type of the link.
           },
-          "id": "A String", # The ID of the media object's resource.
+          "id": "A String", # The ID of the attachment.
           "objectType": "A String", # The type of media object. Possible values are:
               # - "photo" - A photo.
+              # - "album" - A photo album.
               # - "video" - A video.
               # - "article" - An article, specified by a link.
         },
       ],
-      "originalContent": "A String", # The content (text) as provided by the author, stored without any HTML formatting. When updating an activity's content, use the value of originalContent as the starting point from which to make edits.
+      "originalContent": "A String", # The content (text) as provided by the author, stored without any HTML formatting. When creating or updating an activity, this value must be supplied as plain text in the request.
       "plusoners": { # People who +1'd this activity.
         "totalItems": 42, # Total number of people who +1'd this activity.
         "selfLink": "A String", # The URL for the collection of people who +1'd this activity.
@@ -156,7 +169,7 @@
         "displayName": "A String", # The original actor's name, suitable for display.
         "id": "A String", # ID of the original actor.
       },
-      "content": "A String", # The HTML-formatted content, suitable for display. When creating or updating an activity, this value must be supplied as plain text in the request. If successful, the response will contain the HTML-formatted content. When updating an activity, use originalContent as the starting value, then assign the updated text to this property.
+      "content": "A String", # The HTML-formatted content, suitable for display.
       "url": "A String", # The URL that points to the linked resource.
       "replies": { # Comments in reply to this activity.
         "totalItems": 42, # Total number of comments on this activity.
@@ -190,6 +203,7 @@
               # - "myCircles" - Access to members of all the person's circles.
               # - "extendedCircles" - Access to members of everyone in a person's circles, plus all of the people in their circles.
               # - "public" - Access to anyone on the web.
+          "displayName": "A String", # A descriptive name for this entry. Suitable for display.
           "id": "A String", # The ID of the entry. For entries of type "person" or "circle", this is the ID of the resource. For other types, this property is not set.
         },
       ],
@@ -197,8 +211,8 @@
       "description": "A String", # Description of the access granted, suitable for display.
     },
     "verb": "A String", # This activity's verb, indicating what action was performed. Possible values are:
-        # - "post" - Publish content to the stream.
         # - "checkin" - Check in to a location.
+        # - "post" - Publish content to the stream.
         # - "share" - Reshare an activity.
     "etag": "A String", # ETag of this response for caching purposes.
     "radius": "A String", # Radius, in meters, of the region where this activity occurred, centered at the latitude and longitude identified in geocode.
@@ -218,14 +232,14 @@
   collection: string, The collection of activities to list. (required)
     Allowed values
       public - All public activities created by the specified user.
-  pageToken: string, The continuation token, used to page through large result sets. To get the next page of results, set this parameter to the value of "nextPageToken" from the previous response.
-  maxResults: integer, The maximum number of activities to include in the response, used for paging. For any response, the actual number returned may be less than the specified maxResults.
+  pageToken: string, The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of "nextPageToken" from the previous response.
+  maxResults: integer, The maximum number of activities to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.
 
 Returns:
   An object of the form:
 
     {
-    "nextPageToken": "A String", # The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.
+    "nextPageToken": "A String", # The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.
     "kind": "plus#activityFeed", # Identifies this resource as a collection of activities. Value: "plus#activityFeed".
     "title": "A String", # The title of this collection of activities.
     "items": [ # The activities in this page of results.
@@ -247,32 +261,45 @@
           "attachments": [ # The media objects attached to this activity.
             {
               "displayName": "A String", # The title of the attachment (such as a photo caption or an article title).
-              "fullImage": { # The full image url for photo attachments.
-                "url": "A String", # URL of the link.
+              "thumbnails": [ # If the attachment is an album, potential additional thumbnails from the album.
+                {
+                  "url": "A String", # URL to the webpage containing the image.
+                  "image": { # Image resource.
+                    "url": "A String", # Image url.
+                    "width": 42, # The width, in pixels, of the linked resource.
+                    "type": "A String", # Media type of the link.
+                    "height": 42, # The height, in pixels, of the linked resource.
+                  },
+                  "description": "A String", # Potential name of the thumbnail.
+                },
+              ],
+              "fullImage": { # The full image URL for photo attachments.
+                "url": "A String", # URL to the image.
                 "width": 42, # The width, in pixels, of the linked resource.
                 "type": "A String", # Media type of the link.
                 "height": 42, # The height, in pixels, of the linked resource.
               },
               "url": "A String", # The link to the attachment, should be of type text/html.
               "image": { # The preview image for photos or videos.
-                "url": "A String", # URL of the link.
+                "url": "A String", # Image url.
                 "width": 42, # The width, in pixels, of the linked resource.
                 "type": "A String", # Media type of the link.
                 "height": 42, # The height, in pixels, of the linked resource.
               },
-              "content": "A String", # If the attachment is an article, this property contains a snippet of text from the article.
+              "content": "A String", # If the attachment is an article, this property contains a snippet of text from the article. It can also include descriptions for other types.
               "embed": { # If the attachment is a video, the embeddable link.
                 "url": "A String", # URL of the link.
                 "type": "A String", # Media type of the link.
               },
-              "id": "A String", # The ID of the media object's resource.
+              "id": "A String", # The ID of the attachment.
               "objectType": "A String", # The type of media object. Possible values are:
                   # - "photo" - A photo.
+                  # - "album" - A photo album.
                   # - "video" - A video.
                   # - "article" - An article, specified by a link.
             },
           ],
-          "originalContent": "A String", # The content (text) as provided by the author, stored without any HTML formatting. When updating an activity's content, use the value of originalContent as the starting point from which to make edits.
+          "originalContent": "A String", # The content (text) as provided by the author, stored without any HTML formatting. When creating or updating an activity, this value must be supplied as plain text in the request.
           "plusoners": { # People who +1'd this activity.
             "totalItems": 42, # Total number of people who +1'd this activity.
             "selfLink": "A String", # The URL for the collection of people who +1'd this activity.
@@ -285,7 +312,7 @@
             "displayName": "A String", # The original actor's name, suitable for display.
             "id": "A String", # ID of the original actor.
           },
-          "content": "A String", # The HTML-formatted content, suitable for display. When creating or updating an activity, this value must be supplied as plain text in the request. If successful, the response will contain the HTML-formatted content. When updating an activity, use originalContent as the starting value, then assign the updated text to this property.
+          "content": "A String", # The HTML-formatted content, suitable for display.
           "url": "A String", # The URL that points to the linked resource.
           "replies": { # Comments in reply to this activity.
             "totalItems": 42, # Total number of comments on this activity.
@@ -319,6 +346,7 @@
                   # - "myCircles" - Access to members of all the person's circles.
                   # - "extendedCircles" - Access to members of everyone in a person's circles, plus all of the people in their circles.
                   # - "public" - Access to anyone on the web.
+              "displayName": "A String", # A descriptive name for this entry. Suitable for display.
               "id": "A String", # The ID of the entry. For entries of type "person" or "circle", this is the ID of the resource. For other types, this property is not set.
             },
           ],
@@ -326,8 +354,8 @@
           "description": "A String", # Description of the access granted, suitable for display.
         },
         "verb": "A String", # This activity's verb, indicating what action was performed. Possible values are:
-            # - "post" - Publish content to the stream.
             # - "checkin" - Check in to a location.
+            # - "post" - Publish content to the stream.
             # - "share" - Reshare an activity.
         "etag": "A String", # ETag of this response for caching purposes.
         "radius": "A String", # Radius, in meters, of the region where this activity occurred, centered at the latitude and longitude identified in geocode.
@@ -370,14 +398,14 @@
       best - Sort activities by relevance to the user, most relevant first.
       recent - Sort activities by published date, most recent first.
   language: string, Specify the preferred language to search with. See search language codes for available values.
-  pageToken: string, The continuation token, used to page through large result sets. To get the next page of results, set this parameter to the value of "nextPageToken" from the previous response. This token may be of any length.
-  maxResults: integer, The maximum number of activities to include in the response, used for paging. For any response, the actual number returned may be less than the specified maxResults.
+  pageToken: string, The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of "nextPageToken" from the previous response. This token can be of any length.
+  maxResults: integer, The maximum number of activities to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.
 
 Returns:
   An object of the form:
 
     {
-    "nextPageToken": "A String", # The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.
+    "nextPageToken": "A String", # The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.
     "kind": "plus#activityFeed", # Identifies this resource as a collection of activities. Value: "plus#activityFeed".
     "title": "A String", # The title of this collection of activities.
     "items": [ # The activities in this page of results.
@@ -399,32 +427,45 @@
           "attachments": [ # The media objects attached to this activity.
             {
               "displayName": "A String", # The title of the attachment (such as a photo caption or an article title).
-              "fullImage": { # The full image url for photo attachments.
-                "url": "A String", # URL of the link.
+              "thumbnails": [ # If the attachment is an album, potential additional thumbnails from the album.
+                {
+                  "url": "A String", # URL to the webpage containing the image.
+                  "image": { # Image resource.
+                    "url": "A String", # Image url.
+                    "width": 42, # The width, in pixels, of the linked resource.
+                    "type": "A String", # Media type of the link.
+                    "height": 42, # The height, in pixels, of the linked resource.
+                  },
+                  "description": "A String", # Potential name of the thumbnail.
+                },
+              ],
+              "fullImage": { # The full image URL for photo attachments.
+                "url": "A String", # URL to the image.
                 "width": 42, # The width, in pixels, of the linked resource.
                 "type": "A String", # Media type of the link.
                 "height": 42, # The height, in pixels, of the linked resource.
               },
               "url": "A String", # The link to the attachment, should be of type text/html.
               "image": { # The preview image for photos or videos.
-                "url": "A String", # URL of the link.
+                "url": "A String", # Image url.
                 "width": 42, # The width, in pixels, of the linked resource.
                 "type": "A String", # Media type of the link.
                 "height": 42, # The height, in pixels, of the linked resource.
               },
-              "content": "A String", # If the attachment is an article, this property contains a snippet of text from the article.
+              "content": "A String", # If the attachment is an article, this property contains a snippet of text from the article. It can also include descriptions for other types.
               "embed": { # If the attachment is a video, the embeddable link.
                 "url": "A String", # URL of the link.
                 "type": "A String", # Media type of the link.
               },
-              "id": "A String", # The ID of the media object's resource.
+              "id": "A String", # The ID of the attachment.
               "objectType": "A String", # The type of media object. Possible values are:
                   # - "photo" - A photo.
+                  # - "album" - A photo album.
                   # - "video" - A video.
                   # - "article" - An article, specified by a link.
             },
           ],
-          "originalContent": "A String", # The content (text) as provided by the author, stored without any HTML formatting. When updating an activity's content, use the value of originalContent as the starting point from which to make edits.
+          "originalContent": "A String", # The content (text) as provided by the author, stored without any HTML formatting. When creating or updating an activity, this value must be supplied as plain text in the request.
           "plusoners": { # People who +1'd this activity.
             "totalItems": 42, # Total number of people who +1'd this activity.
             "selfLink": "A String", # The URL for the collection of people who +1'd this activity.
@@ -437,7 +478,7 @@
             "displayName": "A String", # The original actor's name, suitable for display.
             "id": "A String", # ID of the original actor.
           },
-          "content": "A String", # The HTML-formatted content, suitable for display. When creating or updating an activity, this value must be supplied as plain text in the request. If successful, the response will contain the HTML-formatted content. When updating an activity, use originalContent as the starting value, then assign the updated text to this property.
+          "content": "A String", # The HTML-formatted content, suitable for display.
           "url": "A String", # The URL that points to the linked resource.
           "replies": { # Comments in reply to this activity.
             "totalItems": 42, # Total number of comments on this activity.
@@ -471,6 +512,7 @@
                   # - "myCircles" - Access to members of all the person's circles.
                   # - "extendedCircles" - Access to members of everyone in a person's circles, plus all of the people in their circles.
                   # - "public" - Access to anyone on the web.
+              "displayName": "A String", # A descriptive name for this entry. Suitable for display.
               "id": "A String", # The ID of the entry. For entries of type "person" or "circle", this is the ID of the resource. For other types, this property is not set.
             },
           ],
@@ -478,8 +520,8 @@
           "description": "A String", # Description of the access granted, suitable for display.
         },
         "verb": "A String", # This activity's verb, indicating what action was performed. Possible values are:
-            # - "post" - Publish content to the stream.
             # - "checkin" - Check in to a location.
+            # - "post" - Publish content to the stream.
             # - "share" - Reshare an activity.
         "etag": "A String", # ETag of this response for caching purposes.
         "radius": "A String", # Radius, in meters, of the region where this activity occurred, centered at the latitude and longitude identified in geocode.
diff --git a/docs/dyn/plus_v1.comments.html b/docs/dyn/plus_v1.comments.html
index 7dda9e0..d23a720 100644
--- a/docs/dyn/plus_v1.comments.html
+++ b/docs/dyn/plus_v1.comments.html
@@ -97,13 +97,17 @@
     {
     "inReplyTo": [ # The activity this comment replied to.
       {
-        "url": "A String", # The url of the activity.
-        "id": "A String", # The id of the activity.
+        "url": "A String", # The URL of the activity.
+        "id": "A String", # The ID of the activity.
       },
     ],
     "kind": "plus#comment", # Identifies this resource as a comment. Value: "plus#comment".
+    "plusoners": { # People who +1'd this comment.
+      "totalItems": 42, # Total number of people who +1'd this comment.
+    },
     "object": { # The object of this comment.
-      "content": "A String", # The content of this comment.
+      "content": "A String", # The HTML-formatted content, suitable for display.
+      "originalContent": "A String", # The content (text) as provided by the author, stored without any HTML formatting. When creating or updating a comment, this value must be supplied as plain text in the request.
       "objectType": "comment", # The object type of this comment. Possible values are:
           # - "comment" - A comment in reply to an activity.
     },
@@ -131,8 +135,8 @@
 
 Args:
   activityId: string, The ID of the activity to get comments for. (required)
-  pageToken: string, The continuation token, used to page through large result sets. To get the next page of results, set this parameter to the value of "nextPageToken" from the previous response.
-  maxResults: integer, The maximum number of comments to include in the response, used for paging. For any response, the actual number returned may be less than the specified maxResults.
+  pageToken: string, The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of "nextPageToken" from the previous response.
+  maxResults: integer, The maximum number of comments to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.
   sortOrder: string, The order in which to sort the list of comments.
     Allowed values
       ascending - Sort oldest comments first.
@@ -142,20 +146,24 @@
   An object of the form:
 
     {
-    "nextPageToken": "A String", # The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.
+    "nextPageToken": "A String", # The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.
     "kind": "plus#commentFeed", # Identifies this resource as a collection of comments. Value: "plus#commentFeed".
     "title": "A String", # The title of this collection of comments.
     "items": [ # The comments in this page of results.
       {
         "inReplyTo": [ # The activity this comment replied to.
           {
-            "url": "A String", # The url of the activity.
-            "id": "A String", # The id of the activity.
+            "url": "A String", # The URL of the activity.
+            "id": "A String", # The ID of the activity.
           },
         ],
         "kind": "plus#comment", # Identifies this resource as a comment. Value: "plus#comment".
+        "plusoners": { # People who +1'd this comment.
+          "totalItems": 42, # Total number of people who +1'd this comment.
+        },
         "object": { # The object of this comment.
-          "content": "A String", # The content of this comment.
+          "content": "A String", # The HTML-formatted content, suitable for display.
+          "originalContent": "A String", # The content (text) as provided by the author, stored without any HTML formatting. When creating or updating a comment, this value must be supplied as plain text in the request.
           "objectType": "comment", # The object type of this comment. Possible values are:
               # - "comment" - A comment in reply to an activity.
         },
diff --git a/docs/dyn/plus_v1.people.html b/docs/dyn/plus_v1.people.html
index 08f6212..ee6710c 100644
--- a/docs/dyn/plus_v1.people.html
+++ b/docs/dyn/plus_v1.people.html
@@ -136,6 +136,7 @@
       "givenName": "A String", # The given name (first name) of this person.
       "honorificSuffix": "A String", # The honorific suffixes (such as "Jr.") for this person.
     },
+    "isPlusUser": True or False, # Whether this user has signed up for G+.
     "url": "A String", # The URL of this person's profile.
     "gender": "A String", # The person's gender. Possible values are:
         # - "male" - Male gender.
@@ -159,14 +160,6 @@
         "value": "A String", # The email address.
       },
     ],
-    "nickname": "A String", # The nickname of this person.
-    "birthday": "A String", # The person's date of birth, represented as YYYY-MM-DD.
-    "etag": "A String", # ETag of this response for caching purposes.
-    "image": { # The representation of the person's profile photo.
-      "url": "A String", # The URL of the person's profile photo. To re-size the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side.
-    },
-    "hasApp": True or False, # If "true", indicates that the person has installed the app that is making the request and has chosen to expose this install state to the caller. A value of "false" indicates that the install state cannot be determined (it is either not installed or the person has chosen to keep this information private).
-    "id": "A String", # The ID of this person.
     "urls": [ # A list of URLs for this person.
       {
         "type": "A String", # The type of URL. Possible values are:
@@ -179,9 +172,14 @@
         "value": "A String", # The URL value.
       },
     ],
-    "languagesSpoken": [ # The languages spoken by this person.
-      "A String",
-    ],
+    "birthday": "A String", # The person's date of birth, represented as YYYY-MM-DD.
+    "etag": "A String", # ETag of this response for caching purposes.
+    "image": { # The representation of the person's profile photo.
+      "url": "A String", # The URL of the person's profile photo. To re-size the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side.
+    },
+    "hasApp": True or False, # If "true", indicates that the person has installed the app that is making the request and has chosen to expose this install state to the caller. A value of "false" indicates that the install state cannot be determined (it is either not installed or the person has chosen to keep this information private).
+    "id": "A String", # The ID of this person.
+    "nickname": "A String", # The nickname of this person.
     "currentLocation": "A String", # The current location for this person.
     "objectType": "A String", # Type of person within Google+. Possible values are:
         # - "person" - represents an actual person.
@@ -199,17 +197,17 @@
     Allowed values
       plusoners - List all people who have +1'd this activity.
       resharers - List all people who have reshared this activity.
-  pageToken: string, The continuation token, used to page through large result sets. To get the next page of results, set this parameter to the value of "nextPageToken" from the previous response.
-  maxResults: integer, The maximum number of people to include in the response, used for paging. For any response, the actual number returned may be less than the specified maxResults.
+  pageToken: string, The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of "nextPageToken" from the previous response.
+  maxResults: integer, The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.
 
 Returns:
   An object of the form:
 
     {
-    "nextPageToken": "A String", # The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.
+    "nextPageToken": "A String", # The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.
     "kind": "plus#peopleFeed", # Identifies this resource as a collection of people. Value: "plus#peopleFeed".
     "title": "A String", # The title of this collection of people.
-    "items": [ # The people in this page of results. Each item will include the id, displayName, image, and url for the person. To retrieve additional profile data, see the people.get method.
+    "items": [ # The people in this page of results. Each item includes the id, displayName, image, and url for the person. To retrieve additional profile data, see the people.get method.
       {
         "relationshipStatus": "A String", # The person's relationship status. Possible values are:
             # - "single" - Person is single.
@@ -246,6 +244,7 @@
           "givenName": "A String", # The given name (first name) of this person.
           "honorificSuffix": "A String", # The honorific suffixes (such as "Jr.") for this person.
         },
+        "isPlusUser": True or False, # Whether this user has signed up for G+.
         "url": "A String", # The URL of this person's profile.
         "gender": "A String", # The person's gender. Possible values are:
             # - "male" - Male gender.
@@ -269,14 +268,6 @@
             "value": "A String", # The email address.
           },
         ],
-        "nickname": "A String", # The nickname of this person.
-        "birthday": "A String", # The person's date of birth, represented as YYYY-MM-DD.
-        "etag": "A String", # ETag of this response for caching purposes.
-        "image": { # The representation of the person's profile photo.
-          "url": "A String", # The URL of the person's profile photo. To re-size the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side.
-        },
-        "hasApp": True or False, # If "true", indicates that the person has installed the app that is making the request and has chosen to expose this install state to the caller. A value of "false" indicates that the install state cannot be determined (it is either not installed or the person has chosen to keep this information private).
-        "id": "A String", # The ID of this person.
         "urls": [ # A list of URLs for this person.
           {
             "type": "A String", # The type of URL. Possible values are:
@@ -289,9 +280,14 @@
             "value": "A String", # The URL value.
           },
         ],
-        "languagesSpoken": [ # The languages spoken by this person.
-          "A String",
-        ],
+        "birthday": "A String", # The person's date of birth, represented as YYYY-MM-DD.
+        "etag": "A String", # ETag of this response for caching purposes.
+        "image": { # The representation of the person's profile photo.
+          "url": "A String", # The URL of the person's profile photo. To re-size the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side.
+        },
+        "hasApp": True or False, # If "true", indicates that the person has installed the app that is making the request and has chosen to expose this install state to the caller. A value of "false" indicates that the install state cannot be determined (it is either not installed or the person has chosen to keep this information private).
+        "id": "A String", # The ID of this person.
+        "nickname": "A String", # The nickname of this person.
         "currentLocation": "A String", # The current location for this person.
         "objectType": "A String", # Type of person within Google+. Possible values are:
             # - "person" - represents an actual person.
@@ -299,6 +295,7 @@
       },
     ],
     "etag": "A String", # ETag of this response for caching purposes.
+    "totalItems": 42, # The total number of people available in this list. The number of people in a response might be smaller due to paging. This might not be set for all collections.
     "selfLink": "A String", # Link to this resource.
   }</pre>
 </div>
@@ -323,18 +320,18 @@
 
 Args:
   query: string, Specify a query string for full text search of public text in all profiles. (required)
-  pageToken: string, The continuation token, used to page through large result sets. To get the next page of results, set this parameter to the value of "nextPageToken" from the previous response. This token may be of any length.
+  pageToken: string, The continuation token, which is used to page through large result sets. To get the next page of results, set this parameter to the value of "nextPageToken" from the previous response. This token can be of any length.
   language: string, Specify the preferred language to search with. See search language codes for available values.
-  maxResults: integer, The maximum number of people to include in the response, used for paging. For any response, the actual number returned may be less than the specified maxResults.
+  maxResults: integer, The maximum number of people to include in the response, which is used for paging. For any response, the actual number returned might be less than the specified maxResults.
 
 Returns:
   An object of the form:
 
     {
-    "nextPageToken": "A String", # The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.
+    "nextPageToken": "A String", # The continuation token, which is used to page through large result sets. Provide this value in a subsequent request to return the next page of results.
     "kind": "plus#peopleFeed", # Identifies this resource as a collection of people. Value: "plus#peopleFeed".
     "title": "A String", # The title of this collection of people.
-    "items": [ # The people in this page of results. Each item will include the id, displayName, image, and url for the person. To retrieve additional profile data, see the people.get method.
+    "items": [ # The people in this page of results. Each item includes the id, displayName, image, and url for the person. To retrieve additional profile data, see the people.get method.
       {
         "relationshipStatus": "A String", # The person's relationship status. Possible values are:
             # - "single" - Person is single.
@@ -371,6 +368,7 @@
           "givenName": "A String", # The given name (first name) of this person.
           "honorificSuffix": "A String", # The honorific suffixes (such as "Jr.") for this person.
         },
+        "isPlusUser": True or False, # Whether this user has signed up for G+.
         "url": "A String", # The URL of this person's profile.
         "gender": "A String", # The person's gender. Possible values are:
             # - "male" - Male gender.
@@ -394,14 +392,6 @@
             "value": "A String", # The email address.
           },
         ],
-        "nickname": "A String", # The nickname of this person.
-        "birthday": "A String", # The person's date of birth, represented as YYYY-MM-DD.
-        "etag": "A String", # ETag of this response for caching purposes.
-        "image": { # The representation of the person's profile photo.
-          "url": "A String", # The URL of the person's profile photo. To re-size the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side.
-        },
-        "hasApp": True or False, # If "true", indicates that the person has installed the app that is making the request and has chosen to expose this install state to the caller. A value of "false" indicates that the install state cannot be determined (it is either not installed or the person has chosen to keep this information private).
-        "id": "A String", # The ID of this person.
         "urls": [ # A list of URLs for this person.
           {
             "type": "A String", # The type of URL. Possible values are:
@@ -414,9 +404,14 @@
             "value": "A String", # The URL value.
           },
         ],
-        "languagesSpoken": [ # The languages spoken by this person.
-          "A String",
-        ],
+        "birthday": "A String", # The person's date of birth, represented as YYYY-MM-DD.
+        "etag": "A String", # ETag of this response for caching purposes.
+        "image": { # The representation of the person's profile photo.
+          "url": "A String", # The URL of the person's profile photo. To re-size the image and crop it to a square, append the query string ?sz=x, where x is the dimension in pixels of each side.
+        },
+        "hasApp": True or False, # If "true", indicates that the person has installed the app that is making the request and has chosen to expose this install state to the caller. A value of "false" indicates that the install state cannot be determined (it is either not installed or the person has chosen to keep this information private).
+        "id": "A String", # The ID of this person.
+        "nickname": "A String", # The nickname of this person.
         "currentLocation": "A String", # The current location for this person.
         "objectType": "A String", # Type of person within Google+. Possible values are:
             # - "person" - represents an actual person.
@@ -424,6 +419,7 @@
       },
     ],
     "etag": "A String", # ETag of this response for caching purposes.
+    "totalItems": 42, # The total number of people available in this list. The number of people in a response might be smaller due to paging. This might not be set for all collections.
     "selfLink": "A String", # Link to this resource.
   }</pre>
 </div>
diff --git a/docs/dyn/prediction_v1_5.trainedmodels.html b/docs/dyn/prediction_v1_5.trainedmodels.html
index 66a12ef..72667f2 100644
--- a/docs/dyn/prediction_v1_5.trainedmodels.html
+++ b/docs/dyn/prediction_v1_5.trainedmodels.html
@@ -179,6 +179,14 @@
             "classificationAccuracy": 3.14, # A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, based on the amount and quality of the training data, of the estimated prediction accuracy. You can use this is a guide to decide whether the results are accurate enough for your needs. This estimate will be more reliable if your real input data is similar to your training data [Categorical models only].
           },
           "storagePMMLLocation": "A String", # Google storage location of the preprocessing pmml file.
+          "trainingInstances": [ # Instances to train model on.
+            {
+              "output": "A String", # The generic output value - could be regression or class label
+              "csvInstance": [ # The input features for this instance
+                "",
+              ],
+            },
+          ],
           "id": "A String", # The unique name for the predictive model.
           "selfLink": "A String", # A URL to re-request this resource.
           "utility": [ # A class weighting function, which allows the importance weights for class labels to be specified [Categorical models only].
@@ -229,6 +237,14 @@
         "classificationAccuracy": 3.14, # A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, based on the amount and quality of the training data, of the estimated prediction accuracy. You can use this is a guide to decide whether the results are accurate enough for your needs. This estimate will be more reliable if your real input data is similar to your training data [Categorical models only].
       },
       "storagePMMLLocation": "A String", # Google storage location of the preprocessing pmml file.
+      "trainingInstances": [ # Instances to train model on.
+        {
+          "output": "A String", # The generic output value - could be regression or class label
+          "csvInstance": [ # The input features for this instance
+            "",
+          ],
+        },
+      ],
       "id": "A String", # The unique name for the predictive model.
       "selfLink": "A String", # A URL to re-request this resource.
       "utility": [ # A class weighting function, which allows the importance weights for class labels to be specified [Categorical models only].
@@ -264,6 +280,14 @@
       "classificationAccuracy": 3.14, # A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, based on the amount and quality of the training data, of the estimated prediction accuracy. You can use this is a guide to decide whether the results are accurate enough for your needs. This estimate will be more reliable if your real input data is similar to your training data [Categorical models only].
     },
     "storagePMMLLocation": "A String", # Google storage location of the preprocessing pmml file.
+    "trainingInstances": [ # Instances to train model on.
+      {
+        "output": "A String", # The generic output value - could be regression or class label
+        "csvInstance": [ # The input features for this instance
+          "",
+        ],
+      },
+    ],
     "id": "A String", # The unique name for the predictive model.
     "selfLink": "A String", # A URL to re-request this resource.
     "utility": [ # A class weighting function, which allows the importance weights for class labels to be specified [Categorical models only].
@@ -294,6 +318,14 @@
         "classificationAccuracy": 3.14, # A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, based on the amount and quality of the training data, of the estimated prediction accuracy. You can use this is a guide to decide whether the results are accurate enough for your needs. This estimate will be more reliable if your real input data is similar to your training data [Categorical models only].
       },
       "storagePMMLLocation": "A String", # Google storage location of the preprocessing pmml file.
+      "trainingInstances": [ # Instances to train model on.
+        {
+          "output": "A String", # The generic output value - could be regression or class label
+          "csvInstance": [ # The input features for this instance
+            "",
+          ],
+        },
+      ],
       "id": "A String", # The unique name for the predictive model.
       "selfLink": "A String", # A URL to re-request this resource.
       "utility": [ # A class weighting function, which allows the importance weights for class labels to be specified [Categorical models only].
@@ -335,6 +367,14 @@
             "classificationAccuracy": 3.14, # A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, based on the amount and quality of the training data, of the estimated prediction accuracy. You can use this is a guide to decide whether the results are accurate enough for your needs. This estimate will be more reliable if your real input data is similar to your training data [Categorical models only].
           },
           "storagePMMLLocation": "A String", # Google storage location of the preprocessing pmml file.
+          "trainingInstances": [ # Instances to train model on.
+            {
+              "output": "A String", # The generic output value - could be regression or class label
+              "csvInstance": [ # The input features for this instance
+                "",
+              ],
+            },
+          ],
           "id": "A String", # The unique name for the predictive model.
           "selfLink": "A String", # A URL to re-request this resource.
           "utility": [ # A class weighting function, which allows the importance weights for class labels to be specified [Categorical models only].
@@ -409,10 +449,11 @@
     The object takes the form of:
 
 {
+    "output": "A String", # The generic output value - could be regression value or class label
     "csvInstance": [ # The input features for this instance
       "",
     ],
-    "label": "A String", # The true class label of this instance
+    "label": "A String", # The class label of this instance
   }
 
 
@@ -436,6 +477,14 @@
         "classificationAccuracy": 3.14, # A number between 0.0 and 1.0, where 1.0 is 100% accurate. This is an estimate, based on the amount and quality of the training data, of the estimated prediction accuracy. You can use this is a guide to decide whether the results are accurate enough for your needs. This estimate will be more reliable if your real input data is similar to your training data [Categorical models only].
       },
       "storagePMMLLocation": "A String", # Google storage location of the preprocessing pmml file.
+      "trainingInstances": [ # Instances to train model on.
+        {
+          "output": "A String", # The generic output value - could be regression or class label
+          "csvInstance": [ # The input features for this instance
+            "",
+          ],
+        },
+      ],
       "id": "A String", # The unique name for the predictive model.
       "selfLink": "A String", # A URL to re-request this resource.
       "utility": [ # A class weighting function, which allows the importance weights for class labels to be specified [Categorical models only].
diff --git a/docs/dyn/reseller_v1.customers.html b/docs/dyn/reseller_v1.customers.html
new file mode 100644
index 0000000..0d4a6da
--- /dev/null
+++ b/docs/dyn/reseller_v1.customers.html
@@ -0,0 +1,283 @@
+<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="reseller_v1.html">Enterprise Apps Reseller API</a> . <a href="reseller_v1.customers.html">customers</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#get">get(customerId)</a></code></p>
+<p class="firstline">Gets a customer resource if one exists and is owned by the reseller.</p>
+<p class="toc_element">
+  <code><a href="#insert">insert(body, customerAuthToken=None)</a></code></p>
+<p class="firstline">Creates a customer resource if one does not already exist.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(customerId, body)</a></code></p>
+<p class="firstline">Update a customer resource if one it exists and is owned by the reseller. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#update">update(customerId, body)</a></code></p>
+<p class="firstline">Update a customer resource if one it exists and is owned by the reseller.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="get">get(customerId)</code>
+  <pre>Gets a customer resource if one exists and is owned by the reseller.
+
+Args:
+  customerId: string, Id of the Customer (required)
+
+Returns:
+  An object of the form:
+
+    { # JSON template for a customer.
+      "customerDomain": "A String", # The domain name of the customer.
+      "alternateEmail": "A String", # The alternate email of the customer.
+      "kind": "reseller#customer", # Identifies the resource as a customer.
+      "phoneNumber": "A String", # The phone number of the customer.
+      "postalAddress": { # JSON template for address of a customer. # The postal address of the customer.
+        "kind": "customers#address", # Identifies the resource as a customer address.
+        "organizationName": "A String", # Name of the organization.
+        "countryCode": "A String", # ISO 3166 country code.
+        "locality": "A String", # Name of the locality. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+        "region": "A String", # Name of the region. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+        "addressLine2": "A String", # Address line 2 of the address.
+        "addressLine3": "A String", # Address line 3 of the address.
+        "contactName": "A String", # Name of the contact person.
+        "addressLine1": "A String", # Address line 1 of the address.
+        "postalCode": "A String", # The postal code. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+      },
+      "customerId": "A String", # The id of the customer.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="insert">insert(body, customerAuthToken=None)</code>
+  <pre>Creates a customer resource if one does not already exist.
+
+Args:
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # JSON template for a customer.
+    "customerDomain": "A String", # The domain name of the customer.
+    "alternateEmail": "A String", # The alternate email of the customer.
+    "kind": "reseller#customer", # Identifies the resource as a customer.
+    "phoneNumber": "A String", # The phone number of the customer.
+    "postalAddress": { # JSON template for address of a customer. # The postal address of the customer.
+      "kind": "customers#address", # Identifies the resource as a customer address.
+      "organizationName": "A String", # Name of the organization.
+      "countryCode": "A String", # ISO 3166 country code.
+      "locality": "A String", # Name of the locality. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+      "region": "A String", # Name of the region. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+      "addressLine2": "A String", # Address line 2 of the address.
+      "addressLine3": "A String", # Address line 3 of the address.
+      "contactName": "A String", # Name of the contact person.
+      "addressLine1": "A String", # Address line 1 of the address.
+      "postalCode": "A String", # The postal code. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+    },
+    "customerId": "A String", # The id of the customer.
+  }
+
+  customerAuthToken: string, An auth token needed for inserting a customer for which domain already exists. Can be generated at https://www.google.com/a/cpanel//TransferToken. Optional.
+
+Returns:
+  An object of the form:
+
+    { # JSON template for a customer.
+      "customerDomain": "A String", # The domain name of the customer.
+      "alternateEmail": "A String", # The alternate email of the customer.
+      "kind": "reseller#customer", # Identifies the resource as a customer.
+      "phoneNumber": "A String", # The phone number of the customer.
+      "postalAddress": { # JSON template for address of a customer. # The postal address of the customer.
+        "kind": "customers#address", # Identifies the resource as a customer address.
+        "organizationName": "A String", # Name of the organization.
+        "countryCode": "A String", # ISO 3166 country code.
+        "locality": "A String", # Name of the locality. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+        "region": "A String", # Name of the region. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+        "addressLine2": "A String", # Address line 2 of the address.
+        "addressLine3": "A String", # Address line 3 of the address.
+        "contactName": "A String", # Name of the contact person.
+        "addressLine1": "A String", # Address line 1 of the address.
+        "postalCode": "A String", # The postal code. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+      },
+      "customerId": "A String", # The id of the customer.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(customerId, body)</code>
+  <pre>Update a customer resource if one it exists and is owned by the reseller. This method supports patch semantics.
+
+Args:
+  customerId: string, Id of the Customer (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # JSON template for a customer.
+    "customerDomain": "A String", # The domain name of the customer.
+    "alternateEmail": "A String", # The alternate email of the customer.
+    "kind": "reseller#customer", # Identifies the resource as a customer.
+    "phoneNumber": "A String", # The phone number of the customer.
+    "postalAddress": { # JSON template for address of a customer. # The postal address of the customer.
+      "kind": "customers#address", # Identifies the resource as a customer address.
+      "organizationName": "A String", # Name of the organization.
+      "countryCode": "A String", # ISO 3166 country code.
+      "locality": "A String", # Name of the locality. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+      "region": "A String", # Name of the region. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+      "addressLine2": "A String", # Address line 2 of the address.
+      "addressLine3": "A String", # Address line 3 of the address.
+      "contactName": "A String", # Name of the contact person.
+      "addressLine1": "A String", # Address line 1 of the address.
+      "postalCode": "A String", # The postal code. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+    },
+    "customerId": "A String", # The id of the customer.
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # JSON template for a customer.
+      "customerDomain": "A String", # The domain name of the customer.
+      "alternateEmail": "A String", # The alternate email of the customer.
+      "kind": "reseller#customer", # Identifies the resource as a customer.
+      "phoneNumber": "A String", # The phone number of the customer.
+      "postalAddress": { # JSON template for address of a customer. # The postal address of the customer.
+        "kind": "customers#address", # Identifies the resource as a customer address.
+        "organizationName": "A String", # Name of the organization.
+        "countryCode": "A String", # ISO 3166 country code.
+        "locality": "A String", # Name of the locality. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+        "region": "A String", # Name of the region. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+        "addressLine2": "A String", # Address line 2 of the address.
+        "addressLine3": "A String", # Address line 3 of the address.
+        "contactName": "A String", # Name of the contact person.
+        "addressLine1": "A String", # Address line 1 of the address.
+        "postalCode": "A String", # The postal code. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+      },
+      "customerId": "A String", # The id of the customer.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(customerId, body)</code>
+  <pre>Update a customer resource if one it exists and is owned by the reseller.
+
+Args:
+  customerId: string, Id of the Customer (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # JSON template for a customer.
+    "customerDomain": "A String", # The domain name of the customer.
+    "alternateEmail": "A String", # The alternate email of the customer.
+    "kind": "reseller#customer", # Identifies the resource as a customer.
+    "phoneNumber": "A String", # The phone number of the customer.
+    "postalAddress": { # JSON template for address of a customer. # The postal address of the customer.
+      "kind": "customers#address", # Identifies the resource as a customer address.
+      "organizationName": "A String", # Name of the organization.
+      "countryCode": "A String", # ISO 3166 country code.
+      "locality": "A String", # Name of the locality. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+      "region": "A String", # Name of the region. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+      "addressLine2": "A String", # Address line 2 of the address.
+      "addressLine3": "A String", # Address line 3 of the address.
+      "contactName": "A String", # Name of the contact person.
+      "addressLine1": "A String", # Address line 1 of the address.
+      "postalCode": "A String", # The postal code. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+    },
+    "customerId": "A String", # The id of the customer.
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # JSON template for a customer.
+      "customerDomain": "A String", # The domain name of the customer.
+      "alternateEmail": "A String", # The alternate email of the customer.
+      "kind": "reseller#customer", # Identifies the resource as a customer.
+      "phoneNumber": "A String", # The phone number of the customer.
+      "postalAddress": { # JSON template for address of a customer. # The postal address of the customer.
+        "kind": "customers#address", # Identifies the resource as a customer address.
+        "organizationName": "A String", # Name of the organization.
+        "countryCode": "A String", # ISO 3166 country code.
+        "locality": "A String", # Name of the locality. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+        "region": "A String", # Name of the region. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+        "addressLine2": "A String", # Address line 2 of the address.
+        "addressLine3": "A String", # Address line 3 of the address.
+        "contactName": "A String", # Name of the contact person.
+        "addressLine1": "A String", # Address line 1 of the address.
+        "postalCode": "A String", # The postal code. This is in accordance with - http://portablecontacts.net/draft-spec.html#address_element.
+      },
+      "customerId": "A String", # The id of the customer.
+    }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtubeAnalytics_v1beta1.html b/docs/dyn/reseller_v1.html
similarity index 73%
copy from docs/dyn/youtubeAnalytics_v1beta1.html
copy to docs/dyn/reseller_v1.html
index e75a5be..d8e9e0a 100644
--- a/docs/dyn/youtubeAnalytics_v1beta1.html
+++ b/docs/dyn/reseller_v1.html
@@ -72,11 +72,16 @@
 
 </style>
 
-<h1><a href="youtubeAnalytics_v1beta1.html">YouTube Analytics API</a></h1>
+<h1><a href="reseller_v1.html">Enterprise Apps Reseller API</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
-  <code><a href="youtubeAnalytics_v1beta1.reports.html">reports()</a></code>
+  <code><a href="reseller_v1.customers.html">customers()</a></code>
 </p>
-<p class="firstline">Returns the reports Resource.</p>
+<p class="firstline">Returns the customers Resource.</p>
+
+<p class="toc_element">
+  <code><a href="reseller_v1.subscriptions.html">subscriptions()</a></code>
+</p>
+<p class="firstline">Returns the subscriptions Resource.</p>
 
 </body></html>
\ No newline at end of file
diff --git a/docs/dyn/reseller_v1.subscriptions.html b/docs/dyn/reseller_v1.subscriptions.html
new file mode 100644
index 0000000..2718543
--- /dev/null
+++ b/docs/dyn/reseller_v1.subscriptions.html
@@ -0,0 +1,499 @@
+<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="reseller_v1.html">Enterprise Apps Reseller API</a> . <a href="reseller_v1.subscriptions.html">subscriptions</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#changePlan">changePlan(customerId, subscriptionId, body)</a></code></p>
+<p class="firstline">Changes the plan of a subscription</p>
+<p class="toc_element">
+  <code><a href="#changeRenewalSettings">changeRenewalSettings(customerId, subscriptionId, body)</a></code></p>
+<p class="firstline">Changes the renewal settings of a subscription</p>
+<p class="toc_element">
+  <code><a href="#changeSeats">changeSeats(customerId, subscriptionId, body)</a></code></p>
+<p class="firstline">Changes the seats configuration of a subscription</p>
+<p class="toc_element">
+  <code><a href="#delete">delete(customerId, subscriptionId, deletionType)</a></code></p>
+<p class="firstline">Cancels/Downgrades a subscription.</p>
+<p class="toc_element">
+  <code><a href="#get">get(customerId, subscriptionId)</a></code></p>
+<p class="firstline">Gets a subscription of the customer.</p>
+<p class="toc_element">
+  <code><a href="#insert">insert(customerId, body, customerAuthToken=None)</a></code></p>
+<p class="firstline">Creates/Transfers a subscription for the customer.</p>
+<p class="toc_element">
+  <code><a href="#list">list(pageToken=None, maxResults=None, customerNamePrefix=None)</a></code></p>
+<p class="firstline">Lists subscriptions of a reseller, optionally filtered by a customer name prefix.</p>
+<p class="toc_element">
+  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<p class="toc_element">
+  <code><a href="#startPaidService">startPaidService(customerId, subscriptionId)</a></code></p>
+<p class="firstline">Starts paid service of a trial subscription</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="changePlan">changePlan(customerId, subscriptionId, body)</code>
+  <pre>Changes the plan of a subscription
+
+Args:
+  customerId: string, Id of the Customer (required)
+  subscriptionId: string, Id of the subscription, which is unique for a customer (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # JSON template for the ChangePlan rpc request.
+    "planName": "A String", # Name of the plan to change to.
+    "kind": "subscriptions#changePlanRequest", # Identifies the resource as a subscription change plan request.
+    "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
+      "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
+      "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
+      "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
+    },
+    "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # JSON template for a subscription.
+      "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
+        "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
+        "renewalType": "A String", # Subscription renewal type.
+      },
+      "skuId": "A String", # Name of the sku for which this subscription is purchased.
+      "kind": "reseller#subscription", # Identifies the resource as a Subscription.
+      "trialSettings": { # Trial Settings of the subscription.
+        "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
+        "isInTrial": True or False, # Whether the subscription is in trial.
+      },
+      "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
+        "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
+        "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
+        "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
+      },
+      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
+      "plan": { # Plan details of the subscription
+        "planName": "A String", # The plan name of this subscription's plan.
+        "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
+          "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
+          "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
+        },
+        "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
+      },
+      "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
+      "subscriptionId": "A String", # The id of the subscription.
+      "customerId": "A String", # The id of the customer to whom the subscription belongs.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="changeRenewalSettings">changeRenewalSettings(customerId, subscriptionId, body)</code>
+  <pre>Changes the renewal settings of a subscription
+
+Args:
+  customerId: string, Id of the Customer (required)
+  subscriptionId: string, Id of the subscription, which is unique for a customer (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # JSON template for a subscription renewal settings.
+  "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
+  "renewalType": "A String", # Subscription renewal type.
+}
+
+
+Returns:
+  An object of the form:
+
+    { # JSON template for a subscription.
+      "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
+        "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
+        "renewalType": "A String", # Subscription renewal type.
+      },
+      "skuId": "A String", # Name of the sku for which this subscription is purchased.
+      "kind": "reseller#subscription", # Identifies the resource as a Subscription.
+      "trialSettings": { # Trial Settings of the subscription.
+        "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
+        "isInTrial": True or False, # Whether the subscription is in trial.
+      },
+      "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
+        "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
+        "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
+        "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
+      },
+      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
+      "plan": { # Plan details of the subscription
+        "planName": "A String", # The plan name of this subscription's plan.
+        "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
+          "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
+          "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
+        },
+        "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
+      },
+      "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
+      "subscriptionId": "A String", # The id of the subscription.
+      "customerId": "A String", # The id of the customer to whom the subscription belongs.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="changeSeats">changeSeats(customerId, subscriptionId, body)</code>
+  <pre>Changes the seats configuration of a subscription
+
+Args:
+  customerId: string, Id of the Customer (required)
+  subscriptionId: string, Id of the subscription, which is unique for a customer (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # JSON template for subscription seats.
+  "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
+  "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
+  "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
+}
+
+
+Returns:
+  An object of the form:
+
+    { # JSON template for a subscription.
+      "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
+        "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
+        "renewalType": "A String", # Subscription renewal type.
+      },
+      "skuId": "A String", # Name of the sku for which this subscription is purchased.
+      "kind": "reseller#subscription", # Identifies the resource as a Subscription.
+      "trialSettings": { # Trial Settings of the subscription.
+        "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
+        "isInTrial": True or False, # Whether the subscription is in trial.
+      },
+      "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
+        "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
+        "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
+        "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
+      },
+      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
+      "plan": { # Plan details of the subscription
+        "planName": "A String", # The plan name of this subscription's plan.
+        "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
+          "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
+          "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
+        },
+        "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
+      },
+      "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
+      "subscriptionId": "A String", # The id of the subscription.
+      "customerId": "A String", # The id of the customer to whom the subscription belongs.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="delete">delete(customerId, subscriptionId, deletionType)</code>
+  <pre>Cancels/Downgrades a subscription.
+
+Args:
+  customerId: string, Id of the Customer (required)
+  subscriptionId: string, Id of the subscription, which is unique for a customer (required)
+  deletionType: string, Whether the subscription is to be fully cancelled or downgraded (required)
+    Allowed values
+      cancel - Cancels the subscription immediately
+      downgrade - Downgrades a Google Apps for Business subscription to Google Apps
+      suspend - Suspends the subscriptions for 4 days before cancelling it
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(customerId, subscriptionId)</code>
+  <pre>Gets a subscription of the customer.
+
+Args:
+  customerId: string, Id of the Customer (required)
+  subscriptionId: string, Id of the subscription, which is unique for a customer (required)
+
+Returns:
+  An object of the form:
+
+    { # JSON template for a subscription.
+      "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
+        "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
+        "renewalType": "A String", # Subscription renewal type.
+      },
+      "skuId": "A String", # Name of the sku for which this subscription is purchased.
+      "kind": "reseller#subscription", # Identifies the resource as a Subscription.
+      "trialSettings": { # Trial Settings of the subscription.
+        "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
+        "isInTrial": True or False, # Whether the subscription is in trial.
+      },
+      "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
+        "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
+        "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
+        "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
+      },
+      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
+      "plan": { # Plan details of the subscription
+        "planName": "A String", # The plan name of this subscription's plan.
+        "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
+          "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
+          "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
+        },
+        "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
+      },
+      "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
+      "subscriptionId": "A String", # The id of the subscription.
+      "customerId": "A String", # The id of the customer to whom the subscription belongs.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="insert">insert(customerId, body, customerAuthToken=None)</code>
+  <pre>Creates/Transfers a subscription for the customer.
+
+Args:
+  customerId: string, Id of the Customer (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # JSON template for a subscription.
+    "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
+      "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
+      "renewalType": "A String", # Subscription renewal type.
+    },
+    "skuId": "A String", # Name of the sku for which this subscription is purchased.
+    "kind": "reseller#subscription", # Identifies the resource as a Subscription.
+    "trialSettings": { # Trial Settings of the subscription.
+      "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
+      "isInTrial": True or False, # Whether the subscription is in trial.
+    },
+    "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
+      "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
+      "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
+      "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
+    },
+    "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
+    "plan": { # Plan details of the subscription
+      "planName": "A String", # The plan name of this subscription's plan.
+      "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
+        "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
+        "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
+      },
+      "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
+    },
+    "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
+    "subscriptionId": "A String", # The id of the subscription.
+    "customerId": "A String", # The id of the customer to whom the subscription belongs.
+  }
+
+  customerAuthToken: string, An auth token needed for transferring a subscription. Can be generated at https://www.google.com/a/cpanel/customer-domain/TransferToken. Optional.
+
+Returns:
+  An object of the form:
+
+    { # JSON template for a subscription.
+      "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
+        "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
+        "renewalType": "A String", # Subscription renewal type.
+      },
+      "skuId": "A String", # Name of the sku for which this subscription is purchased.
+      "kind": "reseller#subscription", # Identifies the resource as a Subscription.
+      "trialSettings": { # Trial Settings of the subscription.
+        "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
+        "isInTrial": True or False, # Whether the subscription is in trial.
+      },
+      "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
+        "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
+        "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
+        "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
+      },
+      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
+      "plan": { # Plan details of the subscription
+        "planName": "A String", # The plan name of this subscription's plan.
+        "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
+          "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
+          "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
+        },
+        "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
+      },
+      "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
+      "subscriptionId": "A String", # The id of the subscription.
+      "customerId": "A String", # The id of the customer to whom the subscription belongs.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(pageToken=None, maxResults=None, customerNamePrefix=None)</code>
+  <pre>Lists subscriptions of a reseller, optionally filtered by a customer name prefix.
+
+Args:
+  pageToken: string, Token to specify next page in the list
+  maxResults: integer, Maximum number of results to return
+  customerNamePrefix: string, Prefix of the customer's domain name by which the subscriptions should be filtered. Optional
+
+Returns:
+  An object of the form:
+
+    { # JSON template for a subscription list.
+    "nextPageToken": "A String", # The continuation token, used to page through large result sets. Provide this value in a subsequent request to return the next page of results.
+    "kind": "reseller#subscriptions", # Identifies the resource as a collection of subscriptions.
+    "subscriptions": [ # The subscriptions in this page of results.
+      { # JSON template for a subscription.
+          "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
+            "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
+            "renewalType": "A String", # Subscription renewal type.
+          },
+          "skuId": "A String", # Name of the sku for which this subscription is purchased.
+          "kind": "reseller#subscription", # Identifies the resource as a Subscription.
+          "trialSettings": { # Trial Settings of the subscription.
+            "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
+            "isInTrial": True or False, # Whether the subscription is in trial.
+          },
+          "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
+            "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
+            "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
+            "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
+          },
+          "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
+          "plan": { # Plan details of the subscription
+            "planName": "A String", # The plan name of this subscription's plan.
+            "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
+              "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
+              "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
+            },
+            "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
+          },
+          "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
+          "subscriptionId": "A String", # The id of the subscription.
+          "customerId": "A String", # The id of the customer to whom the subscription belongs.
+        },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
+  <pre>Retrieves the next page of results.
+
+Args:
+  previous_request: The request for the previous page. (required)
+  previous_response: The response from the request for the previous page. (required)
+
+Returns:
+  A request object that you can call 'execute()' on to request the next
+  page. Returns None if there are no more items in the collection.
+      </pre>
+</div>
+
+<div class="method">
+    <code class="details" id="startPaidService">startPaidService(customerId, subscriptionId)</code>
+  <pre>Starts paid service of a trial subscription
+
+Args:
+  customerId: string, Id of the Customer (required)
+  subscriptionId: string, Id of the subscription, which is unique for a customer (required)
+
+Returns:
+  An object of the form:
+
+    { # JSON template for a subscription.
+      "renewalSettings": { # JSON template for a subscription renewal settings. # Renewal settings of the subscription.
+        "kind": "subscriptions#renewalSettings", # Identifies the resource as a subscription renewal setting.
+        "renewalType": "A String", # Subscription renewal type.
+      },
+      "skuId": "A String", # Name of the sku for which this subscription is purchased.
+      "kind": "reseller#subscription", # Identifies the resource as a Subscription.
+      "trialSettings": { # Trial Settings of the subscription.
+        "trialEndTime": "A String", # End time of the trial in milliseconds since Unix epoch.
+        "isInTrial": True or False, # Whether the subscription is in trial.
+      },
+      "seats": { # JSON template for subscription seats. # Number/Limit of seats in the new plan.
+        "kind": "subscriptions#seats", # Identifies the resource as a subscription change plan request.
+        "numberOfSeats": 42, # Number of seats to purchase. This is applicable only for a commitment plan.
+        "maximumNumberOfSeats": 42, # Maximum number of seats that can be purchased. This needs to be provided only for a non-commitment plan. For a commitment plan it is decided by the contract.
+      },
+      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
+      "plan": { # Plan details of the subscription
+        "planName": "A String", # The plan name of this subscription's plan.
+        "commitmentInterval": { # Interval of the commitment if it is a commitment plan.
+          "endTime": "A String", # End time of the commitment interval in milliseconds since Unix epoch.
+          "startTime": "A String", # Start time of the commitment interval in milliseconds since Unix epoch.
+        },
+        "isCommitmentPlan": True or False, # Whether the plan is a commitment plan or not.
+      },
+      "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
+      "subscriptionId": "A String", # The id of the subscription.
+      "customerId": "A String", # The id of the customer to whom the subscription belongs.
+    }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/shopping_v1.products.html b/docs/dyn/shopping_v1.products.html
index 73ba160..8775f77 100644
--- a/docs/dyn/shopping_v1.products.html
+++ b/docs/dyn/shopping_v1.products.html
@@ -108,7 +108,7 @@
   An object of the form:
 
     {
-    "selfLink": "A String", # Self link of product when generated for a search request. Self link of product when generated for a lookup request.
+    "selfLink": "A String", # Self link of product when generated for a lookup request. Self link of product when generated for a search request.
     "kind": "shopping#product", # The kind of item, always shopping#product.
     "product": { # Product.
       "queryMatched": True or False, # Whether this product matched the user query. Only set for the variant offers (if any) attached to a product offer.
@@ -537,7 +537,7 @@
     "currentItemCount": 42, # Current item count.
     "items": [ # List of returned products.
       {
-        "selfLink": "A String", # Self link of product when generated for a search request. Self link of product when generated for a lookup request.
+        "selfLink": "A String", # Self link of product when generated for a lookup request. Self link of product when generated for a search request.
         "kind": "shopping#product", # The kind of item, always shopping#product.
         "product": { # Product.
           "queryMatched": True or False, # Whether this product matched the user query. Only set for the variant offers (if any) attached to a product offer.
diff --git a/docs/dyn/youtubeAnalytics_v1beta1.html b/docs/dyn/youtubeAnalytics_v1.html
similarity index 87%
rename from docs/dyn/youtubeAnalytics_v1beta1.html
rename to docs/dyn/youtubeAnalytics_v1.html
index e75a5be..14efd64 100644
--- a/docs/dyn/youtubeAnalytics_v1beta1.html
+++ b/docs/dyn/youtubeAnalytics_v1.html
@@ -72,10 +72,10 @@
 
 </style>
 
-<h1><a href="youtubeAnalytics_v1beta1.html">YouTube Analytics API</a></h1>
+<h1><a href="youtubeAnalytics_v1.html">YouTube Analytics API</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
-  <code><a href="youtubeAnalytics_v1beta1.reports.html">reports()</a></code>
+  <code><a href="youtubeAnalytics_v1.reports.html">reports()</a></code>
 </p>
 <p class="firstline">Returns the reports Resource.</p>
 
diff --git a/docs/dyn/youtubeAnalytics_v1beta1.reports.html b/docs/dyn/youtubeAnalytics_v1.reports.html
similarity index 96%
rename from docs/dyn/youtubeAnalytics_v1beta1.reports.html
rename to docs/dyn/youtubeAnalytics_v1.reports.html
index d90ef1c..7ad9782 100644
--- a/docs/dyn/youtubeAnalytics_v1beta1.reports.html
+++ b/docs/dyn/youtubeAnalytics_v1.reports.html
@@ -72,7 +72,7 @@
 
 </style>
 
-<h1><a href="youtubeAnalytics_v1beta1.html">YouTube Analytics API</a> . <a href="youtubeAnalytics_v1beta1.reports.html">reports</a></h1>
+<h1><a href="youtubeAnalytics_v1.html">YouTube Analytics API</a> . <a href="youtubeAnalytics_v1.reports.html">reports</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
   <code><a href="#query">query(ids, start_date, end_date, metrics, sort=None, dimensions=None, filters=None, max_results=None, start_index=None)</a></code></p>
diff --git a/docs/dyn/youtube_v3.activities.html b/docs/dyn/youtube_v3.activities.html
new file mode 100644
index 0000000..6f8b930
--- /dev/null
+++ b/docs/dyn/youtube_v3.activities.html
@@ -0,0 +1,447 @@
+<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="youtube_v3.html">YouTube API</a> . <a href="youtube_v3.activities.html">activities</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#insert">insert(part, body, onBehalfOfContentOwner=None)</a></code></p>
+<p class="firstline">Post a channel bulletin.</p>
+<p class="toc_element">
+  <code><a href="#list">list(part, onBehalfOfContentOwner=None, pageToken=None, publishedBefore=None, channelId=None, mine=None, maxResults=None, home=None, publishedAfter=None)</a></code></p>
+<p class="firstline">Browse the YouTube channel activity collection.</p>
+<p class="toc_element">
+  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="insert">insert(part, body, onBehalfOfContentOwner=None)</code>
+  <pre>Post a channel bulletin.
+
+Args:
+  part: string, One or more parts to return on the current request. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # An activity resource contains information about an action that a channel has taken on YouTube.
+    "snippet": { # Basic details about an activity, including title, description, thumbnails, activity type and group. # Basic details about the activity: title, description, thumbnails.
+      "thumbnails": { # Activity thumbnails.
+        "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+          "url": "A String", # The URL for the thumbnail.
+        },
+      },
+      "title": "A String", # Title of the activity.
+      "channelId": "A String", # Channel publishing the activity.
+      "publishedAt": "A String", # Date and time the activity was published at.
+      "type": "A String", # Type of the activity.
+      "groupId": "A String", # Id of the group that this activity is part of.
+      "description": "A String", # Description of the activity.
+    },
+    "contentDetails": { # Details about the content of an activity: the video that was shared, the channel that was subscribed to, etc. # Type specific information about the activity.
+      "comment": { # Only present if the type is "comment".
+        "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the commented resource.
+          "kind": "A String", # The kind of the referred resource.
+          "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+          "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+          "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+        },
+      },
+      "playlistItem": { # Only present if the type is "playlistItem".
+        "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the resource added to the playlist.
+          "kind": "A String", # The kind of the referred resource.
+          "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+          "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+          "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+        },
+        "playlistId": "A String", # ID of the playlist the resource was added to.
+      },
+      "like": { # Only present if the type is "like".
+        "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the rated resource.
+          "kind": "A String", # The kind of the referred resource.
+          "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+          "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+          "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+        },
+      },
+      "social": { # Only present if the type is "social".
+        "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the resource this social activity is about.
+          "kind": "A String", # The kind of the referred resource.
+          "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+          "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+          "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+        },
+        "imageUrl": "A String", # Image of the post author.
+        "type": "A String", # Type of the social network.
+        "referenceUrl": "A String", # Url of the social post.
+        "author": "A String", # Author of the post.
+      },
+      "favorite": { # Only present if the type is "favorite".
+        "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the favorited resource.
+          "kind": "A String", # The kind of the referred resource.
+          "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+          "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+          "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+        },
+      },
+      "upload": { # Only present if the type is "upload".
+        "videoId": "A String", # ID of the uploaded video.
+      },
+      "recommendation": { # Only set if the type is "recommendation".
+        "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the recommended resource.
+          "kind": "A String", # The kind of the referred resource.
+          "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+          "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+          "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+        },
+        "reason": "A String", # Reason for which the video was recommended.
+        "seedResourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the video that caused this recommendation.
+          "kind": "A String", # The kind of the referred resource.
+          "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+          "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+          "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+        },
+      },
+      "bulletin": { # Only present if the type is "bulletin".
+        "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the resource this bulletin is about.
+          "kind": "A String", # The kind of the referred resource.
+          "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+          "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+          "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+        },
+      },
+      "subscription": { # Only present if the type is "subscription".
+        "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the resource subscribed to.
+          "kind": "A String", # The kind of the referred resource.
+          "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+          "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+          "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+        },
+      },
+    },
+    "kind": "youtube#activity", # The type of this API response.
+    "etag": "A String", # The eTag of the activity.
+    "id": "A String", # The unique ID of the activity.
+  }
+
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+
+Returns:
+  An object of the form:
+
+    { # An activity resource contains information about an action that a channel has taken on YouTube.
+      "snippet": { # Basic details about an activity, including title, description, thumbnails, activity type and group. # Basic details about the activity: title, description, thumbnails.
+        "thumbnails": { # Activity thumbnails.
+          "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+            "url": "A String", # The URL for the thumbnail.
+          },
+        },
+        "title": "A String", # Title of the activity.
+        "channelId": "A String", # Channel publishing the activity.
+        "publishedAt": "A String", # Date and time the activity was published at.
+        "type": "A String", # Type of the activity.
+        "groupId": "A String", # Id of the group that this activity is part of.
+        "description": "A String", # Description of the activity.
+      },
+      "contentDetails": { # Details about the content of an activity: the video that was shared, the channel that was subscribed to, etc. # Type specific information about the activity.
+        "comment": { # Only present if the type is "comment".
+          "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the commented resource.
+            "kind": "A String", # The kind of the referred resource.
+            "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+            "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+            "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+          },
+        },
+        "playlistItem": { # Only present if the type is "playlistItem".
+          "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the resource added to the playlist.
+            "kind": "A String", # The kind of the referred resource.
+            "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+            "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+            "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+          },
+          "playlistId": "A String", # ID of the playlist the resource was added to.
+        },
+        "like": { # Only present if the type is "like".
+          "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the rated resource.
+            "kind": "A String", # The kind of the referred resource.
+            "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+            "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+            "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+          },
+        },
+        "social": { # Only present if the type is "social".
+          "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the resource this social activity is about.
+            "kind": "A String", # The kind of the referred resource.
+            "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+            "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+            "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+          },
+          "imageUrl": "A String", # Image of the post author.
+          "type": "A String", # Type of the social network.
+          "referenceUrl": "A String", # Url of the social post.
+          "author": "A String", # Author of the post.
+        },
+        "favorite": { # Only present if the type is "favorite".
+          "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the favorited resource.
+            "kind": "A String", # The kind of the referred resource.
+            "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+            "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+            "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+          },
+        },
+        "upload": { # Only present if the type is "upload".
+          "videoId": "A String", # ID of the uploaded video.
+        },
+        "recommendation": { # Only set if the type is "recommendation".
+          "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the recommended resource.
+            "kind": "A String", # The kind of the referred resource.
+            "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+            "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+            "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+          },
+          "reason": "A String", # Reason for which the video was recommended.
+          "seedResourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the video that caused this recommendation.
+            "kind": "A String", # The kind of the referred resource.
+            "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+            "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+            "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+          },
+        },
+        "bulletin": { # Only present if the type is "bulletin".
+          "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the resource this bulletin is about.
+            "kind": "A String", # The kind of the referred resource.
+            "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+            "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+            "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+          },
+        },
+        "subscription": { # Only present if the type is "subscription".
+          "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the resource subscribed to.
+            "kind": "A String", # The kind of the referred resource.
+            "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+            "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+            "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+          },
+        },
+      },
+      "kind": "youtube#activity", # The type of this API response.
+      "etag": "A String", # The eTag of the activity.
+      "id": "A String", # The unique ID of the activity.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(part, onBehalfOfContentOwner=None, pageToken=None, publishedBefore=None, channelId=None, mine=None, maxResults=None, home=None, publishedAfter=None)</code>
+  <pre>Browse the YouTube channel activity collection.
+
+Args:
+  part: string, Activity parts to include in the returned response. Valid values are: id, snippet and contentDetails. (required)
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+  pageToken: string, Token for the page selection.
+  publishedBefore: string, Only return activities published before given date (exclusive).
+  channelId: string, YouTube ID of the channel.
+  mine: string, Flag indicating to return user's activities.
+  maxResults: integer, Maximum number of results to return
+  home: string, Flag indicating to return user's homepage feed.
+  publishedAfter: string, Only return activities published after given date (inclusive).
+
+Returns:
+  An object of the form:
+
+    { # A paginated list of activities returned as a response to youtube.activities.list calls.
+    "nextPageToken": "A String", # Token to the next page.
+    "kind": "youtube#activityListResponse", # The type of this API response.
+    "items": [ # List of activities matching the request criteria.
+      { # An activity resource contains information about an action that a channel has taken on YouTube.
+          "snippet": { # Basic details about an activity, including title, description, thumbnails, activity type and group. # Basic details about the activity: title, description, thumbnails.
+            "thumbnails": { # Activity thumbnails.
+              "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+                "url": "A String", # The URL for the thumbnail.
+              },
+            },
+            "title": "A String", # Title of the activity.
+            "channelId": "A String", # Channel publishing the activity.
+            "publishedAt": "A String", # Date and time the activity was published at.
+            "type": "A String", # Type of the activity.
+            "groupId": "A String", # Id of the group that this activity is part of.
+            "description": "A String", # Description of the activity.
+          },
+          "contentDetails": { # Details about the content of an activity: the video that was shared, the channel that was subscribed to, etc. # Type specific information about the activity.
+            "comment": { # Only present if the type is "comment".
+              "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the commented resource.
+                "kind": "A String", # The kind of the referred resource.
+                "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+                "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+                "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+              },
+            },
+            "playlistItem": { # Only present if the type is "playlistItem".
+              "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the resource added to the playlist.
+                "kind": "A String", # The kind of the referred resource.
+                "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+                "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+                "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+              },
+              "playlistId": "A String", # ID of the playlist the resource was added to.
+            },
+            "like": { # Only present if the type is "like".
+              "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the rated resource.
+                "kind": "A String", # The kind of the referred resource.
+                "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+                "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+                "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+              },
+            },
+            "social": { # Only present if the type is "social".
+              "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the resource this social activity is about.
+                "kind": "A String", # The kind of the referred resource.
+                "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+                "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+                "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+              },
+              "imageUrl": "A String", # Image of the post author.
+              "type": "A String", # Type of the social network.
+              "referenceUrl": "A String", # Url of the social post.
+              "author": "A String", # Author of the post.
+            },
+            "favorite": { # Only present if the type is "favorite".
+              "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the favorited resource.
+                "kind": "A String", # The kind of the referred resource.
+                "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+                "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+                "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+              },
+            },
+            "upload": { # Only present if the type is "upload".
+              "videoId": "A String", # ID of the uploaded video.
+            },
+            "recommendation": { # Only set if the type is "recommendation".
+              "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the recommended resource.
+                "kind": "A String", # The kind of the referred resource.
+                "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+                "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+                "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+              },
+              "reason": "A String", # Reason for which the video was recommended.
+              "seedResourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the video that caused this recommendation.
+                "kind": "A String", # The kind of the referred resource.
+                "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+                "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+                "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+              },
+            },
+            "bulletin": { # Only present if the type is "bulletin".
+              "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the resource this bulletin is about.
+                "kind": "A String", # The kind of the referred resource.
+                "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+                "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+                "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+              },
+            },
+            "subscription": { # Only present if the type is "subscription".
+              "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # ID of the resource subscribed to.
+                "kind": "A String", # The kind of the referred resource.
+                "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+                "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+                "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+              },
+            },
+          },
+          "kind": "youtube#activity", # The type of this API response.
+          "etag": "A String", # The eTag of the activity.
+          "id": "A String", # The unique ID of the activity.
+        },
+    ],
+    "etag": "A String", # The eTag of the response.
+    "prevPageToken": "A String", # Token to the previous page.
+    "pageInfo": { # Paging details for lists of resources, including total number of items available and number of resources returned in a single page. # Paging information for the list result.
+      "totalResults": 42, # The total number of results.
+      "resultsPerPage": 42, # The number of results to display for each page.
+    },
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
+  <pre>Retrieves the next page of results.
+
+Args:
+  previous_request: The request for the previous page. (required)
+  previous_response: The response from the request for the previous page. (required)
+
+Returns:
+  A request object that you can call 'execute()' on to request the next
+  page. Returns None if there are no more items in the collection.
+      </pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3.channels.html b/docs/dyn/youtube_v3.channels.html
new file mode 100644
index 0000000..7104ca9
--- /dev/null
+++ b/docs/dyn/youtube_v3.channels.html
@@ -0,0 +1,160 @@
+<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="youtube_v3.html">YouTube API</a> . <a href="youtube_v3.channels.html">channels</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#list">list(part, onBehalfOfContentOwner=None, pageToken=None, categoryId=None, maxResults=None, mine=None, mySubscribers=None, id=None)</a></code></p>
+<p class="firstline">Browse the YouTube channel collection. Either the 'id' or 'mine' parameter must be set.</p>
+<p class="toc_element">
+  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="list">list(part, onBehalfOfContentOwner=None, pageToken=None, categoryId=None, maxResults=None, mine=None, mySubscribers=None, id=None)</code>
+  <pre>Browse the YouTube channel collection. Either the 'id' or 'mine' parameter must be set.
+
+Args:
+  part: string, Channel parts to include in the returned response. Valid values are: id, snippet, contentDetails and topicDetails. (required)
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+  pageToken: string, Token for the page selection.
+  categoryId: string, Filter to retrieve the channels within the given category ID.
+  maxResults: integer, Maximum number of results to return
+  mine: string, Filter to only channels owned by authenticated user.
+  mySubscribers: string, Filter to channels that subscribed to the channel of the authenticated user.
+  id: string, YouTube IDs of the channels to be returned.
+
+Returns:
+  An object of the form:
+
+    { # A paginated list of channels returned as the response to a youtube.channels.list call.
+    "nextPageToken": "A String", # Token to the next page.
+    "kind": "youtube#channelListResponse", # The type of this API response.
+    "items": [ # List of channels matching the request criteria.
+      { # A channel resource contains information about a single YouTube channel.
+        "topicDetails": { # Freebase topic information related to the channel. # Information about channel topics
+          "topicIds": [ # List of topic ids for this channel *
+            "A String",
+          ],
+        },
+        "kind": "youtube#channel", # The type of this API resource.
+        "statistics": { # Statistics about a channel: number of subscribers, number of videos in the channel, etc. # Statistics about the channel: number of subscribers, views, and comments.
+          "commentCount": "A String", # Number of comments for this channel.
+          "subscriberCount": "A String", # Number of subscribers to this channel.
+          "videoCount": "A String", # Number of videos in the channel.
+          "viewCount": "A String", # Number of times the channel has been viewed.
+        },
+        "contentDetails": { # Details about the content of a channel. # Information about the channel content: upload playlist id, privacy status.
+          "privacyStatus": "A String", # Privacy status of the channel.
+          "uploads": "A String", # The ID of the playlist containing the uploads of this channel.
+        },
+        "snippet": { # Basic details about a channel, including title, description and thumbnails. # Basic details about the channel: title, description, and thumbnails.
+          "title": "A String", # Title of the channel.
+          "channelId": "A String", # Id of the channel.
+          "description": "A String", # Description of the channel.
+          "publishedAt": "A String", # Date and time the channel was published at.
+          "thumbnails": { # Channel thumbnails.
+            "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+              "url": "A String", # The URL for the thumbnail.
+            },
+          },
+        },
+        "etag": "A String", # The eTag of the channel.
+        "id": "A String", # The unique ID of the channel.
+      },
+    ],
+    "etag": "A String", # The eTag of the response.
+    "prevPageToken": "A String", # Token to the previous page.
+    "pageInfo": { # Paging details for lists of resources, including total number of items available and number of resources returned in a single page. # Paging information for the list result.
+      "totalResults": 42, # The total number of results.
+      "resultsPerPage": 42, # The number of results to display for each page.
+    },
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
+  <pre>Retrieves the next page of results.
+
+Args:
+  previous_request: The request for the previous page. (required)
+  previous_response: The response from the request for the previous page. (required)
+
+Returns:
+  A request object that you can call 'execute()' on to request the next
+  page. Returns None if there are no more items in the collection.
+      </pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3.guideCategories.html b/docs/dyn/youtube_v3.guideCategories.html
new file mode 100644
index 0000000..ed50d4e
--- /dev/null
+++ b/docs/dyn/youtube_v3.guideCategories.html
@@ -0,0 +1,112 @@
+<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="youtube_v3.html">YouTube API</a> . <a href="youtube_v3.guideCategories.html">guideCategories</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#list">list(part, onBehalfOfContentOwner=None, regionCode=None, hl=None, id=None)</a></code></p>
+<p class="firstline">Browse the YouTube guide category collection.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="list">list(part, onBehalfOfContentOwner=None, regionCode=None, hl=None, id=None)</code>
+  <pre>Browse the YouTube guide category collection.
+
+Args:
+  part: string, Guide category parts to include in the returned response. Valid values are: id and snippet. (required)
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+  regionCode: string, Return the channelCategories in the given region code.
+  hl: string, Language for the returned channelCategories.
+  id: string, Comma-separated YouTube IDs of the channelCategories to be returned.
+
+Returns:
+  An object of the form:
+
+    { # A paginated list of guide categories returned as the response to a youtube.guideCategories.list call.
+    "items": [ # List of categories matching the request criteria.
+      { # A guideCategory resource identifies a category that YouTube assigns based on a channel's content or other indicators, such as the channel's popularity.
+        "snippet": { # Basic details about a guide category. # Snippet of the category.
+          "channelId": "UCBR8-60-B28hp2BmDPdntcQ", # Channel publishing the guide category.
+          "title": "A String", # Title of the guide category.
+        },
+        "kind": "youtube#guideCategory", # The type of this API resource.
+        "etag": "A String", # The eTag of the guide category.
+        "id": "A String", # The unique ID of the guide category.
+      },
+    ],
+    "kind": "youtube#guideCategoryListResponse", # The type of this API response.
+    "etag": "A String", # The eTag of the response.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3.html b/docs/dyn/youtube_v3.html
new file mode 100644
index 0000000..b9f0077
--- /dev/null
+++ b/docs/dyn/youtube_v3.html
@@ -0,0 +1,122 @@
+<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="youtube_v3.html">YouTube API</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="youtube_v3.activities.html">activities()</a></code>
+</p>
+<p class="firstline">Returns the activities Resource.</p>
+
+<p class="toc_element">
+  <code><a href="youtube_v3.channels.html">channels()</a></code>
+</p>
+<p class="firstline">Returns the channels Resource.</p>
+
+<p class="toc_element">
+  <code><a href="youtube_v3.guideCategories.html">guideCategories()</a></code>
+</p>
+<p class="firstline">Returns the guideCategories Resource.</p>
+
+<p class="toc_element">
+  <code><a href="youtube_v3.playlistItems.html">playlistItems()</a></code>
+</p>
+<p class="firstline">Returns the playlistItems Resource.</p>
+
+<p class="toc_element">
+  <code><a href="youtube_v3.playlists.html">playlists()</a></code>
+</p>
+<p class="firstline">Returns the playlists Resource.</p>
+
+<p class="toc_element">
+  <code><a href="youtube_v3.search.html">search()</a></code>
+</p>
+<p class="firstline">Returns the search Resource.</p>
+
+<p class="toc_element">
+  <code><a href="youtube_v3.subscriptions.html">subscriptions()</a></code>
+</p>
+<p class="firstline">Returns the subscriptions Resource.</p>
+
+<p class="toc_element">
+  <code><a href="youtube_v3.videoCategories.html">videoCategories()</a></code>
+</p>
+<p class="firstline">Returns the videoCategories Resource.</p>
+
+<p class="toc_element">
+  <code><a href="youtube_v3.videos.html">videos()</a></code>
+</p>
+<p class="firstline">Returns the videos Resource.</p>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3.playlistItems.html b/docs/dyn/youtube_v3.playlistItems.html
new file mode 100644
index 0000000..76348d6
--- /dev/null
+++ b/docs/dyn/youtube_v3.playlistItems.html
@@ -0,0 +1,330 @@
+<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="youtube_v3.html">YouTube API</a> . <a href="youtube_v3.playlistItems.html">playlistItems</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#delete">delete(id, onBehalfOfContentOwner=None)</a></code></p>
+<p class="firstline">Deletes playlist items by IDs.</p>
+<p class="toc_element">
+  <code><a href="#insert">insert(part, body, onBehalfOfContentOwner=None)</a></code></p>
+<p class="firstline">Insert a resource into a playlist.</p>
+<p class="toc_element">
+  <code><a href="#list">list(part, onBehalfOfContentOwner=None, pageToken=None, playlistId=None, maxResults=None, id=None)</a></code></p>
+<p class="firstline">Browse the YouTube playlist collection.</p>
+<p class="toc_element">
+  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<p class="toc_element">
+  <code><a href="#update">update(part, body, onBehalfOfContentOwner=None)</a></code></p>
+<p class="firstline">Update a playlist item.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="delete">delete(id, onBehalfOfContentOwner=None)</code>
+  <pre>Deletes playlist items by IDs.
+
+Args:
+  id: string, YouTube IDs of the playlist items to be deleted. (required)
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="insert">insert(part, body, onBehalfOfContentOwner=None)</code>
+  <pre>Insert a resource into a playlist.
+
+Args:
+  part: string, One or more parts to return on the current request. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A playlistItem resource refers to another resource, such as a video, that is included in a playlist.
+    "snippet": { # Basic details about an item included in a playlist, including title, description, thumbnails, playlist the item is part of and position of the item inside the playlist. # Basic details about the playlist item: title, description, thumbnails.
+      "playlistId": "A String", # The playlist the item is part of.
+      "description": "A String", # Description of the playlist item.
+      "title": "A String", # Title of the playlist item.
+      "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # The ID of the resource referenced by the playlist item.
+        "kind": "A String", # The kind of the referred resource.
+        "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+        "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+        "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+      },
+      "channelId": "A String", # Channel publishing the playlist item.
+      "publishedAt": "A String", # Date and time the playlist item was published at.
+      "position": 42, # The position of the item within the playlist.
+      "thumbnails": { # Playlist item thumbnails.
+        "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+          "url": "A String", # The URL for the thumbnail.
+        },
+      },
+    },
+    "contentDetails": { # Details about the content of a playlist item, such as the video or the video fragment start and end time included in the playlist. # Content details about the playlist item: start and end clipping time.
+      "note": "A String", # The user-generated note for this item.
+      "startAt": "A String", # The time video playback begins.
+      "endAt": "A String", # The time video playback ends.
+      "videoId": "A String", # ID of the video.
+    },
+    "kind": "youtube#playlistItem", # The type of this API resource.
+    "etag": "A String", # The eTag of the playlist item.
+    "id": "A String", # The unique id of the playlist item.
+  }
+
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+
+Returns:
+  An object of the form:
+
+    { # A playlistItem resource refers to another resource, such as a video, that is included in a playlist.
+      "snippet": { # Basic details about an item included in a playlist, including title, description, thumbnails, playlist the item is part of and position of the item inside the playlist. # Basic details about the playlist item: title, description, thumbnails.
+        "playlistId": "A String", # The playlist the item is part of.
+        "description": "A String", # Description of the playlist item.
+        "title": "A String", # Title of the playlist item.
+        "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # The ID of the resource referenced by the playlist item.
+          "kind": "A String", # The kind of the referred resource.
+          "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+          "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+          "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+        },
+        "channelId": "A String", # Channel publishing the playlist item.
+        "publishedAt": "A String", # Date and time the playlist item was published at.
+        "position": 42, # The position of the item within the playlist.
+        "thumbnails": { # Playlist item thumbnails.
+          "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+            "url": "A String", # The URL for the thumbnail.
+          },
+        },
+      },
+      "contentDetails": { # Details about the content of a playlist item, such as the video or the video fragment start and end time included in the playlist. # Content details about the playlist item: start and end clipping time.
+        "note": "A String", # The user-generated note for this item.
+        "startAt": "A String", # The time video playback begins.
+        "endAt": "A String", # The time video playback ends.
+        "videoId": "A String", # ID of the video.
+      },
+      "kind": "youtube#playlistItem", # The type of this API resource.
+      "etag": "A String", # The eTag of the playlist item.
+      "id": "A String", # The unique id of the playlist item.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(part, onBehalfOfContentOwner=None, pageToken=None, playlistId=None, maxResults=None, id=None)</code>
+  <pre>Browse the YouTube playlist collection.
+
+Args:
+  part: string, Playlist item parts to include in the returned response. Valid values are: id, snippet and contentDetails. (required)
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+  pageToken: string, Token for the page selection.
+  playlistId: string, Retrieves playlist items from the given playlist id.
+  maxResults: integer, Maximum number of results to return
+  id: string, YouTube IDs of the playlist items to be returned.
+
+Returns:
+  An object of the form:
+
+    { # A paginated list of playlist items returned as the response to a youtube.playlistItems.list call.
+    "nextPageToken": "A String", # Token to the next page.
+    "kind": "youtube#playlistItemListResponse", # The type of this API response.
+    "items": [ # List of playlist items matching the request criteria.
+      { # A playlistItem resource refers to another resource, such as a video, that is included in a playlist.
+          "snippet": { # Basic details about an item included in a playlist, including title, description, thumbnails, playlist the item is part of and position of the item inside the playlist. # Basic details about the playlist item: title, description, thumbnails.
+            "playlistId": "A String", # The playlist the item is part of.
+            "description": "A String", # Description of the playlist item.
+            "title": "A String", # Title of the playlist item.
+            "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # The ID of the resource referenced by the playlist item.
+              "kind": "A String", # The kind of the referred resource.
+              "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+              "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+              "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+            },
+            "channelId": "A String", # Channel publishing the playlist item.
+            "publishedAt": "A String", # Date and time the playlist item was published at.
+            "position": 42, # The position of the item within the playlist.
+            "thumbnails": { # Playlist item thumbnails.
+              "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+                "url": "A String", # The URL for the thumbnail.
+              },
+            },
+          },
+          "contentDetails": { # Details about the content of a playlist item, such as the video or the video fragment start and end time included in the playlist. # Content details about the playlist item: start and end clipping time.
+            "note": "A String", # The user-generated note for this item.
+            "startAt": "A String", # The time video playback begins.
+            "endAt": "A String", # The time video playback ends.
+            "videoId": "A String", # ID of the video.
+          },
+          "kind": "youtube#playlistItem", # The type of this API resource.
+          "etag": "A String", # The eTag of the playlist item.
+          "id": "A String", # The unique id of the playlist item.
+        },
+    ],
+    "etag": "A String", # The eTag of the response.
+    "prevPageToken": "A String", # Token to the previous page.
+    "pageInfo": { # Paging details for lists of resources, including total number of items available and number of resources returned in a single page. # Paging information for the list result.
+      "totalResults": 42, # The total number of results.
+      "resultsPerPage": 42, # The number of results to display for each page.
+    },
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
+  <pre>Retrieves the next page of results.
+
+Args:
+  previous_request: The request for the previous page. (required)
+  previous_response: The response from the request for the previous page. (required)
+
+Returns:
+  A request object that you can call 'execute()' on to request the next
+  page. Returns None if there are no more items in the collection.
+      </pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(part, body, onBehalfOfContentOwner=None)</code>
+  <pre>Update a playlist item.
+
+Args:
+  part: string, One or more parts to return on the current request. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A playlistItem resource refers to another resource, such as a video, that is included in a playlist.
+    "snippet": { # Basic details about an item included in a playlist, including title, description, thumbnails, playlist the item is part of and position of the item inside the playlist. # Basic details about the playlist item: title, description, thumbnails.
+      "playlistId": "A String", # The playlist the item is part of.
+      "description": "A String", # Description of the playlist item.
+      "title": "A String", # Title of the playlist item.
+      "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # The ID of the resource referenced by the playlist item.
+        "kind": "A String", # The kind of the referred resource.
+        "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+        "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+        "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+      },
+      "channelId": "A String", # Channel publishing the playlist item.
+      "publishedAt": "A String", # Date and time the playlist item was published at.
+      "position": 42, # The position of the item within the playlist.
+      "thumbnails": { # Playlist item thumbnails.
+        "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+          "url": "A String", # The URL for the thumbnail.
+        },
+      },
+    },
+    "contentDetails": { # Details about the content of a playlist item, such as the video or the video fragment start and end time included in the playlist. # Content details about the playlist item: start and end clipping time.
+      "note": "A String", # The user-generated note for this item.
+      "startAt": "A String", # The time video playback begins.
+      "endAt": "A String", # The time video playback ends.
+      "videoId": "A String", # ID of the video.
+    },
+    "kind": "youtube#playlistItem", # The type of this API resource.
+    "etag": "A String", # The eTag of the playlist item.
+    "id": "A String", # The unique id of the playlist item.
+  }
+
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+
+Returns:
+  An object of the form:
+
+    { # A playlistItem resource refers to another resource, such as a video, that is included in a playlist.
+      "snippet": { # Basic details about an item included in a playlist, including title, description, thumbnails, playlist the item is part of and position of the item inside the playlist. # Basic details about the playlist item: title, description, thumbnails.
+        "playlistId": "A String", # The playlist the item is part of.
+        "description": "A String", # Description of the playlist item.
+        "title": "A String", # Title of the playlist item.
+        "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # The ID of the resource referenced by the playlist item.
+          "kind": "A String", # The kind of the referred resource.
+          "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+          "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+          "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+        },
+        "channelId": "A String", # Channel publishing the playlist item.
+        "publishedAt": "A String", # Date and time the playlist item was published at.
+        "position": 42, # The position of the item within the playlist.
+        "thumbnails": { # Playlist item thumbnails.
+          "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+            "url": "A String", # The URL for the thumbnail.
+          },
+        },
+      },
+      "contentDetails": { # Details about the content of a playlist item, such as the video or the video fragment start and end time included in the playlist. # Content details about the playlist item: start and end clipping time.
+        "note": "A String", # The user-generated note for this item.
+        "startAt": "A String", # The time video playback begins.
+        "endAt": "A String", # The time video playback ends.
+        "videoId": "A String", # ID of the video.
+      },
+      "kind": "youtube#playlistItem", # The type of this API resource.
+      "etag": "A String", # The eTag of the playlist item.
+      "id": "A String", # The unique id of the playlist item.
+    }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3.playlists.html b/docs/dyn/youtube_v3.playlists.html
new file mode 100644
index 0000000..4e973d2
--- /dev/null
+++ b/docs/dyn/youtube_v3.playlists.html
@@ -0,0 +1,275 @@
+<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="youtube_v3.html">YouTube API</a> . <a href="youtube_v3.playlists.html">playlists</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#delete">delete(id, onBehalfOfContentOwner=None)</a></code></p>
+<p class="firstline">Deletes playlists by IDs.</p>
+<p class="toc_element">
+  <code><a href="#insert">insert(part, body, onBehalfOfContentOwner=None)</a></code></p>
+<p class="firstline">Create a playlist.</p>
+<p class="toc_element">
+  <code><a href="#list">list(part, onBehalfOfContentOwner=None, pageToken=None, maxResults=None, mine=None, id=None)</a></code></p>
+<p class="firstline">Browse the YouTube playlist collection.</p>
+<p class="toc_element">
+  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<p class="toc_element">
+  <code><a href="#update">update(part, body, onBehalfOfContentOwner=None)</a></code></p>
+<p class="firstline">Update a playlist.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="delete">delete(id, onBehalfOfContentOwner=None)</code>
+  <pre>Deletes playlists by IDs.
+
+Args:
+  id: string, YouTube IDs of the playlists to be deleted. (required)
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="insert">insert(part, body, onBehalfOfContentOwner=None)</code>
+  <pre>Create a playlist.
+
+Args:
+  part: string, One or more parts to return on the current request. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A playlist resource represents a single YouTube playlist.
+    "snippet": { # Basic details about a playlist, including title, description and thumbnails. # Basic details about the playlist: title, description, thumbnails.
+      "title": "A String", # Title of the playlist.
+      "channelId": "A String", # Channel publishing the playlist.
+      "description": "A String", # Description of the playlist.
+      "publishedAt": "A String", # Date and time the playlist was published at.
+      "thumbnails": { # Playlist thumbnails.
+        "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+          "url": "A String", # The URL for the thumbnail.
+        },
+      },
+    },
+    "status": { # The status details of a playlist describes whether the playlist is private. # Status of the playlist: only privacy_status for now.
+      "privacyStatus": "A String", # Privacy of the playlist.
+    },
+    "kind": "youtube#playlist", # The type of this API resource.
+    "etag": "A String", # The eTag of the playlist.
+    "id": "A String", # The unique id of the playlist.
+  }
+
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+
+Returns:
+  An object of the form:
+
+    { # A playlist resource represents a single YouTube playlist.
+      "snippet": { # Basic details about a playlist, including title, description and thumbnails. # Basic details about the playlist: title, description, thumbnails.
+        "title": "A String", # Title of the playlist.
+        "channelId": "A String", # Channel publishing the playlist.
+        "description": "A String", # Description of the playlist.
+        "publishedAt": "A String", # Date and time the playlist was published at.
+        "thumbnails": { # Playlist thumbnails.
+          "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+            "url": "A String", # The URL for the thumbnail.
+          },
+        },
+      },
+      "status": { # The status details of a playlist describes whether the playlist is private. # Status of the playlist: only privacy_status for now.
+        "privacyStatus": "A String", # Privacy of the playlist.
+      },
+      "kind": "youtube#playlist", # The type of this API resource.
+      "etag": "A String", # The eTag of the playlist.
+      "id": "A String", # The unique id of the playlist.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(part, onBehalfOfContentOwner=None, pageToken=None, maxResults=None, mine=None, id=None)</code>
+  <pre>Browse the YouTube playlist collection.
+
+Args:
+  part: string, Playlist parts to include in the returned response. Valid values are: id, snippet and status. (required)
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+  pageToken: string, Token for the page selection.
+  maxResults: integer, Maximum number of results to return
+  mine: string, Flag indicating only return the playlists of the authenticated user.
+  id: string, Comma-separated YouTube IDs of the playlists to be returned.
+
+Returns:
+  An object of the form:
+
+    { # A paginated list of playlists returned as the response to a youtube.playlists.list call.
+    "nextPageToken": "A String", # Token to the next page.
+    "kind": "youtube#playlistListResponse", # The type of this API response.
+    "items": [ # List of playlists matching the request criteria.
+      { # A playlist resource represents a single YouTube playlist.
+          "snippet": { # Basic details about a playlist, including title, description and thumbnails. # Basic details about the playlist: title, description, thumbnails.
+            "title": "A String", # Title of the playlist.
+            "channelId": "A String", # Channel publishing the playlist.
+            "description": "A String", # Description of the playlist.
+            "publishedAt": "A String", # Date and time the playlist was published at.
+            "thumbnails": { # Playlist thumbnails.
+              "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+                "url": "A String", # The URL for the thumbnail.
+              },
+            },
+          },
+          "status": { # The status details of a playlist describes whether the playlist is private. # Status of the playlist: only privacy_status for now.
+            "privacyStatus": "A String", # Privacy of the playlist.
+          },
+          "kind": "youtube#playlist", # The type of this API resource.
+          "etag": "A String", # The eTag of the playlist.
+          "id": "A String", # The unique id of the playlist.
+        },
+    ],
+    "etag": "A String", # The eTag of the response.
+    "prevPageToken": "A String", # Token to the previous page.
+    "pageInfo": { # Paging details for lists of resources, including total number of items available and number of resources returned in a single page. # Paging information for the list result.
+      "totalResults": 42, # The total number of results.
+      "resultsPerPage": 42, # The number of results to display for each page.
+    },
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
+  <pre>Retrieves the next page of results.
+
+Args:
+  previous_request: The request for the previous page. (required)
+  previous_response: The response from the request for the previous page. (required)
+
+Returns:
+  A request object that you can call 'execute()' on to request the next
+  page. Returns None if there are no more items in the collection.
+      </pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(part, body, onBehalfOfContentOwner=None)</code>
+  <pre>Update a playlist.
+
+Args:
+  part: string, One or more parts to return on the current request. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A playlist resource represents a single YouTube playlist.
+    "snippet": { # Basic details about a playlist, including title, description and thumbnails. # Basic details about the playlist: title, description, thumbnails.
+      "title": "A String", # Title of the playlist.
+      "channelId": "A String", # Channel publishing the playlist.
+      "description": "A String", # Description of the playlist.
+      "publishedAt": "A String", # Date and time the playlist was published at.
+      "thumbnails": { # Playlist thumbnails.
+        "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+          "url": "A String", # The URL for the thumbnail.
+        },
+      },
+    },
+    "status": { # The status details of a playlist describes whether the playlist is private. # Status of the playlist: only privacy_status for now.
+      "privacyStatus": "A String", # Privacy of the playlist.
+    },
+    "kind": "youtube#playlist", # The type of this API resource.
+    "etag": "A String", # The eTag of the playlist.
+    "id": "A String", # The unique id of the playlist.
+  }
+
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+
+Returns:
+  An object of the form:
+
+    { # A playlist resource represents a single YouTube playlist.
+      "snippet": { # Basic details about a playlist, including title, description and thumbnails. # Basic details about the playlist: title, description, thumbnails.
+        "title": "A String", # Title of the playlist.
+        "channelId": "A String", # Channel publishing the playlist.
+        "description": "A String", # Description of the playlist.
+        "publishedAt": "A String", # Date and time the playlist was published at.
+        "thumbnails": { # Playlist thumbnails.
+          "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+            "url": "A String", # The URL for the thumbnail.
+          },
+        },
+      },
+      "status": { # The status details of a playlist describes whether the playlist is private. # Status of the playlist: only privacy_status for now.
+        "privacyStatus": "A String", # Privacy of the playlist.
+      },
+      "kind": "youtube#playlist", # The type of this API resource.
+      "etag": "A String", # The eTag of the playlist.
+      "id": "A String", # The unique id of the playlist.
+    }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3.search.html b/docs/dyn/youtube_v3.search.html
new file mode 100644
index 0000000..a67ba8a
--- /dev/null
+++ b/docs/dyn/youtube_v3.search.html
@@ -0,0 +1,187 @@
+<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="youtube_v3.html">YouTube API</a> . <a href="youtube_v3.search.html">search</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#list">list(part, videoCaption=None, onBehalfOfContentOwner=None, pageToken=None, type=None, topicId=None, videoDimension=None, videoLicense=None, maxResults=None, videoDuration=None, videoDefinition=None, relatedToVideo=None, q=None, published=None, order=None)</a></code></p>
+<p class="firstline">Universal search for youtube.</p>
+<p class="toc_element">
+  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="list">list(part, videoCaption=None, onBehalfOfContentOwner=None, pageToken=None, type=None, topicId=None, videoDimension=None, videoLicense=None, maxResults=None, videoDuration=None, videoDefinition=None, relatedToVideo=None, q=None, published=None, order=None)</code>
+  <pre>Universal search for youtube.
+
+Args:
+  part: string, Search result parts to include in the returned response. Valid values are: id and snippet. (required)
+  videoCaption: string, Add a filter on the the presence of captions on the videos.
+    Allowed values
+      any - No filter on the captions.
+      closedCaption - Videos with closed captions.
+      none - Videos without captions.
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+  pageToken: string, Token for the page selection.
+  type: string, Type of resource to search.
+  topicId: string, Only search for resources with the specified topic
+  videoDimension: string, Add a filter for the number of dimensions in the videos.
+    Allowed values
+      2d - Videos in two dimensions.
+      3d - Videos in three dimensions.
+      any - No filter on the dimension.
+  videoLicense: string, Add a filter on the licensing of the videos.
+    Allowed values
+      any - No filter on the license.
+      creativeCommon - Videos under the Creative Common license.
+      youtube - Videos under the YouTube license.
+  maxResults: integer, Maximum number of search results to return per page.
+  videoDuration: string, Add a filter on the duration of the videos.
+    Allowed values
+      any - No filter on the duration.
+      long - Videos with a duration longer than 20 minutes.
+      medium - Videos with a duration between 4 and 20 minutes.
+      short - Videos with a duration under 4 minutes.
+  videoDefinition: string, Add a filter for the definition of the videos.
+    Allowed values
+      any - No filter on the definition.
+      high - Videos in high definition.
+      standard - Videos in standard definition.
+  relatedToVideo: string, Search for resources related to this video. Need to be used with type set to 'video'
+  q: string, Query to search in Youtube.
+  published: string, Only search for resources uploaded at a specific pediod
+    Allowed values
+      any - No filter on the release date
+      thisWeek - Videos uploaded this month
+      today - Videos uploaded today
+  order: string, Sort order.
+    Allowed values
+      date - Sort according to the date.
+      rating - Sort according to the rating.
+      relevance - Sort according to the relevance.
+      view_count - Sort according to the view count.
+
+Returns:
+  An object of the form:
+
+    { # A paginated list of search results returned as the response to a youtube.search.list call.
+    "nextPageToken": "A String", # Token to the next page.
+    "kind": "youtube#searchListResponse", # The type of this API response.
+    "items": [ # List of results matching the request criteria.
+      { # A search result contains information about a YouTube video, channel, or playlist that matches the search parameters specified in an API request.
+        "snippet": { # Basic details about a search result, including title, description and thumbnails of the item referenced by the search result. # Basic details about the search result: title, description, author.
+          "title": "A String", # Title of the found resource.
+          "channelId": "A String", # Channel publishing the found resource.
+          "description": "A String", # Description of the found resource.
+          "publishedAt": "A String", # Date and time the found resource was published at.
+          "thumbnails": { # Thumbnails for the found resource.
+            "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+              "url": "A String", # The URL for the thumbnail.
+            },
+          },
+        },
+        "kind": "youtube#searchResult", # The type of this API resource.
+        "etag": "A String", # The eTag of the search result.
+        "id": { # A resource id is a generic reference that points to another YouTube resource. # The id of the resource.
+          "kind": "A String", # The kind of the referred resource.
+          "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+          "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+          "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+        },
+      },
+    ],
+    "etag": "A String", # The eTag of the response.
+    "prevPageToken": "A String", # Token to the previous page.
+    "pageInfo": { # Paging details for lists of resources, including total number of items available and number of resources returned in a single page. # Paging information for the search result.
+      "totalResults": 42, # The total number of results.
+      "resultsPerPage": 42, # The number of results to display for each page.
+    },
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
+  <pre>Retrieves the next page of results.
+
+Args:
+  previous_request: The request for the previous page. (required)
+  previous_response: The response from the request for the previous page. (required)
+
+Returns:
+  A request object that you can call 'execute()' on to request the next
+  page. Returns None if there are no more items in the collection.
+      </pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3.subscriptions.html b/docs/dyn/youtube_v3.subscriptions.html
new file mode 100644
index 0000000..09b3547
--- /dev/null
+++ b/docs/dyn/youtube_v3.subscriptions.html
@@ -0,0 +1,245 @@
+<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="youtube_v3.html">YouTube API</a> . <a href="youtube_v3.subscriptions.html">subscriptions</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#delete">delete(id, onBehalfOfContentOwner=None)</a></code></p>
+<p class="firstline">Deletes subscriptions by IDs.</p>
+<p class="toc_element">
+  <code><a href="#insert">insert(part, body, onBehalfOfContentOwner=None)</a></code></p>
+<p class="firstline">Insert a subscription.</p>
+<p class="toc_element">
+  <code><a href="#list">list(part, onBehalfOfContentOwner=None, id=None, pageToken=None, channelId=None, mine=None, maxResults=None, forChannelId=None, order=None)</a></code></p>
+<p class="firstline">Browses the subscriptions collection.</p>
+<p class="toc_element">
+  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="delete">delete(id, onBehalfOfContentOwner=None)</code>
+  <pre>Deletes subscriptions by IDs.
+
+Args:
+  id: string, YouTube IDs of the subscription to be deleted. (required)
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="insert">insert(part, body, onBehalfOfContentOwner=None)</code>
+  <pre>Insert a subscription.
+
+Args:
+  part: string, One or more parts to return on the current request. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A subscription resource contains information about a YouTube user subscription.
+    "snippet": { # Basic details about a subscription, including title, description and thumbnails of the subscribed item. # Basic details about the subscription
+      "description": "A String", # Description of the subscription.
+      "title": "A String", # Title of the subscription.
+      "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # The resource subscribed to.
+        "kind": "A String", # The kind of the referred resource.
+        "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+        "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+        "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+      },
+      "channelId": "A String", # Channel publishing the subscription.
+      "publishedAt": "A String", # Date and time the subscription was published at.
+      "thumbnails": { # Subscription thumbnails.
+        "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+          "url": "A String", # The URL for the thumbnail.
+        },
+      },
+    },
+    "contentDetails": { # Details about the content to witch a subscription refers. # Basic statistics about the subscription
+      "newItemCount": 42, # Number of new items in the subscription since its content was last read.
+      "totalItemCount": 42, # Approximate total number of items the subscription points to.
+    },
+    "kind": "youtube#subscription", # The type of this API resource.
+    "etag": "A String", # The eTag of the subscription.
+    "id": "A String", # The unique id of the subscription.
+  }
+
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+
+Returns:
+  An object of the form:
+
+    { # A subscription resource contains information about a YouTube user subscription.
+      "snippet": { # Basic details about a subscription, including title, description and thumbnails of the subscribed item. # Basic details about the subscription
+        "description": "A String", # Description of the subscription.
+        "title": "A String", # Title of the subscription.
+        "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # The resource subscribed to.
+          "kind": "A String", # The kind of the referred resource.
+          "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+          "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+          "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+        },
+        "channelId": "A String", # Channel publishing the subscription.
+        "publishedAt": "A String", # Date and time the subscription was published at.
+        "thumbnails": { # Subscription thumbnails.
+          "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+            "url": "A String", # The URL for the thumbnail.
+          },
+        },
+      },
+      "contentDetails": { # Details about the content to witch a subscription refers. # Basic statistics about the subscription
+        "newItemCount": 42, # Number of new items in the subscription since its content was last read.
+        "totalItemCount": 42, # Approximate total number of items the subscription points to.
+      },
+      "kind": "youtube#subscription", # The type of this API resource.
+      "etag": "A String", # The eTag of the subscription.
+      "id": "A String", # The unique id of the subscription.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(part, onBehalfOfContentOwner=None, id=None, pageToken=None, channelId=None, mine=None, maxResults=None, forChannelId=None, order=None)</code>
+  <pre>Browses the subscriptions collection.
+
+Args:
+  part: string, Subscription parts to include in the returned response. Valid values are: id, snippet and contentDetails. (required)
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+  id: string, YouTube IDs of the subscriptions to be returned.
+  pageToken: string, Token for the page selection.
+  channelId: string, Only return subscriptions to given channelId.
+  mine: string, Flag indicating only return the subscriptions of the authenticated user.
+  maxResults: integer, Maximum number of search results to return per page.
+  forChannelId: string, Comma separated list of channel IDs to return subscriptions for.
+  order: string, Sort order.
+    Allowed values
+      alphabetical - Sort alphabetically
+      relevance - Sort by relevance.
+      unread - Sort by order of activity.
+
+Returns:
+  An object of the form:
+
+    { # A paginated list of subscriptions returned as the response to a youtube.subscriptions.list call.
+    "nextPageToken": "A String", # Token to the next page.
+    "kind": "youtube#subscriptionListResponse", # The type of this API response.
+    "items": [ # List of subscriptions matching the request criteria.
+      { # A subscription resource contains information about a YouTube user subscription.
+          "snippet": { # Basic details about a subscription, including title, description and thumbnails of the subscribed item. # Basic details about the subscription
+            "description": "A String", # Description of the subscription.
+            "title": "A String", # Title of the subscription.
+            "resourceId": { # A resource id is a generic reference that points to another YouTube resource. # The resource subscribed to.
+              "kind": "A String", # The kind of the referred resource.
+              "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
+              "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
+              "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
+            },
+            "channelId": "A String", # Channel publishing the subscription.
+            "publishedAt": "A String", # Date and time the subscription was published at.
+            "thumbnails": { # Subscription thumbnails.
+              "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+                "url": "A String", # The URL for the thumbnail.
+              },
+            },
+          },
+          "contentDetails": { # Details about the content to witch a subscription refers. # Basic statistics about the subscription
+            "newItemCount": 42, # Number of new items in the subscription since its content was last read.
+            "totalItemCount": 42, # Approximate total number of items the subscription points to.
+          },
+          "kind": "youtube#subscription", # The type of this API resource.
+          "etag": "A String", # The eTag of the subscription.
+          "id": "A String", # The unique id of the subscription.
+        },
+    ],
+    "etag": "A String", # The eTag of the response.
+    "prevPageToken": "A String", # Token to the previous page.
+    "pageInfo": { # Paging details for lists of resources, including total number of items available and number of resources returned in a single page. # Paging information for the list result.
+      "totalResults": 42, # The total number of results.
+      "resultsPerPage": 42, # The number of results to display for each page.
+    },
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
+  <pre>Retrieves the next page of results.
+
+Args:
+  previous_request: The request for the previous page. (required)
+  previous_response: The response from the request for the previous page. (required)
+
+Returns:
+  A request object that you can call 'execute()' on to request the next
+  page. Returns None if there are no more items in the collection.
+      </pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3.videoCategories.html b/docs/dyn/youtube_v3.videoCategories.html
new file mode 100644
index 0000000..72d66aa
--- /dev/null
+++ b/docs/dyn/youtube_v3.videoCategories.html
@@ -0,0 +1,112 @@
+<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="youtube_v3.html">YouTube API</a> . <a href="youtube_v3.videoCategories.html">videoCategories</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#list">list(part, onBehalfOfContentOwner=None, regionCode=None, hl=None, id=None)</a></code></p>
+<p class="firstline">Browse list of video categories.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="list">list(part, onBehalfOfContentOwner=None, regionCode=None, hl=None, id=None)</code>
+  <pre>Browse list of video categories.
+
+Args:
+  part: string, Video category parts to include in the returned response. Valid values are: id and snippet. (required)
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+  regionCode: string, Return all the categories in this region.
+  hl: string, Language used for the title of the categories.
+  id: string, IDs of the categories to be returned.
+
+Returns:
+  An object of the form:
+
+    { # A paginated list of video categories returned as the response to a youtube.videoCategory.list call.
+    "items": [ # List of video categories matching the request criteria.
+      { # A videoCategory resource identifies a category that has been or could be associated with uploaded videos.
+        "snippet": { # Basic details about a video category, such as its localized title. # Basic details about the video category.
+          "channelId": "UCBR8-60-B28hp2BmDPdntcQ", # Channel publishing the video category.
+          "title": "A String", # Title of the video category.
+        },
+        "kind": "youtube#videoCategory", # The type of this API resource.
+        "etag": "A String", # The eTag of the video.
+        "id": "A String", # The unique id of the video category.
+      },
+    ],
+    "kind": "youtube#videoCategoryListResponse", # The type of this API response.
+    "etag": "A String", # The eTag of the response.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3.videos.html b/docs/dyn/youtube_v3.videos.html
new file mode 100644
index 0000000..7a99f57
--- /dev/null
+++ b/docs/dyn/youtube_v3.videos.html
@@ -0,0 +1,415 @@
+<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="youtube_v3.html">YouTube API</a> . <a href="youtube_v3.videos.html">videos</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#delete">delete(id, onBehalfOfContentOwner=None)</a></code></p>
+<p class="firstline">Delete a YouTube video.</p>
+<p class="toc_element">
+  <code><a href="#insert">insert(part, body=None, media_body=None, onBehalfOfContentOwner=None)</a></code></p>
+<p class="firstline">Upload a video to YouTube.</p>
+<p class="toc_element">
+  <code><a href="#list">list(id, part, onBehalfOfContentOwner=None)</a></code></p>
+<p class="firstline">Browse the YouTube video collection.</p>
+<p class="toc_element">
+  <code><a href="#update">update(part, body, onBehalfOfContentOwner=None)</a></code></p>
+<p class="firstline">Update a video.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="delete">delete(id, onBehalfOfContentOwner=None)</code>
+  <pre>Delete a YouTube video.
+
+Args:
+  id: string, YouTube ID of the video to be deleted. (required)
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="insert">insert(part, body=None, media_body=None, onBehalfOfContentOwner=None)</code>
+  <pre>Upload a video to YouTube.
+
+Args:
+  part: string, One or more parts to return on the current request. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # A video resource represents a single YouTube video.
+    "status": { # The status of a video details the video's upload status and privacy status. # Status of the video upload, privacy status.
+      "privacyStatus": "A String", # Privacy of the video.
+      "uploadStatus": "A String", # Status of the video upload.
+      "rejectionReason": "A String", # Present only if the uploadStatus indicates a rejected upload.
+      "failureReason": "A String", # Present only if the uploadStatus indicates a failed upload.
+    },
+    "topicDetails": { # Freebase topic information related to the video. # Topics related to the video
+      "topicIds": [ # List of topic ids for this video *
+        "A String",
+      ],
+    },
+    "kind": "youtube#video", # The type of this API resource.
+    "statistics": { # Statistics about the video, such as the number of times the video was viewed or liked. # Statistics about the video: number of views, ratings.
+      "commentCount": "A String", # Number of comments for this video.
+      "viewCount": "A String", # Number of times the video was viewed.
+      "favoriteCount": "A String", # Number of times the video was added to a user's favorites list.
+      "dislikeCount": "A String", # Number of times the video was disliked.
+      "likeCount": "A String", # Number of times the video was liked.
+    },
+    "contentDetails": { # Details about the media content of a YouTube video. # Information about the video content, media file.
+      "duration": "A String", # Duration of the video.
+      "regionRestriction": { # Region restriction of the video.
+        "blocked": [ # List of blocked region codes.
+          "A String",
+        ],
+        "allowed": [ # List of allowed region codes.
+          "A String",
+        ],
+      },
+    },
+    "snippet": { # Basic details about a video, including title, description, uploader, thumbnails and category. # Basic details about the video: title, description, thumbnails.
+      "thumbnails": { # Video thumbnails.
+        "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+          "url": "A String", # The URL for the thumbnail.
+        },
+      },
+      "tags": [ # Textual tags associated with the video.
+        "A String",
+      ],
+      "channelId": "A String", # Channel publishing the video.
+      "publishedAt": "A String", # Date and time the video was published at.
+      "title": "A String", # Title of the video.
+      "categoryId": "A String", # Video category the video belongs to.
+      "description": "A String", # Description of the video.
+    },
+    "player": { # Player to be used for a video playback. # Information used to play the video.
+      "embedHtml": "A String", # Iframe embed for the video.
+    },
+    "etag": "A String", # The eTag of the video.
+    "id": "A String", # The unique id of the video.
+  }
+
+  media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+
+Returns:
+  An object of the form:
+
+    { # A video resource represents a single YouTube video.
+      "status": { # The status of a video details the video's upload status and privacy status. # Status of the video upload, privacy status.
+        "privacyStatus": "A String", # Privacy of the video.
+        "uploadStatus": "A String", # Status of the video upload.
+        "rejectionReason": "A String", # Present only if the uploadStatus indicates a rejected upload.
+        "failureReason": "A String", # Present only if the uploadStatus indicates a failed upload.
+      },
+      "topicDetails": { # Freebase topic information related to the video. # Topics related to the video
+        "topicIds": [ # List of topic ids for this video *
+          "A String",
+        ],
+      },
+      "kind": "youtube#video", # The type of this API resource.
+      "statistics": { # Statistics about the video, such as the number of times the video was viewed or liked. # Statistics about the video: number of views, ratings.
+        "commentCount": "A String", # Number of comments for this video.
+        "viewCount": "A String", # Number of times the video was viewed.
+        "favoriteCount": "A String", # Number of times the video was added to a user's favorites list.
+        "dislikeCount": "A String", # Number of times the video was disliked.
+        "likeCount": "A String", # Number of times the video was liked.
+      },
+      "contentDetails": { # Details about the media content of a YouTube video. # Information about the video content, media file.
+        "duration": "A String", # Duration of the video.
+        "regionRestriction": { # Region restriction of the video.
+          "blocked": [ # List of blocked region codes.
+            "A String",
+          ],
+          "allowed": [ # List of allowed region codes.
+            "A String",
+          ],
+        },
+      },
+      "snippet": { # Basic details about a video, including title, description, uploader, thumbnails and category. # Basic details about the video: title, description, thumbnails.
+        "thumbnails": { # Video thumbnails.
+          "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+            "url": "A String", # The URL for the thumbnail.
+          },
+        },
+        "tags": [ # Textual tags associated with the video.
+          "A String",
+        ],
+        "channelId": "A String", # Channel publishing the video.
+        "publishedAt": "A String", # Date and time the video was published at.
+        "title": "A String", # Title of the video.
+        "categoryId": "A String", # Video category the video belongs to.
+        "description": "A String", # Description of the video.
+      },
+      "player": { # Player to be used for a video playback. # Information used to play the video.
+        "embedHtml": "A String", # Iframe embed for the video.
+      },
+      "etag": "A String", # The eTag of the video.
+      "id": "A String", # The unique id of the video.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(id, part, onBehalfOfContentOwner=None)</code>
+  <pre>Browse the YouTube video collection.
+
+Args:
+  id: string, YouTube IDs of the videos to be returned. (required)
+  part: string, Video parts to include in the returned response. Valid values are: id, snippet, contentDetails, player, statistics, status and topicDetails. (required)
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+
+Returns:
+  An object of the form:
+
+    { # A paginated list of videos returned as the response to a youtube.videos.list call.
+    "items": [ # List of videos matching the request criteria.
+      { # A video resource represents a single YouTube video.
+          "status": { # The status of a video details the video's upload status and privacy status. # Status of the video upload, privacy status.
+            "privacyStatus": "A String", # Privacy of the video.
+            "uploadStatus": "A String", # Status of the video upload.
+            "rejectionReason": "A String", # Present only if the uploadStatus indicates a rejected upload.
+            "failureReason": "A String", # Present only if the uploadStatus indicates a failed upload.
+          },
+          "topicDetails": { # Freebase topic information related to the video. # Topics related to the video
+            "topicIds": [ # List of topic ids for this video *
+              "A String",
+            ],
+          },
+          "kind": "youtube#video", # The type of this API resource.
+          "statistics": { # Statistics about the video, such as the number of times the video was viewed or liked. # Statistics about the video: number of views, ratings.
+            "commentCount": "A String", # Number of comments for this video.
+            "viewCount": "A String", # Number of times the video was viewed.
+            "favoriteCount": "A String", # Number of times the video was added to a user's favorites list.
+            "dislikeCount": "A String", # Number of times the video was disliked.
+            "likeCount": "A String", # Number of times the video was liked.
+          },
+          "contentDetails": { # Details about the media content of a YouTube video. # Information about the video content, media file.
+            "duration": "A String", # Duration of the video.
+            "regionRestriction": { # Region restriction of the video.
+              "blocked": [ # List of blocked region codes.
+                "A String",
+              ],
+              "allowed": [ # List of allowed region codes.
+                "A String",
+              ],
+            },
+          },
+          "snippet": { # Basic details about a video, including title, description, uploader, thumbnails and category. # Basic details about the video: title, description, thumbnails.
+            "thumbnails": { # Video thumbnails.
+              "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+                "url": "A String", # The URL for the thumbnail.
+              },
+            },
+            "tags": [ # Textual tags associated with the video.
+              "A String",
+            ],
+            "channelId": "A String", # Channel publishing the video.
+            "publishedAt": "A String", # Date and time the video was published at.
+            "title": "A String", # Title of the video.
+            "categoryId": "A String", # Video category the video belongs to.
+            "description": "A String", # Description of the video.
+          },
+          "player": { # Player to be used for a video playback. # Information used to play the video.
+            "embedHtml": "A String", # Iframe embed for the video.
+          },
+          "etag": "A String", # The eTag of the video.
+          "id": "A String", # The unique id of the video.
+        },
+    ],
+    "kind": "youtube#videoListResponse", # The type of this API response.
+    "etag": "A String", # The eTag of the response.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(part, body, onBehalfOfContentOwner=None)</code>
+  <pre>Update a video.
+
+Args:
+  part: string, One or more parts to return on the current request. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A video resource represents a single YouTube video.
+    "status": { # The status of a video details the video's upload status and privacy status. # Status of the video upload, privacy status.
+      "privacyStatus": "A String", # Privacy of the video.
+      "uploadStatus": "A String", # Status of the video upload.
+      "rejectionReason": "A String", # Present only if the uploadStatus indicates a rejected upload.
+      "failureReason": "A String", # Present only if the uploadStatus indicates a failed upload.
+    },
+    "topicDetails": { # Freebase topic information related to the video. # Topics related to the video
+      "topicIds": [ # List of topic ids for this video *
+        "A String",
+      ],
+    },
+    "kind": "youtube#video", # The type of this API resource.
+    "statistics": { # Statistics about the video, such as the number of times the video was viewed or liked. # Statistics about the video: number of views, ratings.
+      "commentCount": "A String", # Number of comments for this video.
+      "viewCount": "A String", # Number of times the video was viewed.
+      "favoriteCount": "A String", # Number of times the video was added to a user's favorites list.
+      "dislikeCount": "A String", # Number of times the video was disliked.
+      "likeCount": "A String", # Number of times the video was liked.
+    },
+    "contentDetails": { # Details about the media content of a YouTube video. # Information about the video content, media file.
+      "duration": "A String", # Duration of the video.
+      "regionRestriction": { # Region restriction of the video.
+        "blocked": [ # List of blocked region codes.
+          "A String",
+        ],
+        "allowed": [ # List of allowed region codes.
+          "A String",
+        ],
+      },
+    },
+    "snippet": { # Basic details about a video, including title, description, uploader, thumbnails and category. # Basic details about the video: title, description, thumbnails.
+      "thumbnails": { # Video thumbnails.
+        "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+          "url": "A String", # The URL for the thumbnail.
+        },
+      },
+      "tags": [ # Textual tags associated with the video.
+        "A String",
+      ],
+      "channelId": "A String", # Channel publishing the video.
+      "publishedAt": "A String", # Date and time the video was published at.
+      "title": "A String", # Title of the video.
+      "categoryId": "A String", # Video category the video belongs to.
+      "description": "A String", # Description of the video.
+    },
+    "player": { # Player to be used for a video playback. # Information used to play the video.
+      "embedHtml": "A String", # Iframe embed for the video.
+    },
+    "etag": "A String", # The eTag of the video.
+    "id": "A String", # The unique id of the video.
+  }
+
+  onBehalfOfContentOwner: string, The authenticated user acts on behalf of this content owner.
+
+Returns:
+  An object of the form:
+
+    { # A video resource represents a single YouTube video.
+      "status": { # The status of a video details the video's upload status and privacy status. # Status of the video upload, privacy status.
+        "privacyStatus": "A String", # Privacy of the video.
+        "uploadStatus": "A String", # Status of the video upload.
+        "rejectionReason": "A String", # Present only if the uploadStatus indicates a rejected upload.
+        "failureReason": "A String", # Present only if the uploadStatus indicates a failed upload.
+      },
+      "topicDetails": { # Freebase topic information related to the video. # Topics related to the video
+        "topicIds": [ # List of topic ids for this video *
+          "A String",
+        ],
+      },
+      "kind": "youtube#video", # The type of this API resource.
+      "statistics": { # Statistics about the video, such as the number of times the video was viewed or liked. # Statistics about the video: number of views, ratings.
+        "commentCount": "A String", # Number of comments for this video.
+        "viewCount": "A String", # Number of times the video was viewed.
+        "favoriteCount": "A String", # Number of times the video was added to a user's favorites list.
+        "dislikeCount": "A String", # Number of times the video was disliked.
+        "likeCount": "A String", # Number of times the video was liked.
+      },
+      "contentDetails": { # Details about the media content of a YouTube video. # Information about the video content, media file.
+        "duration": "A String", # Duration of the video.
+        "regionRestriction": { # Region restriction of the video.
+          "blocked": [ # List of blocked region codes.
+            "A String",
+          ],
+          "allowed": [ # List of allowed region codes.
+            "A String",
+          ],
+        },
+      },
+      "snippet": { # Basic details about a video, including title, description, uploader, thumbnails and category. # Basic details about the video: title, description, thumbnails.
+        "thumbnails": { # Video thumbnails.
+          "a_key": { # A thumbnail is an image representing a YouTube resource. # A map of thumbnails by their name.
+            "url": "A String", # The URL for the thumbnail.
+          },
+        },
+        "tags": [ # Textual tags associated with the video.
+          "A String",
+        ],
+        "channelId": "A String", # Channel publishing the video.
+        "publishedAt": "A String", # Date and time the video was published at.
+        "title": "A String", # Title of the video.
+        "categoryId": "A String", # Video category the video belongs to.
+        "description": "A String", # Description of the video.
+      },
+      "player": { # Player to be used for a video playback. # Information used to play the video.
+        "embedHtml": "A String", # Iframe embed for the video.
+      },
+      "etag": "A String", # The eTag of the video.
+      "id": "A String", # The unique id of the video.
+    }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3alpha.channels.html b/docs/dyn/youtube_v3alpha.channels.html
deleted file mode 100644
index 15ef699..0000000
--- a/docs/dyn/youtube_v3alpha.channels.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<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="youtube_v3alpha.html">YouTube API</a> . <a href="youtube_v3alpha.channels.html">channels</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#list">list(part, mine=None, contentOwnerId=None, id=None)</a></code></p>
-<p class="firstline">Browse the YouTube channel collection. Either the 'id' or 'mine' parameter must be set.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="list">list(part, mine=None, contentOwnerId=None, id=None)</code>
-  <pre>Browse the YouTube channel collection. Either the 'id' or 'mine' parameter must be set.
-
-Args:
-  part: string, Parts of the channel resource to be returned. (required)
-  mine: string, Flag indicating only return the channel ids of the authenticated user.
-  contentOwnerId: string, The authenticated user acts on behalf of this content owner.
-  id: string, YouTube IDs of the channels to be returned.
-
-Returns:
-  An object of the form:
-
-    { # JSON template for a ChannelService.List() response.
-    "channels": { # Map of channels matching the request criteria, keyed by channel id.
-      "a_key": { # JSON template for a YouTube Channel. # An entry in the "channels" map: the key is the channel id, the value is the channel resource.
-        "kind": "youtube#channel", # The type of this API resource.
-        "statistics": { # JSON template for the statistics part of a channel. # Statistics about the channel: number of subscribers, views, and comments.
-          "commentCount": "A String", # Number of comments for this channel.
-          "subscriberCount": "A String", # Number of subscribers to this channel.
-          "videoCount": "A String", # Number of videos in the channel.
-          "viewCount": "A String", # Number of times the channel has been viewed.
-        },
-        "contentDetails": { # JSON template for the content details part of a channel. # Information about the channel content: upload playlist id, privacy status.
-          "privacyStatus": "A String", # Privacy status of the channel.
-          "uploads": "A String", # The ID of the playlist containing the uploads of this channel.
-        },
-        "snippet": { # JSON template for the snippet part of a channel. # Basic details about the channel: title, description, and thumbnails.
-          "title": "A String", # Title of the channel.
-          "description": "A String", # Description of the channel.
-          "thumbnails": { # Channel thumbnails.
-            "a_key": { # JSON template for a thumbnail. # The name of the thumbnail.
-              "url": "A String", # The URL for the thumbnail.
-            },
-          },
-        },
-        "etag": "A String", # The eTag of the channel.
-        "id": "A String", # The unique ID of the channel.
-      },
-    },
-    "kind": "youtube#channelListResponse", # The type of this API response.
-    "etag": "A String", # The eTag of the response.
-  }</pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3alpha.html b/docs/dyn/youtube_v3alpha.html
deleted file mode 100644
index 054495f..0000000
--- a/docs/dyn/youtube_v3alpha.html
+++ /dev/null
@@ -1,102 +0,0 @@
-<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="youtube_v3alpha.html">YouTube API</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="youtube_v3alpha.channels.html">channels()</a></code>
-</p>
-<p class="firstline">Returns the channels Resource.</p>
-
-<p class="toc_element">
-  <code><a href="youtube_v3alpha.playlistItems.html">playlistItems()</a></code>
-</p>
-<p class="firstline">Returns the playlistItems Resource.</p>
-
-<p class="toc_element">
-  <code><a href="youtube_v3alpha.playlists.html">playlists()</a></code>
-</p>
-<p class="firstline">Returns the playlists Resource.</p>
-
-<p class="toc_element">
-  <code><a href="youtube_v3alpha.search.html">search()</a></code>
-</p>
-<p class="firstline">Returns the search Resource.</p>
-
-<p class="toc_element">
-  <code><a href="youtube_v3alpha.videos.html">videos()</a></code>
-</p>
-<p class="firstline">Returns the videos Resource.</p>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3alpha.playlistItems.html b/docs/dyn/youtube_v3alpha.playlistItems.html
deleted file mode 100644
index dafc3b3..0000000
--- a/docs/dyn/youtube_v3alpha.playlistItems.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<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="youtube_v3alpha.html">YouTube API</a> . <a href="youtube_v3alpha.playlistItems.html">playlistItems</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#list">list(part, playlistId=None, maxResults=None, contentOwnerId=None, startIndex=None, id=None)</a></code></p>
-<p class="firstline">Browse the YouTube playlist collection.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="list">list(part, playlistId=None, maxResults=None, contentOwnerId=None, startIndex=None, id=None)</code>
-  <pre>Browse the YouTube playlist collection.
-
-Args:
-  part: string, Parts of the playlist resource to be returned. (required)
-  playlistId: string, Retrieves playlist items from the given playlist id.
-  maxResults: integer, Maximum number of results to return
-  contentOwnerId: string, The authenticated user acts on behalf of this content owner.
-  startIndex: integer, Index of the first element to return (starts at 0)
-  id: string, YouTube IDs of the playlists to be returned.
-
-Returns:
-  An object of the form:
-
-    { # JSON template for a PlaylistItemService.List() response.
-    "playlistItems": { # Map of playlist items matching the request criteria, keyed by id.
-      "a_key": { # JSON template for a YouTube Playlist item. # An entry in the "playlistItems" map: the key is the video id, the value is the playlist item resource.
-        "snippet": { # JSON template for the snippet part of a playlist item. # Basic details about the playlist item: title, description, thumbnails.
-          "playlistId": "A String", # The playlist the item is part of.
-          "description": "A String", # Description of the playlist item.
-          "title": "A String", # Title of the playlist item.
-          "resourceId": { # JSON template for a resource id. # The ID of the resource referenced by the playlist item.
-            "kind": "A String", # The kind of the referred resource.
-            "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
-            "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
-            "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
-          },
-          "channelId": "A String", # Author of the playlist item.
-          "publishedAt": "A String", # The date and time the playlist item was created.
-          "position": 42, # The position of the item within the playlist.
-        },
-        "contentDetails": { # JSON template for the content details part of a playlist item. # Content details about the playlist item: start and end clipping time.
-          "note": "A String", # The user-generated note for this item.
-          "startAt": "A String", # The time video playback begins.
-          "endAt": "A String", # The time video playback ends.
-          "videoId": "A String", # ID of the video.
-        },
-        "kind": "youtube#playlistItem", # The type of this API resource.
-        "etag": "A String", # The eTag of the playlist item.
-        "id": "A String", # The unique id of the playlist item.
-      },
-    },
-    "kind": "youtube#playlistItemListResponse", # The type of this API response.
-    "etag": "A String", # The eTag of the response.
-  }</pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3alpha.playlists.html b/docs/dyn/youtube_v3alpha.playlists.html
deleted file mode 100644
index 8c571c4..0000000
--- a/docs/dyn/youtube_v3alpha.playlists.html
+++ /dev/null
@@ -1,115 +0,0 @@
-<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="youtube_v3alpha.html">YouTube API</a> . <a href="youtube_v3alpha.playlists.html">playlists</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#list">list(id, part, contentOwnerId=None)</a></code></p>
-<p class="firstline">Browse the YouTube playlist collection.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="list">list(id, part, contentOwnerId=None)</code>
-  <pre>Browse the YouTube playlist collection.
-
-Args:
-  id: string, YouTube IDs of the playlists to be returned. (required)
-  part: string, Parts of the playlist resource to be returned. (required)
-  contentOwnerId: string, The authenticated user acts on behalf of this content owner.
-
-Returns:
-  An object of the form:
-
-    { # JSON template for a PlaylistService.List() response.
-    "kind": "youtube#playlistListResponse", # The type of this API response.
-    "etag": "A String", # The eTag of the response.
-    "playlists": { # Map of playlists matching the request criteria, keyed by id.
-      "a_key": { # JSON template for a YouTube Playlist. # An entry in the "playlists" map: the key is the playlist id, the value is the playlist resource.
-        "snippet": { # JSON template for the snippet part of a playlist. # Basic details about the playlist: title, description, thumbnails.
-          "title": "A String", # Title of the playlist.
-          "channelId": "A String", # Author of the playlist.
-          "description": "A String", # Description of the playlist.
-          "publishedAt": "A String", # The date and time the playlist was created.
-          "tags": [ # Textual tags associated with the playlist.
-            "A String",
-          ],
-        },
-        "kind": "youtube#playlist", # The type of this API resource.
-        "etag": "A String", # The eTag of the playlist.
-        "id": "A String", # The unique id of the playlist.
-      },
-    },
-  }</pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3alpha.search.html b/docs/dyn/youtube_v3alpha.search.html
deleted file mode 100644
index 1990705..0000000
--- a/docs/dyn/youtube_v3alpha.search.html
+++ /dev/null
@@ -1,133 +0,0 @@
-<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="youtube_v3alpha.html">YouTube API</a> . <a href="youtube_v3alpha.search.html">search</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#list">list(q=None, maxResults=None, startIndex=None, type=None, order=None)</a></code></p>
-<p class="firstline">Universal search for youtube.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="list">list(q=None, maxResults=None, startIndex=None, type=None, order=None)</code>
-  <pre>Universal search for youtube.
-
-Args:
-  q: string, Query to search in Youtube.
-  maxResults: integer, Maximum number of search results to return per page.
-  startIndex: integer, Index of the first search result to return.
-  type: string, Type of resource to search. (repeated)
-    Allowed values
-      channel - Search for channels.
-      playlist - Search for playlists.
-      video - Search for videos.
-  order: string, Sort order.
-    Allowed values
-      date - Sort according to the date.
-      rating - Sort according to the rating.
-      relevance - Sort according to the relevance.
-      view_count - Sort according to the view count.
-
-Returns:
-  An object of the form:
-
-    { # JSON template for a SearchService.List() response.
-    "searchResults": [ # List of results matching the request criteria.
-      { # JSON template for a YouTube Search result.
-        "snippet": { # JSON template for the snippet part of a search result. # Basic details about the search result: title, description, author.
-          "channelId": "A String", # Author of the found resource.
-          "description": "A String", # Description of the search result.
-          "publishedAt": "A String", # The date and time the found resource was created.
-          "title": "A String", # Title of the search result.
-        },
-        "kind": "youtube#searchResult", # The type of this API resource.
-        "etag": "A String", # The eTag of the search result.
-        "id": { # JSON template for a resource id. # The id of the resource.
-          "kind": "A String", # The kind of the referred resource.
-          "channelId": "A String", # ID of the referred channel. Present only when type is "CHANNEL".
-          "playlistId": "A String", # ID of the referred playlist. Present only when type is "PLAYLIST".
-          "videoId": "A String", # ID of the referred video. Present only when type is "VIDEO".
-        },
-      },
-    ],
-    "kind": "youtube#searchListResponse", # The type of this API response.
-    "etag": "A String", # The eTag of the response.
-    "pageInfo": { # JSON template for a page info. # Paging information for the search result.
-      "totalResults": 42, # The total number of results.
-      "startIndex": 42, # The index position of the first result to display.
-      "resultPerPage": 42, # The number of results to display for each page.
-    },
-  }</pre>
-</div>
-
-</body></html>
\ No newline at end of file
diff --git a/docs/dyn/youtube_v3alpha.videos.html b/docs/dyn/youtube_v3alpha.videos.html
deleted file mode 100644
index 357209c..0000000
--- a/docs/dyn/youtube_v3alpha.videos.html
+++ /dev/null
@@ -1,141 +0,0 @@
-<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="youtube_v3alpha.html">YouTube API</a> . <a href="youtube_v3alpha.videos.html">videos</a></h1>
-<h2>Instance Methods</h2>
-<p class="toc_element">
-  <code><a href="#list">list(id, part, contentOwnerId=None)</a></code></p>
-<p class="firstline">Browse the YouTube video collection.</p>
-<h3>Method Details</h3>
-<div class="method">
-    <code class="details" id="list">list(id, part, contentOwnerId=None)</code>
-  <pre>Browse the YouTube video collection.
-
-Args:
-  id: string, YouTube IDs of the videos to be returned. (required)
-  part: string, Parts of the video resource to be returned. (required)
-  contentOwnerId: string, The authenticated user acts on behalf of this content owner.
-
-Returns:
-  An object of the form:
-
-    { # JSON template for a VideoService.List() response.
-    "kind": "youtube#videoListResponse", # The type of this API response.
-    "etag": "A String", # The eTag of the response.
-    "videos": { # Map of videos matching the request criteria, keyed by video id.
-      "a_key": { # JSON template for a YouTube Video. # An entry in the "videos" map: the key is the video id, the value is the video resource.
-        "status": { # JSON template for the status part of a video. # Status of the video upload, privacy status.
-          "privacyStatus": "A String", # Privacy of the video.
-          "uploadStatus": "A String", # Status of the video upload.
-          "rejectionReason": "A String", # Present only if the uploadStatus indicates a rejected upload.
-          "failureReason": "A String", # Present only if the uploadStatus indicates a failed upload.
-        },
-        "kind": "youtube#video", # The type of this API resource.
-        "statistics": { # JSON template for the statistics part of a video. # Statistics about the video: number of views, ratings.
-          "commentCount": "A String", # Number of comments for this video.
-          "viewCount": "A String", # Number of times the video was viewed.
-          "favoriteCount": "A String", # Number of times the video was added to a user's favorites list.
-          "dislikeCount": "A String", # Number of times the video was disliked.
-          "likeCount": "A String", # Number of times the video was liked.
-        },
-        "contentDetails": { # JSON template for the content details part of a video. # Information about the video content, media file.
-          "duration": "A String", # Duration of the video.
-          "aspectRatio": "A String", # The aspect ratio of the video.
-        },
-        "snippet": { # JSON template for the snippet part of a video. # Basic details about the video: title, description, thumbnails.
-          "thumbnails": { # Video thumbnails.
-            "a_key": { # JSON template for a thumbnail. # The name of the thumbnail.
-              "url": "A String", # The URL for the thumbnail.
-            },
-          },
-          "tags": [ # Textual tags associated with the video.
-            "A String",
-          ],
-          "channelId": "A String", # Channel the video was uploaded into.
-          "publishedAt": "A String", # Date time the video was uploaded.
-          "title": "A String", # Title of the video.
-          "categoryId": "A String", # Video category the video belongs to.
-          "description": "A String", # Description of the video.
-        },
-        "player": { # JSON template for the player part of a video. # Information used to play the video.
-          "embedHtml": "A String", # Iframe embed for the video.
-        },
-        "etag": "A String", # The eTag of the video.
-        "id": "A String", # The unique id of the video.
-      },
-    },
-  }</pre>
-</div>
-
-</body></html>
\ No newline at end of file
