diff --git a/CHANGELOG b/CHANGELOG
index 7892645..fc3275d 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,12 @@
+v1.3
+  Version 1.3
+
+  Add support for the Google Application Default Credentials.
+  Require python 2.6 as a minimum version.
+  Update several API samples.
+  Finish splitting out oauth2client repo and update tests.
+  Various doc cleanup and bugfixes.
+	
 v1.2
   Version 1.2
 
diff --git a/LICENSE b/LICENSE
index d04d080..2987b3b 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,4 +1,4 @@
- Copyright 2014-2014 Google Inc. All Rights Reserved.
+ Copyright 2014 Google Inc. All Rights Reserved.
 
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
diff --git a/docs/dyn/adexchangebuyer_v1_3.billingInfo.html b/docs/dyn/adexchangebuyer_v1_3.billingInfo.html
index b25b8e4..45be368 100644
--- a/docs/dyn/adexchangebuyer_v1_3.billingInfo.html
+++ b/docs/dyn/adexchangebuyer_v1_3.billingInfo.html
@@ -92,7 +92,7 @@
   An object of the form:
 
     { # The configuration data for an Ad Exchange billing info.
-    "billingId": [ # Billing info id.
+    "billingId": [ # A list of adgroup IDs associated with this particular account. These IDs may show up as part of a realtime bidding BidRequest, which indicates a bid request for this account.
       "A String",
     ],
     "accountName": "A String", # Account name.
@@ -113,7 +113,7 @@
     { # A billing info feed lists Billing Info the Ad Exchange buyer account has access to. Each entry in the feed corresponds to a single billing info.
     "items": [ # A list of billing info relevant for your account.
       { # The configuration data for an Ad Exchange billing info.
-        "billingId": [ # Billing info id.
+        "billingId": [ # A list of adgroup IDs associated with this particular account. These IDs may show up as part of a realtime bidding BidRequest, which indicates a bid request for this account.
           "A String",
         ],
         "accountName": "A String", # Account name.
diff --git a/docs/dyn/adexchangebuyer_v1_3.creatives.html b/docs/dyn/adexchangebuyer_v1_3.creatives.html
index 4723382..fd161ca 100644
--- a/docs/dyn/adexchangebuyer_v1_3.creatives.html
+++ b/docs/dyn/adexchangebuyer_v1_3.creatives.html
@@ -134,7 +134,7 @@
           ],
         },
       ],
-      "filteringReasons": { # The filtering reasons for the creative. Read-only. This field should not be set in requests.
+      "filteringReasons": { # The filtering reasons for the creative. If this feature is not enabled, please ask your technical account manager. Read-only. This field should not be set in requests.
         "date": "A String", # The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.
         "reasons": [ # The filtering reasons.
           {
@@ -202,7 +202,7 @@
         ],
       },
     ],
-    "filteringReasons": { # The filtering reasons for the creative. Read-only. This field should not be set in requests.
+    "filteringReasons": { # The filtering reasons for the creative. If this feature is not enabled, please ask your technical account manager. Read-only. This field should not be set in requests.
       "date": "A String", # The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.
       "reasons": [ # The filtering reasons.
         {
@@ -265,7 +265,7 @@
           ],
         },
       ],
-      "filteringReasons": { # The filtering reasons for the creative. Read-only. This field should not be set in requests.
+      "filteringReasons": { # The filtering reasons for the creative. If this feature is not enabled, please ask your technical account manager. Read-only. This field should not be set in requests.
         "date": "A String", # The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.
         "reasons": [ # The filtering reasons.
           {
@@ -346,7 +346,7 @@
               ],
             },
           ],
-          "filteringReasons": { # The filtering reasons for the creative. Read-only. This field should not be set in requests.
+          "filteringReasons": { # The filtering reasons for the creative. If this feature is not enabled, please ask your technical account manager. Read-only. This field should not be set in requests.
             "date": "A String", # The date in ISO 8601 format for the data. The data is collected from 00:00:00 to 23:59:59 in PST.
             "reasons": [ # The filtering reasons.
               {
diff --git a/docs/dyn/adexchangebuyer_v1_3.directDeals.html b/docs/dyn/adexchangebuyer_v1_3.directDeals.html
index 687bcd7..0d4d0b9 100644
--- a/docs/dyn/adexchangebuyer_v1_3.directDeals.html
+++ b/docs/dyn/adexchangebuyer_v1_3.directDeals.html
@@ -99,6 +99,7 @@
     "fixedCpm": "A String", # The fixed price for this direct deal. In cpm micros of currency according to currency_code. If set, then this deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).
     "privateExchangeMinCpm": "A String", # The minimum price for this direct deal. In cpm micros of currency according to currency_code. If set, then this deal is eligible for the private exchange tier of buying (below fixed price priority, run as a second price auction).
     "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.
+    "publisherBlocksOverriden": True or False, # If true, the publisher has opted to have their blocks ignored when a creative is bid with for this deal.
     "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.
@@ -126,6 +127,7 @@
         "fixedCpm": "A String", # The fixed price for this direct deal. In cpm micros of currency according to currency_code. If set, then this deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).
         "privateExchangeMinCpm": "A String", # The minimum price for this direct deal. In cpm micros of currency according to currency_code. If set, then this deal is eligible for the private exchange tier of buying (below fixed price priority, run as a second price auction).
         "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.
+        "publisherBlocksOverriden": True or False, # If true, the publisher has opted to have their blocks ignored when a creative is bid with for this deal.
         "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.
diff --git a/docs/dyn/adexchangebuyer_v1_3.pretargetingConfig.html b/docs/dyn/adexchangebuyer_v1_3.pretargetingConfig.html
index 5dbfdaf..239d140 100644
--- a/docs/dyn/adexchangebuyer_v1_3.pretargetingConfig.html
+++ b/docs/dyn/adexchangebuyer_v1_3.pretargetingConfig.html
@@ -147,9 +147,7 @@
           "type": "A String", # The type of the placement.
         },
       ],
-      "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
-        "A String",
-      ],
+      "billingId": "A String", # The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.
       "geoCriteriaIds": [ # Requests containing any of these geo criteria ids will match.
         "A String",
       ],
@@ -176,6 +174,9 @@
       "userLists": [ # Requests containing any of these user list ids will match.
         "A String",
       ],
+      "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
+        "A String",
+      ],
       "placements": [ # Requests containing any of these placements will match.
         {
           "token": "A String", # The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.
@@ -227,9 +228,7 @@
         "type": "A String", # The type of the placement.
       },
     ],
-    "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
-      "A String",
-    ],
+    "billingId": "A String", # The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.
     "geoCriteriaIds": [ # Requests containing any of these geo criteria ids will match.
       "A String",
     ],
@@ -256,6 +255,9 @@
     "userLists": [ # Requests containing any of these user list ids will match.
       "A String",
     ],
+    "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
+      "A String",
+    ],
     "placements": [ # Requests containing any of these placements will match.
       {
         "token": "A String", # The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.
@@ -301,9 +303,7 @@
           "type": "A String", # The type of the placement.
         },
       ],
-      "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
-        "A String",
-      ],
+      "billingId": "A String", # The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.
       "geoCriteriaIds": [ # Requests containing any of these geo criteria ids will match.
         "A String",
       ],
@@ -330,6 +330,9 @@
       "userLists": [ # Requests containing any of these user list ids will match.
         "A String",
       ],
+      "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
+        "A String",
+      ],
       "placements": [ # Requests containing any of these placements will match.
         {
           "token": "A String", # The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.
@@ -384,9 +387,7 @@
               "type": "A String", # The type of the placement.
             },
           ],
-          "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
-            "A String",
-          ],
+          "billingId": "A String", # The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.
           "geoCriteriaIds": [ # Requests containing any of these geo criteria ids will match.
             "A String",
           ],
@@ -413,6 +414,9 @@
           "userLists": [ # Requests containing any of these user list ids will match.
             "A String",
           ],
+          "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
+            "A String",
+          ],
           "placements": [ # Requests containing any of these placements will match.
             {
               "token": "A String", # The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.
@@ -468,9 +472,7 @@
         "type": "A String", # The type of the placement.
       },
     ],
-    "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
-      "A String",
-    ],
+    "billingId": "A String", # The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.
     "geoCriteriaIds": [ # Requests containing any of these geo criteria ids will match.
       "A String",
     ],
@@ -497,6 +499,9 @@
     "userLists": [ # Requests containing any of these user list ids will match.
       "A String",
     ],
+    "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
+      "A String",
+    ],
     "placements": [ # Requests containing any of these placements will match.
       {
         "token": "A String", # The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.
@@ -542,9 +547,7 @@
           "type": "A String", # The type of the placement.
         },
       ],
-      "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
-        "A String",
-      ],
+      "billingId": "A String", # The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.
       "geoCriteriaIds": [ # Requests containing any of these geo criteria ids will match.
         "A String",
       ],
@@ -571,6 +574,9 @@
       "userLists": [ # Requests containing any of these user list ids will match.
         "A String",
       ],
+      "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
+        "A String",
+      ],
       "placements": [ # Requests containing any of these placements will match.
         {
           "token": "A String", # The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.
@@ -623,9 +629,7 @@
         "type": "A String", # The type of the placement.
       },
     ],
-    "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
-      "A String",
-    ],
+    "billingId": "A String", # The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.
     "geoCriteriaIds": [ # Requests containing any of these geo criteria ids will match.
       "A String",
     ],
@@ -652,6 +656,9 @@
     "userLists": [ # Requests containing any of these user list ids will match.
       "A String",
     ],
+    "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
+      "A String",
+    ],
     "placements": [ # Requests containing any of these placements will match.
       {
         "token": "A String", # The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.
@@ -697,9 +704,7 @@
           "type": "A String", # The type of the placement.
         },
       ],
-      "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
-        "A String",
-      ],
+      "billingId": "A String", # The id for billing purposes, provided for reference. Leave this field blank for insert requests; the id will be generated automatically.
       "geoCriteriaIds": [ # Requests containing any of these geo criteria ids will match.
         "A String",
       ],
@@ -726,6 +731,9 @@
       "userLists": [ # Requests containing any of these user list ids will match.
         "A String",
       ],
+      "creativeType": [ # List must contain exactly one of PRETARGETING_CREATIVE_TYPE_HTML or PRETARGETING_CREATIVE_TYPE_VIDEO.
+        "A String",
+      ],
       "placements": [ # Requests containing any of these placements will match.
         {
           "token": "A String", # The value of the placement. Interpretation depends on the placement type, e.g. URL for a site placement, channel name for a channel placement, app id for a mobile app placement.
diff --git a/docs/dyn/adexchangeseller_v2_0.accounts.adclients.html b/docs/dyn/adexchangeseller_v2_0.accounts.adclients.html
new file mode 100644
index 0000000..6482278
--- /dev/null
+++ b/docs/dyn/adexchangeseller_v2_0.accounts.adclients.html
@@ -0,0 +1,126 @@
+<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="adexchangeseller_v2_0.html">Ad Exchange Seller API</a> . <a href="adexchangeseller_v2_0.accounts.html">accounts</a> . <a href="adexchangeseller_v2_0.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 this Ad Exchange 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 this Ad Exchange account.
+
+Args:
+  accountId: string, Account to which the ad client belongs. (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": "adexchangeseller#adClient", # Kind of resource this is, in this case adexchangeseller#adClient.
+        "id": "A String", # Unique identifier of this ad client.
+        "arcOptIn": True or False, # Whether this ad client is opted in to ARC.
+        "supportsReporting": True or False, # Whether this ad client supports being reported on.
+      },
+    ],
+    "kind": "adexchangeseller#adClients", # Kind of list this is, in this case adexchangeseller#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/adexchangeseller_v2_0.accounts.alerts.html b/docs/dyn/adexchangeseller_v2_0.accounts.alerts.html
new file mode 100644
index 0000000..63f496a
--- /dev/null
+++ b/docs/dyn/adexchangeseller_v2_0.accounts.alerts.html
@@ -0,0 +1,106 @@
+<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="adexchangeseller_v2_0.html">Ad Exchange Seller API</a> . <a href="adexchangeseller_v2_0.accounts.html">accounts</a> . <a href="adexchangeseller_v2_0.accounts.alerts.html">alerts</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#list">list(accountId, locale=None)</a></code></p>
+<p class="firstline">List the alerts for this Ad Exchange account.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="list">list(accountId, locale=None)</code>
+  <pre>List the alerts for this Ad Exchange account.
+
+Args:
+  accountId: string, Account owning the alerts. (required)
+  locale: string, The locale to use for translating alert messages. The account locale will be used if this is not supplied. The AdSense default (English) will be used if the supplied locale is invalid or unsupported.
+
+Returns:
+  An object of the form:
+
+    {
+    "items": [ # The alerts returned in this list response.
+      {
+        "type": "A String", # Type of this alert. Possible values: SELF_HOLD, MIGRATED_TO_BILLING3, ADDRESS_PIN_VERIFICATION, PHONE_PIN_VERIFICATION, CORPORATE_ENTITY, GRAYLISTED_PUBLISHER, API_HOLD.
+        "kind": "adexchangeseller#alert", # Kind of resource this is, in this case adexchangeseller#alert.
+        "message": "A String", # The localized alert message.
+        "id": "A String", # Unique identifier of this alert. This should be considered an opaque identifier; it is not safe to rely on it being in any particular format.
+        "severity": "A String", # Severity of this alert. Possible values: INFO, WARNING, SEVERE.
+      },
+    ],
+    "kind": "adexchangeseller#alerts", # Kind of list this is, in this case adexchangeseller#alerts.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adexchangeseller_v2_0.accounts.customchannels.html b/docs/dyn/adexchangeseller_v2_0.accounts.customchannels.html
new file mode 100644
index 0000000..dba3a09
--- /dev/null
+++ b/docs/dyn/adexchangeseller_v2_0.accounts.customchannels.html
@@ -0,0 +1,161 @@
+<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="adexchangeseller_v2_0.html">Ad Exchange Seller API</a> . <a href="adexchangeseller_v2_0.accounts.html">accounts</a> . <a href="adexchangeseller_v2_0.accounts.customchannels.html">customchannels</a></h1>
+<h2>Instance Methods</h2>
+<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.</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 this Ad Exchange 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.
+
+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": "adexchangeseller#customChannel", # Kind of resource this is, in this case adexchangeseller#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 this Ad Exchange 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": "adexchangeseller#customChannel", # Kind of resource this is, in this case adexchangeseller#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": "adexchangeseller#customChannels", # Kind of list this is, in this case adexchangeseller#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/adexchangeseller_v2_0.accounts.html b/docs/dyn/adexchangeseller_v2_0.accounts.html
new file mode 100644
index 0000000..27b2e07
--- /dev/null
+++ b/docs/dyn/adexchangeseller_v2_0.accounts.html
@@ -0,0 +1,178 @@
+<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="adexchangeseller_v2_0.html">Ad Exchange Seller API</a> . <a href="adexchangeseller_v2_0.accounts.html">accounts</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="adexchangeseller_v2_0.accounts.adclients.html">adclients()</a></code>
+</p>
+<p class="firstline">Returns the adclients Resource.</p>
+
+<p class="toc_element">
+  <code><a href="adexchangeseller_v2_0.accounts.alerts.html">alerts()</a></code>
+</p>
+<p class="firstline">Returns the alerts Resource.</p>
+
+<p class="toc_element">
+  <code><a href="adexchangeseller_v2_0.accounts.customchannels.html">customchannels()</a></code>
+</p>
+<p class="firstline">Returns the customchannels Resource.</p>
+
+<p class="toc_element">
+  <code><a href="adexchangeseller_v2_0.accounts.metadata.html">metadata()</a></code>
+</p>
+<p class="firstline">Returns the metadata Resource.</p>
+
+<p class="toc_element">
+  <code><a href="adexchangeseller_v2_0.accounts.preferreddeals.html">preferreddeals()</a></code>
+</p>
+<p class="firstline">Returns the preferreddeals Resource.</p>
+
+<p class="toc_element">
+  <code><a href="adexchangeseller_v2_0.accounts.reports.html">reports()</a></code>
+</p>
+<p class="firstline">Returns the reports Resource.</p>
+
+<p class="toc_element">
+  <code><a href="adexchangeseller_v2_0.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)</a></code></p>
+<p class="firstline">Get information about the selected Ad Exchange 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 Ad Exchange 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)</code>
+  <pre>Get information about the selected Ad Exchange account.
+
+Args:
+  accountId: string, Account to get information about. Tip: 'myaccount' is a valid ID. (required)
+
+Returns:
+  An object of the form:
+
+    {
+    "kind": "adexchangeseller#account", # Kind of resource this is, in this case adexchangeseller#account.
+    "id": "A String", # Unique identifier of this 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 Ad Exchange 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": "adexchangeseller#account", # Kind of resource this is, in this case adexchangeseller#account.
+        "id": "A String", # Unique identifier of this account.
+        "name": "A String", # Name of this account.
+      },
+    ],
+    "kind": "adexchangeseller#accounts", # Kind of list this is, in this case adexchangeseller#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/adexchangeseller_v2_0.accounts.metadata.dimensions.html b/docs/dyn/adexchangeseller_v2_0.accounts.metadata.dimensions.html
new file mode 100644
index 0000000..f7a05f9
--- /dev/null
+++ b/docs/dyn/adexchangeseller_v2_0.accounts.metadata.dimensions.html
@@ -0,0 +1,117 @@
+<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="adexchangeseller_v2_0.html">Ad Exchange Seller API</a> . <a href="adexchangeseller_v2_0.accounts.html">accounts</a> . <a href="adexchangeseller_v2_0.accounts.metadata.html">metadata</a> . <a href="adexchangeseller_v2_0.accounts.metadata.dimensions.html">dimensions</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#list">list(accountId)</a></code></p>
+<p class="firstline">List the metadata for the dimensions available to this AdExchange account.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="list">list(accountId)</code>
+  <pre>List the metadata for the dimensions available to this AdExchange account.
+
+Args:
+  accountId: string, Account with visibility to the dimensions. (required)
+
+Returns:
+  An object of the form:
+
+    {
+    "items": [
+      {
+        "requiredMetrics": [ # The names of the metrics which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.
+          "A String",
+        ],
+        "kind": "adexchangeseller#reportingMetadataEntry", # Kind of resource this is, in this case adexchangeseller#reportingMetadataEntry.
+        "compatibleMetrics": [ # The names of the metrics the dimension or metric this reporting metadata entry describes is compatible with.
+          "A String",
+        ],
+        "requiredDimensions": [ # The names of the dimensions which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.
+          "A String",
+        ],
+        "compatibleDimensions": [ # For metrics this is a list of dimension IDs which the metric is compatible with, for dimensions it is a list of compatibility groups the dimension belongs to.
+          "A String",
+        ],
+        "id": "A String", # Unique identifier of this reporting metadata entry, corresponding to the name of the appropriate dimension or metric.
+        "supportedProducts": [ # The codes of the projects supported by the dimension or metric this reporting metadata entry describes.
+          "A String",
+        ],
+      },
+    ],
+    "kind": "adexchangeseller#metadata", # Kind of list this is, in this case adexchangeseller#metadata.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adexchangeseller_v2_0.accounts.metadata.html b/docs/dyn/adexchangeseller_v2_0.accounts.metadata.html
new file mode 100644
index 0000000..ce96506
--- /dev/null
+++ b/docs/dyn/adexchangeseller_v2_0.accounts.metadata.html
@@ -0,0 +1,87 @@
+<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="adexchangeseller_v2_0.html">Ad Exchange Seller API</a> . <a href="adexchangeseller_v2_0.accounts.html">accounts</a> . <a href="adexchangeseller_v2_0.accounts.metadata.html">metadata</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="adexchangeseller_v2_0.accounts.metadata.dimensions.html">dimensions()</a></code>
+</p>
+<p class="firstline">Returns the dimensions Resource.</p>
+
+<p class="toc_element">
+  <code><a href="adexchangeseller_v2_0.accounts.metadata.metrics.html">metrics()</a></code>
+</p>
+<p class="firstline">Returns the metrics Resource.</p>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adexchangeseller_v2_0.accounts.metadata.metrics.html b/docs/dyn/adexchangeseller_v2_0.accounts.metadata.metrics.html
new file mode 100644
index 0000000..2d511ac
--- /dev/null
+++ b/docs/dyn/adexchangeseller_v2_0.accounts.metadata.metrics.html
@@ -0,0 +1,117 @@
+<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="adexchangeseller_v2_0.html">Ad Exchange Seller API</a> . <a href="adexchangeseller_v2_0.accounts.html">accounts</a> . <a href="adexchangeseller_v2_0.accounts.metadata.html">metadata</a> . <a href="adexchangeseller_v2_0.accounts.metadata.metrics.html">metrics</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#list">list(accountId)</a></code></p>
+<p class="firstline">List the metadata for the metrics available to this AdExchange account.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="list">list(accountId)</code>
+  <pre>List the metadata for the metrics available to this AdExchange account.
+
+Args:
+  accountId: string, Account with visibility to the metrics. (required)
+
+Returns:
+  An object of the form:
+
+    {
+    "items": [
+      {
+        "requiredMetrics": [ # The names of the metrics which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.
+          "A String",
+        ],
+        "kind": "adexchangeseller#reportingMetadataEntry", # Kind of resource this is, in this case adexchangeseller#reportingMetadataEntry.
+        "compatibleMetrics": [ # The names of the metrics the dimension or metric this reporting metadata entry describes is compatible with.
+          "A String",
+        ],
+        "requiredDimensions": [ # The names of the dimensions which the dimension or metric this reporting metadata entry describes requires to also be present in order for the report to be valid. Omitting these will not cause an error or warning, but may result in data which cannot be correctly interpreted.
+          "A String",
+        ],
+        "compatibleDimensions": [ # For metrics this is a list of dimension IDs which the metric is compatible with, for dimensions it is a list of compatibility groups the dimension belongs to.
+          "A String",
+        ],
+        "id": "A String", # Unique identifier of this reporting metadata entry, corresponding to the name of the appropriate dimension or metric.
+        "supportedProducts": [ # The codes of the projects supported by the dimension or metric this reporting metadata entry describes.
+          "A String",
+        ],
+      },
+    ],
+    "kind": "adexchangeseller#metadata", # Kind of list this is, in this case adexchangeseller#metadata.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adexchangeseller_v2_0.accounts.preferreddeals.html b/docs/dyn/adexchangeseller_v2_0.accounts.preferreddeals.html
new file mode 100644
index 0000000..8eb5f05
--- /dev/null
+++ b/docs/dyn/adexchangeseller_v2_0.accounts.preferreddeals.html
@@ -0,0 +1,134 @@
+<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="adexchangeseller_v2_0.html">Ad Exchange Seller API</a> . <a href="adexchangeseller_v2_0.accounts.html">accounts</a> . <a href="adexchangeseller_v2_0.accounts.preferreddeals.html">preferreddeals</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#get">get(accountId, dealId)</a></code></p>
+<p class="firstline">Get information about the selected Ad Exchange Preferred Deal.</p>
+<p class="toc_element">
+  <code><a href="#list">list(accountId)</a></code></p>
+<p class="firstline">List the preferred deals for this Ad Exchange account.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="get">get(accountId, dealId)</code>
+  <pre>Get information about the selected Ad Exchange Preferred Deal.
+
+Args:
+  accountId: string, Account owning the deal. (required)
+  dealId: string, Preferred deal to get information about. (required)
+
+Returns:
+  An object of the form:
+
+    {
+    "kind": "adexchangeseller#preferredDeal", # Kind of resource this is, in this case adexchangeseller#preferredDeal.
+    "buyerNetworkName": "A String", # The name of the buyer network this deal is for.
+    "currencyCode": "A String", # The currency code that applies to the fixed_cpm value. If not set then assumed to be USD.
+    "advertiserName": "A String", # The name of the advertiser this deal is for.
+    "fixedCpm": "A String", # The fixed price for this preferred deal. In cpm micros of currency according to currencyCode. If set, then this preferred deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).
+    "startTime": "A String", # Time when this deal becomes active in seconds since the epoch (GMT). If not set then this deal is active immediately upon creation.
+    "endTime": "A String", # Time when this deal stops being active in seconds since the epoch (GMT). If not set then this deal is valid until manually disabled by the publisher.
+    "id": "A String", # Unique identifier of this preferred deal.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(accountId)</code>
+  <pre>List the preferred deals for this Ad Exchange account.
+
+Args:
+  accountId: string, Account owning the deals. (required)
+
+Returns:
+  An object of the form:
+
+    {
+    "items": [ # The preferred deals returned in this list response.
+      {
+        "kind": "adexchangeseller#preferredDeal", # Kind of resource this is, in this case adexchangeseller#preferredDeal.
+        "buyerNetworkName": "A String", # The name of the buyer network this deal is for.
+        "currencyCode": "A String", # The currency code that applies to the fixed_cpm value. If not set then assumed to be USD.
+        "advertiserName": "A String", # The name of the advertiser this deal is for.
+        "fixedCpm": "A String", # The fixed price for this preferred deal. In cpm micros of currency according to currencyCode. If set, then this preferred deal is eligible for the fixed price tier of buying (highest priority, pay exactly the configured fixed price).
+        "startTime": "A String", # Time when this deal becomes active in seconds since the epoch (GMT). If not set then this deal is active immediately upon creation.
+        "endTime": "A String", # Time when this deal stops being active in seconds since the epoch (GMT). If not set then this deal is valid until manually disabled by the publisher.
+        "id": "A String", # Unique identifier of this preferred deal.
+      },
+    ],
+    "kind": "adexchangeseller#preferredDeals", # Kind of list this is, in this case adexchangeseller#preferredDeals.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adexchangeseller_v2_0.accounts.reports.html b/docs/dyn/adexchangeseller_v2_0.accounts.reports.html
new file mode 100644
index 0000000..1ba8bdc
--- /dev/null
+++ b/docs/dyn/adexchangeseller_v2_0.accounts.reports.html
@@ -0,0 +1,157 @@
+<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="adexchangeseller_v2_0.html">Ad Exchange Seller API</a> . <a href="adexchangeseller_v2_0.accounts.html">accounts</a> . <a href="adexchangeseller_v2_0.accounts.reports.html">reports</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="adexchangeseller_v2_0.accounts.reports.saved.html">saved()</a></code>
+</p>
+<p class="firstline">Returns the saved Resource.</p>
+
+<p class="toc_element">
+  <code><a href="#generate">generate(accountId, startDate, endDate, sort=None, locale=None, metric=None, maxResults=None, dimension=None, startIndex=None, filter=None)</a></code></p>
+<p class="firstline">Generate an Ad Exchange 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, sort=None, locale=None, metric=None, maxResults=None, dimension=None, startIndex=None, filter=None)</a></code></p>
+<p class="firstline">Generate an Ad Exchange 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, sort=None, locale=None, metric=None, maxResults=None, dimension=None, startIndex=None, filter=None)</code>
+  <pre>Generate an Ad Exchange 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 which owns the generated 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)
+  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)
+  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)
+  maxResults: integer, The maximum number of rows of report data to return.
+  dimension: string, Dimensions to base the report on. (repeated)
+  startIndex: integer, Index of the first row of report data to return.
+  filter: string, Filters to be run on the report. (repeated)
+
+Returns:
+  An object of the form:
+
+    {
+    "kind": "adexchangeseller#report", # Kind this is, in this case adexchangeseller#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, sort=None, locale=None, metric=None, maxResults=None, dimension=None, startIndex=None, filter=None)</code>
+  <pre>Generate an Ad Exchange 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 which owns the generated 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)
+  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)
+  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)
+  maxResults: integer, The maximum number of rows of report data to return.
+  dimension: string, Dimensions to base the report on. (repeated)
+  startIndex: integer, Index of the first row of report data to return.
+  filter: string, Filters to be run on the report. (repeated)
+
+Returns:
+  The media object as a string.
+
+    </pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/adexchangeseller_v2_0.accounts.reports.saved.html b/docs/dyn/adexchangeseller_v2_0.accounts.reports.saved.html
new file mode 100644
index 0000000..c1f801a
--- /dev/null
+++ b/docs/dyn/adexchangeseller_v2_0.accounts.reports.saved.html
@@ -0,0 +1,168 @@
+<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="adexchangeseller_v2_0.html">Ad Exchange Seller API</a> . <a href="adexchangeseller_v2_0.accounts.html">accounts</a> . <a href="adexchangeseller_v2_0.accounts.reports.html">reports</a> . <a href="adexchangeseller_v2_0.accounts.reports.saved.html">saved</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#generate">generate(accountId, savedReportId, locale=None, maxResults=None, startIndex=None)</a></code></p>
+<p class="firstline">Generate an Ad Exchange report based on the saved report ID sent in the query parameters.</p>
+<p class="toc_element">
+  <code><a href="#list">list(accountId, pageToken=None, maxResults=None)</a></code></p>
+<p class="firstline">List all saved reports in this Ad Exchange 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="generate">generate(accountId, savedReportId, locale=None, maxResults=None, startIndex=None)</code>
+  <pre>Generate an Ad Exchange report based on the saved report ID sent in the query parameters.
+
+Args:
+  accountId: string, Account owning the saved report. (required)
+  savedReportId: string, The saved report to retrieve. (required)
+  locale: string, Optional locale to use for translating report output to a local language. Defaults to "en_US" if not specified.
+  maxResults: integer, The maximum number of rows of report data to return.
+  startIndex: integer, Index of the first row of report data to return.
+
+Returns:
+  An object of the form:
+
+    {
+    "kind": "adexchangeseller#report", # Kind this is, in this case adexchangeseller#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="list">list(accountId, pageToken=None, maxResults=None)</code>
+  <pre>List all saved reports in this Ad Exchange account.
+
+Args:
+  accountId: string, Account owning the saved reports. (required)
+  pageToken: string, A continuation token, used to page through saved reports. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response.
+  maxResults: integer, The maximum number of saved reports to include in the response, used for paging.
+
+Returns:
+  An object of the form:
+
+    {
+    "nextPageToken": "A String", # Continuation token used to page through saved reports. To retrieve the next page of results, set the next request's "pageToken" value to this.
+    "items": [ # The saved reports returned in this list response.
+      {
+        "kind": "adexchangeseller#savedReport", # Kind of resource this is, in this case adexchangeseller#savedReport.
+        "id": "A String", # Unique identifier of this saved report.
+        "name": "A String", # This saved report's name.
+      },
+    ],
+    "kind": "adexchangeseller#savedReports", # Kind of list this is, in this case adexchangeseller#savedReports.
+    "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/adexchangeseller_v2_0.accounts.urlchannels.html b/docs/dyn/adexchangeseller_v2_0.accounts.urlchannels.html
new file mode 100644
index 0000000..e42c89b
--- /dev/null
+++ b/docs/dyn/adexchangeseller_v2_0.accounts.urlchannels.html
@@ -0,0 +1,125 @@
+<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="adexchangeseller_v2_0.html">Ad Exchange Seller API</a> . <a href="adexchangeseller_v2_0.accounts.html">accounts</a> . <a href="adexchangeseller_v2_0.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 this Ad Exchange 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 this Ad Exchange 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": "adexchangeseller#urlChannel", # Kind of resource this is, in this case adexchangeseller#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": "adexchangeseller#urlChannels", # Kind of list this is, in this case adexchangeseller#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/adexchangeseller_v2_0.html b/docs/dyn/adexchangeseller_v2_0.html
new file mode 100644
index 0000000..8649935
--- /dev/null
+++ b/docs/dyn/adexchangeseller_v2_0.html
@@ -0,0 +1,82 @@
+<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="adexchangeseller_v2_0.html">Ad Exchange Seller API</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="adexchangeseller_v2_0.accounts.html">accounts()</a></code>
+</p>
+<p class="firstline">Returns the accounts Resource.</p>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/admin_reports_v1.activities.html b/docs/dyn/admin_reports_v1.activities.html
index 52cee37..46a342c 100644
--- a/docs/dyn/admin_reports_v1.activities.html
+++ b/docs/dyn/admin_reports_v1.activities.html
@@ -129,10 +129,16 @@
             "name": "A String", # Name of event.
             "parameters": [ # Parameter value pairs for various applications.
               {
-                "boolValue": True or False, # Boolean value of the parameter.
+                "name": "A String", # The name of the parameter.
                 "intValue": "A String", # Integral value of the parameter.
                 "value": "A String", # String value of the parameter.
-                "name": "A String", # The name of the parameter.
+                "boolValue": True or False, # Boolean value of the parameter.
+                "multiValue": [ # Multi-string value of the parameter.
+                  "A String",
+                ],
+                "multiIntValue": [ # Multi-int value of the parameter.
+                  "A String",
+                ],
               },
             ],
           },
diff --git a/docs/dyn/androidpublisher_v2.edits.html b/docs/dyn/androidpublisher_v2.edits.html
index b99b297..686793e 100644
--- a/docs/dyn/androidpublisher_v2.edits.html
+++ b/docs/dyn/androidpublisher_v2.edits.html
@@ -126,6 +126,9 @@
 <p class="toc_element">
   <code><a href="#insert">insert(packageName, body)</a></code></p>
 <p class="firstline">Creates a new edit for an app, populated with the app's current state.</p>
+<p class="toc_element">
+  <code><a href="#validate">validate(packageName, editId)</a></code></p>
+<p class="firstline">Checks that the edit can be successfully committed. The edit's changes are not applied to the live app.</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="commit">commit(packageName, editId)</code>
@@ -195,4 +198,21 @@
   }</pre>
 </div>
 
+<div class="method">
+    <code class="details" id="validate">validate(packageName, editId)</code>
+  <pre>Checks that the edit can be successfully committed. The edit's changes are not applied to the live app.
+
+Args:
+  packageName: string, Unique identifier for the Android app that is being updated; for example, "com.spiffygame". (required)
+  editId: string, Unique identifier for this edit. (required)
+
+Returns:
+  An object of the form:
+
+    { # Represents an edit of an app. An edit allows clients to make multiple changes before committing them in one operation.
+    "expiryTimeSeconds": "A String", # The time at which the edit will expire and will be no longer valid for use in any subsequent API calls (encoded as seconds since the Epoch).
+    "id": "A String", # The ID of the edit that can be used in subsequent API calls.
+  }</pre>
+</div>
+
 </body></html>
\ No newline at end of file
diff --git a/docs/dyn/androidpublisher_v2.inappproducts.html b/docs/dyn/androidpublisher_v2.inappproducts.html
index 174f006..3535839 100644
--- a/docs/dyn/androidpublisher_v2.inappproducts.html
+++ b/docs/dyn/androidpublisher_v2.inappproducts.html
@@ -113,6 +113,16 @@
               "sku": "A String", # The stock-keeping-unit (SKU) of the product, unique within an app.
               "status": "A String",
               "subscriptionPeriod": "A String", # The period of the subscription (if any), i.e. period at which payments must happen. Defined as ISO 8601 duration, i.e. "P1M" for 1 month period.
+              "season": { # Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions.
+                "start": { # Inclusive start date of the recurrence period.
+                  "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+                  "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+                },
+                "end": { # Inclusive end date of the recurrence period.
+                  "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+                  "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+                },
+              },
               "packageName": "A String", # The package name of the parent app.
               "listings": { # List of localized title and description data.
                 "a_key": { # The language of the localized data, as defined by BCP 47. i.e.: "en-US", "en-GB".
@@ -120,7 +130,7 @@
                   "title": "A String",
                 },
               },
-              "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D".
+              "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D". Seasonal subscriptions cannot have a trial period.
               "purchaseType": "A String", # Purchase type enum value. Unmodifiable after creation.
               "defaultLanguage": "A String", # The default language of the localized data, as defined by BCP 47. e.g. "en-US", "en-GB".
               "prices": { # Prices per buyer region. None of these prices should be zero. In-app products can never be free.
@@ -141,6 +151,16 @@
               "sku": "A String", # The stock-keeping-unit (SKU) of the product, unique within an app.
               "status": "A String",
               "subscriptionPeriod": "A String", # The period of the subscription (if any), i.e. period at which payments must happen. Defined as ISO 8601 duration, i.e. "P1M" for 1 month period.
+              "season": { # Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions.
+                "start": { # Inclusive start date of the recurrence period.
+                  "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+                  "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+                },
+                "end": { # Inclusive end date of the recurrence period.
+                  "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+                  "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+                },
+              },
               "packageName": "A String", # The package name of the parent app.
               "listings": { # List of localized title and description data.
                 "a_key": { # The language of the localized data, as defined by BCP 47. i.e.: "en-US", "en-GB".
@@ -148,7 +168,7 @@
                   "title": "A String",
                 },
               },
-              "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D".
+              "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D". Seasonal subscriptions cannot have a trial period.
               "purchaseType": "A String", # Purchase type enum value. Unmodifiable after creation.
               "defaultLanguage": "A String", # The default language of the localized data, as defined by BCP 47. e.g. "en-US", "en-GB".
               "prices": { # Prices per buyer region. None of these prices should be zero. In-app products can never be free.
@@ -180,6 +200,16 @@
               "sku": "A String", # The stock-keeping-unit (SKU) of the product, unique within an app.
               "status": "A String",
               "subscriptionPeriod": "A String", # The period of the subscription (if any), i.e. period at which payments must happen. Defined as ISO 8601 duration, i.e. "P1M" for 1 month period.
+              "season": { # Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions.
+                "start": { # Inclusive start date of the recurrence period.
+                  "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+                  "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+                },
+                "end": { # Inclusive end date of the recurrence period.
+                  "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+                  "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+                },
+              },
               "packageName": "A String", # The package name of the parent app.
               "listings": { # List of localized title and description data.
                 "a_key": { # The language of the localized data, as defined by BCP 47. i.e.: "en-US", "en-GB".
@@ -187,7 +217,7 @@
                   "title": "A String",
                 },
               },
-              "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D".
+              "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D". Seasonal subscriptions cannot have a trial period.
               "purchaseType": "A String", # Purchase type enum value. Unmodifiable after creation.
               "defaultLanguage": "A String", # The default language of the localized data, as defined by BCP 47. e.g. "en-US", "en-GB".
               "prices": { # Prices per buyer region. None of these prices should be zero. In-app products can never be free.
@@ -207,6 +237,16 @@
               "sku": "A String", # The stock-keeping-unit (SKU) of the product, unique within an app.
               "status": "A String",
               "subscriptionPeriod": "A String", # The period of the subscription (if any), i.e. period at which payments must happen. Defined as ISO 8601 duration, i.e. "P1M" for 1 month period.
+              "season": { # Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions.
+                "start": { # Inclusive start date of the recurrence period.
+                  "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+                  "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+                },
+                "end": { # Inclusive end date of the recurrence period.
+                  "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+                  "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+                },
+              },
               "packageName": "A String", # The package name of the parent app.
               "listings": { # List of localized title and description data.
                 "a_key": { # The language of the localized data, as defined by BCP 47. i.e.: "en-US", "en-GB".
@@ -214,7 +254,7 @@
                   "title": "A String",
                 },
               },
-              "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D".
+              "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D". Seasonal subscriptions cannot have a trial period.
               "purchaseType": "A String", # Purchase type enum value. Unmodifiable after creation.
               "defaultLanguage": "A String", # The default language of the localized data, as defined by BCP 47. e.g. "en-US", "en-GB".
               "prices": { # Prices per buyer region. None of these prices should be zero. In-app products can never be free.
@@ -260,6 +300,16 @@
       "sku": "A String", # The stock-keeping-unit (SKU) of the product, unique within an app.
       "status": "A String",
       "subscriptionPeriod": "A String", # The period of the subscription (if any), i.e. period at which payments must happen. Defined as ISO 8601 duration, i.e. "P1M" for 1 month period.
+      "season": { # Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions.
+        "start": { # Inclusive start date of the recurrence period.
+          "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+          "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+        },
+        "end": { # Inclusive end date of the recurrence period.
+          "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+          "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+        },
+      },
       "packageName": "A String", # The package name of the parent app.
       "listings": { # List of localized title and description data.
         "a_key": { # The language of the localized data, as defined by BCP 47. i.e.: "en-US", "en-GB".
@@ -267,7 +317,7 @@
           "title": "A String",
         },
       },
-      "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D".
+      "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D". Seasonal subscriptions cannot have a trial period.
       "purchaseType": "A String", # Purchase type enum value. Unmodifiable after creation.
       "defaultLanguage": "A String", # The default language of the localized data, as defined by BCP 47. e.g. "en-US", "en-GB".
       "prices": { # Prices per buyer region. None of these prices should be zero. In-app products can never be free.
@@ -296,6 +346,16 @@
     "sku": "A String", # The stock-keeping-unit (SKU) of the product, unique within an app.
     "status": "A String",
     "subscriptionPeriod": "A String", # The period of the subscription (if any), i.e. period at which payments must happen. Defined as ISO 8601 duration, i.e. "P1M" for 1 month period.
+    "season": { # Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions.
+      "start": { # Inclusive start date of the recurrence period.
+        "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+        "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+      },
+      "end": { # Inclusive end date of the recurrence period.
+        "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+        "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+      },
+    },
     "packageName": "A String", # The package name of the parent app.
     "listings": { # List of localized title and description data.
       "a_key": { # The language of the localized data, as defined by BCP 47. i.e.: "en-US", "en-GB".
@@ -303,7 +363,7 @@
         "title": "A String",
       },
     },
-    "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D".
+    "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D". Seasonal subscriptions cannot have a trial period.
     "purchaseType": "A String", # Purchase type enum value. Unmodifiable after creation.
     "defaultLanguage": "A String", # The default language of the localized data, as defined by BCP 47. e.g. "en-US", "en-GB".
     "prices": { # Prices per buyer region. None of these prices should be zero. In-app products can never be free.
@@ -327,6 +387,16 @@
       "sku": "A String", # The stock-keeping-unit (SKU) of the product, unique within an app.
       "status": "A String",
       "subscriptionPeriod": "A String", # The period of the subscription (if any), i.e. period at which payments must happen. Defined as ISO 8601 duration, i.e. "P1M" for 1 month period.
+      "season": { # Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions.
+        "start": { # Inclusive start date of the recurrence period.
+          "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+          "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+        },
+        "end": { # Inclusive end date of the recurrence period.
+          "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+          "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+        },
+      },
       "packageName": "A String", # The package name of the parent app.
       "listings": { # List of localized title and description data.
         "a_key": { # The language of the localized data, as defined by BCP 47. i.e.: "en-US", "en-GB".
@@ -334,7 +404,7 @@
           "title": "A String",
         },
       },
-      "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D".
+      "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D". Seasonal subscriptions cannot have a trial period.
       "purchaseType": "A String", # Purchase type enum value. Unmodifiable after creation.
       "defaultLanguage": "A String", # The default language of the localized data, as defined by BCP 47. e.g. "en-US", "en-GB".
       "prices": { # Prices per buyer region. None of these prices should be zero. In-app products can never be free.
@@ -379,6 +449,16 @@
           "sku": "A String", # The stock-keeping-unit (SKU) of the product, unique within an app.
           "status": "A String",
           "subscriptionPeriod": "A String", # The period of the subscription (if any), i.e. period at which payments must happen. Defined as ISO 8601 duration, i.e. "P1M" for 1 month period.
+          "season": { # Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions.
+            "start": { # Inclusive start date of the recurrence period.
+              "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+              "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+            },
+            "end": { # Inclusive end date of the recurrence period.
+              "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+              "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+            },
+          },
           "packageName": "A String", # The package name of the parent app.
           "listings": { # List of localized title and description data.
             "a_key": { # The language of the localized data, as defined by BCP 47. i.e.: "en-US", "en-GB".
@@ -386,7 +466,7 @@
               "title": "A String",
             },
           },
-          "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D".
+          "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D". Seasonal subscriptions cannot have a trial period.
           "purchaseType": "A String", # Purchase type enum value. Unmodifiable after creation.
           "defaultLanguage": "A String", # The default language of the localized data, as defined by BCP 47. e.g. "en-US", "en-GB".
           "prices": { # Prices per buyer region. None of these prices should be zero. In-app products can never be free.
@@ -418,6 +498,16 @@
     "sku": "A String", # The stock-keeping-unit (SKU) of the product, unique within an app.
     "status": "A String",
     "subscriptionPeriod": "A String", # The period of the subscription (if any), i.e. period at which payments must happen. Defined as ISO 8601 duration, i.e. "P1M" for 1 month period.
+    "season": { # Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions.
+      "start": { # Inclusive start date of the recurrence period.
+        "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+        "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+      },
+      "end": { # Inclusive end date of the recurrence period.
+        "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+        "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+      },
+    },
     "packageName": "A String", # The package name of the parent app.
     "listings": { # List of localized title and description data.
       "a_key": { # The language of the localized data, as defined by BCP 47. i.e.: "en-US", "en-GB".
@@ -425,7 +515,7 @@
         "title": "A String",
       },
     },
-    "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D".
+    "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D". Seasonal subscriptions cannot have a trial period.
     "purchaseType": "A String", # Purchase type enum value. Unmodifiable after creation.
     "defaultLanguage": "A String", # The default language of the localized data, as defined by BCP 47. e.g. "en-US", "en-GB".
     "prices": { # Prices per buyer region. None of these prices should be zero. In-app products can never be free.
@@ -449,6 +539,16 @@
       "sku": "A String", # The stock-keeping-unit (SKU) of the product, unique within an app.
       "status": "A String",
       "subscriptionPeriod": "A String", # The period of the subscription (if any), i.e. period at which payments must happen. Defined as ISO 8601 duration, i.e. "P1M" for 1 month period.
+      "season": { # Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions.
+        "start": { # Inclusive start date of the recurrence period.
+          "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+          "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+        },
+        "end": { # Inclusive end date of the recurrence period.
+          "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+          "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+        },
+      },
       "packageName": "A String", # The package name of the parent app.
       "listings": { # List of localized title and description data.
         "a_key": { # The language of the localized data, as defined by BCP 47. i.e.: "en-US", "en-GB".
@@ -456,7 +556,7 @@
           "title": "A String",
         },
       },
-      "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D".
+      "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D". Seasonal subscriptions cannot have a trial period.
       "purchaseType": "A String", # Purchase type enum value. Unmodifiable after creation.
       "defaultLanguage": "A String", # The default language of the localized data, as defined by BCP 47. e.g. "en-US", "en-GB".
       "prices": { # Prices per buyer region. None of these prices should be zero. In-app products can never be free.
@@ -486,6 +586,16 @@
     "sku": "A String", # The stock-keeping-unit (SKU) of the product, unique within an app.
     "status": "A String",
     "subscriptionPeriod": "A String", # The period of the subscription (if any), i.e. period at which payments must happen. Defined as ISO 8601 duration, i.e. "P1M" for 1 month period.
+    "season": { # Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions.
+      "start": { # Inclusive start date of the recurrence period.
+        "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+        "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+      },
+      "end": { # Inclusive end date of the recurrence period.
+        "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+        "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+      },
+    },
     "packageName": "A String", # The package name of the parent app.
     "listings": { # List of localized title and description data.
       "a_key": { # The language of the localized data, as defined by BCP 47. i.e.: "en-US", "en-GB".
@@ -493,7 +603,7 @@
         "title": "A String",
       },
     },
-    "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D".
+    "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D". Seasonal subscriptions cannot have a trial period.
     "purchaseType": "A String", # Purchase type enum value. Unmodifiable after creation.
     "defaultLanguage": "A String", # The default language of the localized data, as defined by BCP 47. e.g. "en-US", "en-GB".
     "prices": { # Prices per buyer region. None of these prices should be zero. In-app products can never be free.
@@ -517,6 +627,16 @@
       "sku": "A String", # The stock-keeping-unit (SKU) of the product, unique within an app.
       "status": "A String",
       "subscriptionPeriod": "A String", # The period of the subscription (if any), i.e. period at which payments must happen. Defined as ISO 8601 duration, i.e. "P1M" for 1 month period.
+      "season": { # Definition of a season for a seasonal subscription. Can be defined only for yearly subscriptions.
+        "start": { # Inclusive start date of the recurrence period.
+          "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+          "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+        },
+        "end": { # Inclusive end date of the recurrence period.
+          "day": 42, # Day of a month, value in [1, 31] range. Valid range depends on the specified month.
+          "month": 42, # Month of a year. e.g. 1 = JAN, 2 = FEB etc.
+        },
+      },
       "packageName": "A String", # The package name of the parent app.
       "listings": { # List of localized title and description data.
         "a_key": { # The language of the localized data, as defined by BCP 47. i.e.: "en-US", "en-GB".
@@ -524,7 +644,7 @@
           "title": "A String",
         },
       },
-      "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D".
+      "trialPeriod": "A String", # Trial duration (if any) of the subscription, defined as ISO 8601. i.e. "P10D" means an initial period of 10 days during which ownership is granted prior to any payment. Acceptable values are between "P7D" and "P999D". Seasonal subscriptions cannot have a trial period.
       "purchaseType": "A String", # Purchase type enum value. Unmodifiable after creation.
       "defaultLanguage": "A String", # The default language of the localized data, as defined by BCP 47. e.g. "en-US", "en-GB".
       "prices": { # Prices per buyer region. None of these prices should be zero. In-app products can never be free.
diff --git a/docs/dyn/androidpublisher_v2.purchases.subscriptions.html b/docs/dyn/androidpublisher_v2.purchases.subscriptions.html
index 80700cb..d0b12fc 100644
--- a/docs/dyn/androidpublisher_v2.purchases.subscriptions.html
+++ b/docs/dyn/androidpublisher_v2.purchases.subscriptions.html
@@ -78,8 +78,17 @@
   <code><a href="#cancel">cancel(packageName, subscriptionId, token)</a></code></p>
 <p class="firstline">Cancels a user's subscription purchase. The subscription remains valid until its expiration time.</p>
 <p class="toc_element">
+  <code><a href="#defer">defer(packageName, subscriptionId, token, body)</a></code></p>
+<p class="firstline">Defers a user's subscription purchase until a specified future expiration time.</p>
+<p class="toc_element">
   <code><a href="#get">get(packageName, subscriptionId, token)</a></code></p>
 <p class="firstline">Checks whether a user's subscription purchase is valid and returns its expiry time.</p>
+<p class="toc_element">
+  <code><a href="#refund">refund(packageName, subscriptionId, token)</a></code></p>
+<p class="firstline">Refunds a user's subscription purchase, but the subscription remains valid until its expiration time and it will continue to recur.</p>
+<p class="toc_element">
+  <code><a href="#revoke">revoke(packageName, subscriptionId, token)</a></code></p>
+<p class="firstline">Refunds and immediately revokes a user's subscription purchase. Access to the subscription will be terminated immediately and it will stop recurring.</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="cancel">cancel(packageName, subscriptionId, token)</code>
@@ -93,6 +102,33 @@
 </div>
 
 <div class="method">
+    <code class="details" id="defer">defer(packageName, subscriptionId, token, body)</code>
+  <pre>Defers a user's subscription purchase until a specified future expiration time.
+
+Args:
+  packageName: string, The package name of the application for which this subscription was purchased (for example, 'com.some.thing'). (required)
+  subscriptionId: string, The purchased subscription ID (for example, 'monthly001'). (required)
+  token: string, The token provided to the user's device when the subscription was purchased. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{
+    "deferralInfo": { # A SubscriptionDeferralInfo contains the data needed to defer a subscription purchase to a future expiry time. # The information about the new desired expiry time for the subscription.
+      "expectedExpiryTimeMillis": "A String", # The expected expiry time for the subscription. If the current expiry time for the subscription is not the value specified here, the deferral will not occur.
+      "desiredExpiryTimeMillis": "A String", # The desired next expiry time for the subscription in milliseconds since Epoch. The given time must be after the current expiry time for the subscription.
+    },
+  }
+
+
+Returns:
+  An object of the form:
+
+    {
+    "newExpiryTimeMillis": "A String", # The new expiry time for the subscription in milliseconds since the Epoch.
+  }</pre>
+</div>
+
+<div class="method">
     <code class="details" id="get">get(packageName, subscriptionId, token)</code>
   <pre>Checks whether a user's subscription purchase is valid and returns its expiry time.
 
@@ -112,4 +148,26 @@
   }</pre>
 </div>
 
+<div class="method">
+    <code class="details" id="refund">refund(packageName, subscriptionId, token)</code>
+  <pre>Refunds a user's subscription purchase, but the subscription remains valid until its expiration time and it will continue to recur.
+
+Args:
+  packageName: string, The package name of the application for which this subscription was purchased (for example, 'com.some.thing'). (required)
+  subscriptionId: string, The purchased subscription ID (for example, 'monthly001'). (required)
+  token: string, The token provided to the user's device when the subscription was purchased. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="revoke">revoke(packageName, subscriptionId, token)</code>
+  <pre>Refunds and immediately revokes a user's subscription purchase. Access to the subscription will be terminated immediately and it will stop recurring.
+
+Args:
+  packageName: string, The package name of the application for which this subscription was purchased (for example, 'com.some.thing'). (required)
+  subscriptionId: string, The purchased subscription ID (for example, 'monthly001'). (required)
+  token: string, The token provided to the user's device when the subscription was purchased. (required)
+</pre>
+</div>
+
 </body></html>
\ No newline at end of file
diff --git a/docs/dyn/autoscaler_v1beta2.autoscalers.html b/docs/dyn/autoscaler_v1beta2.autoscalers.html
index 216880d..4196c36 100644
--- a/docs/dyn/autoscaler_v1beta2.autoscalers.html
+++ b/docs/dyn/autoscaler_v1beta2.autoscalers.html
@@ -166,6 +166,7 @@
   An object of the form:
 
     { # Cloud Autoscaler resource.
+      "kind": "compute#autoscaler", # Type of resource.
       "description": "A String", # An optional textual description of the resource provided by the client.
       "autoscalingPolicy": { # Cloud Autoscaler policy. # Configuration parameters for autoscaling algorithm.
         "maxNumReplicas": 42, # The maximum number of replicas that the Autoscaler can scale up to.
@@ -176,6 +177,7 @@
         "customMetricUtilizations": [ # Configuration parameters of autoscaling based on custom metric.
           { # Custom utilization metric policy.
             "metric": "A String", # Identifier of the metric. It should be a Cloud Monitoring metric. The metric can not have negative values. The metric should be an utilization metric (increasing number of VMs handling requests x times should reduce average value of the metric roughly x times). For example you could use: compute.googleapis.com/instance/network/received_bytes_count.
+            "utilizationTargetType": "A String", # Defines type in which utilization_target is expressed.
             "utilizationTarget": 3.14, # Target value of the metric which Autoscaler should maintain. Must be a positive value.
           },
         ],
@@ -203,6 +205,7 @@
     The object takes the form of:
 
 { # Cloud Autoscaler resource.
+    "kind": "compute#autoscaler", # Type of resource.
     "description": "A String", # An optional textual description of the resource provided by the client.
     "autoscalingPolicy": { # Cloud Autoscaler policy. # Configuration parameters for autoscaling algorithm.
       "maxNumReplicas": 42, # The maximum number of replicas that the Autoscaler can scale up to.
@@ -213,6 +216,7 @@
       "customMetricUtilizations": [ # Configuration parameters of autoscaling based on custom metric.
         { # Custom utilization metric policy.
           "metric": "A String", # Identifier of the metric. It should be a Cloud Monitoring metric. The metric can not have negative values. The metric should be an utilization metric (increasing number of VMs handling requests x times should reduce average value of the metric roughly x times). For example you could use: compute.googleapis.com/instance/network/received_bytes_count.
+          "utilizationTargetType": "A String", # Defines type in which utilization_target is expressed.
           "utilizationTarget": 3.14, # Target value of the metric which Autoscaler should maintain. Must be a positive value.
         },
       ],
@@ -295,6 +299,7 @@
     "nextPageToken": "A String", # [Output only] A token used to continue a truncated list request.
     "items": [ # Autoscaler resources.
       { # Cloud Autoscaler resource.
+          "kind": "compute#autoscaler", # Type of resource.
           "description": "A String", # An optional textual description of the resource provided by the client.
           "autoscalingPolicy": { # Cloud Autoscaler policy. # Configuration parameters for autoscaling algorithm.
             "maxNumReplicas": 42, # The maximum number of replicas that the Autoscaler can scale up to.
@@ -305,6 +310,7 @@
             "customMetricUtilizations": [ # Configuration parameters of autoscaling based on custom metric.
               { # Custom utilization metric policy.
                 "metric": "A String", # Identifier of the metric. It should be a Cloud Monitoring metric. The metric can not have negative values. The metric should be an utilization metric (increasing number of VMs handling requests x times should reduce average value of the metric roughly x times). For example you could use: compute.googleapis.com/instance/network/received_bytes_count.
+                "utilizationTargetType": "A String", # Defines type in which utilization_target is expressed.
                 "utilizationTarget": 3.14, # Target value of the metric which Autoscaler should maintain. Must be a positive value.
               },
             ],
@@ -320,6 +326,7 @@
           "name": "A String", # Name of the Autoscaler resource. Must be unique per project and zone.
         },
     ],
+    "kind": "compute#autoscalerList", # Type of resource.
   }</pre>
 </div>
 
@@ -349,6 +356,7 @@
     The object takes the form of:
 
 { # Cloud Autoscaler resource.
+    "kind": "compute#autoscaler", # Type of resource.
     "description": "A String", # An optional textual description of the resource provided by the client.
     "autoscalingPolicy": { # Cloud Autoscaler policy. # Configuration parameters for autoscaling algorithm.
       "maxNumReplicas": 42, # The maximum number of replicas that the Autoscaler can scale up to.
@@ -359,6 +367,7 @@
       "customMetricUtilizations": [ # Configuration parameters of autoscaling based on custom metric.
         { # Custom utilization metric policy.
           "metric": "A String", # Identifier of the metric. It should be a Cloud Monitoring metric. The metric can not have negative values. The metric should be an utilization metric (increasing number of VMs handling requests x times should reduce average value of the metric roughly x times). For example you could use: compute.googleapis.com/instance/network/received_bytes_count.
+          "utilizationTargetType": "A String", # Defines type in which utilization_target is expressed.
           "utilizationTarget": 3.14, # Target value of the metric which Autoscaler should maintain. Must be a positive value.
         },
       ],
@@ -435,6 +444,7 @@
     The object takes the form of:
 
 { # Cloud Autoscaler resource.
+    "kind": "compute#autoscaler", # Type of resource.
     "description": "A String", # An optional textual description of the resource provided by the client.
     "autoscalingPolicy": { # Cloud Autoscaler policy. # Configuration parameters for autoscaling algorithm.
       "maxNumReplicas": 42, # The maximum number of replicas that the Autoscaler can scale up to.
@@ -445,6 +455,7 @@
       "customMetricUtilizations": [ # Configuration parameters of autoscaling based on custom metric.
         { # Custom utilization metric policy.
           "metric": "A String", # Identifier of the metric. It should be a Cloud Monitoring metric. The metric can not have negative values. The metric should be an utilization metric (increasing number of VMs handling requests x times should reduce average value of the metric roughly x times). For example you could use: compute.googleapis.com/instance/network/received_bytes_count.
+          "utilizationTargetType": "A String", # Defines type in which utilization_target is expressed.
           "utilizationTarget": 3.14, # Target value of the metric which Autoscaler should maintain. Must be a positive value.
         },
       ],
diff --git a/docs/dyn/bigquery_v2.datasets.html b/docs/dyn/bigquery_v2.datasets.html
index 7e18a37..cbe2fa7 100644
--- a/docs/dyn/bigquery_v2.datasets.html
+++ b/docs/dyn/bigquery_v2.datasets.html
@@ -128,11 +128,16 @@
       "creationTime": "A String", # [Output-only] The time when this dataset was created, in milliseconds since the epoch.
       "access": [ # [Optional] An array of objects that define dataset access for one or more entities. You can set this property when inserting or updating a dataset in order to control who is allowed to access the data. If unspecified at dataset creation time, BigQuery adds default dataset access for the following entities: access.specialGroup: projectReaders; access.role: READER; access.specialGroup: projectWriters; access.role: WRITER; access.specialGroup: projectOwners; access.role: OWNER; access.userByEmail: [dataset creator email]; access.role: OWNER;
         {
-          "specialGroup": "A String", # [Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.
           "domain": "A String", # [Pick one] A domain to grant access to. Any users signed in with the domain specified will be granted the specified access. Example: "example.com".
-          "role": "A String", # [Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.
-          "groupByEmail": "A String", # [Pick one] An email address of a Google Group to grant access to.
           "userByEmail": "A String", # [Pick one] An email address of a user to grant access to. For example: fred@example.com.
+          "specialGroup": "A String", # [Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.
+          "groupByEmail": "A String", # [Pick one] An email address of a Google Group to grant access to.
+          "role": "A String", # [Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.
+          "view": { # [Pick one] A view from a different dataset to grant access to. Queries executed against that view will have read access to tables in this dataset. The role field is not required when this field is set. If that view is updated by any user, access to the view needs to be granted again via an update operation.
+            "projectId": "A String", # [Required] ID of the project billed for storage of the table.
+            "tableId": "A String", # [Required] ID of the table.
+            "datasetId": "A String", # [Required] ID of the dataset containing the table.
+          },
         },
       ],
       "etag": "A String", # [Output-only] A hash of the resource.
@@ -162,11 +167,16 @@
     "creationTime": "A String", # [Output-only] The time when this dataset was created, in milliseconds since the epoch.
     "access": [ # [Optional] An array of objects that define dataset access for one or more entities. You can set this property when inserting or updating a dataset in order to control who is allowed to access the data. If unspecified at dataset creation time, BigQuery adds default dataset access for the following entities: access.specialGroup: projectReaders; access.role: READER; access.specialGroup: projectWriters; access.role: WRITER; access.specialGroup: projectOwners; access.role: OWNER; access.userByEmail: [dataset creator email]; access.role: OWNER;
       {
-        "specialGroup": "A String", # [Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.
         "domain": "A String", # [Pick one] A domain to grant access to. Any users signed in with the domain specified will be granted the specified access. Example: "example.com".
-        "role": "A String", # [Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.
-        "groupByEmail": "A String", # [Pick one] An email address of a Google Group to grant access to.
         "userByEmail": "A String", # [Pick one] An email address of a user to grant access to. For example: fred@example.com.
+        "specialGroup": "A String", # [Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.
+        "groupByEmail": "A String", # [Pick one] An email address of a Google Group to grant access to.
+        "role": "A String", # [Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.
+        "view": { # [Pick one] A view from a different dataset to grant access to. Queries executed against that view will have read access to tables in this dataset. The role field is not required when this field is set. If that view is updated by any user, access to the view needs to be granted again via an update operation.
+          "projectId": "A String", # [Required] ID of the project billed for storage of the table.
+          "tableId": "A String", # [Required] ID of the table.
+          "datasetId": "A String", # [Required] ID of the dataset containing the table.
+        },
       },
     ],
     "etag": "A String", # [Output-only] A hash of the resource.
@@ -190,11 +200,16 @@
       "creationTime": "A String", # [Output-only] The time when this dataset was created, in milliseconds since the epoch.
       "access": [ # [Optional] An array of objects that define dataset access for one or more entities. You can set this property when inserting or updating a dataset in order to control who is allowed to access the data. If unspecified at dataset creation time, BigQuery adds default dataset access for the following entities: access.specialGroup: projectReaders; access.role: READER; access.specialGroup: projectWriters; access.role: WRITER; access.specialGroup: projectOwners; access.role: OWNER; access.userByEmail: [dataset creator email]; access.role: OWNER;
         {
-          "specialGroup": "A String", # [Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.
           "domain": "A String", # [Pick one] A domain to grant access to. Any users signed in with the domain specified will be granted the specified access. Example: "example.com".
-          "role": "A String", # [Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.
-          "groupByEmail": "A String", # [Pick one] An email address of a Google Group to grant access to.
           "userByEmail": "A String", # [Pick one] An email address of a user to grant access to. For example: fred@example.com.
+          "specialGroup": "A String", # [Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.
+          "groupByEmail": "A String", # [Pick one] An email address of a Google Group to grant access to.
+          "role": "A String", # [Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.
+          "view": { # [Pick one] A view from a different dataset to grant access to. Queries executed against that view will have read access to tables in this dataset. The role field is not required when this field is set. If that view is updated by any user, access to the view needs to be granted again via an update operation.
+            "projectId": "A String", # [Required] ID of the project billed for storage of the table.
+            "tableId": "A String", # [Required] ID of the table.
+            "datasetId": "A String", # [Required] ID of the dataset containing the table.
+          },
         },
       ],
       "etag": "A String", # [Output-only] A hash of the resource.
@@ -270,11 +285,16 @@
     "creationTime": "A String", # [Output-only] The time when this dataset was created, in milliseconds since the epoch.
     "access": [ # [Optional] An array of objects that define dataset access for one or more entities. You can set this property when inserting or updating a dataset in order to control who is allowed to access the data. If unspecified at dataset creation time, BigQuery adds default dataset access for the following entities: access.specialGroup: projectReaders; access.role: READER; access.specialGroup: projectWriters; access.role: WRITER; access.specialGroup: projectOwners; access.role: OWNER; access.userByEmail: [dataset creator email]; access.role: OWNER;
       {
-        "specialGroup": "A String", # [Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.
         "domain": "A String", # [Pick one] A domain to grant access to. Any users signed in with the domain specified will be granted the specified access. Example: "example.com".
-        "role": "A String", # [Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.
-        "groupByEmail": "A String", # [Pick one] An email address of a Google Group to grant access to.
         "userByEmail": "A String", # [Pick one] An email address of a user to grant access to. For example: fred@example.com.
+        "specialGroup": "A String", # [Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.
+        "groupByEmail": "A String", # [Pick one] An email address of a Google Group to grant access to.
+        "role": "A String", # [Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.
+        "view": { # [Pick one] A view from a different dataset to grant access to. Queries executed against that view will have read access to tables in this dataset. The role field is not required when this field is set. If that view is updated by any user, access to the view needs to be granted again via an update operation.
+          "projectId": "A String", # [Required] ID of the project billed for storage of the table.
+          "tableId": "A String", # [Required] ID of the table.
+          "datasetId": "A String", # [Required] ID of the dataset containing the table.
+        },
       },
     ],
     "etag": "A String", # [Output-only] A hash of the resource.
@@ -298,11 +318,16 @@
       "creationTime": "A String", # [Output-only] The time when this dataset was created, in milliseconds since the epoch.
       "access": [ # [Optional] An array of objects that define dataset access for one or more entities. You can set this property when inserting or updating a dataset in order to control who is allowed to access the data. If unspecified at dataset creation time, BigQuery adds default dataset access for the following entities: access.specialGroup: projectReaders; access.role: READER; access.specialGroup: projectWriters; access.role: WRITER; access.specialGroup: projectOwners; access.role: OWNER; access.userByEmail: [dataset creator email]; access.role: OWNER;
         {
-          "specialGroup": "A String", # [Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.
           "domain": "A String", # [Pick one] A domain to grant access to. Any users signed in with the domain specified will be granted the specified access. Example: "example.com".
-          "role": "A String", # [Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.
-          "groupByEmail": "A String", # [Pick one] An email address of a Google Group to grant access to.
           "userByEmail": "A String", # [Pick one] An email address of a user to grant access to. For example: fred@example.com.
+          "specialGroup": "A String", # [Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.
+          "groupByEmail": "A String", # [Pick one] An email address of a Google Group to grant access to.
+          "role": "A String", # [Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.
+          "view": { # [Pick one] A view from a different dataset to grant access to. Queries executed against that view will have read access to tables in this dataset. The role field is not required when this field is set. If that view is updated by any user, access to the view needs to be granted again via an update operation.
+            "projectId": "A String", # [Required] ID of the project billed for storage of the table.
+            "tableId": "A String", # [Required] ID of the table.
+            "datasetId": "A String", # [Required] ID of the dataset containing the table.
+          },
         },
       ],
       "etag": "A String", # [Output-only] A hash of the resource.
@@ -333,11 +358,16 @@
     "creationTime": "A String", # [Output-only] The time when this dataset was created, in milliseconds since the epoch.
     "access": [ # [Optional] An array of objects that define dataset access for one or more entities. You can set this property when inserting or updating a dataset in order to control who is allowed to access the data. If unspecified at dataset creation time, BigQuery adds default dataset access for the following entities: access.specialGroup: projectReaders; access.role: READER; access.specialGroup: projectWriters; access.role: WRITER; access.specialGroup: projectOwners; access.role: OWNER; access.userByEmail: [dataset creator email]; access.role: OWNER;
       {
-        "specialGroup": "A String", # [Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.
         "domain": "A String", # [Pick one] A domain to grant access to. Any users signed in with the domain specified will be granted the specified access. Example: "example.com".
-        "role": "A String", # [Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.
-        "groupByEmail": "A String", # [Pick one] An email address of a Google Group to grant access to.
         "userByEmail": "A String", # [Pick one] An email address of a user to grant access to. For example: fred@example.com.
+        "specialGroup": "A String", # [Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.
+        "groupByEmail": "A String", # [Pick one] An email address of a Google Group to grant access to.
+        "role": "A String", # [Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.
+        "view": { # [Pick one] A view from a different dataset to grant access to. Queries executed against that view will have read access to tables in this dataset. The role field is not required when this field is set. If that view is updated by any user, access to the view needs to be granted again via an update operation.
+          "projectId": "A String", # [Required] ID of the project billed for storage of the table.
+          "tableId": "A String", # [Required] ID of the table.
+          "datasetId": "A String", # [Required] ID of the dataset containing the table.
+        },
       },
     ],
     "etag": "A String", # [Output-only] A hash of the resource.
@@ -361,11 +391,16 @@
       "creationTime": "A String", # [Output-only] The time when this dataset was created, in milliseconds since the epoch.
       "access": [ # [Optional] An array of objects that define dataset access for one or more entities. You can set this property when inserting or updating a dataset in order to control who is allowed to access the data. If unspecified at dataset creation time, BigQuery adds default dataset access for the following entities: access.specialGroup: projectReaders; access.role: READER; access.specialGroup: projectWriters; access.role: WRITER; access.specialGroup: projectOwners; access.role: OWNER; access.userByEmail: [dataset creator email]; access.role: OWNER;
         {
-          "specialGroup": "A String", # [Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.
           "domain": "A String", # [Pick one] A domain to grant access to. Any users signed in with the domain specified will be granted the specified access. Example: "example.com".
-          "role": "A String", # [Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.
-          "groupByEmail": "A String", # [Pick one] An email address of a Google Group to grant access to.
           "userByEmail": "A String", # [Pick one] An email address of a user to grant access to. For example: fred@example.com.
+          "specialGroup": "A String", # [Pick one] A special group to grant access to. Possible values include: projectOwners: Owners of the enclosing project. projectReaders: Readers of the enclosing project. projectWriters: Writers of the enclosing project. allAuthenticatedUsers: All authenticated BigQuery users.
+          "groupByEmail": "A String", # [Pick one] An email address of a Google Group to grant access to.
+          "role": "A String", # [Required] Describes the rights granted to the user specified by the other member of the access object. The following string values are supported: READER, WRITER, OWNER.
+          "view": { # [Pick one] A view from a different dataset to grant access to. Queries executed against that view will have read access to tables in this dataset. The role field is not required when this field is set. If that view is updated by any user, access to the view needs to be granted again via an update operation.
+            "projectId": "A String", # [Required] ID of the project billed for storage of the table.
+            "tableId": "A String", # [Required] ID of the table.
+            "datasetId": "A String", # [Required] ID of the dataset containing the table.
+          },
         },
       ],
       "etag": "A String", # [Output-only] A hash of the resource.
diff --git a/docs/dyn/bigquery_v2.jobs.html b/docs/dyn/bigquery_v2.jobs.html
index 562a7e0..9d6da22 100644
--- a/docs/dyn/bigquery_v2.jobs.html
+++ b/docs/dyn/bigquery_v2.jobs.html
@@ -85,7 +85,7 @@
 <p class="firstline">Starts a new asynchronous job.</p>
 <p class="toc_element">
   <code><a href="#list">list(projectId, projection=None, stateFilter=None, pageToken=None, allUsers=None, maxResults=None)</a></code></p>
-<p class="firstline">Lists all the Jobs in the specified project that were started by the user.</p>
+<p class="firstline">Lists all the Jobs in the specified project that were started by the user. The job list returns in reverse chronological order of when the jobs were created, starting with the most recent job created.</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>
@@ -623,7 +623,7 @@
 
 <div class="method">
     <code class="details" id="list">list(projectId, projection=None, stateFilter=None, pageToken=None, allUsers=None, maxResults=None)</code>
-  <pre>Lists all the Jobs in the specified project that were started by the user.
+  <pre>Lists all the Jobs in the specified project that were started by the user. The job list returns in reverse chronological order of when the jobs were created, starting with the most recent job created.
 
 Args:
   projectId: string, Project ID of the jobs to list (required)
@@ -842,7 +842,7 @@
     },
     "maxResults": 42, # [Optional] The maximum number of rows of data to return per page of results. Setting this flag to a small value such as 1000 and then paging through results might improve reliability when the query result set is large. In addition to this limit, responses are also limited to 10 MB. By default, there is no maximum row count, and only the byte limit applies.
     "query": "A String", # [Required] A query string, following the BigQuery query syntax, of the query to execute. Example: "SELECT count(f1) FROM [myProjectId:myDatasetId.myTableId]".
-    "preserveNulls": True or False, # [Deprecated] If set to false, maps null values in the query response to the column's default value. Only specify if you have older code that can not handle null values in the query response. The default value is true. This flag is deprecated and will be ignored in a future version of BigQuery.
+    "preserveNulls": True or False, # [Deprecated] This property is deprecated.
   }
 
 
diff --git a/docs/dyn/calendar_v3.events.html b/docs/dyn/calendar_v3.events.html
index 1dffb09..0721a68 100644
--- a/docs/dyn/calendar_v3.events.html
+++ b/docs/dyn/calendar_v3.events.html
@@ -167,18 +167,18 @@
               # - "declined" - The attendee has declined the invitation.
               # - "tentative" - The attendee has tentatively accepted the invitation.
               # - "accepted" - The attendee has accepted the invitation.
-          "self": True or False, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
+          "self": false, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
           "id": "A String", # The attendee's Profile ID, if available.
-          "additionalGuests": 42, # Number of additional guests. Optional. The default is 0.
-          "resource": True or False, # Whether the attendee is a resource. Read-only. The default is False.
+          "additionalGuests": 0, # Number of additional guests. Optional. The default is 0.
+          "resource": false, # Whether the attendee is a resource. Read-only. The default is False.
           "organizer": True or False, # Whether the attendee is the organizer of the event. Read-only. The default is False.
-          "optional": True or False, # Whether this is an optional attendee. Optional. The default is False.
+          "optional": false, # Whether this is an optional attendee. Optional. The default is False.
           "email": "A String", # The attendee's email address, if available. This field must be present when adding an attendee.
         },
       ],
       "start": { # The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "htmlLink": "A String", # An absolute link to this event in the Google Calendar Web UI. Read-only.
@@ -231,7 +231,7 @@
       "guestsCanModify": false, # Whether attendees other than the organizer can modify the event. Optional. The default is False.
       "end": { # The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "attendeesOmitted": false, # Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.
@@ -255,7 +255,7 @@
       "guestsCanSeeOtherGuests": true, # Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.
       "originalStartTime": { # For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "guestsCanInviteOthers": true, # Whether attendees other than the organizer can invite others to the event. Optional. The default is True.
@@ -303,18 +303,18 @@
             # - "declined" - The attendee has declined the invitation.
             # - "tentative" - The attendee has tentatively accepted the invitation.
             # - "accepted" - The attendee has accepted the invitation.
-        "self": True or False, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
+        "self": false, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
         "id": "A String", # The attendee's Profile ID, if available.
-        "additionalGuests": 42, # Number of additional guests. Optional. The default is 0.
-        "resource": True or False, # Whether the attendee is a resource. Read-only. The default is False.
+        "additionalGuests": 0, # Number of additional guests. Optional. The default is 0.
+        "resource": false, # Whether the attendee is a resource. Read-only. The default is False.
         "organizer": True or False, # Whether the attendee is the organizer of the event. Read-only. The default is False.
-        "optional": True or False, # Whether this is an optional attendee. Optional. The default is False.
+        "optional": false, # Whether this is an optional attendee. Optional. The default is False.
         "email": "A String", # The attendee's email address, if available. This field must be present when adding an attendee.
       },
     ],
     "start": { # The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance.
       "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
       "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
     },
     "htmlLink": "A String", # An absolute link to this event in the Google Calendar Web UI. Read-only.
@@ -367,7 +367,7 @@
     "guestsCanModify": false, # Whether attendees other than the organizer can modify the event. Optional. The default is False.
     "end": { # The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance.
       "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
       "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
     },
     "attendeesOmitted": false, # Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.
@@ -391,7 +391,7 @@
     "guestsCanSeeOtherGuests": true, # Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.
     "originalStartTime": { # For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable.
       "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
       "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
     },
     "guestsCanInviteOthers": true, # Whether attendees other than the organizer can invite others to the event. Optional. The default is True.
@@ -433,18 +433,18 @@
               # - "declined" - The attendee has declined the invitation.
               # - "tentative" - The attendee has tentatively accepted the invitation.
               # - "accepted" - The attendee has accepted the invitation.
-          "self": True or False, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
+          "self": false, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
           "id": "A String", # The attendee's Profile ID, if available.
-          "additionalGuests": 42, # Number of additional guests. Optional. The default is 0.
-          "resource": True or False, # Whether the attendee is a resource. Read-only. The default is False.
+          "additionalGuests": 0, # Number of additional guests. Optional. The default is 0.
+          "resource": false, # Whether the attendee is a resource. Read-only. The default is False.
           "organizer": True or False, # Whether the attendee is the organizer of the event. Read-only. The default is False.
-          "optional": True or False, # Whether this is an optional attendee. Optional. The default is False.
+          "optional": false, # Whether this is an optional attendee. Optional. The default is False.
           "email": "A String", # The attendee's email address, if available. This field must be present when adding an attendee.
         },
       ],
       "start": { # The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "htmlLink": "A String", # An absolute link to this event in the Google Calendar Web UI. Read-only.
@@ -497,7 +497,7 @@
       "guestsCanModify": false, # Whether attendees other than the organizer can modify the event. Optional. The default is False.
       "end": { # The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "attendeesOmitted": false, # Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.
@@ -521,7 +521,7 @@
       "guestsCanSeeOtherGuests": true, # Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.
       "originalStartTime": { # For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "guestsCanInviteOthers": true, # Whether attendees other than the organizer can invite others to the event. Optional. The default is True.
@@ -569,18 +569,18 @@
             # - "declined" - The attendee has declined the invitation.
             # - "tentative" - The attendee has tentatively accepted the invitation.
             # - "accepted" - The attendee has accepted the invitation.
-        "self": True or False, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
+        "self": false, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
         "id": "A String", # The attendee's Profile ID, if available.
-        "additionalGuests": 42, # Number of additional guests. Optional. The default is 0.
-        "resource": True or False, # Whether the attendee is a resource. Read-only. The default is False.
+        "additionalGuests": 0, # Number of additional guests. Optional. The default is 0.
+        "resource": false, # Whether the attendee is a resource. Read-only. The default is False.
         "organizer": True or False, # Whether the attendee is the organizer of the event. Read-only. The default is False.
-        "optional": True or False, # Whether this is an optional attendee. Optional. The default is False.
+        "optional": false, # Whether this is an optional attendee. Optional. The default is False.
         "email": "A String", # The attendee's email address, if available. This field must be present when adding an attendee.
       },
     ],
     "start": { # The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance.
       "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
       "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
     },
     "htmlLink": "A String", # An absolute link to this event in the Google Calendar Web UI. Read-only.
@@ -633,7 +633,7 @@
     "guestsCanModify": false, # Whether attendees other than the organizer can modify the event. Optional. The default is False.
     "end": { # The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance.
       "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
       "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
     },
     "attendeesOmitted": false, # Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.
@@ -657,7 +657,7 @@
     "guestsCanSeeOtherGuests": true, # Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.
     "originalStartTime": { # For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable.
       "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
       "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
     },
     "guestsCanInviteOthers": true, # Whether attendees other than the organizer can invite others to the event. Optional. The default is True.
@@ -701,18 +701,18 @@
               # - "declined" - The attendee has declined the invitation.
               # - "tentative" - The attendee has tentatively accepted the invitation.
               # - "accepted" - The attendee has accepted the invitation.
-          "self": True or False, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
+          "self": false, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
           "id": "A String", # The attendee's Profile ID, if available.
-          "additionalGuests": 42, # Number of additional guests. Optional. The default is 0.
-          "resource": True or False, # Whether the attendee is a resource. Read-only. The default is False.
+          "additionalGuests": 0, # Number of additional guests. Optional. The default is 0.
+          "resource": false, # Whether the attendee is a resource. Read-only. The default is False.
           "organizer": True or False, # Whether the attendee is the organizer of the event. Read-only. The default is False.
-          "optional": True or False, # Whether this is an optional attendee. Optional. The default is False.
+          "optional": false, # Whether this is an optional attendee. Optional. The default is False.
           "email": "A String", # The attendee's email address, if available. This field must be present when adding an attendee.
         },
       ],
       "start": { # The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "htmlLink": "A String", # An absolute link to this event in the Google Calendar Web UI. Read-only.
@@ -765,7 +765,7 @@
       "guestsCanModify": false, # Whether attendees other than the organizer can modify the event. Optional. The default is False.
       "end": { # The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "attendeesOmitted": false, # Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.
@@ -789,7 +789,7 @@
       "guestsCanSeeOtherGuests": true, # Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.
       "originalStartTime": { # For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "guestsCanInviteOthers": true, # Whether attendees other than the organizer can invite others to the event. Optional. The default is True.
@@ -862,18 +862,18 @@
                   # - "declined" - The attendee has declined the invitation.
                   # - "tentative" - The attendee has tentatively accepted the invitation.
                   # - "accepted" - The attendee has accepted the invitation.
-              "self": True or False, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
+              "self": false, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
               "id": "A String", # The attendee's Profile ID, if available.
-              "additionalGuests": 42, # Number of additional guests. Optional. The default is 0.
-              "resource": True or False, # Whether the attendee is a resource. Read-only. The default is False.
+              "additionalGuests": 0, # Number of additional guests. Optional. The default is 0.
+              "resource": false, # Whether the attendee is a resource. Read-only. The default is False.
               "organizer": True or False, # Whether the attendee is the organizer of the event. Read-only. The default is False.
-              "optional": True or False, # Whether this is an optional attendee. Optional. The default is False.
+              "optional": false, # Whether this is an optional attendee. Optional. The default is False.
               "email": "A String", # The attendee's email address, if available. This field must be present when adding an attendee.
             },
           ],
           "start": { # The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance.
             "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-            "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+            "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
             "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
           },
           "htmlLink": "A String", # An absolute link to this event in the Google Calendar Web UI. Read-only.
@@ -926,7 +926,7 @@
           "guestsCanModify": false, # Whether attendees other than the organizer can modify the event. Optional. The default is False.
           "end": { # The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance.
             "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-            "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+            "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
             "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
           },
           "attendeesOmitted": false, # Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.
@@ -950,7 +950,7 @@
           "guestsCanSeeOtherGuests": true, # Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.
           "originalStartTime": { # For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable.
             "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-            "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+            "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
             "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
           },
           "guestsCanInviteOthers": true, # Whether attendees other than the organizer can invite others to the event. Optional. The default is True.
@@ -1073,18 +1073,18 @@
                   # - "declined" - The attendee has declined the invitation.
                   # - "tentative" - The attendee has tentatively accepted the invitation.
                   # - "accepted" - The attendee has accepted the invitation.
-              "self": True or False, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
+              "self": false, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
               "id": "A String", # The attendee's Profile ID, if available.
-              "additionalGuests": 42, # Number of additional guests. Optional. The default is 0.
-              "resource": True or False, # Whether the attendee is a resource. Read-only. The default is False.
+              "additionalGuests": 0, # Number of additional guests. Optional. The default is 0.
+              "resource": false, # Whether the attendee is a resource. Read-only. The default is False.
               "organizer": True or False, # Whether the attendee is the organizer of the event. Read-only. The default is False.
-              "optional": True or False, # Whether this is an optional attendee. Optional. The default is False.
+              "optional": false, # Whether this is an optional attendee. Optional. The default is False.
               "email": "A String", # The attendee's email address, if available. This field must be present when adding an attendee.
             },
           ],
           "start": { # The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance.
             "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-            "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+            "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
             "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
           },
           "htmlLink": "A String", # An absolute link to this event in the Google Calendar Web UI. Read-only.
@@ -1137,7 +1137,7 @@
           "guestsCanModify": false, # Whether attendees other than the organizer can modify the event. Optional. The default is False.
           "end": { # The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance.
             "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-            "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+            "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
             "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
           },
           "attendeesOmitted": false, # Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.
@@ -1161,7 +1161,7 @@
           "guestsCanSeeOtherGuests": true, # Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.
           "originalStartTime": { # For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable.
             "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-            "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+            "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
             "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
           },
           "guestsCanInviteOthers": true, # Whether attendees other than the organizer can invite others to the event. Optional. The default is True.
@@ -1240,18 +1240,18 @@
               # - "declined" - The attendee has declined the invitation.
               # - "tentative" - The attendee has tentatively accepted the invitation.
               # - "accepted" - The attendee has accepted the invitation.
-          "self": True or False, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
+          "self": false, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
           "id": "A String", # The attendee's Profile ID, if available.
-          "additionalGuests": 42, # Number of additional guests. Optional. The default is 0.
-          "resource": True or False, # Whether the attendee is a resource. Read-only. The default is False.
+          "additionalGuests": 0, # Number of additional guests. Optional. The default is 0.
+          "resource": false, # Whether the attendee is a resource. Read-only. The default is False.
           "organizer": True or False, # Whether the attendee is the organizer of the event. Read-only. The default is False.
-          "optional": True or False, # Whether this is an optional attendee. Optional. The default is False.
+          "optional": false, # Whether this is an optional attendee. Optional. The default is False.
           "email": "A String", # The attendee's email address, if available. This field must be present when adding an attendee.
         },
       ],
       "start": { # The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "htmlLink": "A String", # An absolute link to this event in the Google Calendar Web UI. Read-only.
@@ -1304,7 +1304,7 @@
       "guestsCanModify": false, # Whether attendees other than the organizer can modify the event. Optional. The default is False.
       "end": { # The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "attendeesOmitted": false, # Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.
@@ -1328,7 +1328,7 @@
       "guestsCanSeeOtherGuests": true, # Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.
       "originalStartTime": { # For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "guestsCanInviteOthers": true, # Whether attendees other than the organizer can invite others to the event. Optional. The default is True.
@@ -1377,18 +1377,18 @@
             # - "declined" - The attendee has declined the invitation.
             # - "tentative" - The attendee has tentatively accepted the invitation.
             # - "accepted" - The attendee has accepted the invitation.
-        "self": True or False, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
+        "self": false, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
         "id": "A String", # The attendee's Profile ID, if available.
-        "additionalGuests": 42, # Number of additional guests. Optional. The default is 0.
-        "resource": True or False, # Whether the attendee is a resource. Read-only. The default is False.
+        "additionalGuests": 0, # Number of additional guests. Optional. The default is 0.
+        "resource": false, # Whether the attendee is a resource. Read-only. The default is False.
         "organizer": True or False, # Whether the attendee is the organizer of the event. Read-only. The default is False.
-        "optional": True or False, # Whether this is an optional attendee. Optional. The default is False.
+        "optional": false, # Whether this is an optional attendee. Optional. The default is False.
         "email": "A String", # The attendee's email address, if available. This field must be present when adding an attendee.
       },
     ],
     "start": { # The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance.
       "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
       "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
     },
     "htmlLink": "A String", # An absolute link to this event in the Google Calendar Web UI. Read-only.
@@ -1441,7 +1441,7 @@
     "guestsCanModify": false, # Whether attendees other than the organizer can modify the event. Optional. The default is False.
     "end": { # The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance.
       "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
       "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
     },
     "attendeesOmitted": false, # Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.
@@ -1465,7 +1465,7 @@
     "guestsCanSeeOtherGuests": true, # Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.
     "originalStartTime": { # For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable.
       "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
       "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
     },
     "guestsCanInviteOthers": true, # Whether attendees other than the organizer can invite others to the event. Optional. The default is True.
@@ -1510,18 +1510,18 @@
               # - "declined" - The attendee has declined the invitation.
               # - "tentative" - The attendee has tentatively accepted the invitation.
               # - "accepted" - The attendee has accepted the invitation.
-          "self": True or False, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
+          "self": false, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
           "id": "A String", # The attendee's Profile ID, if available.
-          "additionalGuests": 42, # Number of additional guests. Optional. The default is 0.
-          "resource": True or False, # Whether the attendee is a resource. Read-only. The default is False.
+          "additionalGuests": 0, # Number of additional guests. Optional. The default is 0.
+          "resource": false, # Whether the attendee is a resource. Read-only. The default is False.
           "organizer": True or False, # Whether the attendee is the organizer of the event. Read-only. The default is False.
-          "optional": True or False, # Whether this is an optional attendee. Optional. The default is False.
+          "optional": false, # Whether this is an optional attendee. Optional. The default is False.
           "email": "A String", # The attendee's email address, if available. This field must be present when adding an attendee.
         },
       ],
       "start": { # The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "htmlLink": "A String", # An absolute link to this event in the Google Calendar Web UI. Read-only.
@@ -1574,7 +1574,7 @@
       "guestsCanModify": false, # Whether attendees other than the organizer can modify the event. Optional. The default is False.
       "end": { # The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "attendeesOmitted": false, # Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.
@@ -1598,7 +1598,7 @@
       "guestsCanSeeOtherGuests": true, # Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.
       "originalStartTime": { # For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "guestsCanInviteOthers": true, # Whether attendees other than the organizer can invite others to the event. Optional. The default is True.
@@ -1649,18 +1649,18 @@
               # - "declined" - The attendee has declined the invitation.
               # - "tentative" - The attendee has tentatively accepted the invitation.
               # - "accepted" - The attendee has accepted the invitation.
-          "self": True or False, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
+          "self": false, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
           "id": "A String", # The attendee's Profile ID, if available.
-          "additionalGuests": 42, # Number of additional guests. Optional. The default is 0.
-          "resource": True or False, # Whether the attendee is a resource. Read-only. The default is False.
+          "additionalGuests": 0, # Number of additional guests. Optional. The default is 0.
+          "resource": false, # Whether the attendee is a resource. Read-only. The default is False.
           "organizer": True or False, # Whether the attendee is the organizer of the event. Read-only. The default is False.
-          "optional": True or False, # Whether this is an optional attendee. Optional. The default is False.
+          "optional": false, # Whether this is an optional attendee. Optional. The default is False.
           "email": "A String", # The attendee's email address, if available. This field must be present when adding an attendee.
         },
       ],
       "start": { # The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "htmlLink": "A String", # An absolute link to this event in the Google Calendar Web UI. Read-only.
@@ -1713,7 +1713,7 @@
       "guestsCanModify": false, # Whether attendees other than the organizer can modify the event. Optional. The default is False.
       "end": { # The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "attendeesOmitted": false, # Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.
@@ -1737,7 +1737,7 @@
       "guestsCanSeeOtherGuests": true, # Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.
       "originalStartTime": { # For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "guestsCanInviteOthers": true, # Whether attendees other than the organizer can invite others to the event. Optional. The default is True.
@@ -1786,18 +1786,18 @@
             # - "declined" - The attendee has declined the invitation.
             # - "tentative" - The attendee has tentatively accepted the invitation.
             # - "accepted" - The attendee has accepted the invitation.
-        "self": True or False, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
+        "self": false, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
         "id": "A String", # The attendee's Profile ID, if available.
-        "additionalGuests": 42, # Number of additional guests. Optional. The default is 0.
-        "resource": True or False, # Whether the attendee is a resource. Read-only. The default is False.
+        "additionalGuests": 0, # Number of additional guests. Optional. The default is 0.
+        "resource": false, # Whether the attendee is a resource. Read-only. The default is False.
         "organizer": True or False, # Whether the attendee is the organizer of the event. Read-only. The default is False.
-        "optional": True or False, # Whether this is an optional attendee. Optional. The default is False.
+        "optional": false, # Whether this is an optional attendee. Optional. The default is False.
         "email": "A String", # The attendee's email address, if available. This field must be present when adding an attendee.
       },
     ],
     "start": { # The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance.
       "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
       "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
     },
     "htmlLink": "A String", # An absolute link to this event in the Google Calendar Web UI. Read-only.
@@ -1850,7 +1850,7 @@
     "guestsCanModify": false, # Whether attendees other than the organizer can modify the event. Optional. The default is False.
     "end": { # The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance.
       "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
       "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
     },
     "attendeesOmitted": false, # Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.
@@ -1874,7 +1874,7 @@
     "guestsCanSeeOtherGuests": true, # Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.
     "originalStartTime": { # For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable.
       "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+      "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
       "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
     },
     "guestsCanInviteOthers": true, # Whether attendees other than the organizer can invite others to the event. Optional. The default is True.
@@ -1919,18 +1919,18 @@
               # - "declined" - The attendee has declined the invitation.
               # - "tentative" - The attendee has tentatively accepted the invitation.
               # - "accepted" - The attendee has accepted the invitation.
-          "self": True or False, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
+          "self": false, # Whether this entry represents the calendar on which this copy of the event appears. Read-only. The default is False.
           "id": "A String", # The attendee's Profile ID, if available.
-          "additionalGuests": 42, # Number of additional guests. Optional. The default is 0.
-          "resource": True or False, # Whether the attendee is a resource. Read-only. The default is False.
+          "additionalGuests": 0, # Number of additional guests. Optional. The default is 0.
+          "resource": false, # Whether the attendee is a resource. Read-only. The default is False.
           "organizer": True or False, # Whether the attendee is the organizer of the event. Read-only. The default is False.
-          "optional": True or False, # Whether this is an optional attendee. Optional. The default is False.
+          "optional": false, # Whether this is an optional attendee. Optional. The default is False.
           "email": "A String", # The attendee's email address, if available. This field must be present when adding an attendee.
         },
       ],
       "start": { # The (inclusive) start time of the event. For a recurring event, this is the start time of the first instance.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "htmlLink": "A String", # An absolute link to this event in the Google Calendar Web UI. Read-only.
@@ -1983,7 +1983,7 @@
       "guestsCanModify": false, # Whether attendees other than the organizer can modify the event. Optional. The default is False.
       "end": { # The (exclusive) end time of the event. For a recurring event, this is the end time of the first instance.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "attendeesOmitted": false, # Whether attendees may have been omitted from the event's representation. When retrieving an event, this may be due to a restriction specified by the maxAttendee query parameter. When updating an event, this can be used to only update the participant's response. Optional. The default is False.
@@ -2007,7 +2007,7 @@
       "guestsCanSeeOtherGuests": true, # Whether attendees other than the organizer can see who the event's attendees are. Optional. The default is True.
       "originalStartTime": { # For an instance of a recurring event, this is the time at which this event would start according to the recurrence data in the recurring event identified by recurringEventId. Immutable.
         "date": "A String", # The date, in the format "yyyy-mm-dd", if this is an all-day event.
-        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). Optional. The default is the time zone of the calendar.
+        "timeZone": "A String", # The name of the time zone in which the time is specified (e.g. "Europe/Zurich"). For recurring events this field is required and specifies the time zone in which the recurrence is expanded. For single events this field is optional and indicates a custom time zone for the event start/end.
         "dateTime": "A String", # The time, as a combined date-time value (formatted according to RFC 3339). A time zone offset is required unless a time zone is explicitly specified in timeZone.
       },
       "guestsCanInviteOthers": true, # Whether attendees other than the organizer can invite others to the event. Optional. The default is True.
diff --git a/docs/dyn/civicinfo_v2.divisions.html b/docs/dyn/civicinfo_v2.divisions.html
new file mode 100644
index 0000000..7916da8
--- /dev/null
+++ b/docs/dyn/civicinfo_v2.divisions.html
@@ -0,0 +1,105 @@
+<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="civicinfo_v2.html">Google Civic Information API</a> . <a href="civicinfo_v2.divisions.html">divisions</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#search">search(query=None)</a></code></p>
+<p class="firstline">Searches for political divisions by their natural name or OCD ID.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="search">search(query=None)</code>
+  <pre>Searches for political divisions by their natural name or OCD ID.
+
+Args:
+  query: string, The search query. Queries can cover any parts of a OCD ID or a human readable division name. All words given in the query are treated as required patterns. In addition to that, most query operators of the Apache Lucene library are supported. See http://lucene.apache.org/core/2_9_4/queryparsersyntax.html
+
+Returns:
+  An object of the form:
+
+    { # The result of a division search query.
+    "kind": "civicinfo#divisionSearchResponse", # Identifies what kind of resource this is. Value: the fixed string "civicinfo#divisionSearchResponse".
+    "results": [
+      { # Represents a political geographic division that matches the requested query.
+        "ocdId": "A String", # The unique Open Civic Data identifier for this division.
+        "name": "A String", # The name of the division.
+        "aliases": [ # Other Open Civic Data identifiers that refer to the same division -- for example, those that refer to other political divisions whose boundaries are defined to be coterminous with this one. For example, ocd-division/country:us/state:wy will include an alias of ocd-division/country:us/state:wy/cd:1, since Wyoming has only one Congressional district.
+          "A String",
+        ],
+      },
+    ],
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/civicinfo_v2.elections.html b/docs/dyn/civicinfo_v2.elections.html
new file mode 100644
index 0000000..68c1f80
--- /dev/null
+++ b/docs/dyn/civicinfo_v2.elections.html
@@ -0,0 +1,300 @@
+<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="civicinfo_v2.html">Google Civic Information API</a> . <a href="civicinfo_v2.elections.html">elections</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#electionQuery">electionQuery()</a></code></p>
+<p class="firstline">List of available elections to query.</p>
+<p class="toc_element">
+  <code><a href="#voterInfoQuery">voterInfoQuery(address, electionId=None, officialOnly=None)</a></code></p>
+<p class="firstline">Looks up information relevant to a voter based on the voter's registered address.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="electionQuery">electionQuery()</code>
+  <pre>List of available elections to query.
+
+Args:
+
+Returns:
+  An object of the form:
+
+    { # The list of elections available for this version of the API.
+    "kind": "civicinfo#electionsQueryResponse", # Identifies what kind of resource this is. Value: the fixed string "civicinfo#electionsQueryResponse".
+    "elections": [ # A list of available elections
+      { # Information about the election that was queried.
+        "electionDay": "A String", # Day of the election in YYYY-MM-DD format.
+        "id": "A String", # The unique ID of this election.
+        "name": "A String", # A displayable name for the election.
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="voterInfoQuery">voterInfoQuery(address, electionId=None, officialOnly=None)</code>
+  <pre>Looks up information relevant to a voter based on the voter's registered address.
+
+Args:
+  address: string, The registered address of the voter to look up. (required)
+  electionId: string, The unique ID of the election to look up. A list of election IDs can be obtained at https://www.googleapis.com/civicinfo/{version}/elections
+  officialOnly: boolean, If set to true, only data from official state sources will be returned.
+
+Returns:
+  An object of the form:
+
+    { # The result of a voter info lookup query.
+    "earlyVoteSites": [ # Locations where the voter is eligible to vote early, prior to election day
+      { # A location where a voter can vote. This may be an early vote site or an election day voting location.
+        "startDate": "A String", # The first date that this early vote site may be used. This field is not populated for polling locations.
+        "pollingHours": "A String", # A description of when this location is open.
+        "endDate": "A String", # The last date that this early vote site may be used. This field is not populated for polling locations.
+        "name": "A String", # The name of the early vote site. This field is not populated for polling locations.
+        "notes": "A String", # Notes about this location (e.g. accessibility ramp or entrance to use)
+        "voterServices": "A String", # The services provided by this early vote site. This field is not populated for polling locations.
+        "sources": [ # A list of sources for this location. If multiple sources are listed the data has been aggregated from those sources.
+          { # Contains information about the data source for the element containing it.
+            "official": True or False, # Whether this data comes from an official government source.
+            "name": "A String", # The name of the data source.
+          },
+        ],
+        "address": { # A simple representation of an address. # The address of the location
+          "city": "A String", # The city or town for the address.
+          "zip": "A String", # The US Postal Zip Code of the address.
+          "line3": "A String", # The third line of the address, if needed.
+          "line2": "A String", # The second line the address, if needed.
+          "line1": "A String", # The street name and number of this address.
+          "locationName": "A String", # The name of the location.
+          "state": "A String", # The US two letter state abbreviation of the address.
+        },
+        "id": "A String", # An ID for this object. IDs may change in future requests and should not be cached. Access to this field requires special access that can be requested from the Request more link on the Quotas page.
+      },
+    ],
+    "kind": "civicinfo#voterInfoResponse", # Identifies what kind of resource this is. Value: the fixed string "civicinfo#voterInfoResponse".
+    "otherElections": [ # If no election ID was specified in the query, and there was more than one election with data for the given voter, this will contain information about the other elections that could apply.
+      { # Information about the election that was queried.
+        "electionDay": "A String", # Day of the election in YYYY-MM-DD format.
+        "id": "A String", # The unique ID of this election.
+        "name": "A String", # A displayable name for the election.
+      },
+    ],
+    "normalizedInput": { # A simple representation of an address. # The normalized version of the requested address
+      "city": "A String", # The city or town for the address.
+      "zip": "A String", # The US Postal Zip Code of the address.
+      "line3": "A String", # The third line of the address, if needed.
+      "line2": "A String", # The second line the address, if needed.
+      "line1": "A String", # The street name and number of this address.
+      "locationName": "A String", # The name of the location.
+      "state": "A String", # The US two letter state abbreviation of the address.
+    },
+    "state": [ # Local Election Information for the state that the voter votes in. For the US, there will only be one element in this array.
+      { # Describes information about a regional election administrative area.
+        "local_jurisdiction": # Object with schema name: AdministrationRegion # The city or county that provides election information for this voter. This object can have the same elements as state.
+        "sources": [ # A list of sources for this area. If multiple sources are listed the data has been aggregated from those sources.
+          { # Contains information about the data source for the element containing it.
+            "official": True or False, # Whether this data comes from an official government source.
+            "name": "A String", # The name of the data source.
+          },
+        ],
+        "electionAdministrationBody": { # Information about an election administrative body (e.g. County Board of Elections). # The election administration body for this area.
+          "absenteeVotingInfoUrl": "A String", # A URL provided by this administrative body for information on absentee voting.
+          "votingLocationFinderUrl": "A String", # A URL provided by this administrative body for looking up where to vote.
+          "name": "A String", # The name of this election administrative body.
+          "electionRegistrationConfirmationUrl": "A String", # A URL provided by this administrative body for confirming that the voter is registered to vote.
+          "correspondenceAddress": { # A simple representation of an address. # The mailing address of this administrative body.
+            "city": "A String", # The city or town for the address.
+            "zip": "A String", # The US Postal Zip Code of the address.
+            "line3": "A String", # The third line of the address, if needed.
+            "line2": "A String", # The second line the address, if needed.
+            "line1": "A String", # The street name and number of this address.
+            "locationName": "A String", # The name of the location.
+            "state": "A String", # The US two letter state abbreviation of the address.
+          },
+          "electionRegistrationUrl": "A String", # A URL provided by this administrative body for looking up how to register to vote.
+          "electionOfficials": [ # The election officials for this election administrative body.
+            { # Information about individual election officials.
+              "title": "A String", # The title of the election official.
+              "emailAddress": "A String", # The email address of the election official.
+              "name": "A String", # The full name of the election official.
+              "officePhoneNumber": "A String", # The office phone number of the election official.
+              "faxNumber": "A String", # The fax number of the election official.
+            },
+          ],
+          "electionInfoUrl": "A String", # A URL provided by this administrative body for looking up general election information.
+          "electionRulesUrl": "A String", # A URL provided by this administrative body describing election rules to the voter.
+          "voter_services": [ # A description of the services this administrative body may provide.
+            "A String",
+          ],
+          "ballotInfoUrl": "A String", # A URL provided by this administrative body to give contest information to the voter.
+          "hoursOfOperation": "A String", # A description of the hours of operation for this administrative body.
+          "physicalAddress": { # A simple representation of an address. # The physical address of this administrative body.
+            "city": "A String", # The city or town for the address.
+            "zip": "A String", # The US Postal Zip Code of the address.
+            "line3": "A String", # The third line of the address, if needed.
+            "line2": "A String", # The second line the address, if needed.
+            "line1": "A String", # The street name and number of this address.
+            "locationName": "A String", # The name of the location.
+            "state": "A String", # The US two letter state abbreviation of the address.
+          },
+        },
+        "name": "A String", # The name of the jurisdiction.
+        "id": "A String", # An ID for this object. IDs may change in future requests and should not be cached. Access to this field requires special access that can be requested from the Request more link on the Quotas page.
+      },
+    ],
+    "precinctId": "A String",
+    "election": { # Information about the election that was queried. # The election that was queried.
+      "electionDay": "A String", # Day of the election in YYYY-MM-DD format.
+      "id": "A String", # The unique ID of this election.
+      "name": "A String", # A displayable name for the election.
+    },
+    "pollingLocations": [ # Locations where the voter is eligible to vote on election day. For states with mail-in voting only, these locations will be nearby drop box locations. Drop box locations are free to the voter and may be used instead of placing the ballot in the mail.
+      { # A location where a voter can vote. This may be an early vote site or an election day voting location.
+        "startDate": "A String", # The first date that this early vote site may be used. This field is not populated for polling locations.
+        "pollingHours": "A String", # A description of when this location is open.
+        "endDate": "A String", # The last date that this early vote site may be used. This field is not populated for polling locations.
+        "name": "A String", # The name of the early vote site. This field is not populated for polling locations.
+        "notes": "A String", # Notes about this location (e.g. accessibility ramp or entrance to use)
+        "voterServices": "A String", # The services provided by this early vote site. This field is not populated for polling locations.
+        "sources": [ # A list of sources for this location. If multiple sources are listed the data has been aggregated from those sources.
+          { # Contains information about the data source for the element containing it.
+            "official": True or False, # Whether this data comes from an official government source.
+            "name": "A String", # The name of the data source.
+          },
+        ],
+        "address": { # A simple representation of an address. # The address of the location
+          "city": "A String", # The city or town for the address.
+          "zip": "A String", # The US Postal Zip Code of the address.
+          "line3": "A String", # The third line of the address, if needed.
+          "line2": "A String", # The second line the address, if needed.
+          "line1": "A String", # The street name and number of this address.
+          "locationName": "A String", # The name of the location.
+          "state": "A String", # The US two letter state abbreviation of the address.
+        },
+        "id": "A String", # An ID for this object. IDs may change in future requests and should not be cached. Access to this field requires special access that can be requested from the Request more link on the Quotas page.
+      },
+    ],
+    "contests": [ # Contests that will appear on the voter's ballot
+      { # Information about a contest that appears on a voter's ballot.
+        "numberVotingFor": "A String", # The number of candidates that a voter may vote for in this contest.
+        "office": "A String", # The name of the office for this contest.
+        "district": { # Describes the geographic scope of a contest. # Information about the electoral district that this contest is in.
+          "scope": "A String", # The geographic scope of this district. If unspecified the district's geography is not known. One of: national, statewide, congressional, stateUpper, stateLower, countywide, judicial, schoolBoard, cityWide, township, countyCouncil, cityCouncil, ward, special
+          "id": "A String", # An identifier for this district, relative to its scope. For example, the 34th State Senate district would have id "34" and a scope of stateUpper.
+          "name": "A String", # The name of the district.
+        },
+        "level": [ # The levels of government of the office for this contest. There may be more than one in cases where a jurisdiction effectively acts at two different levels of government; for example, the mayor of the District of Columbia acts at "locality" level, but also effectively at both "administrative-area-2" and "administrative-area-1".
+          "A String",
+        ],
+        "type": "A String", # The type of contest. Usually this will be 'General', 'Primary', or 'Run-off' for contests with candidates. For referenda this will be 'Referendum'.
+        "ballotPlacement": "A String", # A number specifying the position of this contest on the voter's ballot.
+        "sources": [ # A list of sources for this contest. If multiple sources are listed, the data has been aggregated from those sources.
+          { # Contains information about the data source for the element containing it.
+            "official": True or False, # Whether this data comes from an official government source.
+            "name": "A String", # The name of the data source.
+          },
+        ],
+        "referendumSubtitle": "A String", # A brief description of the referendum. This field is only populated for contests of type 'Referendum'.
+        "primaryParty": "A String", # If this is a partisan election, the name of the party it is for.
+        "candidates": [ # The candidate choices for this contest.
+          { # Information about a candidate running for elected office.
+            "name": "A String", # The candidate's name.
+            "photoUrl": "A String", # A URL for a photo of the candidate.
+            "candidateUrl": "A String", # The URL for the candidate's campaign web site.
+            "channels": [ # A list of known (social) media channels for this candidate.
+              { # A social media or web channel for a candidate.
+                "type": "A String", # The type of channel. The following is a list of types of channels, but is not exhaustive. More channel types may be added at a later time. One of: GooglePlus, YouTube, Facebook, Twitter
+                "id": "A String", # The unique public identifier for the candidate's channel.
+              },
+            ],
+            "phone": "A String", # The voice phone number for the candidate's campaign office.
+            "orderOnBallot": "A String", # The order the candidate appears on the ballot for this contest.
+            "party": "A String", # The full name of the party the candidate is a member of.
+            "email": "A String", # The email address for the candidate's campaign.
+          },
+        ],
+        "roles": [ # The roles which this office fulfills.
+          "A String",
+        ],
+        "numberElected": "A String", # The number of candidates that will be elected to office in this contest.
+        "referendumUrl": "A String", # A link to the referendum. This field is only populated for contests of type 'Referendum'.
+        "electorateSpecifications": "A String", # A description of any additional eligibility requirements for voting in this contest.
+        "referendumTitle": "A String", # The title of the referendum (e.g. 'Proposition 42'). This field is only populated for contests of type 'Referendum'.
+        "id": "A String", # An ID for this object. IDs may change in future requests and should not be cached. Access to this field requires special access that can be requested from the Request more link on the Quotas page.
+        "special": "A String", # "Yes" or "No" depending on whether this a contest being held outside the normal election cycle.
+      },
+    ],
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/civicinfo_v2.html b/docs/dyn/civicinfo_v2.html
new file mode 100644
index 0000000..177c087
--- /dev/null
+++ b/docs/dyn/civicinfo_v2.html
@@ -0,0 +1,92 @@
+<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="civicinfo_v2.html">Google Civic Information API</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="civicinfo_v2.divisions.html">divisions()</a></code>
+</p>
+<p class="firstline">Returns the divisions Resource.</p>
+
+<p class="toc_element">
+  <code><a href="civicinfo_v2.elections.html">elections()</a></code>
+</p>
+<p class="firstline">Returns the elections Resource.</p>
+
+<p class="toc_element">
+  <code><a href="civicinfo_v2.representatives.html">representatives()</a></code>
+</p>
+<p class="firstline">Returns the representatives Resource.</p>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/civicinfo_v2.representatives.html b/docs/dyn/civicinfo_v2.representatives.html
new file mode 100644
index 0000000..0f5574d
--- /dev/null
+++ b/docs/dyn/civicinfo_v2.representatives.html
@@ -0,0 +1,310 @@
+<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="civicinfo_v2.html">Google Civic Information API</a> . <a href="civicinfo_v2.representatives.html">representatives</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#representativeInfoByAddress">representativeInfoByAddress(levels=None, roles=None, address=None, includeOffices=None)</a></code></p>
+<p class="firstline">Looks up political geography and representative information for a single address.</p>
+<p class="toc_element">
+  <code><a href="#representativeInfoByDivision">representativeInfoByDivision(ocdId, recursive=None, roles=None, levels=None)</a></code></p>
+<p class="firstline">Looks up representative information for a single geographic division.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="representativeInfoByAddress">representativeInfoByAddress(levels=None, roles=None, address=None, includeOffices=None)</code>
+  <pre>Looks up political geography and representative information for a single address.
+
+Args:
+  levels: string, A list of office levels to filter by. Only offices that serve at least one of these levels will be returned. Divisions that don't contain a matching office will not be returned. (repeated)
+    Allowed values
+      administrativeArea1 - 
+      administrativeArea2 - 
+      country - 
+      international - 
+      locality - 
+      regional - 
+      special - 
+      subLocality1 - 
+      subLocality2 - 
+  roles: string, A list of office roles to filter by. Only offices fulfilling one of these roles will be returned. Divisions that don't contain a matching office will not be returned. (repeated)
+    Allowed values
+      deputyHeadOfGovernment - 
+      executiveCouncil - 
+      governmentOfficer - 
+      headOfGovernment - 
+      headOfState - 
+      highestCourtJudge - 
+      judge - 
+      legislatorLowerBody - 
+      legislatorUpperBody - 
+      schoolBoard - 
+      specialPurposeOfficer - 
+  address: string, The address to look up. May only be specified if the field ocdId is not given in the URL.
+  includeOffices: boolean, Whether to return information about offices and officials. If false, only the top-level district information will be returned.
+
+Returns:
+  An object of the form:
+
+    { # The result of a representative info lookup query.
+    "divisions": { # Political geographic divisions that contain the requested address.
+      "a_key": { # Describes a political geography. # The unique Open Civic Data identifier for this division.
+        "officeIndices": [ # List of indices in the offices array, one for each office elected from this division. Will only be present if includeOffices was true (or absent) in the request.
+          42,
+        ],
+        "alsoKnownAs": [ # Any other valid OCD IDs that refer to the same division.
+            #
+            # Because OCD IDs are meant to be human-readable and at least somewhat predictable, there are occasionally several identifiers for a single division. These identifiers are defined to be equivalent to one another, and one is always indicated as the primary identifier. The primary identifier will be returned in ocd_id above, and any other equivalent valid identifiers will be returned in this list.
+            #
+            # For example, if this division's OCD ID is ocd-division/country:us/district:dc, this will contain ocd-division/country:us/state:dc.
+          "A String",
+        ],
+        "name": "A String", # The name of the division.
+      },
+    },
+    "kind": "civicinfo#representativeInfoResponse", # Identifies what kind of resource this is. Value: the fixed string "civicinfo#representativeInfoResponse".
+    "officials": [ # Officials holding the offices listed above. Will only be present if includeOffices was true in the request.
+      { # Information about a person holding an elected office.
+        "name": "A String", # The official's name.
+        "photoUrl": "A String", # A URL for a photo of the official.
+        "phones": [ # The official's public contact phone numbers.
+          "A String",
+        ],
+        "channels": [ # A list of known (social) media channels for this official.
+          { # A social media or web channel for a candidate.
+            "type": "A String", # The type of channel. The following is a list of types of channels, but is not exhaustive. More channel types may be added at a later time. One of: GooglePlus, YouTube, Facebook, Twitter
+            "id": "A String", # The unique public identifier for the candidate's channel.
+          },
+        ],
+        "urls": [ # The official's public website URLs.
+          "A String",
+        ],
+        "address": [ # Addresses at which to contact the official.
+          { # A simple representation of an address.
+            "city": "A String", # The city or town for the address.
+            "zip": "A String", # The US Postal Zip Code of the address.
+            "line3": "A String", # The third line of the address, if needed.
+            "line2": "A String", # The second line the address, if needed.
+            "line1": "A String", # The street name and number of this address.
+            "locationName": "A String", # The name of the location.
+            "state": "A String", # The US two letter state abbreviation of the address.
+          },
+        ],
+        "party": "A String", # The full name of the party the official belongs to.
+        "emails": [ # The direct email addresses for the official.
+          "A String",
+        ],
+      },
+    ],
+    "offices": [ # Elected offices referenced by the divisions listed above. Will only be present if includeOffices was true in the request.
+      { # Information about an Office held by one or more Officials.
+        "name": "A String", # The human-readable name of the office.
+        "roles": [ # The roles which this office fulfills. Roles are not meant to be exhaustive, or to exactly specify the entire set of responsibilities of a given office, but are meant to be rough categories that are useful for general selection from or sorting of a list of offices.
+          "A String",
+        ],
+        "officialIndices": [ # List of indices in the officials array of people who presently hold this office.
+          42,
+        ],
+        "sources": [ # A list of sources for this office. If multiple sources are listed, the data has been aggregated from those sources.
+          { # Contains information about the data source for the element containing it.
+            "official": True or False, # Whether this data comes from an official government source.
+            "name": "A String", # The name of the data source.
+          },
+        ],
+        "levels": [ # The levels of government of which this office is part. There may be more than one in cases where a jurisdiction effectively acts at two different levels of government; for example, the mayor of the District of Columbia acts at "locality" level, but also effectively at both "administrative-area-2" and "administrative-area-1".
+          "A String",
+        ],
+        "divisionId": "A String", # The OCD ID of the division with which this office is associated.
+      },
+    ],
+    "normalizedInput": { # A simple representation of an address. # The normalized version of the requested address
+      "city": "A String", # The city or town for the address.
+      "zip": "A String", # The US Postal Zip Code of the address.
+      "line3": "A String", # The third line of the address, if needed.
+      "line2": "A String", # The second line the address, if needed.
+      "line1": "A String", # The street name and number of this address.
+      "locationName": "A String", # The name of the location.
+      "state": "A String", # The US two letter state abbreviation of the address.
+    },
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="representativeInfoByDivision">representativeInfoByDivision(ocdId, recursive=None, roles=None, levels=None)</code>
+  <pre>Looks up representative information for a single geographic division.
+
+Args:
+  ocdId: string, The Open Civic Data division identifier of the division to look up. (required)
+  recursive: boolean, If true, information about all divisions contained in the division requested will be included as well. For example, if querying ocd-division/country:us/district:dc, this would also return all DC's wards and ANCs.
+  roles: string, A list of office roles to filter by. Only offices fulfilling one of these roles will be returned. Divisions that don't contain a matching office will not be returned. (repeated)
+    Allowed values
+      deputyHeadOfGovernment - 
+      executiveCouncil - 
+      governmentOfficer - 
+      headOfGovernment - 
+      headOfState - 
+      highestCourtJudge - 
+      judge - 
+      legislatorLowerBody - 
+      legislatorUpperBody - 
+      schoolBoard - 
+      specialPurposeOfficer - 
+  levels: string, A list of office levels to filter by. Only offices that serve at least one of these levels will be returned. Divisions that don't contain a matching office will not be returned. (repeated)
+    Allowed values
+      administrativeArea1 - 
+      administrativeArea2 - 
+      country - 
+      international - 
+      locality - 
+      regional - 
+      special - 
+      subLocality1 - 
+      subLocality2 - 
+
+Returns:
+  An object of the form:
+
+    {
+    "divisions": { # Political geographic divisions that contain the requested address.
+      "a_key": { # Describes a political geography. # The unique Open Civic Data identifier for this division.
+        "officeIndices": [ # List of indices in the offices array, one for each office elected from this division. Will only be present if includeOffices was true (or absent) in the request.
+          42,
+        ],
+        "alsoKnownAs": [ # Any other valid OCD IDs that refer to the same division.
+            #
+            # Because OCD IDs are meant to be human-readable and at least somewhat predictable, there are occasionally several identifiers for a single division. These identifiers are defined to be equivalent to one another, and one is always indicated as the primary identifier. The primary identifier will be returned in ocd_id above, and any other equivalent valid identifiers will be returned in this list.
+            #
+            # For example, if this division's OCD ID is ocd-division/country:us/district:dc, this will contain ocd-division/country:us/state:dc.
+          "A String",
+        ],
+        "name": "A String", # The name of the division.
+      },
+    },
+    "officials": [ # Officials holding the offices listed above. Will only be present if includeOffices was true in the request.
+      { # Information about a person holding an elected office.
+        "name": "A String", # The official's name.
+        "photoUrl": "A String", # A URL for a photo of the official.
+        "phones": [ # The official's public contact phone numbers.
+          "A String",
+        ],
+        "channels": [ # A list of known (social) media channels for this official.
+          { # A social media or web channel for a candidate.
+            "type": "A String", # The type of channel. The following is a list of types of channels, but is not exhaustive. More channel types may be added at a later time. One of: GooglePlus, YouTube, Facebook, Twitter
+            "id": "A String", # The unique public identifier for the candidate's channel.
+          },
+        ],
+        "urls": [ # The official's public website URLs.
+          "A String",
+        ],
+        "address": [ # Addresses at which to contact the official.
+          { # A simple representation of an address.
+            "city": "A String", # The city or town for the address.
+            "zip": "A String", # The US Postal Zip Code of the address.
+            "line3": "A String", # The third line of the address, if needed.
+            "line2": "A String", # The second line the address, if needed.
+            "line1": "A String", # The street name and number of this address.
+            "locationName": "A String", # The name of the location.
+            "state": "A String", # The US two letter state abbreviation of the address.
+          },
+        ],
+        "party": "A String", # The full name of the party the official belongs to.
+        "emails": [ # The direct email addresses for the official.
+          "A String",
+        ],
+      },
+    ],
+    "offices": [ # Elected offices referenced by the divisions listed above. Will only be present if includeOffices was true in the request.
+      { # Information about an Office held by one or more Officials.
+        "name": "A String", # The human-readable name of the office.
+        "roles": [ # The roles which this office fulfills. Roles are not meant to be exhaustive, or to exactly specify the entire set of responsibilities of a given office, but are meant to be rough categories that are useful for general selection from or sorting of a list of offices.
+          "A String",
+        ],
+        "officialIndices": [ # List of indices in the officials array of people who presently hold this office.
+          42,
+        ],
+        "sources": [ # A list of sources for this office. If multiple sources are listed, the data has been aggregated from those sources.
+          { # Contains information about the data source for the element containing it.
+            "official": True or False, # Whether this data comes from an official government source.
+            "name": "A String", # The name of the data source.
+          },
+        ],
+        "levels": [ # The levels of government of which this office is part. There may be more than one in cases where a jurisdiction effectively acts at two different levels of government; for example, the mayor of the District of Columbia acts at "locality" level, but also effectively at both "administrative-area-2" and "administrative-area-1".
+          "A String",
+        ],
+        "divisionId": "A String", # The OCD ID of the division with which this office is associated.
+      },
+    ],
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/cloudmonitoring_v2beta1.timeseries.html b/docs/dyn/cloudmonitoring_v2beta1.timeseries.html
index 8b9183e..58c7176 100644
--- a/docs/dyn/cloudmonitoring_v2beta1.timeseries.html
+++ b/docs/dyn/cloudmonitoring_v2beta1.timeseries.html
@@ -120,15 +120,15 @@
         "timeseriesDesc": { # TimeseriesDescriptor identifies a single time series. # The descriptor of this time series.
           "project": "A String", # The Developers Console project number to which this time series belongs.
           "metric": "A String", # The name of the metric.
-          "labels": { # The set of key-value pairs that describe this time series, including target-specific labels and metric-specific labels.
+          "labels": { # The label's name.
             "a_key": "A String", # The label's name.
           },
         },
         "points": [ # The data points of this time series. The points are listed in order of their end timestamp, from younger to older.
           { # Point is a single point in a time series. It consists of a start time, an end time, and a value.
-            "end": "A String", # The interval [start, end] is the time period to which the point's value applies. For gauge metrics, whose values are instantaneous measurements, this interval should be empty (start should equal end). For cumulative metrics (of which deltas and rates are special cases), the interval should be non-empty. Both start and end are RFC 3999 strings.
+            "end": "A String", # The interval [start, end] is the time period to which the point's value applies. For gauge metrics, whose values are instantaneous measurements, this interval should be empty (start should equal end). For cumulative metrics (of which deltas and rates are special cases), the interval should be non-empty. Both start and end are RFC 3339 strings.
             "doubleValue": 3.14, # The value of this data point as a double-precision floating-point number.
-            "start": "A String", # The interval [start, end] is the time period to which the point's value applies. For gauge metrics, whose values are instantaneous measurements, this interval should be empty (start should equal end). For cumulative metrics (of which deltas and rates are special cases), the interval should be non-empty. Both start and end are RFC 3999 strings.
+            "start": "A String", # The interval [start, end] is the time period to which the point's value applies. For gauge metrics, whose values are instantaneous measurements, this interval should be empty (start should equal end). For cumulative metrics (of which deltas and rates are special cases), the interval should be non-empty. Both start and end are RFC 3339 strings.
             "boolValue": True or False, # The value of this data point. Either "true" or "false".
             "distributionValue": { # Distribution data point value type. When writing distribution points, try to be consistent with the boundaries of your buckets. If you must modify the bucket boundaries, then do so by merging, partitioning, or appending rather than skewing them. # The value of this data point as a distribution. A distribution value can contain a list of buckets and/or an underflowBucket and an overflowBucket. The values of these points can be used to create a histogram.
               "buckets": [ # The finite buckets.
diff --git a/docs/dyn/cloudmonitoring_v2beta1.timeseriesDescriptors.html b/docs/dyn/cloudmonitoring_v2beta1.timeseriesDescriptors.html
index 311be03..dec725a 100644
--- a/docs/dyn/cloudmonitoring_v2beta1.timeseriesDescriptors.html
+++ b/docs/dyn/cloudmonitoring_v2beta1.timeseriesDescriptors.html
@@ -119,7 +119,7 @@
       { # TimeseriesDescriptor identifies a single time series.
         "project": "A String", # The Developers Console project number to which this time series belongs.
         "metric": "A String", # The name of the metric.
-        "labels": { # The set of key-value pairs that describe this time series, including target-specific labels and metric-specific labels.
+        "labels": { # The label's name.
           "a_key": "A String", # The label's name.
         },
       },
diff --git a/docs/dyn/compute_v1.backendServices.html b/docs/dyn/compute_v1.backendServices.html
index 2027de1..0299645 100644
--- a/docs/dyn/compute_v1.backendServices.html
+++ b/docs/dyn/compute_v1.backendServices.html
@@ -171,7 +171,7 @@
       "protocol": "A String",
       "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
       "timeoutSec": 42, # How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds.
-      "port": 42, # The TCP port to connect on the backend. The default value is 80.
+      "port": 42, # Deprecated in favor of port_name. The TCP port to connect on the backend. The default value is 80.
       "backends": [ # The list of backends that serve this BackendService.
         { # Message containing information of one individual backend.
           "group": "A String", # URL of a zonal Cloud Resource View resource. This resource view defines the list of instances that serve traffic. Member virtual machine instances from each resource view must live in the same zone as the resource view itself. No two backends in a backend service are allowed to use same Resource View resource.
@@ -220,6 +220,7 @@
         "instance": "A String", # URL of the instance resource.
         "healthState": "A String", # Health state of the instance.
         "ipAddress": "A String", # The IP address represented by this resource.
+        "port": 42, # The port on the instance.
       },
     ],
   }</pre>
@@ -239,7 +240,7 @@
     "protocol": "A String",
     "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
     "timeoutSec": 42, # How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds.
-    "port": 42, # The TCP port to connect on the backend. The default value is 80.
+    "port": 42, # Deprecated in favor of port_name. The TCP port to connect on the backend. The default value is 80.
     "backends": [ # The list of backends that serve this BackendService.
       { # Message containing information of one individual backend.
         "group": "A String", # URL of a zonal Cloud Resource View resource. This resource view defines the list of instances that serve traffic. Member virtual machine instances from each resource view must live in the same zone as the resource view itself. No two backends in a backend service are allowed to use same Resource View resource.
@@ -332,7 +333,7 @@
           "protocol": "A String",
           "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
           "timeoutSec": 42, # How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds.
-          "port": 42, # The TCP port to connect on the backend. The default value is 80.
+          "port": 42, # Deprecated in favor of port_name. The TCP port to connect on the backend. The default value is 80.
           "backends": [ # The list of backends that serve this BackendService.
             { # Message containing information of one individual backend.
               "group": "A String", # URL of a zonal Cloud Resource View resource. This resource view defines the list of instances that serve traffic. Member virtual machine instances from each resource view must live in the same zone as the resource view itself. No two backends in a backend service are allowed to use same Resource View resource.
@@ -390,7 +391,7 @@
     "protocol": "A String",
     "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
     "timeoutSec": 42, # How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds.
-    "port": 42, # The TCP port to connect on the backend. The default value is 80.
+    "port": 42, # Deprecated in favor of port_name. The TCP port to connect on the backend. The default value is 80.
     "backends": [ # The list of backends that serve this BackendService.
       { # Message containing information of one individual backend.
         "group": "A String", # URL of a zonal Cloud Resource View resource. This resource view defines the list of instances that serve traffic. Member virtual machine instances from each resource view must live in the same zone as the resource view itself. No two backends in a backend service are allowed to use same Resource View resource.
@@ -477,7 +478,7 @@
     "protocol": "A String",
     "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
     "timeoutSec": 42, # How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds.
-    "port": 42, # The TCP port to connect on the backend. The default value is 80.
+    "port": 42, # Deprecated in favor of port_name. The TCP port to connect on the backend. The default value is 80.
     "backends": [ # The list of backends that serve this BackendService.
       { # Message containing information of one individual backend.
         "group": "A String", # URL of a zonal Cloud Resource View resource. This resource view defines the list of instances that serve traffic. Member virtual machine instances from each resource view must live in the same zone as the resource view itself. No two backends in a backend service are allowed to use same Resource View resource.
diff --git a/docs/dyn/compute_v1.diskTypes.html b/docs/dyn/compute_v1.diskTypes.html
index 8fe3c7a..12314df 100644
--- a/docs/dyn/compute_v1.diskTypes.html
+++ b/docs/dyn/compute_v1.diskTypes.html
@@ -130,6 +130,7 @@
               "obsolete": "A String", # An optional RFC3339 timestamp on or after which the deprecation state of this resource will be changed to OBSOLETE.
               "replacement": "A String", # A URL of the suggested replacement for the deprecated resource. The deprecated resource and its replacement must be resources of the same kind.
             },
+            "defaultDiskSizeGb": "A String", # Server defined default disk size in gb (output only).
             "creationTimestamp": "A String", # Creation timestamp in RFC3339 text format (output only).
             "id": "A String", # Unique identifier for the resource; defined by the server (output only).
             "selfLink": "A String", # Server defined URL for the resource (output only).
@@ -182,6 +183,7 @@
       "obsolete": "A String", # An optional RFC3339 timestamp on or after which the deprecation state of this resource will be changed to OBSOLETE.
       "replacement": "A String", # A URL of the suggested replacement for the deprecated resource. The deprecated resource and its replacement must be resources of the same kind.
     },
+    "defaultDiskSizeGb": "A String", # Server defined default disk size in gb (output only).
     "creationTimestamp": "A String", # Creation timestamp in RFC3339 text format (output only).
     "id": "A String", # Unique identifier for the resource; defined by the server (output only).
     "selfLink": "A String", # Server defined URL for the resource (output only).
@@ -218,6 +220,7 @@
           "obsolete": "A String", # An optional RFC3339 timestamp on or after which the deprecation state of this resource will be changed to OBSOLETE.
           "replacement": "A String", # A URL of the suggested replacement for the deprecated resource. The deprecated resource and its replacement must be resources of the same kind.
         },
+        "defaultDiskSizeGb": "A String", # Server defined default disk size in gb (output only).
         "creationTimestamp": "A String", # Creation timestamp in RFC3339 text format (output only).
         "id": "A String", # Unique identifier for the resource; defined by the server (output only).
         "selfLink": "A String", # Server defined URL for the resource (output only).
diff --git a/docs/dyn/compute_v1.disks.html b/docs/dyn/compute_v1.disks.html
index 94b5a0e..d053033 100644
--- a/docs/dyn/compute_v1.disks.html
+++ b/docs/dyn/compute_v1.disks.html
@@ -119,7 +119,7 @@
         "disks": [ # List of disks contained in this scope.
           { # A persistent disk resource.
               "status": "A String", # The status of disk creation (output only).
-              "sourceSnapshot": "A String", # The source snapshot used to create this disk. Once the source snapshot has been deleted from the system, this field will be cleared, and will not be set even if a snapshot with the same name has been re-created.
+              "sourceSnapshot": "A String", # The source snapshot used to create this disk.
               "kind": "compute#disk", # Type of the resource.
               "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
               "sizeGb": "A String", # Size of the persistent disk, specified in GB. This parameter is optional when creating a disk from a disk image or a snapshot, otherwise it is required.
@@ -127,7 +127,7 @@
               "options": "A String", # Internal use only.
               "sourceImageId": "A String", # The 'id' value of the image used to create this disk. This value may be used to determine whether the disk was created from the current or a previous instance of a given image.
               "sourceSnapshotId": "A String", # The 'id' value of the snapshot used to create this disk. This value may be used to determine whether the disk was created from the current or a previous instance of a given disk snapshot.
-              "sourceImage": "A String", # The source image used to create this disk. Once the source image has been deleted from the system, this field will not be set, even if an image with the same name has been re-created.
+              "sourceImage": "A String", # The source image used to create this disk.
               "licenses": [ # Public visible licenses.
                 "A String",
               ],
@@ -186,7 +186,7 @@
     "kind": "compute#snapshot", # Type of the resource.
     "storageBytes": "A String", # A size of the the storage used by the snapshot. As snapshots share storage this number is expected to change with snapshot creation/deletion.
     "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
-    "sourceDisk": "A String", # The source disk used to create this snapshot. Once the source disk has been deleted from the system, this field will be cleared, and will not be set even if a disk with the same name has been re-created (output only).
+    "sourceDisk": "A String", # The source disk used to create this snapshot.
     "storageBytesStatus": "A String", # An indicator whether storageBytes is in a stable state, or it is being adjusted as a result of shared storage reallocation.
     "sourceDiskId": "A String", # The 'id' value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
     "diskSizeGb": "A String", # Size of the persistent disk snapshot, specified in GB (output only).
@@ -319,7 +319,7 @@
 
     { # A persistent disk resource.
       "status": "A String", # The status of disk creation (output only).
-      "sourceSnapshot": "A String", # The source snapshot used to create this disk. Once the source snapshot has been deleted from the system, this field will be cleared, and will not be set even if a snapshot with the same name has been re-created.
+      "sourceSnapshot": "A String", # The source snapshot used to create this disk.
       "kind": "compute#disk", # Type of the resource.
       "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
       "sizeGb": "A String", # Size of the persistent disk, specified in GB. This parameter is optional when creating a disk from a disk image or a snapshot, otherwise it is required.
@@ -327,7 +327,7 @@
       "options": "A String", # Internal use only.
       "sourceImageId": "A String", # The 'id' value of the image used to create this disk. This value may be used to determine whether the disk was created from the current or a previous instance of a given image.
       "sourceSnapshotId": "A String", # The 'id' value of the snapshot used to create this disk. This value may be used to determine whether the disk was created from the current or a previous instance of a given disk snapshot.
-      "sourceImage": "A String", # The source image used to create this disk. Once the source image has been deleted from the system, this field will not be set, even if an image with the same name has been re-created.
+      "sourceImage": "A String", # The source image used to create this disk.
       "licenses": [ # Public visible licenses.
         "A String",
       ],
@@ -351,7 +351,7 @@
 
 { # A persistent disk resource.
     "status": "A String", # The status of disk creation (output only).
-    "sourceSnapshot": "A String", # The source snapshot used to create this disk. Once the source snapshot has been deleted from the system, this field will be cleared, and will not be set even if a snapshot with the same name has been re-created.
+    "sourceSnapshot": "A String", # The source snapshot used to create this disk.
     "kind": "compute#disk", # Type of the resource.
     "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
     "sizeGb": "A String", # Size of the persistent disk, specified in GB. This parameter is optional when creating a disk from a disk image or a snapshot, otherwise it is required.
@@ -359,7 +359,7 @@
     "options": "A String", # Internal use only.
     "sourceImageId": "A String", # The 'id' value of the image used to create this disk. This value may be used to determine whether the disk was created from the current or a previous instance of a given image.
     "sourceSnapshotId": "A String", # The 'id' value of the snapshot used to create this disk. This value may be used to determine whether the disk was created from the current or a previous instance of a given disk snapshot.
-    "sourceImage": "A String", # The source image used to create this disk. Once the source image has been deleted from the system, this field will not be set, even if an image with the same name has been re-created.
+    "sourceImage": "A String", # The source image used to create this disk.
     "licenses": [ # Public visible licenses.
       "A String",
     ],
@@ -439,7 +439,7 @@
     "items": [ # The persistent disk resources.
       { # A persistent disk resource.
           "status": "A String", # The status of disk creation (output only).
-          "sourceSnapshot": "A String", # The source snapshot used to create this disk. Once the source snapshot has been deleted from the system, this field will be cleared, and will not be set even if a snapshot with the same name has been re-created.
+          "sourceSnapshot": "A String", # The source snapshot used to create this disk.
           "kind": "compute#disk", # Type of the resource.
           "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
           "sizeGb": "A String", # Size of the persistent disk, specified in GB. This parameter is optional when creating a disk from a disk image or a snapshot, otherwise it is required.
@@ -447,7 +447,7 @@
           "options": "A String", # Internal use only.
           "sourceImageId": "A String", # The 'id' value of the image used to create this disk. This value may be used to determine whether the disk was created from the current or a previous instance of a given image.
           "sourceSnapshotId": "A String", # The 'id' value of the snapshot used to create this disk. This value may be used to determine whether the disk was created from the current or a previous instance of a given disk snapshot.
-          "sourceImage": "A String", # The source image used to create this disk. Once the source image has been deleted from the system, this field will not be set, even if an image with the same name has been re-created.
+          "sourceImage": "A String", # The source image used to create this disk.
           "licenses": [ # Public visible licenses.
             "A String",
           ],
diff --git a/docs/dyn/compute_v1.html b/docs/dyn/compute_v1.html
index 56a40b1..8cc2eba 100644
--- a/docs/dyn/compute_v1.html
+++ b/docs/dyn/compute_v1.html
@@ -130,6 +130,11 @@
 <p class="firstline">Returns the images Resource.</p>
 
 <p class="toc_element">
+  <code><a href="compute_v1.instanceTemplates.html">instanceTemplates()</a></code>
+</p>
+<p class="firstline">Returns the instanceTemplates Resource.</p>
+
+<p class="toc_element">
   <code><a href="compute_v1.instances.html">instances()</a></code>
 </p>
 <p class="firstline">Returns the instances Resource.</p>
diff --git a/docs/dyn/compute_v1.images.html b/docs/dyn/compute_v1.images.html
index 464bcec..5de9129 100644
--- a/docs/dyn/compute_v1.images.html
+++ b/docs/dyn/compute_v1.images.html
@@ -246,7 +246,7 @@
       "archiveSizeBytes": "A String", # Size of the image tar.gz archive stored in Google Cloud Storage (in bytes).
       "sourceDiskId": "A String", # The 'id' value of the disk used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name.
       "diskSizeGb": "A String", # Size of the image when restored onto a disk (in GiB).
-      "sourceDisk": "A String", # The source disk used to create this image. Once the source disk has been deleted from the system, this field will be cleared, and will not be set even if a disk with the same name has been re-created.
+      "sourceDisk": "A String", # The source disk used to create this image.
       "licenses": [ # Public visible licenses.
         "A String",
       ],
@@ -286,7 +286,7 @@
     "archiveSizeBytes": "A String", # Size of the image tar.gz archive stored in Google Cloud Storage (in bytes).
     "sourceDiskId": "A String", # The 'id' value of the disk used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name.
     "diskSizeGb": "A String", # Size of the image when restored onto a disk (in GiB).
-    "sourceDisk": "A String", # The source disk used to create this image. Once the source disk has been deleted from the system, this field will be cleared, and will not be set even if a disk with the same name has been re-created.
+    "sourceDisk": "A String", # The source disk used to create this image.
     "licenses": [ # Public visible licenses.
       "A String",
     ],
@@ -381,7 +381,7 @@
           "archiveSizeBytes": "A String", # Size of the image tar.gz archive stored in Google Cloud Storage (in bytes).
           "sourceDiskId": "A String", # The 'id' value of the disk used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name.
           "diskSizeGb": "A String", # Size of the image when restored onto a disk (in GiB).
-          "sourceDisk": "A String", # The source disk used to create this image. Once the source disk has been deleted from the system, this field will be cleared, and will not be set even if a disk with the same name has been re-created.
+          "sourceDisk": "A String", # The source disk used to create this image.
           "licenses": [ # Public visible licenses.
             "A String",
           ],
diff --git a/docs/dyn/compute_v1.instanceTemplates.html b/docs/dyn/compute_v1.instanceTemplates.html
new file mode 100644
index 0000000..3aee415
--- /dev/null
+++ b/docs/dyn/compute_v1.instanceTemplates.html
@@ -0,0 +1,489 @@
+<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="compute_v1.html">Compute Engine API</a> . <a href="compute_v1.instanceTemplates.html">instanceTemplates</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#delete">delete(project, instanceTemplate)</a></code></p>
+<p class="firstline">Deletes the specified instance template resource.</p>
+<p class="toc_element">
+  <code><a href="#get">get(project, instanceTemplate)</a></code></p>
+<p class="firstline">Returns the specified instance template resource.</p>
+<p class="toc_element">
+  <code><a href="#insert">insert(project, body)</a></code></p>
+<p class="firstline">Creates an instance template resource in the specified project using the data included in the request.</p>
+<p class="toc_element">
+  <code><a href="#list">list(project, maxResults=None, pageToken=None, filter=None)</a></code></p>
+<p class="firstline">Retrieves the list of instance template resources contained within the specified project.</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(project, instanceTemplate)</code>
+  <pre>Deletes the specified instance template resource.
+
+Args:
+  project: string, Name of the project scoping this request. (required)
+  instanceTemplate: string, Name of the instance template resource to delete. (required)
+
+Returns:
+  An object of the form:
+
+    { # An operation resource, used to manage asynchronous API requests.
+    "targetId": "A String", # Unique target id which identifies a particular incarnation of the target (output only).
+    "clientOperationId": "A String", # An optional identifier specified by the client when the mutation was initiated. Must be unique for all operation resources in the project (output only).
+    "creationTimestamp": "A String", # Creation timestamp in RFC3339 text format (output only).
+    "id": "A String", # Unique identifier for the resource; defined by the server (output only).
+    "zone": "A String", # URL of the zone where the operation resides (output only).
+    "operationType": "A String", # Type of the operation. Examples include "insert", "update", and "delete" (output only).
+    "httpErrorMessage": "A String", # If operation fails, the HTTP error message returned, e.g. NOT FOUND. (output only).
+    "progress": 42, # An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the operation will be complete. This number should be monotonically increasing as the operation progresses (output only).
+    "httpErrorStatusCode": 42, # If operation fails, the HTTP error status code returned, e.g. 404. (output only).
+    "statusMessage": "A String", # An optional textual description of the current status of the operation (output only).
+    "status": "A String", # Status of the operation. Can be one of the following: "PENDING", "RUNNING", or "DONE" (output only).
+    "insertTime": "A String", # The time that this operation was requested. This is in RFC 3339 format (output only).
+    "warnings": [ # If warning messages generated during processing of this operation, this field will be populated (output only).
+      {
+        "message": "A String", # Optional human-readable details for this warning.
+        "code": "A String", # The warning type identifier for this warning.
+        "data": [ # Metadata for this warning in 'key: value' format.
+          {
+            "value": "A String", # A warning data value corresponding to the key.
+            "key": "A String", # A key for the warning data.
+          },
+        ],
+      },
+    ],
+    "user": "A String", # User who requested the operation, for example "user@example.com" (output only).
+    "startTime": "A String", # The time that this operation was started by the server. This is in RFC 3339 format (output only).
+    "kind": "compute#operation", # Type of the resource.
+    "name": "A String", # Name of the resource (output only).
+    "region": "A String", # URL of the region where the operation resides (output only).
+    "error": { # If errors occurred during processing of this operation, this field will be populated (output only).
+      "errors": [ # The array of errors encountered while processing this operation.
+        {
+          "message": "A String", # An optional, human-readable error message.
+          "code": "A String", # The error type identifier for this error.
+          "location": "A String", # Indicates the field in the request which caused the error. This property is optional.
+        },
+      ],
+    },
+    "endTime": "A String", # The time that this operation was completed. This is in RFC 3339 format (output only).
+    "selfLink": "A String", # Server defined URL for the resource (output only).
+    "targetLink": "A String", # URL of the resource the operation is mutating (output only).
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(project, instanceTemplate)</code>
+  <pre>Returns the specified instance template resource.
+
+Args:
+  project: string, Name of the project scoping this request. (required)
+  instanceTemplate: string, Name of the instance template resource to return. (required)
+
+Returns:
+  An object of the form:
+
+    { # An Instance Template resource.
+      "kind": "compute#instanceTemplate", # Type of the resource.
+      "description": "A String", # An optional textual description of the instance template resource; provided by the client when the resource is created.
+      "id": "A String", # Unique identifier for the resource; defined by the server (output only).
+      "creationTimestamp": "A String", # Creation timestamp in RFC3339 text format (output only).
+      "properties": { # The instance properties portion of this instance template resource.
+        "machineType": "A String", # Name of the machine type resource describing which machine type to use to host the instances created based on this template; provided by the client when the instance template is created.
+        "description": "A String", # An optional textual description for the instances created based on the instance template resource; provided by the client when the template is created.
+        "tags": { # A set of instance tags. # A list of tags to be applied to the instances created based on this template used to identify valid sources or targets for network firewalls. Provided by the client on instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035.
+          "items": [ # An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.
+            "A String",
+          ],
+          "fingerprint": "A String", # Fingerprint of this resource. A hash of the tags stored in this object. This field is used optimistic locking. An up-to-date tags fingerprint must be provided in order to modify tags.
+        },
+        "disks": [ # Array of disks associated with instance created based on this template.
+          { # An instance-attached disk resource.
+            "deviceName": "A String", # Persistent disk only; must be unique within the instance when specified. This represents a unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, a default will be chosen by the system.
+            "kind": "compute#attachedDisk", # Type of the resource.
+            "initializeParams": { # Initialization parameters for the new disk (input-only). Can only be specified on the boot disk or local SSDs. Mutually exclusive with 'source'. # Initialization parameters.
+              "diskSizeGb": "A String", # Size of the disk in base-2 GB.
+              "diskName": "A String", # Name of the disk (when not provided defaults to the name of the instance).
+              "sourceImage": "A String", # The source image used to create this disk.
+              "diskType": "A String", # URL of the disk type resource describing which disk type to use to create the disk; provided by the client when the disk is created.
+            },
+            "autoDelete": True or False, # Whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).
+            "index": 42, # A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, the server will choose an appropriate value (output only).
+            "boot": True or False, # Indicates that this is a boot disk. VM will use the first partition of the disk for its root filesystem.
+            "source": "A String", # Persistent disk only; the URL of the persistent disk resource.
+            "mode": "A String", # The mode in which to attach this disk, either "READ_WRITE" or "READ_ONLY".
+            "licenses": [ # Public visible licenses.
+              "A String",
+            ],
+            "type": "A String", # Type of the disk, either "SCRATCH" or "PERSISTENT". Note that persistent disks must be created before you can specify them here.
+          },
+        ],
+        "scheduling": { # Scheduling options for an Instance. # Scheduling options for the instances created based on this template.
+          "automaticRestart": True or False, # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user).
+          "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
+        },
+        "canIpForward": True or False, # Allows instances created based on this template to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, say true. If unsure, leave this set to false.
+        "serviceAccounts": [ # A list of service accounts each with specified scopes, for which access tokens are to be made available to the instances created based on this template, through metadata queries.
+          { # A service account.
+            "scopes": [ # The list of scopes to be made available for this service account.
+              "A String",
+            ],
+            "email": "A String", # Email address of the service account.
+          },
+        ],
+        "metadata": { # A metadata key/value entry. # Metadata key/value pairs assigned to instances created based on this template. Consists of custom metadata or predefined keys; see Instance documentation for more information.
+          "items": [ # Array of key/value pairs. The total size of all keys and values must be less than 512 KB.
+            {
+              "value": "A String", # Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 32768 bytes.
+              "key": "A String", # Key for the metadata entry. Keys must conform to the following regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as part of a URL in the metadata server. Additionally, to avoid ambiguity, keys must not conflict with any other metadata keys for the project.
+            },
+          ],
+          "kind": "compute#metadata", # Type of the resource.
+          "fingerprint": "A String", # Fingerprint of this resource. A hash of the metadata's contents. This field is used for optimistic locking. An up-to-date metadata fingerprint must be provided in order to modify metadata.
+        },
+        "networkInterfaces": [ # Array of configurations for this interface. This specifies how this interface is configured to interact with other network services, such as connecting to the internet. Currently, ONE_TO_ONE_NAT is the only access config supported. If there are no accessConfigs specified, then this instances created based based on this template will have no external internet access.
+          { # A network interface resource attached to an instance.
+            "accessConfigs": [ # Array of configurations for this interface. This specifies how this interface is configured to interact with other network services, such as connecting to the internet. Currently, ONE_TO_ONE_NAT is the only access config supported. If there are no accessConfigs specified, then this instance will have no external internet access.
+              { # An access configuration attached to an instance's network interface.
+                "kind": "compute#accessConfig", # Type of the resource.
+                "type": "ONE_TO_ONE_NAT", # Type of configuration. Must be set to "ONE_TO_ONE_NAT". This configures port-for-port NAT to the internet.
+                "name": "A String", # Name of this access configuration.
+                "natIP": "A String", # An external IP address associated with this instance. Specify an unused static IP address available to the project. If not specified, the external IP will be drawn from a shared ephemeral pool.
+              },
+            ],
+            "networkIP": "A String", # An optional IPV4 internal network address assigned to the instance for this network interface (output only).
+            "name": "A String", # Name of the network interface, determined by the server; for network devices, these are e.g. eth0, eth1, etc. (output only).
+            "network": "A String", # URL of the network resource attached to this interface.
+          },
+        ],
+      },
+      "selfLink": "A String", # Server defined URL for the resource (output only).
+      "name": "A String", # Name of the instance template resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="insert">insert(project, body)</code>
+  <pre>Creates an instance template resource in the specified project using the data included in the request.
+
+Args:
+  project: string, Name of the project scoping this request. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # An Instance Template resource.
+    "kind": "compute#instanceTemplate", # Type of the resource.
+    "description": "A String", # An optional textual description of the instance template resource; provided by the client when the resource is created.
+    "id": "A String", # Unique identifier for the resource; defined by the server (output only).
+    "creationTimestamp": "A String", # Creation timestamp in RFC3339 text format (output only).
+    "properties": { # The instance properties portion of this instance template resource.
+      "machineType": "A String", # Name of the machine type resource describing which machine type to use to host the instances created based on this template; provided by the client when the instance template is created.
+      "description": "A String", # An optional textual description for the instances created based on the instance template resource; provided by the client when the template is created.
+      "tags": { # A set of instance tags. # A list of tags to be applied to the instances created based on this template used to identify valid sources or targets for network firewalls. Provided by the client on instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035.
+        "items": [ # An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.
+          "A String",
+        ],
+        "fingerprint": "A String", # Fingerprint of this resource. A hash of the tags stored in this object. This field is used optimistic locking. An up-to-date tags fingerprint must be provided in order to modify tags.
+      },
+      "disks": [ # Array of disks associated with instance created based on this template.
+        { # An instance-attached disk resource.
+          "deviceName": "A String", # Persistent disk only; must be unique within the instance when specified. This represents a unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, a default will be chosen by the system.
+          "kind": "compute#attachedDisk", # Type of the resource.
+          "initializeParams": { # Initialization parameters for the new disk (input-only). Can only be specified on the boot disk or local SSDs. Mutually exclusive with 'source'. # Initialization parameters.
+            "diskSizeGb": "A String", # Size of the disk in base-2 GB.
+            "diskName": "A String", # Name of the disk (when not provided defaults to the name of the instance).
+            "sourceImage": "A String", # The source image used to create this disk.
+            "diskType": "A String", # URL of the disk type resource describing which disk type to use to create the disk; provided by the client when the disk is created.
+          },
+          "autoDelete": True or False, # Whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).
+          "index": 42, # A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, the server will choose an appropriate value (output only).
+          "boot": True or False, # Indicates that this is a boot disk. VM will use the first partition of the disk for its root filesystem.
+          "source": "A String", # Persistent disk only; the URL of the persistent disk resource.
+          "mode": "A String", # The mode in which to attach this disk, either "READ_WRITE" or "READ_ONLY".
+          "licenses": [ # Public visible licenses.
+            "A String",
+          ],
+          "type": "A String", # Type of the disk, either "SCRATCH" or "PERSISTENT". Note that persistent disks must be created before you can specify them here.
+        },
+      ],
+      "scheduling": { # Scheduling options for an Instance. # Scheduling options for the instances created based on this template.
+        "automaticRestart": True or False, # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user).
+        "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
+      },
+      "canIpForward": True or False, # Allows instances created based on this template to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, say true. If unsure, leave this set to false.
+      "serviceAccounts": [ # A list of service accounts each with specified scopes, for which access tokens are to be made available to the instances created based on this template, through metadata queries.
+        { # A service account.
+          "scopes": [ # The list of scopes to be made available for this service account.
+            "A String",
+          ],
+          "email": "A String", # Email address of the service account.
+        },
+      ],
+      "metadata": { # A metadata key/value entry. # Metadata key/value pairs assigned to instances created based on this template. Consists of custom metadata or predefined keys; see Instance documentation for more information.
+        "items": [ # Array of key/value pairs. The total size of all keys and values must be less than 512 KB.
+          {
+            "value": "A String", # Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 32768 bytes.
+            "key": "A String", # Key for the metadata entry. Keys must conform to the following regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as part of a URL in the metadata server. Additionally, to avoid ambiguity, keys must not conflict with any other metadata keys for the project.
+          },
+        ],
+        "kind": "compute#metadata", # Type of the resource.
+        "fingerprint": "A String", # Fingerprint of this resource. A hash of the metadata's contents. This field is used for optimistic locking. An up-to-date metadata fingerprint must be provided in order to modify metadata.
+      },
+      "networkInterfaces": [ # Array of configurations for this interface. This specifies how this interface is configured to interact with other network services, such as connecting to the internet. Currently, ONE_TO_ONE_NAT is the only access config supported. If there are no accessConfigs specified, then this instances created based based on this template will have no external internet access.
+        { # A network interface resource attached to an instance.
+          "accessConfigs": [ # Array of configurations for this interface. This specifies how this interface is configured to interact with other network services, such as connecting to the internet. Currently, ONE_TO_ONE_NAT is the only access config supported. If there are no accessConfigs specified, then this instance will have no external internet access.
+            { # An access configuration attached to an instance's network interface.
+              "kind": "compute#accessConfig", # Type of the resource.
+              "type": "ONE_TO_ONE_NAT", # Type of configuration. Must be set to "ONE_TO_ONE_NAT". This configures port-for-port NAT to the internet.
+              "name": "A String", # Name of this access configuration.
+              "natIP": "A String", # An external IP address associated with this instance. Specify an unused static IP address available to the project. If not specified, the external IP will be drawn from a shared ephemeral pool.
+            },
+          ],
+          "networkIP": "A String", # An optional IPV4 internal network address assigned to the instance for this network interface (output only).
+          "name": "A String", # Name of the network interface, determined by the server; for network devices, these are e.g. eth0, eth1, etc. (output only).
+          "network": "A String", # URL of the network resource attached to this interface.
+        },
+      ],
+    },
+    "selfLink": "A String", # Server defined URL for the resource (output only).
+    "name": "A String", # Name of the instance template resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # An operation resource, used to manage asynchronous API requests.
+    "targetId": "A String", # Unique target id which identifies a particular incarnation of the target (output only).
+    "clientOperationId": "A String", # An optional identifier specified by the client when the mutation was initiated. Must be unique for all operation resources in the project (output only).
+    "creationTimestamp": "A String", # Creation timestamp in RFC3339 text format (output only).
+    "id": "A String", # Unique identifier for the resource; defined by the server (output only).
+    "zone": "A String", # URL of the zone where the operation resides (output only).
+    "operationType": "A String", # Type of the operation. Examples include "insert", "update", and "delete" (output only).
+    "httpErrorMessage": "A String", # If operation fails, the HTTP error message returned, e.g. NOT FOUND. (output only).
+    "progress": 42, # An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the operation will be complete. This number should be monotonically increasing as the operation progresses (output only).
+    "httpErrorStatusCode": 42, # If operation fails, the HTTP error status code returned, e.g. 404. (output only).
+    "statusMessage": "A String", # An optional textual description of the current status of the operation (output only).
+    "status": "A String", # Status of the operation. Can be one of the following: "PENDING", "RUNNING", or "DONE" (output only).
+    "insertTime": "A String", # The time that this operation was requested. This is in RFC 3339 format (output only).
+    "warnings": [ # If warning messages generated during processing of this operation, this field will be populated (output only).
+      {
+        "message": "A String", # Optional human-readable details for this warning.
+        "code": "A String", # The warning type identifier for this warning.
+        "data": [ # Metadata for this warning in 'key: value' format.
+          {
+            "value": "A String", # A warning data value corresponding to the key.
+            "key": "A String", # A key for the warning data.
+          },
+        ],
+      },
+    ],
+    "user": "A String", # User who requested the operation, for example "user@example.com" (output only).
+    "startTime": "A String", # The time that this operation was started by the server. This is in RFC 3339 format (output only).
+    "kind": "compute#operation", # Type of the resource.
+    "name": "A String", # Name of the resource (output only).
+    "region": "A String", # URL of the region where the operation resides (output only).
+    "error": { # If errors occurred during processing of this operation, this field will be populated (output only).
+      "errors": [ # The array of errors encountered while processing this operation.
+        {
+          "message": "A String", # An optional, human-readable error message.
+          "code": "A String", # The error type identifier for this error.
+          "location": "A String", # Indicates the field in the request which caused the error. This property is optional.
+        },
+      ],
+    },
+    "endTime": "A String", # The time that this operation was completed. This is in RFC 3339 format (output only).
+    "selfLink": "A String", # Server defined URL for the resource (output only).
+    "targetLink": "A String", # URL of the resource the operation is mutating (output only).
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(project, maxResults=None, pageToken=None, filter=None)</code>
+  <pre>Retrieves the list of instance template resources contained within the specified project.
+
+Args:
+  project: string, Name of the project scoping this request. (required)
+  maxResults: integer, Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.
+  pageToken: string, Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.
+  filter: string, Optional. Filter expression for filtering listed resources.
+
+Returns:
+  An object of the form:
+
+    { # Contains a list of instance template resources.
+    "nextPageToken": "A String", # A token used to continue a truncated list request (output only).
+    "items": [ # A list of instance template resources.
+      { # An Instance Template resource.
+          "kind": "compute#instanceTemplate", # Type of the resource.
+          "description": "A String", # An optional textual description of the instance template resource; provided by the client when the resource is created.
+          "id": "A String", # Unique identifier for the resource; defined by the server (output only).
+          "creationTimestamp": "A String", # Creation timestamp in RFC3339 text format (output only).
+          "properties": { # The instance properties portion of this instance template resource.
+            "machineType": "A String", # Name of the machine type resource describing which machine type to use to host the instances created based on this template; provided by the client when the instance template is created.
+            "description": "A String", # An optional textual description for the instances created based on the instance template resource; provided by the client when the template is created.
+            "tags": { # A set of instance tags. # A list of tags to be applied to the instances created based on this template used to identify valid sources or targets for network firewalls. Provided by the client on instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035.
+              "items": [ # An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.
+                "A String",
+              ],
+              "fingerprint": "A String", # Fingerprint of this resource. A hash of the tags stored in this object. This field is used optimistic locking. An up-to-date tags fingerprint must be provided in order to modify tags.
+            },
+            "disks": [ # Array of disks associated with instance created based on this template.
+              { # An instance-attached disk resource.
+                "deviceName": "A String", # Persistent disk only; must be unique within the instance when specified. This represents a unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, a default will be chosen by the system.
+                "kind": "compute#attachedDisk", # Type of the resource.
+                "initializeParams": { # Initialization parameters for the new disk (input-only). Can only be specified on the boot disk or local SSDs. Mutually exclusive with 'source'. # Initialization parameters.
+                  "diskSizeGb": "A String", # Size of the disk in base-2 GB.
+                  "diskName": "A String", # Name of the disk (when not provided defaults to the name of the instance).
+                  "sourceImage": "A String", # The source image used to create this disk.
+                  "diskType": "A String", # URL of the disk type resource describing which disk type to use to create the disk; provided by the client when the disk is created.
+                },
+                "autoDelete": True or False, # Whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).
+                "index": 42, # A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, the server will choose an appropriate value (output only).
+                "boot": True or False, # Indicates that this is a boot disk. VM will use the first partition of the disk for its root filesystem.
+                "source": "A String", # Persistent disk only; the URL of the persistent disk resource.
+                "mode": "A String", # The mode in which to attach this disk, either "READ_WRITE" or "READ_ONLY".
+                "licenses": [ # Public visible licenses.
+                  "A String",
+                ],
+                "type": "A String", # Type of the disk, either "SCRATCH" or "PERSISTENT". Note that persistent disks must be created before you can specify them here.
+              },
+            ],
+            "scheduling": { # Scheduling options for an Instance. # Scheduling options for the instances created based on this template.
+              "automaticRestart": True or False, # Whether the Instance should be automatically restarted whenever it is terminated by Compute Engine (not terminated by user).
+              "onHostMaintenance": "A String", # How the instance should behave when the host machine undergoes maintenance that may temporarily impact instance performance.
+            },
+            "canIpForward": True or False, # Allows instances created based on this template to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, say true. If unsure, leave this set to false.
+            "serviceAccounts": [ # A list of service accounts each with specified scopes, for which access tokens are to be made available to the instances created based on this template, through metadata queries.
+              { # A service account.
+                "scopes": [ # The list of scopes to be made available for this service account.
+                  "A String",
+                ],
+                "email": "A String", # Email address of the service account.
+              },
+            ],
+            "metadata": { # A metadata key/value entry. # Metadata key/value pairs assigned to instances created based on this template. Consists of custom metadata or predefined keys; see Instance documentation for more information.
+              "items": [ # Array of key/value pairs. The total size of all keys and values must be less than 512 KB.
+                {
+                  "value": "A String", # Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 32768 bytes.
+                  "key": "A String", # Key for the metadata entry. Keys must conform to the following regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as part of a URL in the metadata server. Additionally, to avoid ambiguity, keys must not conflict with any other metadata keys for the project.
+                },
+              ],
+              "kind": "compute#metadata", # Type of the resource.
+              "fingerprint": "A String", # Fingerprint of this resource. A hash of the metadata's contents. This field is used for optimistic locking. An up-to-date metadata fingerprint must be provided in order to modify metadata.
+            },
+            "networkInterfaces": [ # Array of configurations for this interface. This specifies how this interface is configured to interact with other network services, such as connecting to the internet. Currently, ONE_TO_ONE_NAT is the only access config supported. If there are no accessConfigs specified, then this instances created based based on this template will have no external internet access.
+              { # A network interface resource attached to an instance.
+                "accessConfigs": [ # Array of configurations for this interface. This specifies how this interface is configured to interact with other network services, such as connecting to the internet. Currently, ONE_TO_ONE_NAT is the only access config supported. If there are no accessConfigs specified, then this instance will have no external internet access.
+                  { # An access configuration attached to an instance's network interface.
+                    "kind": "compute#accessConfig", # Type of the resource.
+                    "type": "ONE_TO_ONE_NAT", # Type of configuration. Must be set to "ONE_TO_ONE_NAT". This configures port-for-port NAT to the internet.
+                    "name": "A String", # Name of this access configuration.
+                    "natIP": "A String", # An external IP address associated with this instance. Specify an unused static IP address available to the project. If not specified, the external IP will be drawn from a shared ephemeral pool.
+                  },
+                ],
+                "networkIP": "A String", # An optional IPV4 internal network address assigned to the instance for this network interface (output only).
+                "name": "A String", # Name of the network interface, determined by the server; for network devices, these are e.g. eth0, eth1, etc. (output only).
+                "network": "A String", # URL of the network resource attached to this interface.
+              },
+            ],
+          },
+          "selfLink": "A String", # Server defined URL for the resource (output only).
+          "name": "A String", # Name of the instance template resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035
+        },
+    ],
+    "kind": "compute#instanceTemplateList", # Type of resource.
+    "id": "A String", # Unique identifier for the resource; defined by the server (output only).
+    "selfLink": "A String", # Server defined URL for this resource (output only).
+  }</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/compute_v1.instances.html b/docs/dyn/compute_v1.instances.html
index 18b068a..1229dfb 100644
--- a/docs/dyn/compute_v1.instances.html
+++ b/docs/dyn/compute_v1.instances.html
@@ -219,31 +219,31 @@
             "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
             "zone": "A String", # URL of the zone where the instance resides (output only).
             "tags": { # A set of instance tags. # A list of tags to be applied to this instance. Used to identify valid sources or targets for network firewalls. Provided by the client on instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035.
-                "items": [ # An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.
-                  "A String",
-                ],
-                "fingerprint": "A String", # Fingerprint of this resource. A hash of the tags stored in this object. This field is used optimistic locking. An up-to-date tags fingerprint must be provided in order to modify tags.
-              },
+              "items": [ # An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.
+                "A String",
+              ],
+              "fingerprint": "A String", # Fingerprint of this resource. A hash of the tags stored in this object. This field is used optimistic locking. An up-to-date tags fingerprint must be provided in order to modify tags.
+            },
             "disks": [ # Array of disks associated with this instance. Persistent disks must be created before you can assign them.
               { # An instance-attached disk resource.
-                  "deviceName": "A String", # Persistent disk only; must be unique within the instance when specified. This represents a unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, a default will be chosen by the system.
-                  "kind": "compute#attachedDisk", # Type of the resource.
-                  "initializeParams": { # Initialization parameters for the new disk (input-only). Can only be specified on the boot disk or local SSDs. Mutually exclusive with 'source'. # Initialization parameters.
-                    "diskSizeGb": "A String", # Size of the disk in base-2 GB.
-                    "diskName": "A String", # Name of the disk (when not provided defaults to the name of the instance).
-                    "sourceImage": "A String", # The source image used to create this disk.
-                    "diskType": "A String", # URL of the disk type resource describing which disk type to use to create the disk; provided by the client when the disk is created.
-                  },
-                  "autoDelete": True or False, # Whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).
-                  "index": 42, # A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, the server will choose an appropriate value (output only).
-                  "boot": True or False, # Indicates that this is a boot disk. VM will use the first partition of the disk for its root filesystem.
-                  "source": "A String", # Persistent disk only; the URL of the persistent disk resource.
-                  "mode": "A String", # The mode in which to attach this disk, either "READ_WRITE" or "READ_ONLY".
-                  "licenses": [ # Public visible licenses.
-                    "A String",
-                  ],
-                  "type": "A String", # Type of the disk, either "SCRATCH" or "PERSISTENT". Note that persistent disks must be created before you can specify them here.
+                "deviceName": "A String", # Persistent disk only; must be unique within the instance when specified. This represents a unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, a default will be chosen by the system.
+                "kind": "compute#attachedDisk", # Type of the resource.
+                "initializeParams": { # Initialization parameters for the new disk (input-only). Can only be specified on the boot disk or local SSDs. Mutually exclusive with 'source'. # Initialization parameters.
+                  "diskSizeGb": "A String", # Size of the disk in base-2 GB.
+                  "diskName": "A String", # Name of the disk (when not provided defaults to the name of the instance).
+                  "sourceImage": "A String", # The source image used to create this disk.
+                  "diskType": "A String", # URL of the disk type resource describing which disk type to use to create the disk; provided by the client when the disk is created.
                 },
+                "autoDelete": True or False, # Whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).
+                "index": 42, # A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, the server will choose an appropriate value (output only).
+                "boot": True or False, # Indicates that this is a boot disk. VM will use the first partition of the disk for its root filesystem.
+                "source": "A String", # Persistent disk only; the URL of the persistent disk resource.
+                "mode": "A String", # The mode in which to attach this disk, either "READ_WRITE" or "READ_ONLY".
+                "licenses": [ # Public visible licenses.
+                  "A String",
+                ],
+                "type": "A String", # Type of the disk, either "SCRATCH" or "PERSISTENT". Note that persistent disks must be created before you can specify them here.
+              },
             ],
             "name": "A String", # Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035.
             "statusMessage": "A String", # An optional, human-readable explanation of the status (output only).
@@ -334,24 +334,24 @@
     The object takes the form of:
 
 { # An instance-attached disk resource.
-    "deviceName": "A String", # Persistent disk only; must be unique within the instance when specified. This represents a unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, a default will be chosen by the system.
-    "kind": "compute#attachedDisk", # Type of the resource.
-    "initializeParams": { # Initialization parameters for the new disk (input-only). Can only be specified on the boot disk or local SSDs. Mutually exclusive with 'source'. # Initialization parameters.
-      "diskSizeGb": "A String", # Size of the disk in base-2 GB.
-      "diskName": "A String", # Name of the disk (when not provided defaults to the name of the instance).
-      "sourceImage": "A String", # The source image used to create this disk.
-      "diskType": "A String", # URL of the disk type resource describing which disk type to use to create the disk; provided by the client when the disk is created.
-    },
-    "autoDelete": True or False, # Whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).
-    "index": 42, # A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, the server will choose an appropriate value (output only).
-    "boot": True or False, # Indicates that this is a boot disk. VM will use the first partition of the disk for its root filesystem.
-    "source": "A String", # Persistent disk only; the URL of the persistent disk resource.
-    "mode": "A String", # The mode in which to attach this disk, either "READ_WRITE" or "READ_ONLY".
-    "licenses": [ # Public visible licenses.
-      "A String",
-    ],
-    "type": "A String", # Type of the disk, either "SCRATCH" or "PERSISTENT". Note that persistent disks must be created before you can specify them here.
-  }
+  "deviceName": "A String", # Persistent disk only; must be unique within the instance when specified. This represents a unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, a default will be chosen by the system.
+  "kind": "compute#attachedDisk", # Type of the resource.
+  "initializeParams": { # Initialization parameters for the new disk (input-only). Can only be specified on the boot disk or local SSDs. Mutually exclusive with 'source'. # Initialization parameters.
+    "diskSizeGb": "A String", # Size of the disk in base-2 GB.
+    "diskName": "A String", # Name of the disk (when not provided defaults to the name of the instance).
+    "sourceImage": "A String", # The source image used to create this disk.
+    "diskType": "A String", # URL of the disk type resource describing which disk type to use to create the disk; provided by the client when the disk is created.
+  },
+  "autoDelete": True or False, # Whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).
+  "index": 42, # A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, the server will choose an appropriate value (output only).
+  "boot": True or False, # Indicates that this is a boot disk. VM will use the first partition of the disk for its root filesystem.
+  "source": "A String", # Persistent disk only; the URL of the persistent disk resource.
+  "mode": "A String", # The mode in which to attach this disk, either "READ_WRITE" or "READ_ONLY".
+  "licenses": [ # Public visible licenses.
+    "A String",
+  ],
+  "type": "A String", # Type of the disk, either "SCRATCH" or "PERSISTENT". Note that persistent disks must be created before you can specify them here.
+}
 
 
 Returns:
@@ -595,31 +595,31 @@
     "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
     "zone": "A String", # URL of the zone where the instance resides (output only).
     "tags": { # A set of instance tags. # A list of tags to be applied to this instance. Used to identify valid sources or targets for network firewalls. Provided by the client on instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035.
-        "items": [ # An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.
-          "A String",
-        ],
-        "fingerprint": "A String", # Fingerprint of this resource. A hash of the tags stored in this object. This field is used optimistic locking. An up-to-date tags fingerprint must be provided in order to modify tags.
-      },
+      "items": [ # An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.
+        "A String",
+      ],
+      "fingerprint": "A String", # Fingerprint of this resource. A hash of the tags stored in this object. This field is used optimistic locking. An up-to-date tags fingerprint must be provided in order to modify tags.
+    },
     "disks": [ # Array of disks associated with this instance. Persistent disks must be created before you can assign them.
       { # An instance-attached disk resource.
-          "deviceName": "A String", # Persistent disk only; must be unique within the instance when specified. This represents a unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, a default will be chosen by the system.
-          "kind": "compute#attachedDisk", # Type of the resource.
-          "initializeParams": { # Initialization parameters for the new disk (input-only). Can only be specified on the boot disk or local SSDs. Mutually exclusive with 'source'. # Initialization parameters.
-            "diskSizeGb": "A String", # Size of the disk in base-2 GB.
-            "diskName": "A String", # Name of the disk (when not provided defaults to the name of the instance).
-            "sourceImage": "A String", # The source image used to create this disk.
-            "diskType": "A String", # URL of the disk type resource describing which disk type to use to create the disk; provided by the client when the disk is created.
-          },
-          "autoDelete": True or False, # Whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).
-          "index": 42, # A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, the server will choose an appropriate value (output only).
-          "boot": True or False, # Indicates that this is a boot disk. VM will use the first partition of the disk for its root filesystem.
-          "source": "A String", # Persistent disk only; the URL of the persistent disk resource.
-          "mode": "A String", # The mode in which to attach this disk, either "READ_WRITE" or "READ_ONLY".
-          "licenses": [ # Public visible licenses.
-            "A String",
-          ],
-          "type": "A String", # Type of the disk, either "SCRATCH" or "PERSISTENT". Note that persistent disks must be created before you can specify them here.
+        "deviceName": "A String", # Persistent disk only; must be unique within the instance when specified. This represents a unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, a default will be chosen by the system.
+        "kind": "compute#attachedDisk", # Type of the resource.
+        "initializeParams": { # Initialization parameters for the new disk (input-only). Can only be specified on the boot disk or local SSDs. Mutually exclusive with 'source'. # Initialization parameters.
+          "diskSizeGb": "A String", # Size of the disk in base-2 GB.
+          "diskName": "A String", # Name of the disk (when not provided defaults to the name of the instance).
+          "sourceImage": "A String", # The source image used to create this disk.
+          "diskType": "A String", # URL of the disk type resource describing which disk type to use to create the disk; provided by the client when the disk is created.
         },
+        "autoDelete": True or False, # Whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).
+        "index": 42, # A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, the server will choose an appropriate value (output only).
+        "boot": True or False, # Indicates that this is a boot disk. VM will use the first partition of the disk for its root filesystem.
+        "source": "A String", # Persistent disk only; the URL of the persistent disk resource.
+        "mode": "A String", # The mode in which to attach this disk, either "READ_WRITE" or "READ_ONLY".
+        "licenses": [ # Public visible licenses.
+          "A String",
+        ],
+        "type": "A String", # Type of the disk, either "SCRATCH" or "PERSISTENT". Note that persistent disks must be created before you can specify them here.
+      },
     ],
     "name": "A String", # Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035.
     "statusMessage": "A String", # An optional, human-readable explanation of the status (output only).
@@ -703,31 +703,31 @@
   "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
   "zone": "A String", # URL of the zone where the instance resides (output only).
   "tags": { # A set of instance tags. # A list of tags to be applied to this instance. Used to identify valid sources or targets for network firewalls. Provided by the client on instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035.
-      "items": [ # An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.
-        "A String",
-      ],
-      "fingerprint": "A String", # Fingerprint of this resource. A hash of the tags stored in this object. This field is used optimistic locking. An up-to-date tags fingerprint must be provided in order to modify tags.
-    },
+    "items": [ # An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.
+      "A String",
+    ],
+    "fingerprint": "A String", # Fingerprint of this resource. A hash of the tags stored in this object. This field is used optimistic locking. An up-to-date tags fingerprint must be provided in order to modify tags.
+  },
   "disks": [ # Array of disks associated with this instance. Persistent disks must be created before you can assign them.
     { # An instance-attached disk resource.
-        "deviceName": "A String", # Persistent disk only; must be unique within the instance when specified. This represents a unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, a default will be chosen by the system.
-        "kind": "compute#attachedDisk", # Type of the resource.
-        "initializeParams": { # Initialization parameters for the new disk (input-only). Can only be specified on the boot disk or local SSDs. Mutually exclusive with 'source'. # Initialization parameters.
-          "diskSizeGb": "A String", # Size of the disk in base-2 GB.
-          "diskName": "A String", # Name of the disk (when not provided defaults to the name of the instance).
-          "sourceImage": "A String", # The source image used to create this disk.
-          "diskType": "A String", # URL of the disk type resource describing which disk type to use to create the disk; provided by the client when the disk is created.
-        },
-        "autoDelete": True or False, # Whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).
-        "index": 42, # A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, the server will choose an appropriate value (output only).
-        "boot": True or False, # Indicates that this is a boot disk. VM will use the first partition of the disk for its root filesystem.
-        "source": "A String", # Persistent disk only; the URL of the persistent disk resource.
-        "mode": "A String", # The mode in which to attach this disk, either "READ_WRITE" or "READ_ONLY".
-        "licenses": [ # Public visible licenses.
-          "A String",
-        ],
-        "type": "A String", # Type of the disk, either "SCRATCH" or "PERSISTENT". Note that persistent disks must be created before you can specify them here.
+      "deviceName": "A String", # Persistent disk only; must be unique within the instance when specified. This represents a unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, a default will be chosen by the system.
+      "kind": "compute#attachedDisk", # Type of the resource.
+      "initializeParams": { # Initialization parameters for the new disk (input-only). Can only be specified on the boot disk or local SSDs. Mutually exclusive with 'source'. # Initialization parameters.
+        "diskSizeGb": "A String", # Size of the disk in base-2 GB.
+        "diskName": "A String", # Name of the disk (when not provided defaults to the name of the instance).
+        "sourceImage": "A String", # The source image used to create this disk.
+        "diskType": "A String", # URL of the disk type resource describing which disk type to use to create the disk; provided by the client when the disk is created.
       },
+      "autoDelete": True or False, # Whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).
+      "index": 42, # A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, the server will choose an appropriate value (output only).
+      "boot": True or False, # Indicates that this is a boot disk. VM will use the first partition of the disk for its root filesystem.
+      "source": "A String", # Persistent disk only; the URL of the persistent disk resource.
+      "mode": "A String", # The mode in which to attach this disk, either "READ_WRITE" or "READ_ONLY".
+      "licenses": [ # Public visible licenses.
+        "A String",
+      ],
+      "type": "A String", # Type of the disk, either "SCRATCH" or "PERSISTENT". Note that persistent disks must be created before you can specify them here.
+    },
   ],
   "name": "A String", # Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035.
   "statusMessage": "A String", # An optional, human-readable explanation of the status (output only).
@@ -847,31 +847,31 @@
         "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
         "zone": "A String", # URL of the zone where the instance resides (output only).
         "tags": { # A set of instance tags. # A list of tags to be applied to this instance. Used to identify valid sources or targets for network firewalls. Provided by the client on instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035.
-            "items": [ # An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.
-              "A String",
-            ],
-            "fingerprint": "A String", # Fingerprint of this resource. A hash of the tags stored in this object. This field is used optimistic locking. An up-to-date tags fingerprint must be provided in order to modify tags.
-          },
+          "items": [ # An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.
+            "A String",
+          ],
+          "fingerprint": "A String", # Fingerprint of this resource. A hash of the tags stored in this object. This field is used optimistic locking. An up-to-date tags fingerprint must be provided in order to modify tags.
+        },
         "disks": [ # Array of disks associated with this instance. Persistent disks must be created before you can assign them.
           { # An instance-attached disk resource.
-              "deviceName": "A String", # Persistent disk only; must be unique within the instance when specified. This represents a unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, a default will be chosen by the system.
-              "kind": "compute#attachedDisk", # Type of the resource.
-              "initializeParams": { # Initialization parameters for the new disk (input-only). Can only be specified on the boot disk or local SSDs. Mutually exclusive with 'source'. # Initialization parameters.
-                "diskSizeGb": "A String", # Size of the disk in base-2 GB.
-                "diskName": "A String", # Name of the disk (when not provided defaults to the name of the instance).
-                "sourceImage": "A String", # The source image used to create this disk.
-                "diskType": "A String", # URL of the disk type resource describing which disk type to use to create the disk; provided by the client when the disk is created.
-              },
-              "autoDelete": True or False, # Whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).
-              "index": 42, # A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, the server will choose an appropriate value (output only).
-              "boot": True or False, # Indicates that this is a boot disk. VM will use the first partition of the disk for its root filesystem.
-              "source": "A String", # Persistent disk only; the URL of the persistent disk resource.
-              "mode": "A String", # The mode in which to attach this disk, either "READ_WRITE" or "READ_ONLY".
-              "licenses": [ # Public visible licenses.
-                "A String",
-              ],
-              "type": "A String", # Type of the disk, either "SCRATCH" or "PERSISTENT". Note that persistent disks must be created before you can specify them here.
+            "deviceName": "A String", # Persistent disk only; must be unique within the instance when specified. This represents a unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, a default will be chosen by the system.
+            "kind": "compute#attachedDisk", # Type of the resource.
+            "initializeParams": { # Initialization parameters for the new disk (input-only). Can only be specified on the boot disk or local SSDs. Mutually exclusive with 'source'. # Initialization parameters.
+              "diskSizeGb": "A String", # Size of the disk in base-2 GB.
+              "diskName": "A String", # Name of the disk (when not provided defaults to the name of the instance).
+              "sourceImage": "A String", # The source image used to create this disk.
+              "diskType": "A String", # URL of the disk type resource describing which disk type to use to create the disk; provided by the client when the disk is created.
             },
+            "autoDelete": True or False, # Whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).
+            "index": 42, # A zero-based index to assign to this disk, where 0 is reserved for the boot disk. If not specified, the server will choose an appropriate value (output only).
+            "boot": True or False, # Indicates that this is a boot disk. VM will use the first partition of the disk for its root filesystem.
+            "source": "A String", # Persistent disk only; the URL of the persistent disk resource.
+            "mode": "A String", # The mode in which to attach this disk, either "READ_WRITE" or "READ_ONLY".
+            "licenses": [ # Public visible licenses.
+              "A String",
+            ],
+            "type": "A String", # Type of the disk, either "SCRATCH" or "PERSISTENT". Note that persistent disks must be created before you can specify them here.
+          },
         ],
         "name": "A String", # Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035.
         "statusMessage": "A String", # An optional, human-readable explanation of the status (output only).
@@ -1202,11 +1202,11 @@
     The object takes the form of:
 
 { # A set of instance tags.
-    "items": [ # An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.
-      "A String",
-    ],
-    "fingerprint": "A String", # Fingerprint of this resource. A hash of the tags stored in this object. This field is used optimistic locking. An up-to-date tags fingerprint must be provided in order to modify tags.
-  }
+  "items": [ # An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.
+    "A String",
+  ],
+  "fingerprint": "A String", # Fingerprint of this resource. A hash of the tags stored in this object. This field is used optimistic locking. An up-to-date tags fingerprint must be provided in order to modify tags.
+}
 
 
 Returns:
diff --git a/docs/dyn/compute_v1.licenses.html b/docs/dyn/compute_v1.licenses.html
index 97fe4a4..cb62619 100644
--- a/docs/dyn/compute_v1.licenses.html
+++ b/docs/dyn/compute_v1.licenses.html
@@ -90,6 +90,7 @@
   An object of the form:
 
     { # A license resource.
+    "chargesUseFee": True or False, # If true, the customer will be charged license fee for running software that contains this license on an instance.
     "kind": "compute#license", # Type of resource.
     "name": "A String", # Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035.
     "selfLink": "A String", # Server defined URL for the resource (output only).
diff --git a/docs/dyn/compute_v1.snapshots.html b/docs/dyn/compute_v1.snapshots.html
index a65110f..285045c 100644
--- a/docs/dyn/compute_v1.snapshots.html
+++ b/docs/dyn/compute_v1.snapshots.html
@@ -159,7 +159,7 @@
       "kind": "compute#snapshot", # Type of the resource.
       "storageBytes": "A String", # A size of the the storage used by the snapshot. As snapshots share storage this number is expected to change with snapshot creation/deletion.
       "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
-      "sourceDisk": "A String", # The source disk used to create this snapshot. Once the source disk has been deleted from the system, this field will be cleared, and will not be set even if a disk with the same name has been re-created (output only).
+      "sourceDisk": "A String", # The source disk used to create this snapshot.
       "storageBytesStatus": "A String", # An indicator whether storageBytes is in a stable state, or it is being adjusted as a result of shared storage reallocation.
       "sourceDiskId": "A String", # The 'id' value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
       "diskSizeGb": "A String", # Size of the persistent disk snapshot, specified in GB (output only).
@@ -194,7 +194,7 @@
           "kind": "compute#snapshot", # Type of the resource.
           "storageBytes": "A String", # A size of the the storage used by the snapshot. As snapshots share storage this number is expected to change with snapshot creation/deletion.
           "description": "A String", # An optional textual description of the resource; provided by the client when the resource is created.
-          "sourceDisk": "A String", # The source disk used to create this snapshot. Once the source disk has been deleted from the system, this field will be cleared, and will not be set even if a disk with the same name has been re-created (output only).
+          "sourceDisk": "A String", # The source disk used to create this snapshot.
           "storageBytesStatus": "A String", # An indicator whether storageBytes is in a stable state, or it is being adjusted as a result of shared storage reallocation.
           "sourceDiskId": "A String", # The 'id' value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name.
           "diskSizeGb": "A String", # Size of the persistent disk snapshot, specified in GB (output only).
diff --git a/docs/dyn/compute_v1.targetPools.html b/docs/dyn/compute_v1.targetPools.html
index 0c005f8..8732108 100644
--- a/docs/dyn/compute_v1.targetPools.html
+++ b/docs/dyn/compute_v1.targetPools.html
@@ -450,6 +450,7 @@
         "instance": "A String", # URL of the instance resource.
         "healthState": "A String", # Health state of the instance.
         "ipAddress": "A String", # The IP address represented by this resource.
+        "port": 42, # The port on the instance.
       },
     ],
   }</pre>
diff --git a/docs/dyn/content_v2.datafeedstatuses.html b/docs/dyn/content_v2.datafeedstatuses.html
index 61d173d..6644156 100644
--- a/docs/dyn/content_v2.datafeedstatuses.html
+++ b/docs/dyn/content_v2.datafeedstatuses.html
@@ -127,35 +127,35 @@
           "kind": "content#datafeedStatus", # Identifies what kind of resource this is. Value: the fixed string "content#datafeedStatus".
           "errors": [ # The list of errors occurring in the feed.
             { # An error occurring in the feed, like "invalid price".
-              "count": 42, # The number of occurrences of the error in the feed.
+              "count": "A String", # The number of occurrences of the error in the feed.
               "message": "A String", # The error message, e.g., "Invalid price".
               "code": "A String", # The code of the error, e.g., "validation/invalid_value".
               "examples": [ # A list of example occurrences of the error, grouped by product.
                 { # An example occurrence for a particular error.
                   "itemId": "A String", # The ID of the example item.
                   "value": "A String", # The problematic value.
-                  "lineNumber": 42, # Line number in the data feed where the example is found.
+                  "lineNumber": "A String", # Line number in the data feed where the example is found.
                 },
               ],
             },
           ],
           "processingStatus": "A String", # The processing status of the feed.
-          "itemsTotal": 42, # The number of items in the feed that were processed.
+          "itemsTotal": "A String", # The number of items in the feed that were processed.
           "warnings": [ # The list of errors occurring in the feed.
             { # An error occurring in the feed, like "invalid price".
-              "count": 42, # The number of occurrences of the error in the feed.
+              "count": "A String", # The number of occurrences of the error in the feed.
               "message": "A String", # The error message, e.g., "Invalid price".
               "code": "A String", # The code of the error, e.g., "validation/invalid_value".
               "examples": [ # A list of example occurrences of the error, grouped by product.
                 { # An example occurrence for a particular error.
                   "itemId": "A String", # The ID of the example item.
                   "value": "A String", # The problematic value.
-                  "lineNumber": 42, # Line number in the data feed where the example is found.
+                  "lineNumber": "A String", # Line number in the data feed where the example is found.
                 },
               ],
             },
           ],
-          "itemsValid": 42, # The number of items in the feed that were valid.
+          "itemsValid": "A String", # The number of items in the feed that were valid.
           "datafeedId": "A String", # The ID of the feed for which the status is reported.
         },
       },
@@ -178,35 +178,35 @@
     "kind": "content#datafeedStatus", # Identifies what kind of resource this is. Value: the fixed string "content#datafeedStatus".
     "errors": [ # The list of errors occurring in the feed.
       { # An error occurring in the feed, like "invalid price".
-        "count": 42, # The number of occurrences of the error in the feed.
+        "count": "A String", # The number of occurrences of the error in the feed.
         "message": "A String", # The error message, e.g., "Invalid price".
         "code": "A String", # The code of the error, e.g., "validation/invalid_value".
         "examples": [ # A list of example occurrences of the error, grouped by product.
           { # An example occurrence for a particular error.
             "itemId": "A String", # The ID of the example item.
             "value": "A String", # The problematic value.
-            "lineNumber": 42, # Line number in the data feed where the example is found.
+            "lineNumber": "A String", # Line number in the data feed where the example is found.
           },
         ],
       },
     ],
     "processingStatus": "A String", # The processing status of the feed.
-    "itemsTotal": 42, # The number of items in the feed that were processed.
+    "itemsTotal": "A String", # The number of items in the feed that were processed.
     "warnings": [ # The list of errors occurring in the feed.
       { # An error occurring in the feed, like "invalid price".
-        "count": 42, # The number of occurrences of the error in the feed.
+        "count": "A String", # The number of occurrences of the error in the feed.
         "message": "A String", # The error message, e.g., "Invalid price".
         "code": "A String", # The code of the error, e.g., "validation/invalid_value".
         "examples": [ # A list of example occurrences of the error, grouped by product.
           { # An example occurrence for a particular error.
             "itemId": "A String", # The ID of the example item.
             "value": "A String", # The problematic value.
-            "lineNumber": 42, # Line number in the data feed where the example is found.
+            "lineNumber": "A String", # Line number in the data feed where the example is found.
           },
         ],
       },
     ],
-    "itemsValid": 42, # The number of items in the feed that were valid.
+    "itemsValid": "A String", # The number of items in the feed that were valid.
     "datafeedId": "A String", # The ID of the feed for which the status is reported.
   }</pre>
 </div>
@@ -228,35 +228,35 @@
         "kind": "content#datafeedStatus", # Identifies what kind of resource this is. Value: the fixed string "content#datafeedStatus".
         "errors": [ # The list of errors occurring in the feed.
           { # An error occurring in the feed, like "invalid price".
-            "count": 42, # The number of occurrences of the error in the feed.
+            "count": "A String", # The number of occurrences of the error in the feed.
             "message": "A String", # The error message, e.g., "Invalid price".
             "code": "A String", # The code of the error, e.g., "validation/invalid_value".
             "examples": [ # A list of example occurrences of the error, grouped by product.
               { # An example occurrence for a particular error.
                 "itemId": "A String", # The ID of the example item.
                 "value": "A String", # The problematic value.
-                "lineNumber": 42, # Line number in the data feed where the example is found.
+                "lineNumber": "A String", # Line number in the data feed where the example is found.
               },
             ],
           },
         ],
         "processingStatus": "A String", # The processing status of the feed.
-        "itemsTotal": 42, # The number of items in the feed that were processed.
+        "itemsTotal": "A String", # The number of items in the feed that were processed.
         "warnings": [ # The list of errors occurring in the feed.
           { # An error occurring in the feed, like "invalid price".
-            "count": 42, # The number of occurrences of the error in the feed.
+            "count": "A String", # The number of occurrences of the error in the feed.
             "message": "A String", # The error message, e.g., "Invalid price".
             "code": "A String", # The code of the error, e.g., "validation/invalid_value".
             "examples": [ # A list of example occurrences of the error, grouped by product.
               { # An example occurrence for a particular error.
                 "itemId": "A String", # The ID of the example item.
                 "value": "A String", # The problematic value.
-                "lineNumber": 42, # Line number in the data feed where the example is found.
+                "lineNumber": "A String", # Line number in the data feed where the example is found.
               },
             ],
           },
         ],
-        "itemsValid": 42, # The number of items in the feed that were valid.
+        "itemsValid": "A String", # The number of items in the feed that were valid.
         "datafeedId": "A String", # The ID of the feed for which the status is reported.
       },
     ],
diff --git a/docs/dyn/content_v2.products.html b/docs/dyn/content_v2.products.html
index f541fa4..bdfe5b5 100644
--- a/docs/dyn/content_v2.products.html
+++ b/docs/dyn/content_v2.products.html
@@ -117,9 +117,9 @@
             "itemGroupId": "A String", # Shared identifier for all variants of the same product.
             "gtin": "A String", # Global Trade Item Number (GTIN) of the item.
             "expirationDate": "A String", # Date that an item will expire.
-            "merchantMultipackQuantity": "A String", # The number of identical products in a merchant-defined multipack.
             "googleProductCategory": "A String", # Google's category of the item.
             "id": "A String", # The REST id of the product.
+            "multipack": "A String", # The number of identical products in a merchant-defined multipack.
             "availabilityDate": "A String", # The day a pre-ordered product becomes available for delivery.
             "adwordsGrouping": "A String", # Used to group items in an arbitrary way. Only for CPA%, discouraged otherwise.
             "destinations": [ # Specifies the intended destinations for the product.
@@ -133,7 +133,10 @@
             "offerId": "A String", # An identifier of the item.
             "title": "A String", # Title of the item.
             "pattern": "A String", # The item's pattern (e.g. polka dots).
-            "unitPricingMeasure": "A String", # The measure and dimension of an item.
+            "unitPricingMeasure": { # The measure and dimension of an item.
+              "value": 3.14, # The measure of an item.
+              "unit": "A String", # The unit of the measure.
+            },
             "imageLink": "A String", # URL of an image of the item.
             "validatedDestinations": [ # The read-only list of intended destinations which passed validation.
               "A String",
@@ -169,8 +172,10 @@
             "taxes": [ # Tax information.
               {
                 "country": "A String", # The country within which the item is taxed, specified with a two-letter ISO 3166 country code.
-                "rate": 3.14, # The percentage of tax rate that applies to the item price.
                 "region": "A String", # The geographic region to which the tax rate applies.
+                "rate": 3.14, # The percentage of tax rate that applies to the item price.
+                "locationId": "A String", # The numeric id of a location that the tax rate applies to as defined in the Adwords API (https://developers.google.com/adwords/api/docs/appendix/geotargeting).
+                "postalCode": "A String", # The postal code range that the tax rate applies to, represented by a ZIP code, a ZIP code prefix using * wildcard, a range between two ZIP codes or two ZIP code prefixes of equal length. Examples: 94114, 94*, 94002-95460, 94*-95*.
                 "taxShip": True or False, # Set to true if tax is charged on shipping.
               },
             ],
@@ -195,6 +200,7 @@
             ],
             "condition": "A String", # Condition or state of the item.
             "customLabel0": "A String", # Custom label 0 for custom grouping of items in a Shopping campaign.
+            "shippingLabel": "A String", # The shipping label of the product, used to group product in account-level shipping rules.
             "kind": "content#product", # Identifies what kind of resource this is. Value: the fixed string "content#product".
             "installment": { # Number and amount of installments to pay for an item. Brazil only.
               "amount": { # The amount the buyer has to pay per month.
@@ -209,13 +215,16 @@
             "gender": "A String", # Target gender of the item.
             "shipping": [ # Shipping rules.
               {
+                "service": "A String", # A free-form description of the service class or delivery speed.
                 "country": "A String", # The two-letter ISO 3166 country code for the country to which an item will ship.
                 "price": { # Fixed shipping price, represented as a number.
                   "currency": "A String", # The currency of the price.
                   "value": "A String", # The price represented as a number.
                 },
+                "locationId": "A String", # The numeric id of a location that the shipping rate applies to as defined in the AdWords API.
+                "postalCode": "A String", # The postal code range that the shipping rate applies to, represented by a postal code, a postal code prefix using * wildcard, a range between two postal codes or two postal code prefixes of equal length.
                 "region": "A String", # The geographic region to which a shipping rate applies (e.g. zip code).
-                "service": "A String", # A free-form description of the service class or delivery speed.
+                "locationGroupName": "A String", # The location where the shipping is applicable, represented by a location group name.
               },
             ],
             "shippingWeight": { # Weight of the item for shipping.
@@ -236,7 +245,10 @@
               "value": "A String", # The price represented as a number.
             },
             "productType": "A String", # Your category of the item.
-            "unitPricingBaseMeasure": "A String", # The preference of the denominator of the unit price.
+            "unitPricingBaseMeasure": { # The preference of the denominator of the unit price.
+              "value": "A String", # The denominator of the unit price.
+              "unit": "A String", # The unit of the denominator.
+            },
             "ageGroup": "A String", # Target age group of the item.
             "adult": True or False, # Set to true if the item is targeted towards adults.
           },
@@ -281,9 +293,9 @@
             "itemGroupId": "A String", # Shared identifier for all variants of the same product.
             "gtin": "A String", # Global Trade Item Number (GTIN) of the item.
             "expirationDate": "A String", # Date that an item will expire.
-            "merchantMultipackQuantity": "A String", # The number of identical products in a merchant-defined multipack.
             "googleProductCategory": "A String", # Google's category of the item.
             "id": "A String", # The REST id of the product.
+            "multipack": "A String", # The number of identical products in a merchant-defined multipack.
             "availabilityDate": "A String", # The day a pre-ordered product becomes available for delivery.
             "adwordsGrouping": "A String", # Used to group items in an arbitrary way. Only for CPA%, discouraged otherwise.
             "destinations": [ # Specifies the intended destinations for the product.
@@ -297,7 +309,10 @@
             "offerId": "A String", # An identifier of the item.
             "title": "A String", # Title of the item.
             "pattern": "A String", # The item's pattern (e.g. polka dots).
-            "unitPricingMeasure": "A String", # The measure and dimension of an item.
+            "unitPricingMeasure": { # The measure and dimension of an item.
+              "value": 3.14, # The measure of an item.
+              "unit": "A String", # The unit of the measure.
+            },
             "imageLink": "A String", # URL of an image of the item.
             "validatedDestinations": [ # The read-only list of intended destinations which passed validation.
               "A String",
@@ -333,8 +348,10 @@
             "taxes": [ # Tax information.
               {
                 "country": "A String", # The country within which the item is taxed, specified with a two-letter ISO 3166 country code.
-                "rate": 3.14, # The percentage of tax rate that applies to the item price.
                 "region": "A String", # The geographic region to which the tax rate applies.
+                "rate": 3.14, # The percentage of tax rate that applies to the item price.
+                "locationId": "A String", # The numeric id of a location that the tax rate applies to as defined in the Adwords API (https://developers.google.com/adwords/api/docs/appendix/geotargeting).
+                "postalCode": "A String", # The postal code range that the tax rate applies to, represented by a ZIP code, a ZIP code prefix using * wildcard, a range between two ZIP codes or two ZIP code prefixes of equal length. Examples: 94114, 94*, 94002-95460, 94*-95*.
                 "taxShip": True or False, # Set to true if tax is charged on shipping.
               },
             ],
@@ -359,6 +376,7 @@
             ],
             "condition": "A String", # Condition or state of the item.
             "customLabel0": "A String", # Custom label 0 for custom grouping of items in a Shopping campaign.
+            "shippingLabel": "A String", # The shipping label of the product, used to group product in account-level shipping rules.
             "kind": "content#product", # Identifies what kind of resource this is. Value: the fixed string "content#product".
             "installment": { # Number and amount of installments to pay for an item. Brazil only.
               "amount": { # The amount the buyer has to pay per month.
@@ -373,13 +391,16 @@
             "gender": "A String", # Target gender of the item.
             "shipping": [ # Shipping rules.
               {
+                "service": "A String", # A free-form description of the service class or delivery speed.
                 "country": "A String", # The two-letter ISO 3166 country code for the country to which an item will ship.
                 "price": { # Fixed shipping price, represented as a number.
                   "currency": "A String", # The currency of the price.
                   "value": "A String", # The price represented as a number.
                 },
+                "locationId": "A String", # The numeric id of a location that the shipping rate applies to as defined in the AdWords API.
+                "postalCode": "A String", # The postal code range that the shipping rate applies to, represented by a postal code, a postal code prefix using * wildcard, a range between two postal codes or two postal code prefixes of equal length.
                 "region": "A String", # The geographic region to which a shipping rate applies (e.g. zip code).
-                "service": "A String", # A free-form description of the service class or delivery speed.
+                "locationGroupName": "A String", # The location where the shipping is applicable, represented by a location group name.
               },
             ],
             "shippingWeight": { # Weight of the item for shipping.
@@ -400,7 +421,10 @@
               "value": "A String", # The price represented as a number.
             },
             "productType": "A String", # Your category of the item.
-            "unitPricingBaseMeasure": "A String", # The preference of the denominator of the unit price.
+            "unitPricingBaseMeasure": { # The preference of the denominator of the unit price.
+              "value": "A String", # The denominator of the unit price.
+              "unit": "A String", # The unit of the denominator.
+            },
             "ageGroup": "A String", # Target age group of the item.
             "adult": True or False, # Set to true if the item is targeted towards adults.
           },
@@ -443,9 +467,9 @@
       "itemGroupId": "A String", # Shared identifier for all variants of the same product.
       "gtin": "A String", # Global Trade Item Number (GTIN) of the item.
       "expirationDate": "A String", # Date that an item will expire.
-      "merchantMultipackQuantity": "A String", # The number of identical products in a merchant-defined multipack.
       "googleProductCategory": "A String", # Google's category of the item.
       "id": "A String", # The REST id of the product.
+      "multipack": "A String", # The number of identical products in a merchant-defined multipack.
       "availabilityDate": "A String", # The day a pre-ordered product becomes available for delivery.
       "adwordsGrouping": "A String", # Used to group items in an arbitrary way. Only for CPA%, discouraged otherwise.
       "destinations": [ # Specifies the intended destinations for the product.
@@ -459,7 +483,10 @@
       "offerId": "A String", # An identifier of the item.
       "title": "A String", # Title of the item.
       "pattern": "A String", # The item's pattern (e.g. polka dots).
-      "unitPricingMeasure": "A String", # The measure and dimension of an item.
+      "unitPricingMeasure": { # The measure and dimension of an item.
+        "value": 3.14, # The measure of an item.
+        "unit": "A String", # The unit of the measure.
+      },
       "imageLink": "A String", # URL of an image of the item.
       "validatedDestinations": [ # The read-only list of intended destinations which passed validation.
         "A String",
@@ -495,8 +522,10 @@
       "taxes": [ # Tax information.
         {
           "country": "A String", # The country within which the item is taxed, specified with a two-letter ISO 3166 country code.
-          "rate": 3.14, # The percentage of tax rate that applies to the item price.
           "region": "A String", # The geographic region to which the tax rate applies.
+          "rate": 3.14, # The percentage of tax rate that applies to the item price.
+          "locationId": "A String", # The numeric id of a location that the tax rate applies to as defined in the Adwords API (https://developers.google.com/adwords/api/docs/appendix/geotargeting).
+          "postalCode": "A String", # The postal code range that the tax rate applies to, represented by a ZIP code, a ZIP code prefix using * wildcard, a range between two ZIP codes or two ZIP code prefixes of equal length. Examples: 94114, 94*, 94002-95460, 94*-95*.
           "taxShip": True or False, # Set to true if tax is charged on shipping.
         },
       ],
@@ -521,6 +550,7 @@
       ],
       "condition": "A String", # Condition or state of the item.
       "customLabel0": "A String", # Custom label 0 for custom grouping of items in a Shopping campaign.
+      "shippingLabel": "A String", # The shipping label of the product, used to group product in account-level shipping rules.
       "kind": "content#product", # Identifies what kind of resource this is. Value: the fixed string "content#product".
       "installment": { # Number and amount of installments to pay for an item. Brazil only.
         "amount": { # The amount the buyer has to pay per month.
@@ -535,13 +565,16 @@
       "gender": "A String", # Target gender of the item.
       "shipping": [ # Shipping rules.
         {
+          "service": "A String", # A free-form description of the service class or delivery speed.
           "country": "A String", # The two-letter ISO 3166 country code for the country to which an item will ship.
           "price": { # Fixed shipping price, represented as a number.
             "currency": "A String", # The currency of the price.
             "value": "A String", # The price represented as a number.
           },
+          "locationId": "A String", # The numeric id of a location that the shipping rate applies to as defined in the AdWords API.
+          "postalCode": "A String", # The postal code range that the shipping rate applies to, represented by a postal code, a postal code prefix using * wildcard, a range between two postal codes or two postal code prefixes of equal length.
           "region": "A String", # The geographic region to which a shipping rate applies (e.g. zip code).
-          "service": "A String", # A free-form description of the service class or delivery speed.
+          "locationGroupName": "A String", # The location where the shipping is applicable, represented by a location group name.
         },
       ],
       "shippingWeight": { # Weight of the item for shipping.
@@ -562,7 +595,10 @@
         "value": "A String", # The price represented as a number.
       },
       "productType": "A String", # Your category of the item.
-      "unitPricingBaseMeasure": "A String", # The preference of the denominator of the unit price.
+      "unitPricingBaseMeasure": { # The preference of the denominator of the unit price.
+        "value": "A String", # The denominator of the unit price.
+        "unit": "A String", # The unit of the denominator.
+      },
       "ageGroup": "A String", # Target age group of the item.
       "adult": True or False, # Set to true if the item is targeted towards adults.
     }</pre>
@@ -589,9 +625,9 @@
     "itemGroupId": "A String", # Shared identifier for all variants of the same product.
     "gtin": "A String", # Global Trade Item Number (GTIN) of the item.
     "expirationDate": "A String", # Date that an item will expire.
-    "merchantMultipackQuantity": "A String", # The number of identical products in a merchant-defined multipack.
     "googleProductCategory": "A String", # Google's category of the item.
     "id": "A String", # The REST id of the product.
+    "multipack": "A String", # The number of identical products in a merchant-defined multipack.
     "availabilityDate": "A String", # The day a pre-ordered product becomes available for delivery.
     "adwordsGrouping": "A String", # Used to group items in an arbitrary way. Only for CPA%, discouraged otherwise.
     "destinations": [ # Specifies the intended destinations for the product.
@@ -605,7 +641,10 @@
     "offerId": "A String", # An identifier of the item.
     "title": "A String", # Title of the item.
     "pattern": "A String", # The item's pattern (e.g. polka dots).
-    "unitPricingMeasure": "A String", # The measure and dimension of an item.
+    "unitPricingMeasure": { # The measure and dimension of an item.
+      "value": 3.14, # The measure of an item.
+      "unit": "A String", # The unit of the measure.
+    },
     "imageLink": "A String", # URL of an image of the item.
     "validatedDestinations": [ # The read-only list of intended destinations which passed validation.
       "A String",
@@ -641,8 +680,10 @@
     "taxes": [ # Tax information.
       {
         "country": "A String", # The country within which the item is taxed, specified with a two-letter ISO 3166 country code.
-        "rate": 3.14, # The percentage of tax rate that applies to the item price.
         "region": "A String", # The geographic region to which the tax rate applies.
+        "rate": 3.14, # The percentage of tax rate that applies to the item price.
+        "locationId": "A String", # The numeric id of a location that the tax rate applies to as defined in the Adwords API (https://developers.google.com/adwords/api/docs/appendix/geotargeting).
+        "postalCode": "A String", # The postal code range that the tax rate applies to, represented by a ZIP code, a ZIP code prefix using * wildcard, a range between two ZIP codes or two ZIP code prefixes of equal length. Examples: 94114, 94*, 94002-95460, 94*-95*.
         "taxShip": True or False, # Set to true if tax is charged on shipping.
       },
     ],
@@ -667,6 +708,7 @@
     ],
     "condition": "A String", # Condition or state of the item.
     "customLabel0": "A String", # Custom label 0 for custom grouping of items in a Shopping campaign.
+    "shippingLabel": "A String", # The shipping label of the product, used to group product in account-level shipping rules.
     "kind": "content#product", # Identifies what kind of resource this is. Value: the fixed string "content#product".
     "installment": { # Number and amount of installments to pay for an item. Brazil only.
       "amount": { # The amount the buyer has to pay per month.
@@ -681,13 +723,16 @@
     "gender": "A String", # Target gender of the item.
     "shipping": [ # Shipping rules.
       {
+        "service": "A String", # A free-form description of the service class or delivery speed.
         "country": "A String", # The two-letter ISO 3166 country code for the country to which an item will ship.
         "price": { # Fixed shipping price, represented as a number.
           "currency": "A String", # The currency of the price.
           "value": "A String", # The price represented as a number.
         },
+        "locationId": "A String", # The numeric id of a location that the shipping rate applies to as defined in the AdWords API.
+        "postalCode": "A String", # The postal code range that the shipping rate applies to, represented by a postal code, a postal code prefix using * wildcard, a range between two postal codes or two postal code prefixes of equal length.
         "region": "A String", # The geographic region to which a shipping rate applies (e.g. zip code).
-        "service": "A String", # A free-form description of the service class or delivery speed.
+        "locationGroupName": "A String", # The location where the shipping is applicable, represented by a location group name.
       },
     ],
     "shippingWeight": { # Weight of the item for shipping.
@@ -708,7 +753,10 @@
       "value": "A String", # The price represented as a number.
     },
     "productType": "A String", # Your category of the item.
-    "unitPricingBaseMeasure": "A String", # The preference of the denominator of the unit price.
+    "unitPricingBaseMeasure": { # The preference of the denominator of the unit price.
+      "value": "A String", # The denominator of the unit price.
+      "unit": "A String", # The unit of the denominator.
+    },
     "ageGroup": "A String", # Target age group of the item.
     "adult": True or False, # Set to true if the item is targeted towards adults.
   }
@@ -730,9 +778,9 @@
       "itemGroupId": "A String", # Shared identifier for all variants of the same product.
       "gtin": "A String", # Global Trade Item Number (GTIN) of the item.
       "expirationDate": "A String", # Date that an item will expire.
-      "merchantMultipackQuantity": "A String", # The number of identical products in a merchant-defined multipack.
       "googleProductCategory": "A String", # Google's category of the item.
       "id": "A String", # The REST id of the product.
+      "multipack": "A String", # The number of identical products in a merchant-defined multipack.
       "availabilityDate": "A String", # The day a pre-ordered product becomes available for delivery.
       "adwordsGrouping": "A String", # Used to group items in an arbitrary way. Only for CPA%, discouraged otherwise.
       "destinations": [ # Specifies the intended destinations for the product.
@@ -746,7 +794,10 @@
       "offerId": "A String", # An identifier of the item.
       "title": "A String", # Title of the item.
       "pattern": "A String", # The item's pattern (e.g. polka dots).
-      "unitPricingMeasure": "A String", # The measure and dimension of an item.
+      "unitPricingMeasure": { # The measure and dimension of an item.
+        "value": 3.14, # The measure of an item.
+        "unit": "A String", # The unit of the measure.
+      },
       "imageLink": "A String", # URL of an image of the item.
       "validatedDestinations": [ # The read-only list of intended destinations which passed validation.
         "A String",
@@ -782,8 +833,10 @@
       "taxes": [ # Tax information.
         {
           "country": "A String", # The country within which the item is taxed, specified with a two-letter ISO 3166 country code.
-          "rate": 3.14, # The percentage of tax rate that applies to the item price.
           "region": "A String", # The geographic region to which the tax rate applies.
+          "rate": 3.14, # The percentage of tax rate that applies to the item price.
+          "locationId": "A String", # The numeric id of a location that the tax rate applies to as defined in the Adwords API (https://developers.google.com/adwords/api/docs/appendix/geotargeting).
+          "postalCode": "A String", # The postal code range that the tax rate applies to, represented by a ZIP code, a ZIP code prefix using * wildcard, a range between two ZIP codes or two ZIP code prefixes of equal length. Examples: 94114, 94*, 94002-95460, 94*-95*.
           "taxShip": True or False, # Set to true if tax is charged on shipping.
         },
       ],
@@ -808,6 +861,7 @@
       ],
       "condition": "A String", # Condition or state of the item.
       "customLabel0": "A String", # Custom label 0 for custom grouping of items in a Shopping campaign.
+      "shippingLabel": "A String", # The shipping label of the product, used to group product in account-level shipping rules.
       "kind": "content#product", # Identifies what kind of resource this is. Value: the fixed string "content#product".
       "installment": { # Number and amount of installments to pay for an item. Brazil only.
         "amount": { # The amount the buyer has to pay per month.
@@ -822,13 +876,16 @@
       "gender": "A String", # Target gender of the item.
       "shipping": [ # Shipping rules.
         {
+          "service": "A String", # A free-form description of the service class or delivery speed.
           "country": "A String", # The two-letter ISO 3166 country code for the country to which an item will ship.
           "price": { # Fixed shipping price, represented as a number.
             "currency": "A String", # The currency of the price.
             "value": "A String", # The price represented as a number.
           },
+          "locationId": "A String", # The numeric id of a location that the shipping rate applies to as defined in the AdWords API.
+          "postalCode": "A String", # The postal code range that the shipping rate applies to, represented by a postal code, a postal code prefix using * wildcard, a range between two postal codes or two postal code prefixes of equal length.
           "region": "A String", # The geographic region to which a shipping rate applies (e.g. zip code).
-          "service": "A String", # A free-form description of the service class or delivery speed.
+          "locationGroupName": "A String", # The location where the shipping is applicable, represented by a location group name.
         },
       ],
       "shippingWeight": { # Weight of the item for shipping.
@@ -849,7 +906,10 @@
         "value": "A String", # The price represented as a number.
       },
       "productType": "A String", # Your category of the item.
-      "unitPricingBaseMeasure": "A String", # The preference of the denominator of the unit price.
+      "unitPricingBaseMeasure": { # The preference of the denominator of the unit price.
+        "value": "A String", # The denominator of the unit price.
+        "unit": "A String", # The unit of the denominator.
+      },
       "ageGroup": "A String", # Target age group of the item.
       "adult": True or False, # Set to true if the item is targeted towards adults.
     }</pre>
@@ -883,9 +943,9 @@
           "itemGroupId": "A String", # Shared identifier for all variants of the same product.
           "gtin": "A String", # Global Trade Item Number (GTIN) of the item.
           "expirationDate": "A String", # Date that an item will expire.
-          "merchantMultipackQuantity": "A String", # The number of identical products in a merchant-defined multipack.
           "googleProductCategory": "A String", # Google's category of the item.
           "id": "A String", # The REST id of the product.
+          "multipack": "A String", # The number of identical products in a merchant-defined multipack.
           "availabilityDate": "A String", # The day a pre-ordered product becomes available for delivery.
           "adwordsGrouping": "A String", # Used to group items in an arbitrary way. Only for CPA%, discouraged otherwise.
           "destinations": [ # Specifies the intended destinations for the product.
@@ -899,7 +959,10 @@
           "offerId": "A String", # An identifier of the item.
           "title": "A String", # Title of the item.
           "pattern": "A String", # The item's pattern (e.g. polka dots).
-          "unitPricingMeasure": "A String", # The measure and dimension of an item.
+          "unitPricingMeasure": { # The measure and dimension of an item.
+            "value": 3.14, # The measure of an item.
+            "unit": "A String", # The unit of the measure.
+          },
           "imageLink": "A String", # URL of an image of the item.
           "validatedDestinations": [ # The read-only list of intended destinations which passed validation.
             "A String",
@@ -935,8 +998,10 @@
           "taxes": [ # Tax information.
             {
               "country": "A String", # The country within which the item is taxed, specified with a two-letter ISO 3166 country code.
-              "rate": 3.14, # The percentage of tax rate that applies to the item price.
               "region": "A String", # The geographic region to which the tax rate applies.
+              "rate": 3.14, # The percentage of tax rate that applies to the item price.
+              "locationId": "A String", # The numeric id of a location that the tax rate applies to as defined in the Adwords API (https://developers.google.com/adwords/api/docs/appendix/geotargeting).
+              "postalCode": "A String", # The postal code range that the tax rate applies to, represented by a ZIP code, a ZIP code prefix using * wildcard, a range between two ZIP codes or two ZIP code prefixes of equal length. Examples: 94114, 94*, 94002-95460, 94*-95*.
               "taxShip": True or False, # Set to true if tax is charged on shipping.
             },
           ],
@@ -961,6 +1026,7 @@
           ],
           "condition": "A String", # Condition or state of the item.
           "customLabel0": "A String", # Custom label 0 for custom grouping of items in a Shopping campaign.
+          "shippingLabel": "A String", # The shipping label of the product, used to group product in account-level shipping rules.
           "kind": "content#product", # Identifies what kind of resource this is. Value: the fixed string "content#product".
           "installment": { # Number and amount of installments to pay for an item. Brazil only.
             "amount": { # The amount the buyer has to pay per month.
@@ -975,13 +1041,16 @@
           "gender": "A String", # Target gender of the item.
           "shipping": [ # Shipping rules.
             {
+              "service": "A String", # A free-form description of the service class or delivery speed.
               "country": "A String", # The two-letter ISO 3166 country code for the country to which an item will ship.
               "price": { # Fixed shipping price, represented as a number.
                 "currency": "A String", # The currency of the price.
                 "value": "A String", # The price represented as a number.
               },
+              "locationId": "A String", # The numeric id of a location that the shipping rate applies to as defined in the AdWords API.
+              "postalCode": "A String", # The postal code range that the shipping rate applies to, represented by a postal code, a postal code prefix using * wildcard, a range between two postal codes or two postal code prefixes of equal length.
               "region": "A String", # The geographic region to which a shipping rate applies (e.g. zip code).
-              "service": "A String", # A free-form description of the service class or delivery speed.
+              "locationGroupName": "A String", # The location where the shipping is applicable, represented by a location group name.
             },
           ],
           "shippingWeight": { # Weight of the item for shipping.
@@ -1002,7 +1071,10 @@
             "value": "A String", # The price represented as a number.
           },
           "productType": "A String", # Your category of the item.
-          "unitPricingBaseMeasure": "A String", # The preference of the denominator of the unit price.
+          "unitPricingBaseMeasure": { # The preference of the denominator of the unit price.
+            "value": "A String", # The denominator of the unit price.
+            "unit": "A String", # The unit of the denominator.
+          },
           "ageGroup": "A String", # Target age group of the item.
           "adult": True or False, # Set to true if the item is targeted towards adults.
         },
diff --git a/docs/dyn/datastore_v1beta2.datasets.html b/docs/dyn/datastore_v1beta2.datasets.html
index d463860..0fc6ce4 100644
--- a/docs/dyn/datastore_v1beta2.datasets.html
+++ b/docs/dyn/datastore_v1beta2.datasets.html
@@ -104,7 +104,7 @@
 
 {
     "keys": [ # A list of keys with incomplete key paths to allocate IDs for. No key may be reserved/read-only.
-      {
+      { # A unique identifier for an entity.
         "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
           { # A (kind, ID/name) pair used to construct a key path.
               #
@@ -114,7 +114,9 @@
             "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
           },
         ],
-        "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+        "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+            #
+            # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
           "namespace": "A String", # The namespace.
           "datasetId": "A String", # The dataset ID.
         },
@@ -128,7 +130,7 @@
 
     {
     "keys": [ # The keys specified in the request (in the same order), each with its key path completed with a newly allocated ID.
-      {
+      { # A unique identifier for an entity.
         "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
           { # A (kind, ID/name) pair used to construct a key path.
               #
@@ -138,7 +140,9 @@
             "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
           },
         ],
-        "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+        "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+            #
+            # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
           "namespace": "A String", # The namespace.
           "datasetId": "A String", # The dataset ID.
         },
@@ -188,17 +192,17 @@
     "ignoreReadOnly": True or False,
     "transaction": "A String", # The transaction identifier, returned by a call to beginTransaction. Must be set when mode is TRANSACTIONAL.
     "mode": "A String", # The type of commit to perform. Either TRANSACTIONAL or NON_TRANSACTIONAL.
-    "mutation": { # The mutation to perform. Optional.
+    "mutation": { # A set of changes to apply. # The mutation to perform. Optional.
       "insert": [ # Entities to insert. Each inserted entity's key must have a complete path and must not be reserved/read-only.
-        {
+        { # An entity.
           "properties": { # The entity's properties.
-            "a_key": { # The name of the property. A property name matching regex "__.*__" is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. Cannot be "".
+            "a_key": { # An entity property. # The name of the property. A property name matching regex "__.*__" is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. Cannot be "".
               "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
               "doubleValue": 3.14, # A double value.
               "integerValue": "A String", # An integer value.
               "meaning": 42, # The meaning field is reserved and should not be used.
               "dateTimeValue": "A String", # A timestamp value.
-              "keyValue": { # A key value.
+              "keyValue": { # A unique identifier for an entity. # A key value.
                 "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                   { # A (kind, ID/name) pair used to construct a key path.
                       #
@@ -208,7 +212,9 @@
                     "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                   },
                 ],
-                "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                    #
+                    # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                   "namespace": "A String", # The namespace.
                   "datasetId": "A String", # The dataset ID.
                 },
@@ -219,13 +225,13 @@
                   # The indexed property may be set for a null value. When indexed is true, stringValue is limited to 500 characters and the blob value is limited to 500 bytes. Input values by default have indexed set to true; however, you can explicitly set indexed to true if you want. (An output value never has indexed explicitly set to true.) If a value is itself an entity, it cannot have indexed set to true.
               "blobValue": "A String", # A blob value. May be a maximum of 1,000,000 bytes.
               "listValue": [ # A list value. Cannot contain another list value. Cannot also have a meaning and indexing set.
-                {
+                { # A message that can hold any of the supported value types and associated metadata.
                   "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
                   "doubleValue": 3.14, # A double value.
                   "integerValue": "A String", # An integer value.
                   "meaning": 42, # The meaning field is reserved and should not be used.
                   "dateTimeValue": "A String", # A timestamp value.
-                  "keyValue": { # A key value.
+                  "keyValue": { # A unique identifier for an entity. # A key value.
                     "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                       { # A (kind, ID/name) pair used to construct a key path.
                           #
@@ -235,7 +241,9 @@
                         "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                       },
                     ],
-                    "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                    "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                        #
+                        # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                       "namespace": "A String", # The namespace.
                       "datasetId": "A String", # The dataset ID.
                     },
@@ -256,7 +264,7 @@
               "blobKeyValue": "A String", # A blob key value.
             },
           },
-          "key": { # The entity's key.
+          "key": { # A unique identifier for an entity. # The entity's key.
               #
               # An entity must have a key, unless otherwise documented (for example, an entity in Value.entityValue may have no key). An entity's kind is its key's path's last element's kind, or null if it has no key.
             "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
@@ -268,7 +276,9 @@
                 "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
               },
             ],
-            "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+            "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                #
+                # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
               "namespace": "A String", # The namespace.
               "datasetId": "A String", # The dataset ID.
             },
@@ -277,15 +287,15 @@
       ],
       "force": True or False, # Ignore a user specified read-only period. Optional.
       "insertAutoId": [ # Insert entities with a newly allocated ID. Each inserted entity's key must omit the final identifier in its path and must not be reserved/read-only.
-        {
+        { # An entity.
           "properties": { # The entity's properties.
-            "a_key": { # The name of the property. A property name matching regex "__.*__" is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. Cannot be "".
+            "a_key": { # An entity property. # The name of the property. A property name matching regex "__.*__" is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. Cannot be "".
               "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
               "doubleValue": 3.14, # A double value.
               "integerValue": "A String", # An integer value.
               "meaning": 42, # The meaning field is reserved and should not be used.
               "dateTimeValue": "A String", # A timestamp value.
-              "keyValue": { # A key value.
+              "keyValue": { # A unique identifier for an entity. # A key value.
                 "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                   { # A (kind, ID/name) pair used to construct a key path.
                       #
@@ -295,7 +305,9 @@
                     "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                   },
                 ],
-                "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                    #
+                    # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                   "namespace": "A String", # The namespace.
                   "datasetId": "A String", # The dataset ID.
                 },
@@ -306,13 +318,13 @@
                   # The indexed property may be set for a null value. When indexed is true, stringValue is limited to 500 characters and the blob value is limited to 500 bytes. Input values by default have indexed set to true; however, you can explicitly set indexed to true if you want. (An output value never has indexed explicitly set to true.) If a value is itself an entity, it cannot have indexed set to true.
               "blobValue": "A String", # A blob value. May be a maximum of 1,000,000 bytes.
               "listValue": [ # A list value. Cannot contain another list value. Cannot also have a meaning and indexing set.
-                {
+                { # A message that can hold any of the supported value types and associated metadata.
                   "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
                   "doubleValue": 3.14, # A double value.
                   "integerValue": "A String", # An integer value.
                   "meaning": 42, # The meaning field is reserved and should not be used.
                   "dateTimeValue": "A String", # A timestamp value.
-                  "keyValue": { # A key value.
+                  "keyValue": { # A unique identifier for an entity. # A key value.
                     "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                       { # A (kind, ID/name) pair used to construct a key path.
                           #
@@ -322,7 +334,9 @@
                         "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                       },
                     ],
-                    "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                    "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                        #
+                        # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                       "namespace": "A String", # The namespace.
                       "datasetId": "A String", # The dataset ID.
                     },
@@ -343,7 +357,7 @@
               "blobKeyValue": "A String", # A blob key value.
             },
           },
-          "key": { # The entity's key.
+          "key": { # A unique identifier for an entity. # The entity's key.
               #
               # An entity must have a key, unless otherwise documented (for example, an entity in Value.entityValue may have no key). An entity's kind is its key's path's last element's kind, or null if it has no key.
             "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
@@ -355,7 +369,9 @@
                 "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
               },
             ],
-            "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+            "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                #
+                # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
               "namespace": "A String", # The namespace.
               "datasetId": "A String", # The dataset ID.
             },
@@ -363,15 +379,15 @@
         },
       ],
       "update": [ # Entities to update. Each updated entity's key must have a complete path and must not be reserved/read-only.
-        {
+        { # An entity.
           "properties": { # The entity's properties.
-            "a_key": { # The name of the property. A property name matching regex "__.*__" is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. Cannot be "".
+            "a_key": { # An entity property. # The name of the property. A property name matching regex "__.*__" is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. Cannot be "".
               "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
               "doubleValue": 3.14, # A double value.
               "integerValue": "A String", # An integer value.
               "meaning": 42, # The meaning field is reserved and should not be used.
               "dateTimeValue": "A String", # A timestamp value.
-              "keyValue": { # A key value.
+              "keyValue": { # A unique identifier for an entity. # A key value.
                 "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                   { # A (kind, ID/name) pair used to construct a key path.
                       #
@@ -381,7 +397,9 @@
                     "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                   },
                 ],
-                "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                    #
+                    # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                   "namespace": "A String", # The namespace.
                   "datasetId": "A String", # The dataset ID.
                 },
@@ -392,13 +410,13 @@
                   # The indexed property may be set for a null value. When indexed is true, stringValue is limited to 500 characters and the blob value is limited to 500 bytes. Input values by default have indexed set to true; however, you can explicitly set indexed to true if you want. (An output value never has indexed explicitly set to true.) If a value is itself an entity, it cannot have indexed set to true.
               "blobValue": "A String", # A blob value. May be a maximum of 1,000,000 bytes.
               "listValue": [ # A list value. Cannot contain another list value. Cannot also have a meaning and indexing set.
-                {
+                { # A message that can hold any of the supported value types and associated metadata.
                   "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
                   "doubleValue": 3.14, # A double value.
                   "integerValue": "A String", # An integer value.
                   "meaning": 42, # The meaning field is reserved and should not be used.
                   "dateTimeValue": "A String", # A timestamp value.
-                  "keyValue": { # A key value.
+                  "keyValue": { # A unique identifier for an entity. # A key value.
                     "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                       { # A (kind, ID/name) pair used to construct a key path.
                           #
@@ -408,7 +426,9 @@
                         "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                       },
                     ],
-                    "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                    "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                        #
+                        # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                       "namespace": "A String", # The namespace.
                       "datasetId": "A String", # The dataset ID.
                     },
@@ -429,7 +449,7 @@
               "blobKeyValue": "A String", # A blob key value.
             },
           },
-          "key": { # The entity's key.
+          "key": { # A unique identifier for an entity. # The entity's key.
               #
               # An entity must have a key, unless otherwise documented (for example, an entity in Value.entityValue may have no key). An entity's kind is its key's path's last element's kind, or null if it has no key.
             "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
@@ -441,7 +461,9 @@
                 "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
               },
             ],
-            "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+            "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                #
+                # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
               "namespace": "A String", # The namespace.
               "datasetId": "A String", # The dataset ID.
             },
@@ -449,7 +471,7 @@
         },
       ],
       "delete": [ # Keys of entities to delete. Each key must have a complete key path and must not be reserved/read-only.
-        {
+        { # A unique identifier for an entity.
           "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
             { # A (kind, ID/name) pair used to construct a key path.
                 #
@@ -459,22 +481,24 @@
               "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
             },
           ],
-          "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+          "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+              #
+              # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
             "namespace": "A String", # The namespace.
             "datasetId": "A String", # The dataset ID.
           },
         },
       ],
       "upsert": [ # Entities to upsert. Each upserted entity's key must have a complete path and must not be reserved/read-only.
-        {
+        { # An entity.
           "properties": { # The entity's properties.
-            "a_key": { # The name of the property. A property name matching regex "__.*__" is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. Cannot be "".
+            "a_key": { # An entity property. # The name of the property. A property name matching regex "__.*__" is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. Cannot be "".
               "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
               "doubleValue": 3.14, # A double value.
               "integerValue": "A String", # An integer value.
               "meaning": 42, # The meaning field is reserved and should not be used.
               "dateTimeValue": "A String", # A timestamp value.
-              "keyValue": { # A key value.
+              "keyValue": { # A unique identifier for an entity. # A key value.
                 "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                   { # A (kind, ID/name) pair used to construct a key path.
                       #
@@ -484,7 +508,9 @@
                     "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                   },
                 ],
-                "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                    #
+                    # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                   "namespace": "A String", # The namespace.
                   "datasetId": "A String", # The dataset ID.
                 },
@@ -495,13 +521,13 @@
                   # The indexed property may be set for a null value. When indexed is true, stringValue is limited to 500 characters and the blob value is limited to 500 bytes. Input values by default have indexed set to true; however, you can explicitly set indexed to true if you want. (An output value never has indexed explicitly set to true.) If a value is itself an entity, it cannot have indexed set to true.
               "blobValue": "A String", # A blob value. May be a maximum of 1,000,000 bytes.
               "listValue": [ # A list value. Cannot contain another list value. Cannot also have a meaning and indexing set.
-                {
+                { # A message that can hold any of the supported value types and associated metadata.
                   "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
                   "doubleValue": 3.14, # A double value.
                   "integerValue": "A String", # An integer value.
                   "meaning": 42, # The meaning field is reserved and should not be used.
                   "dateTimeValue": "A String", # A timestamp value.
-                  "keyValue": { # A key value.
+                  "keyValue": { # A unique identifier for an entity. # A key value.
                     "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                       { # A (kind, ID/name) pair used to construct a key path.
                           #
@@ -511,7 +537,9 @@
                         "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                       },
                     ],
-                    "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                    "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                        #
+                        # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                       "namespace": "A String", # The namespace.
                       "datasetId": "A String", # The dataset ID.
                     },
@@ -532,7 +560,7 @@
               "blobKeyValue": "A String", # A blob key value.
             },
           },
-          "key": { # The entity's key.
+          "key": { # A unique identifier for an entity. # The entity's key.
               #
               # An entity must have a key, unless otherwise documented (for example, an entity in Value.entityValue may have no key). An entity's kind is its key's path's last element's kind, or null if it has no key.
             "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
@@ -544,7 +572,9 @@
                 "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
               },
             ],
-            "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+            "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                #
+                # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
               "namespace": "A String", # The namespace.
               "datasetId": "A String", # The dataset ID.
             },
@@ -564,7 +594,7 @@
     },
     "mutationResult": { # The result of performing the mutation (if any).
       "insertAutoIdKeys": [ # Keys for insertAutoId entities. One per entity from the request, in the same order.
-        {
+        { # A unique identifier for an entity.
           "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
             { # A (kind, ID/name) pair used to construct a key path.
                 #
@@ -574,7 +604,9 @@
               "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
             },
           ],
-          "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+          "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+              #
+              # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
             "namespace": "A String", # The namespace.
             "datasetId": "A String", # The dataset ID.
           },
@@ -596,7 +628,7 @@
 
 {
     "keys": [ # Keys of entities to look up from the datastore.
-      {
+      { # A unique identifier for an entity.
         "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
           { # A (kind, ID/name) pair used to construct a key path.
               #
@@ -606,7 +638,9 @@
             "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
           },
         ],
-        "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+        "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+            #
+            # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
           "namespace": "A String", # The namespace.
           "datasetId": "A String", # The dataset ID.
         },
@@ -624,7 +658,7 @@
 
     {
     "deferred": [ # A list of keys that were not looked up due to resource constraints.
-      {
+      { # A unique identifier for an entity.
         "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
           { # A (kind, ID/name) pair used to construct a key path.
               #
@@ -634,23 +668,25 @@
             "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
           },
         ],
-        "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+        "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+            #
+            # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
           "namespace": "A String", # The namespace.
           "datasetId": "A String", # The dataset ID.
         },
       },
     ],
     "missing": [ # Entities not found, with only the key populated.
-      {
-        "entity": { # The resulting entity.
+      { # The result of fetching an entity from the datastore.
+        "entity": { # An entity. # The resulting entity.
           "properties": { # The entity's properties.
-            "a_key": { # The name of the property. A property name matching regex "__.*__" is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. Cannot be "".
+            "a_key": { # An entity property. # The name of the property. A property name matching regex "__.*__" is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. Cannot be "".
               "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
               "doubleValue": 3.14, # A double value.
               "integerValue": "A String", # An integer value.
               "meaning": 42, # The meaning field is reserved and should not be used.
               "dateTimeValue": "A String", # A timestamp value.
-              "keyValue": { # A key value.
+              "keyValue": { # A unique identifier for an entity. # A key value.
                 "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                   { # A (kind, ID/name) pair used to construct a key path.
                       #
@@ -660,7 +696,9 @@
                     "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                   },
                 ],
-                "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                    #
+                    # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                   "namespace": "A String", # The namespace.
                   "datasetId": "A String", # The dataset ID.
                 },
@@ -671,13 +709,13 @@
                   # The indexed property may be set for a null value. When indexed is true, stringValue is limited to 500 characters and the blob value is limited to 500 bytes. Input values by default have indexed set to true; however, you can explicitly set indexed to true if you want. (An output value never has indexed explicitly set to true.) If a value is itself an entity, it cannot have indexed set to true.
               "blobValue": "A String", # A blob value. May be a maximum of 1,000,000 bytes.
               "listValue": [ # A list value. Cannot contain another list value. Cannot also have a meaning and indexing set.
-                {
+                { # A message that can hold any of the supported value types and associated metadata.
                   "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
                   "doubleValue": 3.14, # A double value.
                   "integerValue": "A String", # An integer value.
                   "meaning": 42, # The meaning field is reserved and should not be used.
                   "dateTimeValue": "A String", # A timestamp value.
-                  "keyValue": { # A key value.
+                  "keyValue": { # A unique identifier for an entity. # A key value.
                     "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                       { # A (kind, ID/name) pair used to construct a key path.
                           #
@@ -687,7 +725,9 @@
                         "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                       },
                     ],
-                    "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                    "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                        #
+                        # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                       "namespace": "A String", # The namespace.
                       "datasetId": "A String", # The dataset ID.
                     },
@@ -708,7 +748,7 @@
               "blobKeyValue": "A String", # A blob key value.
             },
           },
-          "key": { # The entity's key.
+          "key": { # A unique identifier for an entity. # The entity's key.
               #
               # An entity must have a key, unless otherwise documented (for example, an entity in Value.entityValue may have no key). An entity's kind is its key's path's last element's kind, or null if it has no key.
             "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
@@ -720,7 +760,9 @@
                 "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
               },
             ],
-            "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+            "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                #
+                # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
               "namespace": "A String", # The namespace.
               "datasetId": "A String", # The dataset ID.
             },
@@ -732,16 +774,16 @@
       "kind": "datastore#responseHeader", # Identifies what kind of resource this is. Value: the fixed string "datastore#responseHeader".
     },
     "found": [ # Entities found.
-      {
-        "entity": { # The resulting entity.
+      { # The result of fetching an entity from the datastore.
+        "entity": { # An entity. # The resulting entity.
           "properties": { # The entity's properties.
-            "a_key": { # The name of the property. A property name matching regex "__.*__" is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. Cannot be "".
+            "a_key": { # An entity property. # The name of the property. A property name matching regex "__.*__" is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. Cannot be "".
               "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
               "doubleValue": 3.14, # A double value.
               "integerValue": "A String", # An integer value.
               "meaning": 42, # The meaning field is reserved and should not be used.
               "dateTimeValue": "A String", # A timestamp value.
-              "keyValue": { # A key value.
+              "keyValue": { # A unique identifier for an entity. # A key value.
                 "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                   { # A (kind, ID/name) pair used to construct a key path.
                       #
@@ -751,7 +793,9 @@
                     "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                   },
                 ],
-                "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                    #
+                    # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                   "namespace": "A String", # The namespace.
                   "datasetId": "A String", # The dataset ID.
                 },
@@ -762,13 +806,13 @@
                   # The indexed property may be set for a null value. When indexed is true, stringValue is limited to 500 characters and the blob value is limited to 500 bytes. Input values by default have indexed set to true; however, you can explicitly set indexed to true if you want. (An output value never has indexed explicitly set to true.) If a value is itself an entity, it cannot have indexed set to true.
               "blobValue": "A String", # A blob value. May be a maximum of 1,000,000 bytes.
               "listValue": [ # A list value. Cannot contain another list value. Cannot also have a meaning and indexing set.
-                {
+                { # A message that can hold any of the supported value types and associated metadata.
                   "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
                   "doubleValue": 3.14, # A double value.
                   "integerValue": "A String", # An integer value.
                   "meaning": 42, # The meaning field is reserved and should not be used.
                   "dateTimeValue": "A String", # A timestamp value.
-                  "keyValue": { # A key value.
+                  "keyValue": { # A unique identifier for an entity. # A key value.
                     "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                       { # A (kind, ID/name) pair used to construct a key path.
                           #
@@ -778,7 +822,9 @@
                         "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                       },
                     ],
-                    "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                    "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                        #
+                        # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                       "namespace": "A String", # The namespace.
                       "datasetId": "A String", # The dataset ID.
                     },
@@ -799,7 +845,7 @@
               "blobKeyValue": "A String", # A blob key value.
             },
           },
-          "key": { # The entity's key.
+          "key": { # A unique identifier for an entity. # The entity's key.
               #
               # An entity must have a key, unless otherwise documented (for example, an entity in Value.entityValue may have no key). An entity's kind is its key's path's last element's kind, or null if it has no key.
             "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
@@ -811,7 +857,9 @@
                 "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
               },
             ],
-            "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+            "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                #
+                # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
               "namespace": "A String", # The namespace.
               "datasetId": "A String", # The dataset ID.
             },
@@ -856,48 +904,48 @@
     The object takes the form of:
 
 {
-    "query": { # The query to run. Either this field or field gql_query must be set, but not both.
+    "query": { # A query. # The query to run. Either this field or field gql_query must be set, but not both.
       "startCursor": "A String", # A starting point for the query results. Optional. Query cursors are returned in query result batches.
       "kinds": [ # The kinds to query (if empty, returns entities from all kinds).
-        {
+        { # A representation of a kind.
           "name": "A String", # The name of the kind.
         },
       ],
       "projection": [ # The projection to return. If not set the entire entity is returned.
-        {
+        { # A representation of a property in a projection.
           "aggregationFunction": "A String", # The aggregation function to apply to the property. Optional. Can only be used when grouping by at least one property. Must then be set on all properties in the projection that are not being grouped by. Aggregation functions: first selects the first result as determined by the query's order.
-          "property": { # The property to project.
+          "property": { # A reference to a property relative to the kind expressions. # The property to project.
             "name": "A String", # The name of the property.
           },
         },
       ],
       "order": [ # The order to apply to the query results (if empty, order is unspecified).
-        {
+        { # The desired order for a specific property.
           "direction": "A String", # The direction to order by. One of ascending or descending. Optional, defaults to ascending.
-          "property": { # The property to order by.
+          "property": { # A reference to a property relative to the kind expressions. # The property to order by.
             "name": "A String", # The name of the property.
           },
         },
       ],
-      "filter": { # The filter to apply (optional).
-        "compositeFilter": { # A composite filter.
+      "filter": { # A holder for any type of filter. Exactly one field should be specified. # The filter to apply (optional).
+        "compositeFilter": { # A filter that merges the multiple other filters using the given operation. # A composite filter.
           "operator": "A String", # The operator for combining multiple filters. Only "and" is currently supported.
           "filters": [ # The list of filters to combine. Must contain at least one filter.
             # Object with schema name: Filter
           ],
         },
-        "propertyFilter": { # A filter on a property.
+        "propertyFilter": { # A filter on a specific property. # A filter on a property.
           "operator": "A String", # The operator to filter by. One of lessThan, lessThanOrEqual, greaterThan, greaterThanOrEqual, equal, or hasAncestor.
-          "property": { # The property to filter by.
+          "property": { # A reference to a property relative to the kind expressions. # The property to filter by.
             "name": "A String", # The name of the property.
           },
-          "value": { # The value to compare the property to.
+          "value": { # A message that can hold any of the supported value types and associated metadata. # The value to compare the property to.
             "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
             "doubleValue": 3.14, # A double value.
             "integerValue": "A String", # An integer value.
             "meaning": 42, # The meaning field is reserved and should not be used.
             "dateTimeValue": "A String", # A timestamp value.
-            "keyValue": { # A key value.
+            "keyValue": { # A unique identifier for an entity. # A key value.
               "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                 { # A (kind, ID/name) pair used to construct a key path.
                     #
@@ -907,7 +955,9 @@
                   "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                 },
               ],
-              "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+              "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                  #
+                  # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                 "namespace": "A String", # The namespace.
                 "datasetId": "A String", # The dataset ID.
               },
@@ -929,28 +979,30 @@
       "offset": 42, # The number of results to skip. Applies before limit, but after all other constraints (optional, defaults to 0).
       "endCursor": "A String", # An ending point for the query results. Optional. Query cursors are returned in query result batches.
       "groupBy": [ # The properties to group by (if empty, no grouping is applied to the result set).
-        {
+        { # A reference to a property relative to the kind expressions.
           "name": "A String", # The name of the property.
         },
       ],
     },
-    "partitionId": { # Entities are partitioned into subsets, identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition. This partition ID is normalized with the standard default context partition ID, but all other partition IDs in RunQueryRequest are normalized with this partition ID as the context partition ID.
+    "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition. This partition ID is normalized with the standard default context partition ID, but all other partition IDs in RunQueryRequest are normalized with this partition ID as the context partition ID.
+        #
+        # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
       "namespace": "A String", # The namespace.
       "datasetId": "A String", # The dataset ID.
     },
-    "gqlQuery": { # The GQL query to run. Either this field or field query must be set, but not both.
-      "queryString": "A String",
+    "gqlQuery": { # A GQL query. # The GQL query to run. Either this field or field query must be set, but not both.
+      "queryString": "A String", # The query string.
       "nameArgs": [ # A named argument must set field GqlQueryArg.name. No two named arguments may have the same name. For each non-reserved named binding site in the query string, there must be a named argument with that name, but not necessarily the inverse.
-        {
+        { # A binding argument for a GQL query.
           "cursor": "A String",
           "name": "A String", # Must match regex "[A-Za-z_$][A-Za-z_$0-9]*". Must not match regex "__.*__". Must not be "".
-          "value": {
+          "value": { # A message that can hold any of the supported value types and associated metadata.
             "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
             "doubleValue": 3.14, # A double value.
             "integerValue": "A String", # An integer value.
             "meaning": 42, # The meaning field is reserved and should not be used.
             "dateTimeValue": "A String", # A timestamp value.
-            "keyValue": { # A key value.
+            "keyValue": { # A unique identifier for an entity. # A key value.
               "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                 { # A (kind, ID/name) pair used to construct a key path.
                     #
@@ -960,7 +1012,9 @@
                   "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                 },
               ],
-              "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+              "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                  #
+                  # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                 "namespace": "A String", # The namespace.
                 "datasetId": "A String", # The dataset ID.
               },
@@ -980,16 +1034,16 @@
       ],
       "allowLiteral": True or False, # When false, the query string must not contain a literal.
       "numberArgs": [ # Numbered binding site @1 references the first numbered argument, effectively using 1-based indexing, rather than the usual 0. A numbered argument must NOT set field GqlQueryArg.name. For each binding site numbered i in query_string, there must be an ith numbered argument. The inverse must also be true.
-        {
+        { # A binding argument for a GQL query.
           "cursor": "A String",
           "name": "A String", # Must match regex "[A-Za-z_$][A-Za-z_$0-9]*". Must not match regex "__.*__". Must not be "".
-          "value": {
+          "value": { # A message that can hold any of the supported value types and associated metadata.
             "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
             "doubleValue": 3.14, # A double value.
             "integerValue": "A String", # An integer value.
             "meaning": 42, # The meaning field is reserved and should not be used.
             "dateTimeValue": "A String", # A timestamp value.
-            "keyValue": { # A key value.
+            "keyValue": { # A unique identifier for an entity. # A key value.
               "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                 { # A (kind, ID/name) pair used to construct a key path.
                     #
@@ -999,7 +1053,9 @@
                   "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                 },
               ],
-              "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+              "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                  #
+                  # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                 "namespace": "A String", # The namespace.
                 "datasetId": "A String", # The dataset ID.
               },
@@ -1032,19 +1088,19 @@
     "header": {
       "kind": "datastore#responseHeader", # Identifies what kind of resource this is. Value: the fixed string "datastore#responseHeader".
     },
-    "batch": { # A batch of query results (always present).
+    "batch": { # A batch of results produced by a query. # A batch of query results (always present).
       "moreResults": "A String", # The state of the query after the current batch. One of notFinished, moreResultsAfterLimit, noMoreResults.
       "entityResults": [ # The results for this batch.
-        {
-          "entity": { # The resulting entity.
+        { # The result of fetching an entity from the datastore.
+          "entity": { # An entity. # The resulting entity.
             "properties": { # The entity's properties.
-              "a_key": { # The name of the property. A property name matching regex "__.*__" is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. Cannot be "".
+              "a_key": { # An entity property. # The name of the property. A property name matching regex "__.*__" is reserved. A reserved property name is forbidden in certain documented contexts. The name must not contain more than 500 characters. Cannot be "".
                 "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
                 "doubleValue": 3.14, # A double value.
                 "integerValue": "A String", # An integer value.
                 "meaning": 42, # The meaning field is reserved and should not be used.
                 "dateTimeValue": "A String", # A timestamp value.
-                "keyValue": { # A key value.
+                "keyValue": { # A unique identifier for an entity. # A key value.
                   "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                     { # A (kind, ID/name) pair used to construct a key path.
                         #
@@ -1054,7 +1110,9 @@
                       "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                     },
                   ],
-                  "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                  "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                      #
+                      # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                     "namespace": "A String", # The namespace.
                     "datasetId": "A String", # The dataset ID.
                   },
@@ -1065,13 +1123,13 @@
                     # The indexed property may be set for a null value. When indexed is true, stringValue is limited to 500 characters and the blob value is limited to 500 bytes. Input values by default have indexed set to true; however, you can explicitly set indexed to true if you want. (An output value never has indexed explicitly set to true.) If a value is itself an entity, it cannot have indexed set to true.
                 "blobValue": "A String", # A blob value. May be a maximum of 1,000,000 bytes.
                 "listValue": [ # A list value. Cannot contain another list value. Cannot also have a meaning and indexing set.
-                  {
+                  { # A message that can hold any of the supported value types and associated metadata.
                     "entityValue": # Object with schema name: Entity # An entity value. May have no key. May have a key with an incomplete key path. May have a reserved/read-only key.
                     "doubleValue": 3.14, # A double value.
                     "integerValue": "A String", # An integer value.
                     "meaning": 42, # The meaning field is reserved and should not be used.
                     "dateTimeValue": "A String", # A timestamp value.
-                    "keyValue": { # A key value.
+                    "keyValue": { # A unique identifier for an entity. # A key value.
                       "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
                         { # A (kind, ID/name) pair used to construct a key path.
                             #
@@ -1081,7 +1139,9 @@
                           "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                         },
                       ],
-                      "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                      "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                          #
+                          # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                         "namespace": "A String", # The namespace.
                         "datasetId": "A String", # The dataset ID.
                       },
@@ -1102,7 +1162,7 @@
                 "blobKeyValue": "A String", # A blob key value.
               },
             },
-            "key": { # The entity's key.
+            "key": { # A unique identifier for an entity. # The entity's key.
                 #
                 # An entity must have a key, unless otherwise documented (for example, an entity in Value.entityValue may have no key). An entity's kind is its key's path's last element's kind, or null if it has no key.
               "path": [ # The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element's ancestors. An entity path is always fully complete: ALL of the entity's ancestors are required to be in the path along with the entity identifier itself. The only exception is that in some documented cases, the identifier in the last path element (for the entity) itself may be omitted. A path can never be empty. The path can have at most 100 elements.
@@ -1114,7 +1174,9 @@
                   "name": "A String", # The name of the entity. A name matching regex "__.*__" is reserved/read-only. A name must not be more than 500 characters. Cannot be "".
                 },
               ],
-              "partitionId": { # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+              "partitionId": { # An identifier for a particular subset of entities. # Entities are partitioned into subsets, currently identified by a dataset (usually implicitly specified by the project) and namespace ID. Queries are scoped to a single partition.
+                  #
+                  # Entities are partitioned into various subsets, each used by different datasets and different namespaces within a dataset and so forth.
                 "namespace": "A String", # The namespace.
                 "datasetId": "A String", # The dataset ID.
               },
@@ -1123,7 +1185,7 @@
         },
       ],
       "skippedResults": 42, # The number of results skipped because of Query.offset.
-      "endCursor": "A String", # A cursor that points to the position after the last result in the batch. May be absent.
+      "endCursor": "A String", # A cursor that points to the position after the last result in the batch. May be absent. TODO(arfuller): Once all plans produce cursors update documentation here.
       "entityResultType": "A String", # The result type for every entity in entityResults. full for full entities, projection for entities with only projected properties, keyOnly for entities with only a key.
     },
   }</pre>
diff --git a/docs/dyn/doubleclicksearch_v2.reports.html b/docs/dyn/doubleclicksearch_v2.reports.html
index 387444e..e7f8bea 100644
--- a/docs/dyn/doubleclicksearch_v2.reports.html
+++ b/docs/dyn/doubleclicksearch_v2.reports.html
@@ -106,10 +106,12 @@
           "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
           "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
           "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+              # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+          "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
           "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
           "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
           "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-          "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+          "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
         },
         "sortOrder": "A String", # The sort direction, which is either ascending or descending.
       },
@@ -142,10 +144,12 @@
           "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
           "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
           "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+              # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+          "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
           "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
           "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
           "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-          "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+          "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
         },
         "operator": "A String", # Operator to use in the filter. See the filter reference for a list of available operators.
         "values": [ # A list of values to filter the column value against.
@@ -161,10 +165,12 @@
         "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
         "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
         "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+            # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+        "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
         "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
         "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
         "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-        "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+        "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
       },
     ],
     "includeRemovedEntities": false, # Determines if removed entities should be included in the report. Defaults to false.
@@ -195,10 +201,12 @@
               "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
               "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
               "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+                  # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+              "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
               "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
               "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
               "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-              "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+              "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
             },
             "sortOrder": "A String", # The sort direction, which is either ascending or descending.
           },
@@ -231,10 +239,12 @@
               "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
               "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
               "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+                  # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+              "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
               "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
               "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
               "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-              "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+              "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
             },
             "operator": "A String", # Operator to use in the filter. See the filter reference for a list of available operators.
             "values": [ # A list of values to filter the column value against.
@@ -250,10 +260,12 @@
             "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
             "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
             "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+                # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+            "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
             "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
             "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
             "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-            "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+            "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
           },
         ],
         "includeRemovedEntities": false, # Determines if removed entities should be included in the report. Defaults to false.
@@ -297,10 +309,12 @@
               "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
               "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
               "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+                  # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+              "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
               "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
               "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
               "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-              "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+              "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
             },
             "sortOrder": "A String", # The sort direction, which is either ascending or descending.
           },
@@ -333,10 +347,12 @@
               "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
               "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
               "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+                  # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+              "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
               "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
               "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
               "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-              "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+              "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
             },
             "operator": "A String", # Operator to use in the filter. See the filter reference for a list of available operators.
             "values": [ # A list of values to filter the column value against.
@@ -352,10 +368,12 @@
             "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
             "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
             "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+                # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+            "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
             "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
             "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
             "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-            "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+            "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
           },
         ],
         "includeRemovedEntities": false, # Determines if removed entities should be included in the report. Defaults to false.
@@ -404,10 +422,12 @@
           "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
           "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
           "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+              # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+          "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
           "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
           "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
           "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-          "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+          "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
         },
         "sortOrder": "A String", # The sort direction, which is either ascending or descending.
       },
@@ -440,10 +460,12 @@
           "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
           "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
           "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+              # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+          "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
           "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
           "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
           "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-          "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+          "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
         },
         "operator": "A String", # Operator to use in the filter. See the filter reference for a list of available operators.
         "values": [ # A list of values to filter the column value against.
@@ -459,10 +481,12 @@
         "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
         "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
         "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+            # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+        "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
         "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
         "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
         "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-        "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+        "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
       },
     ],
     "includeRemovedEntities": false, # Determines if removed entities should be included in the report. Defaults to false.
@@ -493,10 +517,12 @@
               "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
               "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
               "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+                  # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+              "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
               "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
               "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
               "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-              "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+              "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
             },
             "sortOrder": "A String", # The sort direction, which is either ascending or descending.
           },
@@ -529,10 +555,12 @@
               "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
               "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
               "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+                  # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+              "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
               "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
               "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
               "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-              "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+              "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
             },
             "operator": "A String", # Operator to use in the filter. See the filter reference for a list of available operators.
             "values": [ # A list of values to filter the column value against.
@@ -548,10 +576,12 @@
             "endDate": "A String", # Inclusive day in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with startDate.
             "savedColumnName": "A String", # Name of a saved column to include in the report. The report must be scoped at advertiser or lower, and this saved column must already be created in the DoubleClick Search UI.
             "customDimensionName": "A String", # Segments a report by a custom dimension. The report must be scoped to an advertiser or lower, and the custom dimension must already be set up in DoubleClick Search. The custom dimension name, which appears in DoubleClick Search, is case sensitive.
+                # If used in a conversion report, returns the value of the specified custom dimension for the given conversion, if set. This column does not segment the conversion report.
+            "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
             "headerText": "A String", # Text used to identify this column in the report output; defaults to columnName or savedColumnName when not specified. This can be used to prevent collisions between DoubleClick Search columns and saved columns with the same name.
             "columnName": "A String", # Name of a DoubleClick Search column to include in the report.
             "platformSource": "A String", # The platform that is used to provide data for the custom dimension. Acceptable values are "Floodlight".
-            "startDate": "A String", # Inclusive date in YYYY-MM-DD format. When provided, this overrides the overall time range of the report for this column only. Must be provided together with endDate.
+            "customMetricName": "A String", # Reports on the provided custom metric. The report must be scoped to an advertiser or lower, and the custom metric must already be set up in DoubleClick Search. The custom metric name, which appears in DoubleClick Search, is case sensitive.
           },
         ],
         "includeRemovedEntities": false, # Determines if removed entities should be included in the report. Defaults to false.
diff --git a/docs/dyn/drive_v2.changes.html b/docs/dyn/drive_v2.changes.html
index e197484..f28db83 100644
--- a/docs/dyn/drive_v2.changes.html
+++ b/docs/dyn/drive_v2.changes.html
@@ -142,6 +142,11 @@
         "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
         "emailAddress": "A String", # The email address of the user.
       },
+      "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+        "width": 42, # The width of the video in pixels.
+        "durationMillis": "A String", # The duration of the video in milliseconds.
+        "height": 42, # The height of the video in pixels.
+      },
       "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
         "picture": { # The user's profile picture.
           "url": "A String", # A URL that points to a profile picture of this user.
@@ -183,7 +188,7 @@
           "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
           "authKey": "A String", # The authkey parameter required for this permission.
           "etag": "A String", # The ETag of the permission.
-          "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+          "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
           "photoLink": "A String", # A link to the profile photo, if available.
           "role": "A String", # The primary role for this user. Allowed values are:
               # - owner
@@ -241,7 +246,7 @@
       "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
       "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
       "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-      "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+      "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
       "properties": [ # The list of properties.
         { # A key-value pair that is either public or private to an application.
           "kind": "drive#property", # This is always drive#property.
@@ -256,7 +261,7 @@
       "iconLink": "A String", # A link to the file's icon.
       "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
       "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.
+      "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
       "title": "A String", # The title of this file.
       "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
       "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -269,7 +274,7 @@
         "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
         "authKey": "A String", # The authkey parameter required for this permission.
         "etag": "A String", # The ETag of the permission.
-        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
         "photoLink": "A String", # A link to the profile photo, if available.
         "role": "A String", # The primary role for this user. Allowed values are:
             # - owner
@@ -361,6 +366,11 @@
             "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
             "emailAddress": "A String", # The email address of the user.
           },
+          "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+            "width": 42, # The width of the video in pixels.
+            "durationMillis": "A String", # The duration of the video in milliseconds.
+            "height": 42, # The height of the video in pixels.
+          },
           "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
             "picture": { # The user's profile picture.
               "url": "A String", # A URL that points to a profile picture of this user.
@@ -402,7 +412,7 @@
               "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
               "authKey": "A String", # The authkey parameter required for this permission.
               "etag": "A String", # The ETag of the permission.
-              "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+              "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
               "photoLink": "A String", # A link to the profile photo, if available.
               "role": "A String", # The primary role for this user. Allowed values are:
                   # - owner
@@ -460,7 +470,7 @@
           "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
           "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
           "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-          "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+          "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
           "properties": [ # The list of properties.
             { # A key-value pair that is either public or private to an application.
               "kind": "drive#property", # This is always drive#property.
@@ -475,7 +485,7 @@
           "iconLink": "A String", # A link to the file's icon.
           "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
           "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.
+          "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
           "title": "A String", # The title of this file.
           "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
           "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -488,7 +498,7 @@
             "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
             "authKey": "A String", # The authkey parameter required for this permission.
             "etag": "A String", # The ETag of the permission.
-            "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+            "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
             "photoLink": "A String", # A link to the profile photo, if available.
             "role": "A String", # The primary role for this user. Allowed values are:
                 # - owner
diff --git a/docs/dyn/drive_v2.files.html b/docs/dyn/drive_v2.files.html
index b0e19f6..2ac0001 100644
--- a/docs/dyn/drive_v2.files.html
+++ b/docs/dyn/drive_v2.files.html
@@ -165,6 +165,11 @@
     "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
     "emailAddress": "A String", # The email address of the user.
   },
+  "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+    "width": 42, # The width of the video in pixels.
+    "durationMillis": "A String", # The duration of the video in milliseconds.
+    "height": 42, # The height of the video in pixels.
+  },
   "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
     "picture": { # The user's profile picture.
       "url": "A String", # A URL that points to a profile picture of this user.
@@ -206,7 +211,7 @@
       "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
       "authKey": "A String", # The authkey parameter required for this permission.
       "etag": "A String", # The ETag of the permission.
-      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
       "photoLink": "A String", # A link to the profile photo, if available.
       "role": "A String", # The primary role for this user. Allowed values are:
           # - owner
@@ -264,7 +269,7 @@
   "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
   "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
   "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-  "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+  "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
   "properties": [ # The list of properties.
     { # A key-value pair that is either public or private to an application.
       "kind": "drive#property", # This is always drive#property.
@@ -279,7 +284,7 @@
   "iconLink": "A String", # A link to the file's icon.
   "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
   "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.
+  "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
   "title": "A String", # The title of this file.
   "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
   "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -292,7 +297,7 @@
     "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
     "authKey": "A String", # The authkey parameter required for this permission.
     "etag": "A String", # The ETag of the permission.
-    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
     "photoLink": "A String", # A link to the profile photo, if available.
     "role": "A String", # The primary role for this user. Allowed values are:
         # - owner
@@ -315,7 +320,7 @@
   "modifiedDate": "A String", # Last time this file was modified by anyone (formatted RFC 3339 timestamp). This is only mutable on update when the setModifiedDate parameter is set.
 }
 
-  pinned: boolean, Whether to pin the head revision of the new copy.
+  pinned: boolean, Whether to pin the head revision of the new copy. A file can have a maximum of 200 pinned revisions.
   convert: boolean, Whether to convert this file to the corresponding Google Docs format.
   visibility: string, The visibility of the new file. This parameter is only relevant when the source is not a native Google Doc and convert=false.
     Allowed values
@@ -371,6 +376,11 @@
       "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
       "emailAddress": "A String", # The email address of the user.
     },
+    "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+      "width": 42, # The width of the video in pixels.
+      "durationMillis": "A String", # The duration of the video in milliseconds.
+      "height": 42, # The height of the video in pixels.
+    },
     "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
       "picture": { # The user's profile picture.
         "url": "A String", # A URL that points to a profile picture of this user.
@@ -412,7 +422,7 @@
         "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
         "authKey": "A String", # The authkey parameter required for this permission.
         "etag": "A String", # The ETag of the permission.
-        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
         "photoLink": "A String", # A link to the profile photo, if available.
         "role": "A String", # The primary role for this user. Allowed values are:
             # - owner
@@ -470,7 +480,7 @@
     "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
     "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
     "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-    "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+    "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
     "properties": [ # The list of properties.
       { # A key-value pair that is either public or private to an application.
         "kind": "drive#property", # This is always drive#property.
@@ -485,7 +495,7 @@
     "iconLink": "A String", # A link to the file's icon.
     "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
     "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.
+    "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
     "title": "A String", # The title of this file.
     "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
     "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -498,7 +508,7 @@
       "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
       "authKey": "A String", # The authkey parameter required for this permission.
       "etag": "A String", # The ETag of the permission.
-      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
       "photoLink": "A String", # A link to the profile photo, if available.
       "role": "A String", # The primary role for this user. Allowed values are:
           # - owner
@@ -596,6 +606,11 @@
       "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
       "emailAddress": "A String", # The email address of the user.
     },
+    "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+      "width": 42, # The width of the video in pixels.
+      "durationMillis": "A String", # The duration of the video in milliseconds.
+      "height": 42, # The height of the video in pixels.
+    },
     "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
       "picture": { # The user's profile picture.
         "url": "A String", # A URL that points to a profile picture of this user.
@@ -637,7 +652,7 @@
         "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
         "authKey": "A String", # The authkey parameter required for this permission.
         "etag": "A String", # The ETag of the permission.
-        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
         "photoLink": "A String", # A link to the profile photo, if available.
         "role": "A String", # The primary role for this user. Allowed values are:
             # - owner
@@ -695,7 +710,7 @@
     "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
     "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
     "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-    "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+    "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
     "properties": [ # The list of properties.
       { # A key-value pair that is either public or private to an application.
         "kind": "drive#property", # This is always drive#property.
@@ -710,7 +725,7 @@
     "iconLink": "A String", # A link to the file's icon.
     "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
     "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.
+    "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
     "title": "A String", # The title of this file.
     "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
     "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -723,7 +738,7 @@
       "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
       "authKey": "A String", # The authkey parameter required for this permission.
       "etag": "A String", # The ETag of the permission.
-      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
       "photoLink": "A String", # A link to the profile photo, if available.
       "role": "A String", # The primary role for this user. Allowed values are:
           # - owner
@@ -797,6 +812,11 @@
     "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
     "emailAddress": "A String", # The email address of the user.
   },
+  "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+    "width": 42, # The width of the video in pixels.
+    "durationMillis": "A String", # The duration of the video in milliseconds.
+    "height": 42, # The height of the video in pixels.
+  },
   "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
     "picture": { # The user's profile picture.
       "url": "A String", # A URL that points to a profile picture of this user.
@@ -838,7 +858,7 @@
       "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
       "authKey": "A String", # The authkey parameter required for this permission.
       "etag": "A String", # The ETag of the permission.
-      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
       "photoLink": "A String", # A link to the profile photo, if available.
       "role": "A String", # The primary role for this user. Allowed values are:
           # - owner
@@ -896,7 +916,7 @@
   "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
   "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
   "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-  "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+  "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
   "properties": [ # The list of properties.
     { # A key-value pair that is either public or private to an application.
       "kind": "drive#property", # This is always drive#property.
@@ -911,7 +931,7 @@
   "iconLink": "A String", # A link to the file's icon.
   "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
   "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.
+  "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
   "title": "A String", # The title of this file.
   "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
   "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -924,7 +944,7 @@
     "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
     "authKey": "A String", # The authkey parameter required for this permission.
     "etag": "A String", # The ETag of the permission.
-    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
     "photoLink": "A String", # A link to the profile photo, if available.
     "role": "A String", # The primary role for this user. Allowed values are:
         # - owner
@@ -958,7 +978,7 @@
   ocr: boolean, Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.
   timedTextLanguage: string, The language of the timed text.
   timedTextTrackName: string, The timed text track name.
-  pinned: boolean, Whether to pin the head revision of the uploaded file.
+  pinned: boolean, Whether to pin the head revision of the uploaded file. A file can have a maximum of 200 pinned revisions.
 
 Returns:
   An object of the form:
@@ -1005,6 +1025,11 @@
       "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
       "emailAddress": "A String", # The email address of the user.
     },
+    "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+      "width": 42, # The width of the video in pixels.
+      "durationMillis": "A String", # The duration of the video in milliseconds.
+      "height": 42, # The height of the video in pixels.
+    },
     "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
       "picture": { # The user's profile picture.
         "url": "A String", # A URL that points to a profile picture of this user.
@@ -1046,7 +1071,7 @@
         "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
         "authKey": "A String", # The authkey parameter required for this permission.
         "etag": "A String", # The ETag of the permission.
-        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
         "photoLink": "A String", # A link to the profile photo, if available.
         "role": "A String", # The primary role for this user. Allowed values are:
             # - owner
@@ -1104,7 +1129,7 @@
     "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
     "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
     "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-    "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+    "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
     "properties": [ # The list of properties.
       { # A key-value pair that is either public or private to an application.
         "kind": "drive#property", # This is always drive#property.
@@ -1119,7 +1144,7 @@
     "iconLink": "A String", # A link to the file's icon.
     "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
     "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.
+    "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
     "title": "A String", # The title of this file.
     "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
     "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -1132,7 +1157,7 @@
       "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
       "authKey": "A String", # The authkey parameter required for this permission.
       "etag": "A String", # The ETag of the permission.
-      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
       "photoLink": "A String", # A link to the profile photo, if available.
       "role": "A String", # The primary role for this user. Allowed values are:
           # - owner
@@ -1222,6 +1247,11 @@
           "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
           "emailAddress": "A String", # The email address of the user.
         },
+        "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+          "width": 42, # The width of the video in pixels.
+          "durationMillis": "A String", # The duration of the video in milliseconds.
+          "height": 42, # The height of the video in pixels.
+        },
         "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
           "picture": { # The user's profile picture.
             "url": "A String", # A URL that points to a profile picture of this user.
@@ -1263,7 +1293,7 @@
             "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
             "authKey": "A String", # The authkey parameter required for this permission.
             "etag": "A String", # The ETag of the permission.
-            "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+            "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
             "photoLink": "A String", # A link to the profile photo, if available.
             "role": "A String", # The primary role for this user. Allowed values are:
                 # - owner
@@ -1321,7 +1351,7 @@
         "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
         "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
         "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-        "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+        "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
         "properties": [ # The list of properties.
           { # A key-value pair that is either public or private to an application.
             "kind": "drive#property", # This is always drive#property.
@@ -1336,7 +1366,7 @@
         "iconLink": "A String", # A link to the file's icon.
         "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
         "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.
+        "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
         "title": "A String", # The title of this file.
         "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
         "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -1349,7 +1379,7 @@
           "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
           "authKey": "A String", # The authkey parameter required for this permission.
           "etag": "A String", # The ETag of the permission.
-          "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+          "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
           "photoLink": "A String", # A link to the profile photo, if available.
           "role": "A String", # The primary role for this user. Allowed values are:
               # - owner
@@ -1443,6 +1473,11 @@
     "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
     "emailAddress": "A String", # The email address of the user.
   },
+  "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+    "width": 42, # The width of the video in pixels.
+    "durationMillis": "A String", # The duration of the video in milliseconds.
+    "height": 42, # The height of the video in pixels.
+  },
   "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
     "picture": { # The user's profile picture.
       "url": "A String", # A URL that points to a profile picture of this user.
@@ -1484,7 +1519,7 @@
       "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
       "authKey": "A String", # The authkey parameter required for this permission.
       "etag": "A String", # The ETag of the permission.
-      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
       "photoLink": "A String", # A link to the profile photo, if available.
       "role": "A String", # The primary role for this user. Allowed values are:
           # - owner
@@ -1542,7 +1577,7 @@
   "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
   "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
   "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-  "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+  "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
   "properties": [ # The list of properties.
     { # A key-value pair that is either public or private to an application.
       "kind": "drive#property", # This is always drive#property.
@@ -1557,7 +1592,7 @@
   "iconLink": "A String", # A link to the file's icon.
   "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
   "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.
+  "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
   "title": "A String", # The title of this file.
   "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
   "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -1570,7 +1605,7 @@
     "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
     "authKey": "A String", # The authkey parameter required for this permission.
     "etag": "A String", # The ETag of the permission.
-    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
     "photoLink": "A String", # A link to the profile photo, if available.
     "role": "A String", # The primary role for this user. Allowed values are:
         # - owner
@@ -1593,8 +1628,8 @@
   "modifiedDate": "A String", # Last time this file was modified by anyone (formatted RFC 3339 timestamp). This is only mutable on update when the setModifiedDate parameter is set.
 }
 
-  newRevision: boolean, Whether a blob upload should create a new revision. If false, the blob data in the current head revision is replaced. If not set or true, a new blob is created as head revision, and previous revisions are preserved (causing increased use of the user's data storage quota).
-  pinned: boolean, Whether to pin the new revision.
+  newRevision: boolean, Whether a blob upload should create a new revision. If false, the blob data in the current head revision is replaced. If true or not set, a new blob is created as head revision, and previous revisions are preserved (causing increased use of the user's data storage quota).
+  pinned: boolean, Whether to pin the new revision. A file can have a maximum of 200 pinned revisions.
   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, .gif, or .pdf uploads.
   addParents: string, Comma-separated list of parent IDs to add.
@@ -1651,6 +1686,11 @@
       "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
       "emailAddress": "A String", # The email address of the user.
     },
+    "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+      "width": 42, # The width of the video in pixels.
+      "durationMillis": "A String", # The duration of the video in milliseconds.
+      "height": 42, # The height of the video in pixels.
+    },
     "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
       "picture": { # The user's profile picture.
         "url": "A String", # A URL that points to a profile picture of this user.
@@ -1692,7 +1732,7 @@
         "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
         "authKey": "A String", # The authkey parameter required for this permission.
         "etag": "A String", # The ETag of the permission.
-        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
         "photoLink": "A String", # A link to the profile photo, if available.
         "role": "A String", # The primary role for this user. Allowed values are:
             # - owner
@@ -1750,7 +1790,7 @@
     "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
     "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
     "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-    "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+    "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
     "properties": [ # The list of properties.
       { # A key-value pair that is either public or private to an application.
         "kind": "drive#property", # This is always drive#property.
@@ -1765,7 +1805,7 @@
     "iconLink": "A String", # A link to the file's icon.
     "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
     "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.
+    "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
     "title": "A String", # The title of this file.
     "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
     "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -1778,7 +1818,7 @@
       "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
       "authKey": "A String", # The authkey parameter required for this permission.
       "etag": "A String", # The ETag of the permission.
-      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
       "photoLink": "A String", # A link to the profile photo, if available.
       "role": "A String", # The primary role for this user. Allowed values are:
           # - owner
@@ -1854,6 +1894,11 @@
       "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
       "emailAddress": "A String", # The email address of the user.
     },
+    "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+      "width": 42, # The width of the video in pixels.
+      "durationMillis": "A String", # The duration of the video in milliseconds.
+      "height": 42, # The height of the video in pixels.
+    },
     "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
       "picture": { # The user's profile picture.
         "url": "A String", # A URL that points to a profile picture of this user.
@@ -1895,7 +1940,7 @@
         "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
         "authKey": "A String", # The authkey parameter required for this permission.
         "etag": "A String", # The ETag of the permission.
-        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
         "photoLink": "A String", # A link to the profile photo, if available.
         "role": "A String", # The primary role for this user. Allowed values are:
             # - owner
@@ -1953,7 +1998,7 @@
     "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
     "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
     "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-    "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+    "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
     "properties": [ # The list of properties.
       { # A key-value pair that is either public or private to an application.
         "kind": "drive#property", # This is always drive#property.
@@ -1968,7 +2013,7 @@
     "iconLink": "A String", # A link to the file's icon.
     "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
     "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.
+    "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
     "title": "A String", # The title of this file.
     "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
     "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -1981,7 +2026,7 @@
       "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
       "authKey": "A String", # The authkey parameter required for this permission.
       "etag": "A String", # The ETag of the permission.
-      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
       "photoLink": "A String", # A link to the profile photo, if available.
       "role": "A String", # The primary role for this user. Allowed values are:
           # - owner
@@ -2057,6 +2102,11 @@
       "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
       "emailAddress": "A String", # The email address of the user.
     },
+    "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+      "width": 42, # The width of the video in pixels.
+      "durationMillis": "A String", # The duration of the video in milliseconds.
+      "height": 42, # The height of the video in pixels.
+    },
     "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
       "picture": { # The user's profile picture.
         "url": "A String", # A URL that points to a profile picture of this user.
@@ -2098,7 +2148,7 @@
         "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
         "authKey": "A String", # The authkey parameter required for this permission.
         "etag": "A String", # The ETag of the permission.
-        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
         "photoLink": "A String", # A link to the profile photo, if available.
         "role": "A String", # The primary role for this user. Allowed values are:
             # - owner
@@ -2156,7 +2206,7 @@
     "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
     "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
     "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-    "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+    "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
     "properties": [ # The list of properties.
       { # A key-value pair that is either public or private to an application.
         "kind": "drive#property", # This is always drive#property.
@@ -2171,7 +2221,7 @@
     "iconLink": "A String", # A link to the file's icon.
     "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
     "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.
+    "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
     "title": "A String", # The title of this file.
     "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
     "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -2184,7 +2234,7 @@
       "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
       "authKey": "A String", # The authkey parameter required for this permission.
       "etag": "A String", # The ETag of the permission.
-      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
       "photoLink": "A String", # A link to the profile photo, if available.
       "role": "A String", # The primary role for this user. Allowed values are:
           # - owner
@@ -2260,6 +2310,11 @@
       "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
       "emailAddress": "A String", # The email address of the user.
     },
+    "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+      "width": 42, # The width of the video in pixels.
+      "durationMillis": "A String", # The duration of the video in milliseconds.
+      "height": 42, # The height of the video in pixels.
+    },
     "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
       "picture": { # The user's profile picture.
         "url": "A String", # A URL that points to a profile picture of this user.
@@ -2301,7 +2356,7 @@
         "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
         "authKey": "A String", # The authkey parameter required for this permission.
         "etag": "A String", # The ETag of the permission.
-        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
         "photoLink": "A String", # A link to the profile photo, if available.
         "role": "A String", # The primary role for this user. Allowed values are:
             # - owner
@@ -2359,7 +2414,7 @@
     "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
     "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
     "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-    "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+    "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
     "properties": [ # The list of properties.
       { # A key-value pair that is either public or private to an application.
         "kind": "drive#property", # This is always drive#property.
@@ -2374,7 +2429,7 @@
     "iconLink": "A String", # A link to the file's icon.
     "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
     "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.
+    "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
     "title": "A String", # The title of this file.
     "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
     "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -2387,7 +2442,7 @@
       "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
       "authKey": "A String", # The authkey parameter required for this permission.
       "etag": "A String", # The ETag of the permission.
-      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
       "photoLink": "A String", # A link to the profile photo, if available.
       "role": "A String", # The primary role for this user. Allowed values are:
           # - owner
@@ -2462,6 +2517,11 @@
     "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
     "emailAddress": "A String", # The email address of the user.
   },
+  "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+    "width": 42, # The width of the video in pixels.
+    "durationMillis": "A String", # The duration of the video in milliseconds.
+    "height": 42, # The height of the video in pixels.
+  },
   "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
     "picture": { # The user's profile picture.
       "url": "A String", # A URL that points to a profile picture of this user.
@@ -2503,7 +2563,7 @@
       "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
       "authKey": "A String", # The authkey parameter required for this permission.
       "etag": "A String", # The ETag of the permission.
-      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
       "photoLink": "A String", # A link to the profile photo, if available.
       "role": "A String", # The primary role for this user. Allowed values are:
           # - owner
@@ -2561,7 +2621,7 @@
   "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
   "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
   "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-  "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+  "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
   "properties": [ # The list of properties.
     { # A key-value pair that is either public or private to an application.
       "kind": "drive#property", # This is always drive#property.
@@ -2576,7 +2636,7 @@
   "iconLink": "A String", # A link to the file's icon.
   "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
   "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.
+  "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
   "title": "A String", # The title of this file.
   "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
   "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -2589,7 +2649,7 @@
     "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
     "authKey": "A String", # The authkey parameter required for this permission.
     "etag": "A String", # The ETag of the permission.
-    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
     "photoLink": "A String", # A link to the profile photo, if available.
     "role": "A String", # The primary role for this user. Allowed values are:
         # - owner
@@ -2612,11 +2672,11 @@
   "modifiedDate": "A String", # Last time this file was modified by anyone (formatted RFC 3339 timestamp). This is only mutable on update when the setModifiedDate parameter is set.
 }
 
-  newRevision: boolean, Whether a blob upload should create a new revision. If false, the blob data in the current head revision is replaced. If not set or true, a new blob is created as head revision, and previous revisions are preserved (causing increased use of the user's data storage quota).
+  newRevision: boolean, Whether a blob upload should create a new revision. If false, the blob data in the current head revision is replaced. If true or not set, a new blob is created as head revision, and previous revisions are preserved (causing increased use of the user's data storage quota).
   media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
   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, .gif, or .pdf uploads.
-  pinned: boolean, Whether to pin the new revision.
+  pinned: boolean, Whether to pin the new revision. A file can have a maximum of 200 pinned revisions.
   addParents: string, Comma-separated list of parent IDs to add.
   removeParents: string, Comma-separated list of parent IDs to remove.
   updateViewedDate: boolean, Whether to update the view date after successfully updating the file.
@@ -2671,6 +2731,11 @@
       "isAuthenticatedUser": True or False, # Whether this user is the same as the authenticated user for whom the request was made.
       "emailAddress": "A String", # The email address of the user.
     },
+    "videoMediaMetadata": { # Metadata about video media. This will only be present for video types.
+      "width": 42, # The width of the video in pixels.
+      "durationMillis": "A String", # The duration of the video in milliseconds.
+      "height": 42, # The height of the video in pixels.
+    },
     "lastModifyingUser": { # The JSON template for a user. # The last user to modify this file.
       "picture": { # The user's profile picture.
         "url": "A String", # A URL that points to a profile picture of this user.
@@ -2712,7 +2777,7 @@
         "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
         "authKey": "A String", # The authkey parameter required for this permission.
         "etag": "A String", # The ETag of the permission.
-        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
         "photoLink": "A String", # A link to the profile photo, if available.
         "role": "A String", # The primary role for this user. Allowed values are:
             # - owner
@@ -2770,7 +2835,7 @@
     "markedViewedByMeDate": "A String", # Time this file was explicitly marked viewed by the user (formatted RFC 3339 timestamp).
     "quotaBytesUsed": "A String", # The number of quota bytes used by this file.
     "fileSize": "A String", # The size of the file in bytes. This is only populated for files with content stored in Drive.
-    "createdDate": "A String", # Create time for this file (formatted ISO8601 timestamp).
+    "createdDate": "A String", # Create time for this file (formatted RFC 3339 timestamp).
     "properties": [ # The list of properties.
       { # A key-value pair that is either public or private to an application.
         "kind": "drive#property", # This is always drive#property.
@@ -2785,7 +2850,7 @@
     "iconLink": "A String", # A link to the file's icon.
     "defaultOpenWithLink": "A String", # A link to open this file with the user's default app for this file. Only populated when the drive.apps.readonly scope is used.
     "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.
+    "alternateLink": "A String", # A link for opening the file in a relevant Google editor or viewer.
     "title": "A String", # The title of this file.
     "modifiedByMeDate": "A String", # Last time this file was modified by the user (formatted RFC 3339 timestamp). Note that setting modifiedDate will also update the modifiedByMe date for the user which set the date.
     "downloadUrl": "A String", # Short lived download URL for the file. This is only populated for files with content stored in Drive.
@@ -2798,7 +2863,7 @@
       "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
       "authKey": "A String", # The authkey parameter required for this permission.
       "etag": "A String", # The ETag of the permission.
-      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+      "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
       "photoLink": "A String", # A link to the profile photo, if available.
       "role": "A String", # The primary role for this user. Allowed values are:
           # - owner
diff --git a/docs/dyn/drive_v2.permissions.html b/docs/dyn/drive_v2.permissions.html
index ed9c80f..1984c2c 100644
--- a/docs/dyn/drive_v2.permissions.html
+++ b/docs/dyn/drive_v2.permissions.html
@@ -126,7 +126,7 @@
     "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
     "authKey": "A String", # The authkey parameter required for this permission.
     "etag": "A String", # The ETag of the permission.
-    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
     "photoLink": "A String", # A link to the profile photo, if available.
     "role": "A String", # The primary role for this user. Allowed values are:
         # - owner
@@ -178,7 +178,7 @@
   "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
   "authKey": "A String", # The authkey parameter required for this permission.
   "etag": "A String", # The ETag of the permission.
-  "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+  "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
   "photoLink": "A String", # A link to the profile photo, if available.
   "role": "A String", # The primary role for this user. Allowed values are:
       # - owner
@@ -210,7 +210,7 @@
     "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
     "authKey": "A String", # The authkey parameter required for this permission.
     "etag": "A String", # The ETag of the permission.
-    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
     "photoLink": "A String", # A link to the profile photo, if available.
     "role": "A String", # The primary role for this user. Allowed values are:
         # - owner
@@ -249,7 +249,7 @@
         "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
         "authKey": "A String", # The authkey parameter required for this permission.
         "etag": "A String", # The ETag of the permission.
-        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+        "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
         "photoLink": "A String", # A link to the profile photo, if available.
         "role": "A String", # The primary role for this user. Allowed values are:
             # - owner
@@ -291,7 +291,7 @@
   "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
   "authKey": "A String", # The authkey parameter required for this permission.
   "etag": "A String", # The ETag of the permission.
-  "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+  "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
   "photoLink": "A String", # A link to the profile photo, if available.
   "role": "A String", # The primary role for this user. Allowed values are:
       # - owner
@@ -322,7 +322,7 @@
     "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
     "authKey": "A String", # The authkey parameter required for this permission.
     "etag": "A String", # The ETag of the permission.
-    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
     "photoLink": "A String", # A link to the profile photo, if available.
     "role": "A String", # The primary role for this user. Allowed values are:
         # - owner
@@ -359,7 +359,7 @@
   "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
   "authKey": "A String", # The authkey parameter required for this permission.
   "etag": "A String", # The ETag of the permission.
-  "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+  "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
   "photoLink": "A String", # A link to the profile photo, if available.
   "role": "A String", # The primary role for this user. Allowed values are:
       # - owner
@@ -390,7 +390,7 @@
     "id": "A String", # The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified.
     "authKey": "A String", # The authkey parameter required for this permission.
     "etag": "A String", # The ETag of the permission.
-    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user and the given user's Google+ profile privacy settings allow exposing their email address.
+    "emailAddress": "A String", # The email address of the user this permission refers to. This is an output-only field which is present when the permission type is user.
     "photoLink": "A String", # A link to the profile photo, if available.
     "role": "A String", # The primary role for this user. Allowed values are:
         # - owner
diff --git a/docs/dyn/gamesManagement_v1management.achievements.html b/docs/dyn/gamesManagement_v1management.achievements.html
index 72bcb7b..c55ff1c 100644
--- a/docs/dyn/gamesManagement_v1management.achievements.html
+++ b/docs/dyn/gamesManagement_v1management.achievements.html
@@ -81,8 +81,14 @@
   <code><a href="#resetAll">resetAll()</a></code></p>
 <p class="firstline">Resets all achievements for the currently authenticated player for your application. This method is only accessible to whitelisted tester accounts for your application.</p>
 <p class="toc_element">
+  <code><a href="#resetAllForAllPlayers">resetAllForAllPlayers()</a></code></p>
+<p class="firstline">Resets all draft achievements for all players. This method is only available to user accounts for your developer console.</p>
+<p class="toc_element">
   <code><a href="#resetForAllPlayers">resetForAllPlayers(achievementId)</a></code></p>
-<p class="firstline">Resets the achievement with the given ID for the all players. This method is only available to user accounts for your developer console. Only draft achievements can be reset.</p>
+<p class="firstline">Resets the achievement with the given ID for all players. This method is only available to user accounts for your developer console. Only draft achievements can be reset.</p>
+<p class="toc_element">
+  <code><a href="#resetMultipleForAllPlayers">resetMultipleForAllPlayers(body)</a></code></p>
+<p class="firstline">Resets the achievement with the given IDs for all players. This method is only available to user accounts for your developer console. Only draft achievements may be reset.</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="reset">reset(achievementId)</code>
@@ -133,12 +139,38 @@
 </div>
 
 <div class="method">
+    <code class="details" id="resetAllForAllPlayers">resetAllForAllPlayers()</code>
+  <pre>Resets all draft achievements for all players. This method is only available to user accounts for your developer console.
+
+Args:
+</pre>
+</div>
+
+<div class="method">
     <code class="details" id="resetForAllPlayers">resetForAllPlayers(achievementId)</code>
-  <pre>Resets the achievement with the given ID for the all players. This method is only available to user accounts for your developer console. Only draft achievements can be reset.
+  <pre>Resets the achievement with the given ID for all players. This method is only available to user accounts for your developer console. Only draft achievements can be reset.
 
 Args:
   achievementId: string, The ID of the achievement used by this method. (required)
 </pre>
 </div>
 
+<div class="method">
+    <code class="details" id="resetMultipleForAllPlayers">resetMultipleForAllPlayers(body)</code>
+  <pre>Resets the achievement with the given IDs for all players. This method is only available to user accounts for your developer console. Only draft achievements may be reset.
+
+Args:
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # This is a JSON template for multiple achievements reset all request.
+    "achievement_ids": [ # The IDs of achievements to reset.
+      "A String",
+    ],
+    "kind": "gamesManagement#achievementResetMultipleForAllRequest", # Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#achievementResetMultipleForAllRequest.
+  }
+
+</pre>
+</div>
+
 </body></html>
\ No newline at end of file
diff --git a/docs/dyn/games_v1.applications.html b/docs/dyn/games_v1.applications.html
index d979a7d..768203c 100644
--- a/docs/dyn/games_v1.applications.html
+++ b/docs/dyn/games_v1.applications.html
@@ -107,6 +107,7 @@
     "description": "A String", # The description of the application.
     "author": "A String", # The author of the application.
     "lastUpdatedTimestamp": "A String", # The last updated timestamp of the application.
+    "themeColor": "A String", # A hint to the client UI for what color to use as an app-themed color. The color is given as an RGB triplet (e.g. "E0E0E0").
     "name": "A String", # The name of the application.
     "instances": [ # The instances of the application.
       { # This is a JSON template for the Instance resource.
diff --git a/docs/dyn/genomics_v1beta.beacons.html b/docs/dyn/genomics_v1beta.beacons.html
index a296481..7138c3f 100644
--- a/docs/dyn/genomics_v1beta.beacons.html
+++ b/docs/dyn/genomics_v1beta.beacons.html
@@ -75,23 +75,23 @@
 <h1><a href="genomics_v1beta.html">Genomics API</a> . <a href="genomics_v1beta.beacons.html">beacons</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
-  <code><a href="#get">get(datasetId, allele=None, position=None, contig=None)</a></code></p>
+  <code><a href="#get">get(variantSetId, allele=None, referenceName=None, position=None)</a></code></p>
 <p class="firstline">This is an experimental API that provides a Global Alliance for Genomics and Health Beacon. It may change at any time.</p>
 <h3>Method Details</h3>
 <div class="method">
-    <code class="details" id="get">get(datasetId, allele=None, position=None, contig=None)</code>
+    <code class="details" id="get">get(variantSetId, allele=None, referenceName=None, position=None)</code>
   <pre>This is an experimental API that provides a Global Alliance for Genomics and Health Beacon. It may change at any time.
 
 Args:
-  datasetId: string, The ID of the dataset to query over. It must be public. Private datasets will return an unauthorized exception. (required)
+  variantSetId: string, The ID of the variant set to query over. It must be public. Private variant sets will return an unauthorized exception. (required)
   allele: string, Required. The allele to look for ('A', 'C', 'G' or 'T').
-  position: string, Required. The 1-based position to query at.
-  contig: string, Required. The contig to query over.
+  referenceName: string, Required. The reference to query over.
+  position: string, Required. The 0-based position to query.
 
 Returns:
   An object of the form:
 
-    { # A beacon represents whether any variant call in a dataset has a specific allele at a particular position.
+    { # A beacon represents whether any variant call in a variant set has a specific allele at a particular position.
     "exists": True or False, # True if the allele exists on any variant call, false otherwise.
   }</pre>
 </div>
diff --git a/docs/dyn/genomics_v1beta.callsets.html b/docs/dyn/genomics_v1beta.callsets.html
index cc3bfda..0061a4c 100644
--- a/docs/dyn/genomics_v1beta.callsets.html
+++ b/docs/dyn/genomics_v1beta.callsets.html
@@ -76,204 +76,228 @@
 <h2>Instance Methods</h2>
 <p class="toc_element">
   <code><a href="#create">create(body)</a></code></p>
-<p class="firstline">Creates a new callset.</p>
+<p class="firstline">Creates a new call set.</p>
 <p class="toc_element">
-  <code><a href="#delete">delete(callsetId)</a></code></p>
-<p class="firstline">Deletes a callset.</p>
+  <code><a href="#delete">delete(callSetId)</a></code></p>
+<p class="firstline">Deletes a call set.</p>
 <p class="toc_element">
-  <code><a href="#get">get(callsetId)</a></code></p>
-<p class="firstline">Gets a callset by ID.</p>
+  <code><a href="#get">get(callSetId)</a></code></p>
+<p class="firstline">Gets a call set by ID.</p>
 <p class="toc_element">
-  <code><a href="#patch">patch(callsetId, body)</a></code></p>
-<p class="firstline">Updates a callset. This method supports patch semantics.</p>
+  <code><a href="#patch">patch(callSetId, body)</a></code></p>
+<p class="firstline">Updates a call set. This method supports patch semantics.</p>
 <p class="toc_element">
   <code><a href="#search">search(body)</a></code></p>
-<p class="firstline">Gets a list of callsets matching the criteria.</p>
+<p class="firstline">Gets a list of call sets matching the criteria.</p>
 <p class="toc_element">
-  <code><a href="#update">update(callsetId, body)</a></code></p>
-<p class="firstline">Updates a callset.</p>
+  <code><a href="#update">update(callSetId, body)</a></code></p>
+<p class="firstline">Updates a call set.</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="create">create(body)</code>
-  <pre>Creates a new callset.
+  <pre>Creates a new call set.
 
 Args:
   body: object, The request body. (required)
     The object takes the form of:
 
-{ # A Callset is a collection of Variant Calls. It belongs to a Dataset.
+{ # A CallSet is a collection of variant calls. It belongs to a variant set.
   "info": { # A map of additional callset information.
     "a_key": [ # A string which maps to an array of values.
       "A String",
     ],
   },
   "name": "A String", # The callset name.
-  "id": "A String", # The Google generated ID of the callset, immutable.
-  "datasetId": "A String", # The ID of the dataset this callset belongs to.
-  "created": "A String", # The date this callset was created in milliseconds from the epoch.
+  "created": "A String", # The date this call set was created in milliseconds from the epoch.
+  "sampleId": "A String", # The sample ID this call set corresponds to.
+  "variantSetIds": [ # The IDs of the variant sets this call set belongs to.
+    "A String",
+  ],
+  "id": "A String", # The Google generated ID of the call set, immutable.
 }
 
 
 Returns:
   An object of the form:
 
-    { # A Callset is a collection of Variant Calls. It belongs to a Dataset.
+    { # A CallSet is a collection of variant calls. It belongs to a variant set.
     "info": { # A map of additional callset information.
       "a_key": [ # A string which maps to an array of values.
         "A String",
       ],
     },
     "name": "A String", # The callset name.
-    "id": "A String", # The Google generated ID of the callset, immutable.
-    "datasetId": "A String", # The ID of the dataset this callset belongs to.
-    "created": "A String", # The date this callset was created in milliseconds from the epoch.
+    "created": "A String", # The date this call set was created in milliseconds from the epoch.
+    "sampleId": "A String", # The sample ID this call set corresponds to.
+    "variantSetIds": [ # The IDs of the variant sets this call set belongs to.
+      "A String",
+    ],
+    "id": "A String", # The Google generated ID of the call set, immutable.
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="delete">delete(callsetId)</code>
-  <pre>Deletes a callset.
+    <code class="details" id="delete">delete(callSetId)</code>
+  <pre>Deletes a call set.
 
 Args:
-  callsetId: string, The ID of the callset to be deleted. (required)
+  callSetId: string, The ID of the callset to be deleted. (required)
 </pre>
 </div>
 
 <div class="method">
-    <code class="details" id="get">get(callsetId)</code>
-  <pre>Gets a callset by ID.
+    <code class="details" id="get">get(callSetId)</code>
+  <pre>Gets a call set by ID.
 
 Args:
-  callsetId: string, The ID of the callset. (required)
+  callSetId: string, The ID of the callset. (required)
 
 Returns:
   An object of the form:
 
-    { # A Callset is a collection of Variant Calls. It belongs to a Dataset.
+    { # A CallSet is a collection of variant calls. It belongs to a variant set.
     "info": { # A map of additional callset information.
       "a_key": [ # A string which maps to an array of values.
         "A String",
       ],
     },
     "name": "A String", # The callset name.
-    "id": "A String", # The Google generated ID of the callset, immutable.
-    "datasetId": "A String", # The ID of the dataset this callset belongs to.
-    "created": "A String", # The date this callset was created in milliseconds from the epoch.
+    "created": "A String", # The date this call set was created in milliseconds from the epoch.
+    "sampleId": "A String", # The sample ID this call set corresponds to.
+    "variantSetIds": [ # The IDs of the variant sets this call set belongs to.
+      "A String",
+    ],
+    "id": "A String", # The Google generated ID of the call set, immutable.
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="patch">patch(callsetId, body)</code>
-  <pre>Updates a callset. This method supports patch semantics.
+    <code class="details" id="patch">patch(callSetId, body)</code>
+  <pre>Updates a call set. This method supports patch semantics.
 
 Args:
-  callsetId: string, The ID of the callset to be updated. (required)
+  callSetId: string, The ID of the callset to be updated. (required)
   body: object, The request body. (required)
     The object takes the form of:
 
-{ # A Callset is a collection of Variant Calls. It belongs to a Dataset.
+{ # A CallSet is a collection of variant calls. It belongs to a variant set.
   "info": { # A map of additional callset information.
     "a_key": [ # A string which maps to an array of values.
       "A String",
     ],
   },
   "name": "A String", # The callset name.
-  "id": "A String", # The Google generated ID of the callset, immutable.
-  "datasetId": "A String", # The ID of the dataset this callset belongs to.
-  "created": "A String", # The date this callset was created in milliseconds from the epoch.
+  "created": "A String", # The date this call set was created in milliseconds from the epoch.
+  "sampleId": "A String", # The sample ID this call set corresponds to.
+  "variantSetIds": [ # The IDs of the variant sets this call set belongs to.
+    "A String",
+  ],
+  "id": "A String", # The Google generated ID of the call set, immutable.
 }
 
 
 Returns:
   An object of the form:
 
-    { # A Callset is a collection of Variant Calls. It belongs to a Dataset.
+    { # A CallSet is a collection of variant calls. It belongs to a variant set.
     "info": { # A map of additional callset information.
       "a_key": [ # A string which maps to an array of values.
         "A String",
       ],
     },
     "name": "A String", # The callset name.
-    "id": "A String", # The Google generated ID of the callset, immutable.
-    "datasetId": "A String", # The ID of the dataset this callset belongs to.
-    "created": "A String", # The date this callset was created in milliseconds from the epoch.
+    "created": "A String", # The date this call set was created in milliseconds from the epoch.
+    "sampleId": "A String", # The sample ID this call set corresponds to.
+    "variantSetIds": [ # The IDs of the variant sets this call set belongs to.
+      "A String",
+    ],
+    "id": "A String", # The Google generated ID of the call set, immutable.
   }</pre>
 </div>
 
 <div class="method">
     <code class="details" id="search">search(body)</code>
-  <pre>Gets a list of callsets matching the criteria.
+  <pre>Gets a list of call sets matching the criteria.
 
 Args:
   body: object, The request body. (required)
     The object takes the form of:
 
-{ # The callset search request.
-    "pageToken": "A 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.
-    "datasetIds": [ # Restrict the query to callsets within the given datasets. At least one ID must be provided.
+{ # The call set search request.
+    "pageToken": "A 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.
+    "variantSetIds": [ # Restrict the query to call sets within the given variant sets. At least one ID must be provided.
       "A String",
     ],
-    "name": "A String", # Only return callsets for which a substring of the name matches this string.
-    "maxResults": "A String", # The maximum number of callsets to return.
+    "name": "A String", # Only return call sets for which a substring of the name matches this string.
+    "pageSize": 42, # The maximum number of call sets to return.
   }
 
 
 Returns:
   An object of the form:
 
-    { # The callset search response.
+    { # The call set search response.
     "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. This field will be empty if there aren't any additional results.
-    "callsets": [ # The list of matching callsets.
-      { # A Callset is a collection of Variant Calls. It belongs to a Dataset.
+    "callSets": [ # The list of matching call sets.
+      { # A CallSet is a collection of variant calls. It belongs to a variant set.
         "info": { # A map of additional callset information.
           "a_key": [ # A string which maps to an array of values.
             "A String",
           ],
         },
         "name": "A String", # The callset name.
-        "id": "A String", # The Google generated ID of the callset, immutable.
-        "datasetId": "A String", # The ID of the dataset this callset belongs to.
-        "created": "A String", # The date this callset was created in milliseconds from the epoch.
+        "created": "A String", # The date this call set was created in milliseconds from the epoch.
+        "sampleId": "A String", # The sample ID this call set corresponds to.
+        "variantSetIds": [ # The IDs of the variant sets this call set belongs to.
+          "A String",
+        ],
+        "id": "A String", # The Google generated ID of the call set, immutable.
       },
     ],
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="update">update(callsetId, body)</code>
-  <pre>Updates a callset.
+    <code class="details" id="update">update(callSetId, body)</code>
+  <pre>Updates a call set.
 
 Args:
-  callsetId: string, The ID of the callset to be updated. (required)
+  callSetId: string, The ID of the callset to be updated. (required)
   body: object, The request body. (required)
     The object takes the form of:
 
-{ # A Callset is a collection of Variant Calls. It belongs to a Dataset.
+{ # A CallSet is a collection of variant calls. It belongs to a variant set.
   "info": { # A map of additional callset information.
     "a_key": [ # A string which maps to an array of values.
       "A String",
     ],
   },
   "name": "A String", # The callset name.
-  "id": "A String", # The Google generated ID of the callset, immutable.
-  "datasetId": "A String", # The ID of the dataset this callset belongs to.
-  "created": "A String", # The date this callset was created in milliseconds from the epoch.
+  "created": "A String", # The date this call set was created in milliseconds from the epoch.
+  "sampleId": "A String", # The sample ID this call set corresponds to.
+  "variantSetIds": [ # The IDs of the variant sets this call set belongs to.
+    "A String",
+  ],
+  "id": "A String", # The Google generated ID of the call set, immutable.
 }
 
 
 Returns:
   An object of the form:
 
-    { # A Callset is a collection of Variant Calls. It belongs to a Dataset.
+    { # A CallSet is a collection of variant calls. It belongs to a variant set.
     "info": { # A map of additional callset information.
       "a_key": [ # A string which maps to an array of values.
         "A String",
       ],
     },
     "name": "A String", # The callset name.
-    "id": "A String", # The Google generated ID of the callset, immutable.
-    "datasetId": "A String", # The ID of the dataset this callset belongs to.
-    "created": "A String", # The date this callset was created in milliseconds from the epoch.
+    "created": "A String", # The date this call set was created in milliseconds from the epoch.
+    "sampleId": "A String", # The sample ID this call set corresponds to.
+    "variantSetIds": [ # The IDs of the variant sets this call set belongs to.
+      "A String",
+    ],
+    "id": "A String", # The Google generated ID of the call set, immutable.
   }</pre>
 </div>
 
diff --git a/docs/dyn/genomics_v1beta.datasets.html b/docs/dyn/genomics_v1beta.datasets.html
index daf25ec..ed2f4d5 100644
--- a/docs/dyn/genomics_v1beta.datasets.html
+++ b/docs/dyn/genomics_v1beta.datasets.html
@@ -158,7 +158,7 @@
   <pre>Lists all datasets.
 
 Args:
-  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.
+  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: string, The maximum number of results returned by this request.
   projectId: string, Only return datasets which belong to this Google Developers Console project. Only accepts project numbers.
 
diff --git a/docs/dyn/genomics_v1beta.experimental.jobs.html b/docs/dyn/genomics_v1beta.experimental.jobs.html
index 16b2959..bc5977e 100644
--- a/docs/dyn/genomics_v1beta.experimental.jobs.html
+++ b/docs/dyn/genomics_v1beta.experimental.jobs.html
@@ -86,17 +86,17 @@
   body: object, The request body. (required)
     The object takes the form of:
 
-{ # The job creation request.
-    "pairedSourceUris": [ # A list of Google Cloud Storage URIs of paired end .fastq files to operate upon. If specified, this represents the second file of each paired .fastq file. The first file of each pair should be specified in "sourceUris".
+{ # The job creation request. Next ID: 12
+    "pairedSourceUris": [ # A list of Google Cloud Storage URIs of paired end .fastq files to operate upon. If specified, this represents the second file of each paired .fastq file. The first file of each pair should be specified in sourceUris.
       "A String",
     ],
     "projectId": "A String", # Required. The Google Cloud Project ID with which to associate the request.
-    "align": True or False, # Specifies whether or not to run the alignment pipeline. At least one of align or call_variants must be provided.
-    "callVariants": True or False, # Specifies whether or not to run the variant calling pipeline. If specified, alignment will be performed first and the aligned BAMs will passed as input to the variant caller. At least one of align or call_variants must be provided.
-    "sourceUris": [ # A list of Google Cloud Storage URIs of data files to operate upon. These can be .bam, interleaved .fastq, or paired .fastq. If specifying paired .fastq files, the first of each pair of files should be listed here, and the second of each pair should be listed in "pairedSourceUris".
+    "align": True or False, # Specifies whether or not to run the alignment pipeline. At least one of align or callVariants must be provided.
+    "callVariants": True or False, # Specifies whether or not to run the variant calling pipeline. If specified, alignment will be performed first and the aligned BAMs will passed as input to the variant caller. At least one of align or callVariants must be provided.
+    "sourceUris": [ # A list of Google Cloud Storage URIs of data files to operate upon. These can be .bam, interleaved .fastq, or paired .fastq. If specifying paired .fastq files, the first of each pair of files should be listed here, and the second of each pair should be listed in pairedSourceUris.
       "A String",
     ],
-    "gcsOutputPath": "A String", # Specifies where to copy the results of certain pipelines. This shoud be in the form of "gs://bucket/path".
+    "gcsOutputPath": "A String", # Specifies where to copy the results of certain pipelines. This should be in the form of gs://bucket/path.
   }
 
 
diff --git a/docs/dyn/genomics_v1beta.html b/docs/dyn/genomics_v1beta.html
index dd5308e..3832845 100644
--- a/docs/dyn/genomics_v1beta.html
+++ b/docs/dyn/genomics_v1beta.html
@@ -114,4 +114,9 @@
 </p>
 <p class="firstline">Returns the variants Resource.</p>
 
+<p class="toc_element">
+  <code><a href="genomics_v1beta.variantsets.html">variantsets()</a></code>
+</p>
+<p class="firstline">Returns the variantsets Resource.</p>
+
 </body></html>
\ No newline at end of file
diff --git a/docs/dyn/genomics_v1beta.jobs.html b/docs/dyn/genomics_v1beta.jobs.html
index 07cb400..72faea4 100644
--- a/docs/dyn/genomics_v1beta.jobs.html
+++ b/docs/dyn/genomics_v1beta.jobs.html
@@ -114,6 +114,15 @@
     "warnings": [ # Any warnings that occurred during processing.
       "A String",
     ],
+    "request": { # A summary representation of the service request that spawned the job. # A summarized representation of the original service request.
+      "source": [ # The data source of the request, for example, a Google Cloud Storage object path or Readset ID.
+        "A String",
+      ],
+      "destination": [ # The data destination of the request, for example, a Google BigQuery Table or Dataset ID.
+        "A String",
+      ],
+      "type": "A String", # The original request type.
+    },
     "importedIds": [ # If this Job represents an import, this field will contain the IDs of the objects that were successfully imported.
       "A String",
     ],
@@ -134,9 +143,9 @@
       "A String",
     ],
     "createdAfter": "A String", # If specified, only jobs created on or after this date, given in milliseconds since Unix epoch, will be returned.
-    "projectId": "A String", # Required. Only return jobs which belong to this Google Developers Console project. Only accepts project numbers.
+    "projectId": "A String", # Required. Only return jobs which belong to this Google Developers
     "maxResults": "A String", # Specifies the number of results to return in a single page. Defaults to 128. The maximum value is 256.
-    "pageToken": "A 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 the "nextPageToken" from the previous response.
+    "pageToken": "A 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 the nextPageToken from the previous response.
     "createdBefore": "A String", # If specified, only jobs created prior to this date, given in milliseconds since Unix epoch, will be returned.
   }
 
@@ -158,6 +167,15 @@
         "warnings": [ # Any warnings that occurred during processing.
           "A String",
         ],
+        "request": { # A summary representation of the service request that spawned the job. # A summarized representation of the original service request.
+          "source": [ # The data source of the request, for example, a Google Cloud Storage object path or Readset ID.
+            "A String",
+          ],
+          "destination": [ # The data destination of the request, for example, a Google BigQuery Table or Dataset ID.
+            "A String",
+          ],
+          "type": "A String", # The original request type.
+        },
         "importedIds": [ # If this Job represents an import, this field will contain the IDs of the objects that were successfully imported.
           "A String",
         ],
diff --git a/docs/dyn/genomics_v1beta.reads.html b/docs/dyn/genomics_v1beta.reads.html
index f872923..1d45e8e 100644
--- a/docs/dyn/genomics_v1beta.reads.html
+++ b/docs/dyn/genomics_v1beta.reads.html
@@ -87,14 +87,14 @@
     The object takes the form of:
 
 { # The read search request.
-    "sequenceStart": "A String", # The start position (1-based, inclusive) of the target range. If specified, "sequenceName" must also be specified. Defaults to the start of the target reference sequence, if any.
+    "sequenceStart": "A String", # The start position (1-based, inclusive) of the target range. If specified, sequenceName must also be specified. Defaults to the start of the target reference sequence, if any.
     "readsetIds": [ # The readsets within which to search for reads. At least one readset ID must be provided. All specified readsets must be aligned against a common set of reference sequences; this defines the genomic coordinates for the query.
       "A String",
     ],
-    "sequenceEnd": "A String", # The end position (1-based, inclusive) of the target range. If specified, "sequenceName" must also be specified. Defaults to the end of the target reference sequence, if any.
-    "maxResults": "A String", # Specifies number of results to return in a single page. If unspecified, it will default to 256. The maximum value is 1024.
-    "pageToken": "A 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.
-    "sequenceName": "A String", # Restricts the results to a particular reference sequence such as '1', 'chr1', or 'X'. The set of valid references sequences depends on the readsets specified. If set to "*", only unmapped Reads are returned.
+    "sequenceEnd": "A String", # The end position (1-based, inclusive) of the target range. If specified, sequenceName must also be specified. Defaults to the end of the target reference sequence, if any.
+    "maxResults": "A String", # Specifies number of results to return in a single page. If unspecified, it will default to 256. The maximum value is 2048.
+    "pageToken": "A 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.
+    "sequenceName": "A String", # Restricts the results to a particular reference sequence such as 1, chr1, or X. The set of valid references sequences depends on the readsets specified. If set to *, only unmapped Reads are returned.
   }
 
 
diff --git a/docs/dyn/genomics_v1beta.readsets.coveragebuckets.html b/docs/dyn/genomics_v1beta.readsets.coveragebuckets.html
index 3b7642a..d182b35 100644
--- a/docs/dyn/genomics_v1beta.readsets.coveragebuckets.html
+++ b/docs/dyn/genomics_v1beta.readsets.coveragebuckets.html
@@ -87,29 +87,29 @@
 
 Args:
   readsetId: string, Required. The ID of the readset over which coverage is requested. (required)
-  range_sequenceName: string, The reference sequence name, for example "chr1", "1", or "chrX".
-  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.
+  range_sequenceName: string, The reference sequence name, for example chr1, 1, or chrX.
+  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.
   range_sequenceEnd: string, The end position of the range on the reference, 1-based exclusive. If specified, sequenceName must also be specified.
   maxResults: string, The maximum number of results to return in a single page. If unspecified, defaults to 1024. The maximum value is 2048.
   range_sequenceStart: string, The start position of the range on the reference, 1-based inclusive. If specified, sequenceName must also be specified.
-  targetBucketWidth: string, The desired width of each reported coverage bucket in base pairs. This will be rounded down to the nearest precomputed bucket width; the value of which is returned as bucket_width in the response. Defaults to infinity (each bucket spans an entire reference sequence) or the length of the target range, if specified. The smallest precomputed bucket_width is currently 2048 base pairs; this is subject to change.
+  targetBucketWidth: string, The desired width of each reported coverage bucket in base pairs. This will be rounded down to the nearest precomputed bucket width; the value of which is returned as bucketWidth in the response. Defaults to infinity (each bucket spans an entire reference sequence) or the length of the target range, if specified. The smallest precomputed bucketWidth is currently 2048 base pairs; this is subject to change.
 
 Returns:
   An object of the form:
 
     {
-    "coverageBuckets": [ # The coverage buckets. The list of buckets is sparse; a bucket with 0 overlapping reads is not returned. A bucket never crosses more than one reference sequence. Each bucket has width bucket_width, unless its end is is the end of the reference sequence.
+    "coverageBuckets": [ # The coverage buckets. The list of buckets is sparse; a bucket with 0 overlapping reads is not returned. A bucket never crosses more than one reference sequence. Each bucket has width bucketWidth, unless its end is the end of the reference sequence.
       { # A bucket over which read coverage has been precomputed. A bucket corresponds to a specific range of the reference sequence.
         "meanCoverage": 3.14, # The average number of reads which are aligned to each individual reference base in this bucket.
         "range": { # An inclusive, exclusive genomic coordinate range over a reference sequence. # The genomic coordinate range spanned by this bucket.
           "sequenceStart": "A String", # The start position of the range on the reference, 1-based inclusive. If specified, sequenceName must also be specified.
           "sequenceEnd": "A String", # The end position of the range on the reference, 1-based exclusive. If specified, sequenceName must also be specified.
-          "sequenceName": "A String", # The reference sequence name, for example "chr1", "1", or "chrX".
+          "sequenceName": "A String", # The reference sequence name, for example chr1, 1, or chrX.
         },
       },
     ],
     "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. This field will be empty if there aren't any additional results.
-    "bucketWidth": "A String", # The length of each coverage bucket in base pairs. Note that buckets at the end of a reference sequence may be shorter. This value is omitted if the bucket width is infinity (the default behaviour, with no range or target_bucket_width).
+    "bucketWidth": "A String", # The length of each coverage bucket in base pairs. Note that buckets at the end of a reference sequence may be shorter. This value is omitted if the bucket width is infinity (the default behaviour, with no range or targetBucketWidth).
   }</pre>
 </div>
 
diff --git a/docs/dyn/genomics_v1beta.readsets.html b/docs/dyn/genomics_v1beta.readsets.html
index 7015dfd..ed2facb 100644
--- a/docs/dyn/genomics_v1beta.readsets.html
+++ b/docs/dyn/genomics_v1beta.readsets.html
@@ -123,7 +123,10 @@
       "A String",
     ],
     "exportUri": "A String", # A Google Cloud Storage URI where the exported BAM file will be created. The currently authenticated user must have write access to the new file location. An error will be returned if the URI already contains data.
-    "projectId": "A String", # The Google Developers Console project number that owns this export. This is the project that will be billed.
+    "referenceNames": [ # The reference names to export. If this is not specified, all reference sequences, including unmapped reads, are exported. Use * to export only unmapped reads.
+      "A String",
+    ],
+    "projectId": "A String", # The Google Developers Console project number that owns this export.
   }
 
 
@@ -361,12 +364,12 @@
     The object takes the form of:
 
 { # The readset search request.
-    "pageToken": "A 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.
+    "pageToken": "A 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.
     "datasetIds": [ # Restricts this query to readsets within the given datasets. At least one ID must be provided.
       "A String",
     ],
     "name": "A String", # Only return readsets for which a substring of the name matches this string.
-    "maxResults": "A String", # Specifies number of results to return in a single page. If unspecified, it will default to 128. The maximum value is 256.
+    "maxResults": "A String", # Specifies number of results to return in a single page. If unspecified, it will default to 128. The maximum value is 1024.
   }
 
 
diff --git a/docs/dyn/genomics_v1beta.variants.html b/docs/dyn/genomics_v1beta.variants.html
index c7d2831..feff752 100644
--- a/docs/dyn/genomics_v1beta.variants.html
+++ b/docs/dyn/genomics_v1beta.variants.html
@@ -87,20 +87,14 @@
   <code><a href="#get">get(variantId)</a></code></p>
 <p class="firstline">Gets a variant by ID.</p>
 <p class="toc_element">
-  <code><a href="#getSummary">getSummary(datasetId=None)</a></code></p>
-<p class="firstline">Gets a summary of all the variant data in a dataset.</p>
-<p class="toc_element">
   <code><a href="#import_">import_(body)</a></code></p>
-<p class="firstline">Creates variant data by asynchronously importing the provided information.</p>
-<p class="toc_element">
-  <code><a href="#patch">patch(variantId, body)</a></code></p>
-<p class="firstline">Updates a variant. This method supports patch semantics.</p>
+<p class="firstline">Creates variant data by asynchronously importing the provided information. The variants for import will be merged with any existing data and each other according to the behavior of mergeVariants. In particular, this means for merged VCF variants that have conflicting INFO fields, some data will be arbitrarily discarded. As a special case, for single-sample VCF files, QUAL and FILTER fields will be moved to the call level; these are sometimes interpreted in a call-specific context. Imported VCF headers are appended to the metadata already in a VariantSet.</p>
 <p class="toc_element">
   <code><a href="#search">search(body)</a></code></p>
 <p class="firstline">Gets a list of variants matching the criteria.</p>
 <p class="toc_element">
   <code><a href="#update">update(variantId, body)</a></code></p>
-<p class="firstline">Updates a variant.</p>
+<p class="firstline">Updates a variant's names and info fields. All other modifications are silently ignored. Returns the modified variant without its calls.</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="create">create(body)</code>
@@ -110,86 +104,94 @@
   body: object, The request body. (required)
     The object takes the form of:
 
-{ # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a Dataset.
+{ # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a variant set.
   "info": { # A map of additional variant information.
     "a_key": [ # A string which maps to an array of values.
       "A String",
     ],
   },
-  "end": "A String", # The end position (1-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - position). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
+  "variantSetId": "A String", # The ID of the variant set this variant belongs to.
+  "end": "A String", # The end position (0-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - start). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
   "calls": [ # The variant calls for this particular variant. Each one represents the determination of genotype with respect to this variant.
-    { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a callset with the name NA12345.
+    { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a call set with the name NA12345.
       "info": { # A map of additional variant call information.
         "a_key": [ # A string which maps to an array of values.
           "A String",
         ],
       },
-      "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases field of "T" and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value "CA" for this variant. If the genotype was instead [0, 1], the represented value would be "TA". Ordering of the genotype values is important if the phaseset field is present. If a genotype is not called (that is, a "." is present in the GT string) -1 is returned.
+      "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases value of T and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value CA for this variant. If the genotype was instead [0, 1], the represented value would be TA. Ordering of the genotype values is important if the phaseset is present. If a genotype is not called (that is, a . is present in the GT string) -1 is returned.
         42,
       ],
-      "callsetId": "A String", # The ID of the callset this variant call belongs to.
-      "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls on the same contig which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to "*".
+      "callSetId": "A String", # The ID of the call set this variant call belongs to.
+      "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls in the same reference sequence which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to *.
       "genotypeLikelihood": [ # The genotype likelihoods for this variant call. Each array entry represents how likely a specific genotype is for this call. The value ordering is defined by the GL tag in the VCF spec.
         3.14,
       ],
-      "callsetName": "A String", # The name of the callset this variant call belongs to.
+      "callSetName": "A String", # The name of the call set this variant call belongs to.
     },
   ],
   "created": "A String", # The date this variant was created, in milliseconds from the epoch.
   "referenceBases": "A String", # The reference bases for this variant. They start at the given position.
+  "filter": [ # A list of filters (normally quality filters) this variant has failed. PASS indicates this variant has passed all filters.
+    "A String",
+  ],
+  "start": "A String", # The position at which this variant occurs (0-based). This corresponds to the first base of the string of reference bases.
   "names": [ # Names for the variant, for example a RefSNP ID.
     "A String",
   ],
   "alternateBases": [ # The bases that appear instead of the reference bases.
     "A String",
   ],
-  "position": "A String", # The position at which this variant occurs (1-based). This corresponds to the first base of the string of reference bases.
-  "contig": "A String", # The contig on which this variant occurs. (such as 'chr20' or 'X')
+  "referenceName": "A String", # The reference on which this variant occurs. (such as chr20 or X)
+  "quality": 3.14, # A measure of how likely this variant is to be real. A higher value is better.
   "id": "A String", # The Google generated ID of the variant, immutable.
-  "datasetId": "A String", # The ID of the dataset this variant belongs to.
 }
 
 
 Returns:
   An object of the form:
 
-    { # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a Dataset.
+    { # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a variant set.
     "info": { # A map of additional variant information.
       "a_key": [ # A string which maps to an array of values.
         "A String",
       ],
     },
-    "end": "A String", # The end position (1-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - position). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
+    "variantSetId": "A String", # The ID of the variant set this variant belongs to.
+    "end": "A String", # The end position (0-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - start). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
     "calls": [ # The variant calls for this particular variant. Each one represents the determination of genotype with respect to this variant.
-      { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a callset with the name NA12345.
+      { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a call set with the name NA12345.
         "info": { # A map of additional variant call information.
           "a_key": [ # A string which maps to an array of values.
             "A String",
           ],
         },
-        "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases field of "T" and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value "CA" for this variant. If the genotype was instead [0, 1], the represented value would be "TA". Ordering of the genotype values is important if the phaseset field is present. If a genotype is not called (that is, a "." is present in the GT string) -1 is returned.
+        "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases value of T and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value CA for this variant. If the genotype was instead [0, 1], the represented value would be TA. Ordering of the genotype values is important if the phaseset is present. If a genotype is not called (that is, a . is present in the GT string) -1 is returned.
           42,
         ],
-        "callsetId": "A String", # The ID of the callset this variant call belongs to.
-        "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls on the same contig which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to "*".
+        "callSetId": "A String", # The ID of the call set this variant call belongs to.
+        "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls in the same reference sequence which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to *.
         "genotypeLikelihood": [ # The genotype likelihoods for this variant call. Each array entry represents how likely a specific genotype is for this call. The value ordering is defined by the GL tag in the VCF spec.
           3.14,
         ],
-        "callsetName": "A String", # The name of the callset this variant call belongs to.
+        "callSetName": "A String", # The name of the call set this variant call belongs to.
       },
     ],
     "created": "A String", # The date this variant was created, in milliseconds from the epoch.
     "referenceBases": "A String", # The reference bases for this variant. They start at the given position.
+    "filter": [ # A list of filters (normally quality filters) this variant has failed. PASS indicates this variant has passed all filters.
+      "A String",
+    ],
+    "start": "A String", # The position at which this variant occurs (0-based). This corresponds to the first base of the string of reference bases.
     "names": [ # Names for the variant, for example a RefSNP ID.
       "A String",
     ],
     "alternateBases": [ # The bases that appear instead of the reference bases.
       "A String",
     ],
-    "position": "A String", # The position at which this variant occurs (1-based). This corresponds to the first base of the string of reference bases.
-    "contig": "A String", # The contig on which this variant occurs. (such as 'chr20' or 'X')
+    "referenceName": "A String", # The reference on which this variant occurs. (such as chr20 or X)
+    "quality": 3.14, # A measure of how likely this variant is to be real. A higher value is better.
     "id": "A String", # The Google generated ID of the variant, immutable.
-    "datasetId": "A String", # The ID of the dataset this variant belongs to.
   }</pre>
 </div>
 
@@ -211,14 +213,14 @@
     The object takes the form of:
 
 { # The variant data export request.
+    "variantSetId": "A String", # Required. The ID of the variant set that contains variant data which should be exported. The caller must have READ access to this variant set.
     "format": "A String", # The format for the exported data.
-    "projectId": "A String", # The Google Cloud project number that owns this export. This is the project that will be billed.
-    "callsetIds": [ # If provided, only variant call information from the specified callsets will be exported. By default all variant calls are exported.
+    "projectId": "A String", # The Google Cloud project number that owns the destination BigQuery dataset. The caller must have WRITE access to this project. This project will also own the resulting export job.
+    "callSetIds": [ # If provided, only variant call information from the specified call sets will be exported. By default all variant calls are exported.
       "A String",
     ],
-    "bigqueryDataset": "A String", # The BigQuery dataset to export data to. Note that this is distinct from the Genomics concept of "dataset". The caller must have WRITE access to this BigQuery dataset.
-    "datasetId": "A String", # Required. The ID of the dataset that contains variant data which should be exported. The caller must have READ access to this dataset.
-    "bigqueryTable": "A String", # The BigQuery table to export data to. The caller must have WRITE access to this BigQuery table.
+    "bigqueryDataset": "A String", # The BigQuery dataset to export data to. Note that this is distinct from the Genomics concept of "dataset".
+    "bigqueryTable": "A String", # The BigQuery table to export data to. If the table doesn't exist, it will be created. If it already exists, it will be overwritten.
   }
 
 
@@ -240,94 +242,64 @@
 Returns:
   An object of the form:
 
-    { # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a Dataset.
+    { # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a variant set.
     "info": { # A map of additional variant information.
       "a_key": [ # A string which maps to an array of values.
         "A String",
       ],
     },
-    "end": "A String", # The end position (1-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - position). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
+    "variantSetId": "A String", # The ID of the variant set this variant belongs to.
+    "end": "A String", # The end position (0-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - start). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
     "calls": [ # The variant calls for this particular variant. Each one represents the determination of genotype with respect to this variant.
-      { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a callset with the name NA12345.
+      { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a call set with the name NA12345.
         "info": { # A map of additional variant call information.
           "a_key": [ # A string which maps to an array of values.
             "A String",
           ],
         },
-        "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases field of "T" and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value "CA" for this variant. If the genotype was instead [0, 1], the represented value would be "TA". Ordering of the genotype values is important if the phaseset field is present. If a genotype is not called (that is, a "." is present in the GT string) -1 is returned.
+        "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases value of T and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value CA for this variant. If the genotype was instead [0, 1], the represented value would be TA. Ordering of the genotype values is important if the phaseset is present. If a genotype is not called (that is, a . is present in the GT string) -1 is returned.
           42,
         ],
-        "callsetId": "A String", # The ID of the callset this variant call belongs to.
-        "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls on the same contig which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to "*".
+        "callSetId": "A String", # The ID of the call set this variant call belongs to.
+        "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls in the same reference sequence which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to *.
         "genotypeLikelihood": [ # The genotype likelihoods for this variant call. Each array entry represents how likely a specific genotype is for this call. The value ordering is defined by the GL tag in the VCF spec.
           3.14,
         ],
-        "callsetName": "A String", # The name of the callset this variant call belongs to.
+        "callSetName": "A String", # The name of the call set this variant call belongs to.
       },
     ],
     "created": "A String", # The date this variant was created, in milliseconds from the epoch.
     "referenceBases": "A String", # The reference bases for this variant. They start at the given position.
+    "filter": [ # A list of filters (normally quality filters) this variant has failed. PASS indicates this variant has passed all filters.
+      "A String",
+    ],
+    "start": "A String", # The position at which this variant occurs (0-based). This corresponds to the first base of the string of reference bases.
     "names": [ # Names for the variant, for example a RefSNP ID.
       "A String",
     ],
     "alternateBases": [ # The bases that appear instead of the reference bases.
       "A String",
     ],
-    "position": "A String", # The position at which this variant occurs (1-based). This corresponds to the first base of the string of reference bases.
-    "contig": "A String", # The contig on which this variant occurs. (such as 'chr20' or 'X')
+    "referenceName": "A String", # The reference on which this variant occurs. (such as chr20 or X)
+    "quality": 3.14, # A measure of how likely this variant is to be real. A higher value is better.
     "id": "A String", # The Google generated ID of the variant, immutable.
-    "datasetId": "A String", # The ID of the dataset this variant belongs to.
-  }</pre>
-</div>
-
-<div class="method">
-    <code class="details" id="getSummary">getSummary(datasetId=None)</code>
-  <pre>Gets a summary of all the variant data in a dataset.
-
-Args:
-  datasetId: string, Required. The ID of the dataset to get variant summary information for.
-
-Returns:
-  An object of the form:
-
-    { # The variants summary response.
-    "contigBounds": [ # A list of all contigs used by the variants in a dataset with associated coordinate upper bounds for each one.
-      { # ContigBound records an upper bound for the starting coordinate of variants in a particular contig.
-        "contig": "A String", # The contig the bound is associate with.
-        "upperBound": "A String", # An upper bound (inclusive) on the starting coordinate of any variant in the contig.
-      },
-    ],
-    "metadata": [ # The metadata associated with this dataset.
-      { # Metadata describes a single piece of variant call metadata. These data include a top level key and either a single value string (value) or a list of key-value pairs (info.) Value and info are mutually exclusive.
-        "info": { # Remaining structured metadata key-value pairs.
-          "a_key": [ # A string which maps to an array of values.
-            "A String",
-          ],
-        },
-        "description": "A String", # A textual description of this metadata.
-        "number": "A String", # The number of values that can be included in a field described by this metadata.
-        "value": "A String", # The value field for simple metadata
-        "key": "A String", # The top-level key.
-        "type": "A String", # The type of data. Possible types include: Integer, Float, Flag, Character, and String.
-        "id": "A String", # User-provided ID field, not enforced by this API. Two or more pieces of structured metadata with identical id and key fields are considered equivalent.
-      },
-    ],
   }</pre>
 </div>
 
 <div class="method">
     <code class="details" id="import_">import_(body)</code>
-  <pre>Creates variant data by asynchronously importing the provided information.
+  <pre>Creates variant data by asynchronously importing the provided information. The variants for import will be merged with any existing data and each other according to the behavior of mergeVariants. In particular, this means for merged VCF variants that have conflicting INFO fields, some data will be arbitrarily discarded. As a special case, for single-sample VCF files, QUAL and FILTER fields will be moved to the call level; these are sometimes interpreted in a call-specific context. Imported VCF headers are appended to the metadata already in a VariantSet.
 
 Args:
   body: object, The request body. (required)
     The object takes the form of:
 
 { # The variant data import request.
+    "variantSetId": "A String", # Required. The variant set to which variant data should be imported.
     "sourceUris": [ # A list of URIs pointing at VCF files in Google Cloud Storage. See the VCF Specification for more details on the input format.
       "A String",
     ],
-    "datasetId": "A String", # Required. The dataset to which variant data should be imported.
+    "format": "A String", # The format of the variant data being imported.
   }
 
 
@@ -340,98 +312,6 @@
 </div>
 
 <div class="method">
-    <code class="details" id="patch">patch(variantId, body)</code>
-  <pre>Updates a variant. This method supports patch semantics.
-
-Args:
-  variantId: string, The ID of the variant to be updated.. (required)
-  body: object, The request body. (required)
-    The object takes the form of:
-
-{ # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a Dataset.
-  "info": { # A map of additional variant information.
-    "a_key": [ # A string which maps to an array of values.
-      "A String",
-    ],
-  },
-  "end": "A String", # The end position (1-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - position). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
-  "calls": [ # The variant calls for this particular variant. Each one represents the determination of genotype with respect to this variant.
-    { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a callset with the name NA12345.
-      "info": { # A map of additional variant call information.
-        "a_key": [ # A string which maps to an array of values.
-          "A String",
-        ],
-      },
-      "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases field of "T" and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value "CA" for this variant. If the genotype was instead [0, 1], the represented value would be "TA". Ordering of the genotype values is important if the phaseset field is present. If a genotype is not called (that is, a "." is present in the GT string) -1 is returned.
-        42,
-      ],
-      "callsetId": "A String", # The ID of the callset this variant call belongs to.
-      "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls on the same contig which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to "*".
-      "genotypeLikelihood": [ # The genotype likelihoods for this variant call. Each array entry represents how likely a specific genotype is for this call. The value ordering is defined by the GL tag in the VCF spec.
-        3.14,
-      ],
-      "callsetName": "A String", # The name of the callset this variant call belongs to.
-    },
-  ],
-  "created": "A String", # The date this variant was created, in milliseconds from the epoch.
-  "referenceBases": "A String", # The reference bases for this variant. They start at the given position.
-  "names": [ # Names for the variant, for example a RefSNP ID.
-    "A String",
-  ],
-  "alternateBases": [ # The bases that appear instead of the reference bases.
-    "A String",
-  ],
-  "position": "A String", # The position at which this variant occurs (1-based). This corresponds to the first base of the string of reference bases.
-  "contig": "A String", # The contig on which this variant occurs. (such as 'chr20' or 'X')
-  "id": "A String", # The Google generated ID of the variant, immutable.
-  "datasetId": "A String", # The ID of the dataset this variant belongs to.
-}
-
-
-Returns:
-  An object of the form:
-
-    { # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a Dataset.
-    "info": { # A map of additional variant information.
-      "a_key": [ # A string which maps to an array of values.
-        "A String",
-      ],
-    },
-    "end": "A String", # The end position (1-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - position). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
-    "calls": [ # The variant calls for this particular variant. Each one represents the determination of genotype with respect to this variant.
-      { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a callset with the name NA12345.
-        "info": { # A map of additional variant call information.
-          "a_key": [ # A string which maps to an array of values.
-            "A String",
-          ],
-        },
-        "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases field of "T" and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value "CA" for this variant. If the genotype was instead [0, 1], the represented value would be "TA". Ordering of the genotype values is important if the phaseset field is present. If a genotype is not called (that is, a "." is present in the GT string) -1 is returned.
-          42,
-        ],
-        "callsetId": "A String", # The ID of the callset this variant call belongs to.
-        "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls on the same contig which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to "*".
-        "genotypeLikelihood": [ # The genotype likelihoods for this variant call. Each array entry represents how likely a specific genotype is for this call. The value ordering is defined by the GL tag in the VCF spec.
-          3.14,
-        ],
-        "callsetName": "A String", # The name of the callset this variant call belongs to.
-      },
-    ],
-    "created": "A String", # The date this variant was created, in milliseconds from the epoch.
-    "referenceBases": "A String", # The reference bases for this variant. They start at the given position.
-    "names": [ # Names for the variant, for example a RefSNP ID.
-      "A String",
-    ],
-    "alternateBases": [ # The bases that appear instead of the reference bases.
-      "A String",
-    ],
-    "position": "A String", # The position at which this variant occurs (1-based). This corresponds to the first base of the string of reference bases.
-    "contig": "A String", # The contig on which this variant occurs. (such as 'chr20' or 'X')
-    "id": "A String", # The Google generated ID of the variant, immutable.
-    "datasetId": "A String", # The ID of the dataset this variant belongs to.
-  }</pre>
-</div>
-
-<div class="method">
     <code class="details" id="search">search(body)</code>
   <pre>Gets a list of variants matching the criteria.
 
@@ -440,19 +320,19 @@
     The object takes the form of:
 
 { # The variant search request.
-    "endPosition": "A String", # Required. The end of the window (1-based, inclusive) for which overlapping variants should be returned.
-    "startPosition": "A String", # Required. The beginning of the window (1-based, inclusive) for which overlapping variants should be returned.
-    "callsetNames": [ # Only return variant calls which belong to callsets which have exactly these names. Leaving this blank returns all variant calls. At most one of callsetNames or callsetIds should be provided.
-      "A String",
-    ],
-    "maxResults": "A String", # The maximum number of variants to return.
-    "pageToken": "A 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.
-    "callsetIds": [ # Only return variant calls which belong to callsets with these ids. Leaving this blank returns all variant calls. At most one of callsetNames or callsetIds should be provided.
+    "end": "A String", # Required. The end of the window (0-based, exclusive) for which overlapping variants should be returned.
+    "pageSize": 42, # The maximum number of variants to return.
+    "start": "A String", # Required. The beginning of the window (0-based, inclusive) for which overlapping variants should be returned.
+    "maxCalls": 42, # The maximum number of calls to return. However, at least one variant will always be returned, even if it has more calls than this limit.
+    "pageToken": "A 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.
+    "callSetIds": [ # Only return variant calls which belong to call sets with these ids. Leaving this blank returns all variant calls. If a variant has no calls belonging to any of these call sets, it won't be returned at all. Currently, variants with no calls from any call set will never be returned.
       "A String",
     ],
     "variantName": "A String", # Only return variants which have exactly this name.
-    "contig": "A String", # Required. Only return variants on this contig.
-    "datasetId": "A String", # Required. The ID of the dataset to search.
+    "referenceName": "A String", # Required. Only return variants in this reference sequence.
+    "variantSetIds": [ # Exactly one variant set ID must be provided. Only variants from this variant set will be returned.
+      "A String",
+    ],
   }
 
 
@@ -462,43 +342,47 @@
     { # The variant search response.
     "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. This field will be empty if there aren't any additional results.
     "variants": [ # The list of matching Variants.
-      { # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a Dataset.
+      { # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a variant set.
         "info": { # A map of additional variant information.
           "a_key": [ # A string which maps to an array of values.
             "A String",
           ],
         },
-        "end": "A String", # The end position (1-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - position). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
+        "variantSetId": "A String", # The ID of the variant set this variant belongs to.
+        "end": "A String", # The end position (0-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - start). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
         "calls": [ # The variant calls for this particular variant. Each one represents the determination of genotype with respect to this variant.
-          { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a callset with the name NA12345.
+          { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a call set with the name NA12345.
             "info": { # A map of additional variant call information.
               "a_key": [ # A string which maps to an array of values.
                 "A String",
               ],
             },
-            "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases field of "T" and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value "CA" for this variant. If the genotype was instead [0, 1], the represented value would be "TA". Ordering of the genotype values is important if the phaseset field is present. If a genotype is not called (that is, a "." is present in the GT string) -1 is returned.
+            "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases value of T and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value CA for this variant. If the genotype was instead [0, 1], the represented value would be TA. Ordering of the genotype values is important if the phaseset is present. If a genotype is not called (that is, a . is present in the GT string) -1 is returned.
               42,
             ],
-            "callsetId": "A String", # The ID of the callset this variant call belongs to.
-            "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls on the same contig which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to "*".
+            "callSetId": "A String", # The ID of the call set this variant call belongs to.
+            "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls in the same reference sequence which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to *.
             "genotypeLikelihood": [ # The genotype likelihoods for this variant call. Each array entry represents how likely a specific genotype is for this call. The value ordering is defined by the GL tag in the VCF spec.
               3.14,
             ],
-            "callsetName": "A String", # The name of the callset this variant call belongs to.
+            "callSetName": "A String", # The name of the call set this variant call belongs to.
           },
         ],
         "created": "A String", # The date this variant was created, in milliseconds from the epoch.
         "referenceBases": "A String", # The reference bases for this variant. They start at the given position.
+        "filter": [ # A list of filters (normally quality filters) this variant has failed. PASS indicates this variant has passed all filters.
+          "A String",
+        ],
+        "start": "A String", # The position at which this variant occurs (0-based). This corresponds to the first base of the string of reference bases.
         "names": [ # Names for the variant, for example a RefSNP ID.
           "A String",
         ],
         "alternateBases": [ # The bases that appear instead of the reference bases.
           "A String",
         ],
-        "position": "A String", # The position at which this variant occurs (1-based). This corresponds to the first base of the string of reference bases.
-        "contig": "A String", # The contig on which this variant occurs. (such as 'chr20' or 'X')
+        "referenceName": "A String", # The reference on which this variant occurs. (such as chr20 or X)
+        "quality": 3.14, # A measure of how likely this variant is to be real. A higher value is better.
         "id": "A String", # The Google generated ID of the variant, immutable.
-        "datasetId": "A String", # The ID of the dataset this variant belongs to.
       },
     ],
   }</pre>
@@ -506,93 +390,101 @@
 
 <div class="method">
     <code class="details" id="update">update(variantId, body)</code>
-  <pre>Updates a variant.
+  <pre>Updates a variant's names and info fields. All other modifications are silently ignored. Returns the modified variant without its calls.
 
 Args:
-  variantId: string, The ID of the variant to be updated.. (required)
+  variantId: string, The ID of the variant to be updated. (required)
   body: object, The request body. (required)
     The object takes the form of:
 
-{ # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a Dataset.
+{ # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a variant set.
   "info": { # A map of additional variant information.
     "a_key": [ # A string which maps to an array of values.
       "A String",
     ],
   },
-  "end": "A String", # The end position (1-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - position). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
+  "variantSetId": "A String", # The ID of the variant set this variant belongs to.
+  "end": "A String", # The end position (0-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - start). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
   "calls": [ # The variant calls for this particular variant. Each one represents the determination of genotype with respect to this variant.
-    { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a callset with the name NA12345.
+    { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a call set with the name NA12345.
       "info": { # A map of additional variant call information.
         "a_key": [ # A string which maps to an array of values.
           "A String",
         ],
       },
-      "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases field of "T" and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value "CA" for this variant. If the genotype was instead [0, 1], the represented value would be "TA". Ordering of the genotype values is important if the phaseset field is present. If a genotype is not called (that is, a "." is present in the GT string) -1 is returned.
+      "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases value of T and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value CA for this variant. If the genotype was instead [0, 1], the represented value would be TA. Ordering of the genotype values is important if the phaseset is present. If a genotype is not called (that is, a . is present in the GT string) -1 is returned.
         42,
       ],
-      "callsetId": "A String", # The ID of the callset this variant call belongs to.
-      "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls on the same contig which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to "*".
+      "callSetId": "A String", # The ID of the call set this variant call belongs to.
+      "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls in the same reference sequence which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to *.
       "genotypeLikelihood": [ # The genotype likelihoods for this variant call. Each array entry represents how likely a specific genotype is for this call. The value ordering is defined by the GL tag in the VCF spec.
         3.14,
       ],
-      "callsetName": "A String", # The name of the callset this variant call belongs to.
+      "callSetName": "A String", # The name of the call set this variant call belongs to.
     },
   ],
   "created": "A String", # The date this variant was created, in milliseconds from the epoch.
   "referenceBases": "A String", # The reference bases for this variant. They start at the given position.
+  "filter": [ # A list of filters (normally quality filters) this variant has failed. PASS indicates this variant has passed all filters.
+    "A String",
+  ],
+  "start": "A String", # The position at which this variant occurs (0-based). This corresponds to the first base of the string of reference bases.
   "names": [ # Names for the variant, for example a RefSNP ID.
     "A String",
   ],
   "alternateBases": [ # The bases that appear instead of the reference bases.
     "A String",
   ],
-  "position": "A String", # The position at which this variant occurs (1-based). This corresponds to the first base of the string of reference bases.
-  "contig": "A String", # The contig on which this variant occurs. (such as 'chr20' or 'X')
+  "referenceName": "A String", # The reference on which this variant occurs. (such as chr20 or X)
+  "quality": 3.14, # A measure of how likely this variant is to be real. A higher value is better.
   "id": "A String", # The Google generated ID of the variant, immutable.
-  "datasetId": "A String", # The ID of the dataset this variant belongs to.
 }
 
 
 Returns:
   An object of the form:
 
-    { # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a Dataset.
+    { # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a variant set.
     "info": { # A map of additional variant information.
       "a_key": [ # A string which maps to an array of values.
         "A String",
       ],
     },
-    "end": "A String", # The end position (1-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - position). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
+    "variantSetId": "A String", # The ID of the variant set this variant belongs to.
+    "end": "A String", # The end position (0-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - start). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
     "calls": [ # The variant calls for this particular variant. Each one represents the determination of genotype with respect to this variant.
-      { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a callset with the name NA12345.
+      { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a call set with the name NA12345.
         "info": { # A map of additional variant call information.
           "a_key": [ # A string which maps to an array of values.
             "A String",
           ],
         },
-        "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases field of "T" and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value "CA" for this variant. If the genotype was instead [0, 1], the represented value would be "TA". Ordering of the genotype values is important if the phaseset field is present. If a genotype is not called (that is, a "." is present in the GT string) -1 is returned.
+        "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases value of T and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value CA for this variant. If the genotype was instead [0, 1], the represented value would be TA. Ordering of the genotype values is important if the phaseset is present. If a genotype is not called (that is, a . is present in the GT string) -1 is returned.
           42,
         ],
-        "callsetId": "A String", # The ID of the callset this variant call belongs to.
-        "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls on the same contig which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to "*".
+        "callSetId": "A String", # The ID of the call set this variant call belongs to.
+        "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls in the same reference sequence which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to *.
         "genotypeLikelihood": [ # The genotype likelihoods for this variant call. Each array entry represents how likely a specific genotype is for this call. The value ordering is defined by the GL tag in the VCF spec.
           3.14,
         ],
-        "callsetName": "A String", # The name of the callset this variant call belongs to.
+        "callSetName": "A String", # The name of the call set this variant call belongs to.
       },
     ],
     "created": "A String", # The date this variant was created, in milliseconds from the epoch.
     "referenceBases": "A String", # The reference bases for this variant. They start at the given position.
+    "filter": [ # A list of filters (normally quality filters) this variant has failed. PASS indicates this variant has passed all filters.
+      "A String",
+    ],
+    "start": "A String", # The position at which this variant occurs (0-based). This corresponds to the first base of the string of reference bases.
     "names": [ # Names for the variant, for example a RefSNP ID.
       "A String",
     ],
     "alternateBases": [ # The bases that appear instead of the reference bases.
       "A String",
     ],
-    "position": "A String", # The position at which this variant occurs (1-based). This corresponds to the first base of the string of reference bases.
-    "contig": "A String", # The contig on which this variant occurs. (such as 'chr20' or 'X')
+    "referenceName": "A String", # The reference on which this variant occurs. (such as chr20 or X)
+    "quality": 3.14, # A measure of how likely this variant is to be real. A higher value is better.
     "id": "A String", # The Google generated ID of the variant, immutable.
-    "datasetId": "A String", # The ID of the dataset this variant belongs to.
   }</pre>
 </div>
 
diff --git a/docs/dyn/genomics_v1beta.variantsets.html b/docs/dyn/genomics_v1beta.variantsets.html
new file mode 100644
index 0000000..c254520
--- /dev/null
+++ b/docs/dyn/genomics_v1beta.variantsets.html
@@ -0,0 +1,387 @@
+<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="genomics_v1beta.html">Genomics API</a> . <a href="genomics_v1beta.variantsets.html">variantsets</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#delete">delete(variantSetId)</a></code></p>
+<p class="firstline">Deletes the contents of a variant set. The variant set object is not deleted.</p>
+<p class="toc_element">
+  <code><a href="#get">get(variantSetId)</a></code></p>
+<p class="firstline">Gets a variant set by ID.</p>
+<p class="toc_element">
+  <code><a href="#mergeVariants">mergeVariants(variantSetId, body)</a></code></p>
+<p class="firstline">Merges the given variants with existing variants. Each variant will be merged with an existing variant that matches its reference sequence, start, end, reference bases, and alternative bases. If no such variant exists, a new one will be created.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(variantSetId, body)</a></code></p>
+<p class="firstline">Updates a variant set's metadata. All other modifications are silently ignored. Returns the modified variant set. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#search">search(body)</a></code></p>
+<p class="firstline">Returns a list of all variant sets matching search criteria.</p>
+<p class="toc_element">
+  <code><a href="#update">update(variantSetId, body)</a></code></p>
+<p class="firstline">Updates a variant set's metadata. All other modifications are silently ignored. Returns the modified variant set.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="delete">delete(variantSetId)</code>
+  <pre>Deletes the contents of a variant set. The variant set object is not deleted.
+
+Args:
+  variantSetId: string, The ID of the variant set to be deleted. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(variantSetId)</code>
+  <pre>Gets a variant set by ID.
+
+Args:
+  variantSetId: string, Required. The ID of the variant set. (required)
+
+Returns:
+  An object of the form:
+
+    { # A VariantSet represents a collection of Variants and their summary statistics.
+    "referenceBounds": [ # A list of all references used by the variants in a variant set with associated coordinate upper bounds for each one.
+      { # ReferenceBound records an upper bound for the starting coordinate of variants in a particular reference.
+        "upperBound": "A String", # An upper bound (inclusive) on the starting coordinate of any variant in the reference sequence.
+        "referenceName": "A String", # The reference the bound is associate with.
+      },
+    ],
+    "id": "A String", # The Google-generated ID of the variant set. Immutable.
+    "datasetId": "A String", # The dataset to which this variant set belongs. Immutable.
+    "metadata": [ # The metadata associated with this variant set.
+      { # Metadata describes a single piece of variant call metadata. These data include a top level key and either a single value string (value) or a list of key-value pairs (info.) Value and info are mutually exclusive.
+        "info": { # Remaining structured metadata key-value pairs.
+          "a_key": [ # A string which maps to an array of values.
+            "A String",
+          ],
+        },
+        "description": "A String", # A textual description of this metadata.
+        "number": "A String", # The number of values that can be included in a field described by this metadata.
+        "value": "A String", # The value field for simple metadata
+        "key": "A String", # The top-level key.
+        "type": "A String", # The type of data. Possible types include: Integer, Float, Flag, Character, and String.
+        "id": "A String", # User-provided ID field, not enforced by this API. Two or more pieces of structured metadata with identical id and key fields are considered equivalent.
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="mergeVariants">mergeVariants(variantSetId, body)</code>
+  <pre>Merges the given variants with existing variants. Each variant will be merged with an existing variant that matches its reference sequence, start, end, reference bases, and alternative bases. If no such variant exists, a new one will be created.
+
+When variants are merged, the call information from the new variant is added to the existing variant, and other fields (such as key/value pairs) are discarded.
+
+Args:
+  variantSetId: string, The destination variant set. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{
+    "variants": [ # The variants to be merged with existing variants.
+      { # A Variant represents a change in DNA sequence relative to some reference. For example, a Variant could represent a SNP or an insertion. Variants belong to a variant set.
+        "info": { # A map of additional variant information.
+          "a_key": [ # A string which maps to an array of values.
+            "A String",
+          ],
+        },
+        "variantSetId": "A String", # The ID of the variant set this variant belongs to.
+        "end": "A String", # The end position (0-based) of this variant. This corresponds to the first base after the last base in the reference allele. So, the length of the reference allele is (end - start). This is useful for variants that don't explicitly give alternate bases, for example large deletions.
+        "calls": [ # The variant calls for this particular variant. Each one represents the determination of genotype with respect to this variant.
+          { # A Call represents the determination of genotype with respect to a particular variant. It may include associated information such as quality and phasing. For example, a Call might assign a probability of 0.32 to the occurrence of a SNP named rs1234 in a call set with the name NA12345.
+            "info": { # A map of additional variant call information.
+              "a_key": [ # A string which maps to an array of values.
+                "A String",
+              ],
+            },
+            "genotype": [ # The genotype of this variant call. Each value represents either the value of the referenceBases field or a 1-based index into alternateBases. If a variant had a referenceBases value of T and an alternateBases value of ["A", "C"], and the genotype was [2, 1], that would mean the call represented the heterozygous value CA for this variant. If the genotype was instead [0, 1], the represented value would be TA. Ordering of the genotype values is important if the phaseset is present. If a genotype is not called (that is, a . is present in the GT string) -1 is returned.
+              42,
+            ],
+            "callSetId": "A String", # The ID of the call set this variant call belongs to.
+            "phaseset": "A String", # If this field is present, this variant call's genotype ordering implies the phase of the bases and is consistent with any other variant calls in the same reference sequence which have the same phaseset value. When importing data from VCF, if the genotype data was phased but no phase set was specified this field will be set to *.
+            "genotypeLikelihood": [ # The genotype likelihoods for this variant call. Each array entry represents how likely a specific genotype is for this call. The value ordering is defined by the GL tag in the VCF spec.
+              3.14,
+            ],
+            "callSetName": "A String", # The name of the call set this variant call belongs to.
+          },
+        ],
+        "created": "A String", # The date this variant was created, in milliseconds from the epoch.
+        "referenceBases": "A String", # The reference bases for this variant. They start at the given position.
+        "filter": [ # A list of filters (normally quality filters) this variant has failed. PASS indicates this variant has passed all filters.
+          "A String",
+        ],
+        "start": "A String", # The position at which this variant occurs (0-based). This corresponds to the first base of the string of reference bases.
+        "names": [ # Names for the variant, for example a RefSNP ID.
+          "A String",
+        ],
+        "alternateBases": [ # The bases that appear instead of the reference bases.
+          "A String",
+        ],
+        "referenceName": "A String", # The reference on which this variant occurs. (such as chr20 or X)
+        "quality": 3.14, # A measure of how likely this variant is to be real. A higher value is better.
+        "id": "A String", # The Google generated ID of the variant, immutable.
+      },
+    ],
+  }
+
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(variantSetId, body)</code>
+  <pre>Updates a variant set's metadata. All other modifications are silently ignored. Returns the modified variant set. This method supports patch semantics.
+
+Args:
+  variantSetId: string, The ID of the variant to be updated. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A VariantSet represents a collection of Variants and their summary statistics.
+  "referenceBounds": [ # A list of all references used by the variants in a variant set with associated coordinate upper bounds for each one.
+    { # ReferenceBound records an upper bound for the starting coordinate of variants in a particular reference.
+      "upperBound": "A String", # An upper bound (inclusive) on the starting coordinate of any variant in the reference sequence.
+      "referenceName": "A String", # The reference the bound is associate with.
+    },
+  ],
+  "id": "A String", # The Google-generated ID of the variant set. Immutable.
+  "datasetId": "A String", # The dataset to which this variant set belongs. Immutable.
+  "metadata": [ # The metadata associated with this variant set.
+    { # Metadata describes a single piece of variant call metadata. These data include a top level key and either a single value string (value) or a list of key-value pairs (info.) Value and info are mutually exclusive.
+      "info": { # Remaining structured metadata key-value pairs.
+        "a_key": [ # A string which maps to an array of values.
+          "A String",
+        ],
+      },
+      "description": "A String", # A textual description of this metadata.
+      "number": "A String", # The number of values that can be included in a field described by this metadata.
+      "value": "A String", # The value field for simple metadata
+      "key": "A String", # The top-level key.
+      "type": "A String", # The type of data. Possible types include: Integer, Float, Flag, Character, and String.
+      "id": "A String", # User-provided ID field, not enforced by this API. Two or more pieces of structured metadata with identical id and key fields are considered equivalent.
+    },
+  ],
+}
+
+
+Returns:
+  An object of the form:
+
+    { # A VariantSet represents a collection of Variants and their summary statistics.
+    "referenceBounds": [ # A list of all references used by the variants in a variant set with associated coordinate upper bounds for each one.
+      { # ReferenceBound records an upper bound for the starting coordinate of variants in a particular reference.
+        "upperBound": "A String", # An upper bound (inclusive) on the starting coordinate of any variant in the reference sequence.
+        "referenceName": "A String", # The reference the bound is associate with.
+      },
+    ],
+    "id": "A String", # The Google-generated ID of the variant set. Immutable.
+    "datasetId": "A String", # The dataset to which this variant set belongs. Immutable.
+    "metadata": [ # The metadata associated with this variant set.
+      { # Metadata describes a single piece of variant call metadata. These data include a top level key and either a single value string (value) or a list of key-value pairs (info.) Value and info are mutually exclusive.
+        "info": { # Remaining structured metadata key-value pairs.
+          "a_key": [ # A string which maps to an array of values.
+            "A String",
+          ],
+        },
+        "description": "A String", # A textual description of this metadata.
+        "number": "A String", # The number of values that can be included in a field described by this metadata.
+        "value": "A String", # The value field for simple metadata
+        "key": "A String", # The top-level key.
+        "type": "A String", # The type of data. Possible types include: Integer, Float, Flag, Character, and String.
+        "id": "A String", # User-provided ID field, not enforced by this API. Two or more pieces of structured metadata with identical id and key fields are considered equivalent.
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="search">search(body)</code>
+  <pre>Returns a list of all variant sets matching search criteria.
+
+Args:
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # The search variant sets request.
+    "pageToken": "A 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.
+    "datasetIds": [ # Exactly one dataset ID must be provided here. Only variant sets which belong to this dataset will be returned.
+      "A String",
+    ],
+    "pageSize": 42, # The maximum number of variant sets to return in a request.
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # The search variant sets response.
+    "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. This field will be empty if there aren't any additional results.
+    "variantSets": [ # The variant sets belonging to the requested dataset.
+      { # A VariantSet represents a collection of Variants and their summary statistics.
+        "referenceBounds": [ # A list of all references used by the variants in a variant set with associated coordinate upper bounds for each one.
+          { # ReferenceBound records an upper bound for the starting coordinate of variants in a particular reference.
+            "upperBound": "A String", # An upper bound (inclusive) on the starting coordinate of any variant in the reference sequence.
+            "referenceName": "A String", # The reference the bound is associate with.
+          },
+        ],
+        "id": "A String", # The Google-generated ID of the variant set. Immutable.
+        "datasetId": "A String", # The dataset to which this variant set belongs. Immutable.
+        "metadata": [ # The metadata associated with this variant set.
+          { # Metadata describes a single piece of variant call metadata. These data include a top level key and either a single value string (value) or a list of key-value pairs (info.) Value and info are mutually exclusive.
+            "info": { # Remaining structured metadata key-value pairs.
+              "a_key": [ # A string which maps to an array of values.
+                "A String",
+              ],
+            },
+            "description": "A String", # A textual description of this metadata.
+            "number": "A String", # The number of values that can be included in a field described by this metadata.
+            "value": "A String", # The value field for simple metadata
+            "key": "A String", # The top-level key.
+            "type": "A String", # The type of data. Possible types include: Integer, Float, Flag, Character, and String.
+            "id": "A String", # User-provided ID field, not enforced by this API. Two or more pieces of structured metadata with identical id and key fields are considered equivalent.
+          },
+        ],
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(variantSetId, body)</code>
+  <pre>Updates a variant set's metadata. All other modifications are silently ignored. Returns the modified variant set.
+
+Args:
+  variantSetId: string, The ID of the variant to be updated. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A VariantSet represents a collection of Variants and their summary statistics.
+  "referenceBounds": [ # A list of all references used by the variants in a variant set with associated coordinate upper bounds for each one.
+    { # ReferenceBound records an upper bound for the starting coordinate of variants in a particular reference.
+      "upperBound": "A String", # An upper bound (inclusive) on the starting coordinate of any variant in the reference sequence.
+      "referenceName": "A String", # The reference the bound is associate with.
+    },
+  ],
+  "id": "A String", # The Google-generated ID of the variant set. Immutable.
+  "datasetId": "A String", # The dataset to which this variant set belongs. Immutable.
+  "metadata": [ # The metadata associated with this variant set.
+    { # Metadata describes a single piece of variant call metadata. These data include a top level key and either a single value string (value) or a list of key-value pairs (info.) Value and info are mutually exclusive.
+      "info": { # Remaining structured metadata key-value pairs.
+        "a_key": [ # A string which maps to an array of values.
+          "A String",
+        ],
+      },
+      "description": "A String", # A textual description of this metadata.
+      "number": "A String", # The number of values that can be included in a field described by this metadata.
+      "value": "A String", # The value field for simple metadata
+      "key": "A String", # The top-level key.
+      "type": "A String", # The type of data. Possible types include: Integer, Float, Flag, Character, and String.
+      "id": "A String", # User-provided ID field, not enforced by this API. Two or more pieces of structured metadata with identical id and key fields are considered equivalent.
+    },
+  ],
+}
+
+
+Returns:
+  An object of the form:
+
+    { # A VariantSet represents a collection of Variants and their summary statistics.
+    "referenceBounds": [ # A list of all references used by the variants in a variant set with associated coordinate upper bounds for each one.
+      { # ReferenceBound records an upper bound for the starting coordinate of variants in a particular reference.
+        "upperBound": "A String", # An upper bound (inclusive) on the starting coordinate of any variant in the reference sequence.
+        "referenceName": "A String", # The reference the bound is associate with.
+      },
+    ],
+    "id": "A String", # The Google-generated ID of the variant set. Immutable.
+    "datasetId": "A String", # The dataset to which this variant set belongs. Immutable.
+    "metadata": [ # The metadata associated with this variant set.
+      { # Metadata describes a single piece of variant call metadata. These data include a top level key and either a single value string (value) or a list of key-value pairs (info.) Value and info are mutually exclusive.
+        "info": { # Remaining structured metadata key-value pairs.
+          "a_key": [ # A string which maps to an array of values.
+            "A String",
+          ],
+        },
+        "description": "A String", # A textual description of this metadata.
+        "number": "A String", # The number of values that can be included in a field described by this metadata.
+        "value": "A String", # The value field for simple metadata
+        "key": "A String", # The top-level key.
+        "type": "A String", # The type of data. Possible types include: Integer, Float, Flag, Character, and String.
+        "id": "A String", # User-provided ID field, not enforced by this API. Two or more pieces of structured metadata with identical id and key fields are considered equivalent.
+      },
+    ],
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/gmail_v1.users.drafts.html b/docs/dyn/gmail_v1.users.drafts.html
index 019f262..a63aaee 100644
--- a/docs/dyn/gmail_v1.users.drafts.html
+++ b/docs/dyn/gmail_v1.users.drafts.html
@@ -132,7 +132,7 @@
     "sizeEstimate": 42, # Estimated size in bytes of the message.
     "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-        # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+        # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
         # - The Subject headers must match.
     "labelIds": [ # List of IDs of labels applied to this message.
       "A String",
@@ -174,7 +174,7 @@
       "sizeEstimate": 42, # Estimated size in bytes of the message.
       "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
           # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-          # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+          # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
           # - The Subject headers must match.
       "labelIds": [ # List of IDs of labels applied to this message.
         "A String",
@@ -205,6 +205,7 @@
   format: string, The format to return the draft in.
     Allowed values
       full - 
+      metadata - 
       minimal - 
       raw - 
 
@@ -238,7 +239,7 @@
       "sizeEstimate": 42, # Estimated size in bytes of the message.
       "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
           # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-          # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+          # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
           # - The Subject headers must match.
       "labelIds": [ # List of IDs of labels applied to this message.
         "A String",
@@ -292,7 +293,7 @@
           "sizeEstimate": 42, # Estimated size in bytes of the message.
           "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
               # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-              # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+              # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
               # - The Subject headers must match.
           "labelIds": [ # List of IDs of labels applied to this message.
             "A String",
@@ -355,7 +356,7 @@
     "sizeEstimate": 42, # Estimated size in bytes of the message.
     "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-        # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+        # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
         # - The Subject headers must match.
     "labelIds": [ # List of IDs of labels applied to this message.
       "A String",
@@ -396,7 +397,7 @@
     "sizeEstimate": 42, # Estimated size in bytes of the message.
     "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-        # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+        # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
         # - The Subject headers must match.
     "labelIds": [ # List of IDs of labels applied to this message.
       "A String",
@@ -442,7 +443,7 @@
     "sizeEstimate": 42, # Estimated size in bytes of the message.
     "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-        # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+        # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
         # - The Subject headers must match.
     "labelIds": [ # List of IDs of labels applied to this message.
       "A String",
@@ -484,7 +485,7 @@
       "sizeEstimate": 42, # Estimated size in bytes of the message.
       "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
           # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-          # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+          # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
           # - The Subject headers must match.
       "labelIds": [ # List of IDs of labels applied to this message.
         "A String",
diff --git a/docs/dyn/gmail_v1.users.history.html b/docs/dyn/gmail_v1.users.history.html
index 2e62fe4..c86e46f 100644
--- a/docs/dyn/gmail_v1.users.history.html
+++ b/docs/dyn/gmail_v1.users.history.html
@@ -127,7 +127,7 @@
             "sizeEstimate": 42, # Estimated size in bytes of the message.
             "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
                 # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-                # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+                # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
                 # - The Subject headers must match.
             "labelIds": [ # List of IDs of labels applied to this message.
               "A String",
diff --git a/docs/dyn/gmail_v1.users.labels.html b/docs/dyn/gmail_v1.users.labels.html
index d1501ec..bbc757b 100644
--- a/docs/dyn/gmail_v1.users.labels.html
+++ b/docs/dyn/gmail_v1.users.labels.html
@@ -103,11 +103,15 @@
     The object takes the form of:
 
 { # Labels are used to categorize messages and threads within the user's mailbox.
+  "name": "A String", # The display name of the label.
+  "messagesTotal": 42, # The total number of messages with the label.
   "type": "A String", # The owner type for the label. User labels are created by the user and can be modified and deleted by the user and can be applied to any message or thread. System labels are internally created and cannot be added, modified, or deleted. System labels may be able to be applied to or removed from messages and threads under some circumstances but this is not guaranteed. For example, users can apply and remove the INBOX and UNREAD labels from messages and threads, but cannot apply or remove the DRAFTS or SENT labels from messages or threads.
+  "threadsUnread": 42, # The number of unread threads with the label.
+  "messagesUnread": 42, # The number of unread messages with the label.
+  "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
+  "threadsTotal": 42, # The total number of threads with the label.
   "messageListVisibility": "A String", # The visibility of the label in the message list in the Gmail web interface.
   "id": "A String", # The immutable ID of the label.
-  "name": "A String", # The display name of the label.
-  "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
 }
 
 
@@ -115,11 +119,15 @@
   An object of the form:
 
     { # Labels are used to categorize messages and threads within the user's mailbox.
+    "name": "A String", # The display name of the label.
+    "messagesTotal": 42, # The total number of messages with the label.
     "type": "A String", # The owner type for the label. User labels are created by the user and can be modified and deleted by the user and can be applied to any message or thread. System labels are internally created and cannot be added, modified, or deleted. System labels may be able to be applied to or removed from messages and threads under some circumstances but this is not guaranteed. For example, users can apply and remove the INBOX and UNREAD labels from messages and threads, but cannot apply or remove the DRAFTS or SENT labels from messages or threads.
+    "threadsUnread": 42, # The number of unread threads with the label.
+    "messagesUnread": 42, # The number of unread messages with the label.
+    "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
+    "threadsTotal": 42, # The total number of threads with the label.
     "messageListVisibility": "A String", # The visibility of the label in the message list in the Gmail web interface.
     "id": "A String", # The immutable ID of the label.
-    "name": "A String", # The display name of the label.
-    "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
   }</pre>
 </div>
 
@@ -145,11 +153,15 @@
   An object of the form:
 
     { # Labels are used to categorize messages and threads within the user's mailbox.
+    "name": "A String", # The display name of the label.
+    "messagesTotal": 42, # The total number of messages with the label.
     "type": "A String", # The owner type for the label. User labels are created by the user and can be modified and deleted by the user and can be applied to any message or thread. System labels are internally created and cannot be added, modified, or deleted. System labels may be able to be applied to or removed from messages and threads under some circumstances but this is not guaranteed. For example, users can apply and remove the INBOX and UNREAD labels from messages and threads, but cannot apply or remove the DRAFTS or SENT labels from messages or threads.
+    "threadsUnread": 42, # The number of unread threads with the label.
+    "messagesUnread": 42, # The number of unread messages with the label.
+    "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
+    "threadsTotal": 42, # The total number of threads with the label.
     "messageListVisibility": "A String", # The visibility of the label in the message list in the Gmail web interface.
     "id": "A String", # The immutable ID of the label.
-    "name": "A String", # The display name of the label.
-    "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
   }</pre>
 </div>
 
@@ -166,11 +178,15 @@
     {
     "labels": [ # List of labels.
       { # Labels are used to categorize messages and threads within the user's mailbox.
+        "name": "A String", # The display name of the label.
+        "messagesTotal": 42, # The total number of messages with the label.
         "type": "A String", # The owner type for the label. User labels are created by the user and can be modified and deleted by the user and can be applied to any message or thread. System labels are internally created and cannot be added, modified, or deleted. System labels may be able to be applied to or removed from messages and threads under some circumstances but this is not guaranteed. For example, users can apply and remove the INBOX and UNREAD labels from messages and threads, but cannot apply or remove the DRAFTS or SENT labels from messages or threads.
+        "threadsUnread": 42, # The number of unread threads with the label.
+        "messagesUnread": 42, # The number of unread messages with the label.
+        "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
+        "threadsTotal": 42, # The total number of threads with the label.
         "messageListVisibility": "A String", # The visibility of the label in the message list in the Gmail web interface.
         "id": "A String", # The immutable ID of the label.
-        "name": "A String", # The display name of the label.
-        "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
       },
     ],
   }</pre>
@@ -187,11 +203,15 @@
     The object takes the form of:
 
 { # Labels are used to categorize messages and threads within the user's mailbox.
+  "name": "A String", # The display name of the label.
+  "messagesTotal": 42, # The total number of messages with the label.
   "type": "A String", # The owner type for the label. User labels are created by the user and can be modified and deleted by the user and can be applied to any message or thread. System labels are internally created and cannot be added, modified, or deleted. System labels may be able to be applied to or removed from messages and threads under some circumstances but this is not guaranteed. For example, users can apply and remove the INBOX and UNREAD labels from messages and threads, but cannot apply or remove the DRAFTS or SENT labels from messages or threads.
+  "threadsUnread": 42, # The number of unread threads with the label.
+  "messagesUnread": 42, # The number of unread messages with the label.
+  "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
+  "threadsTotal": 42, # The total number of threads with the label.
   "messageListVisibility": "A String", # The visibility of the label in the message list in the Gmail web interface.
   "id": "A String", # The immutable ID of the label.
-  "name": "A String", # The display name of the label.
-  "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
 }
 
 
@@ -199,11 +219,15 @@
   An object of the form:
 
     { # Labels are used to categorize messages and threads within the user's mailbox.
+    "name": "A String", # The display name of the label.
+    "messagesTotal": 42, # The total number of messages with the label.
     "type": "A String", # The owner type for the label. User labels are created by the user and can be modified and deleted by the user and can be applied to any message or thread. System labels are internally created and cannot be added, modified, or deleted. System labels may be able to be applied to or removed from messages and threads under some circumstances but this is not guaranteed. For example, users can apply and remove the INBOX and UNREAD labels from messages and threads, but cannot apply or remove the DRAFTS or SENT labels from messages or threads.
+    "threadsUnread": 42, # The number of unread threads with the label.
+    "messagesUnread": 42, # The number of unread messages with the label.
+    "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
+    "threadsTotal": 42, # The total number of threads with the label.
     "messageListVisibility": "A String", # The visibility of the label in the message list in the Gmail web interface.
     "id": "A String", # The immutable ID of the label.
-    "name": "A String", # The display name of the label.
-    "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
   }</pre>
 </div>
 
@@ -218,11 +242,15 @@
     The object takes the form of:
 
 { # Labels are used to categorize messages and threads within the user's mailbox.
+  "name": "A String", # The display name of the label.
+  "messagesTotal": 42, # The total number of messages with the label.
   "type": "A String", # The owner type for the label. User labels are created by the user and can be modified and deleted by the user and can be applied to any message or thread. System labels are internally created and cannot be added, modified, or deleted. System labels may be able to be applied to or removed from messages and threads under some circumstances but this is not guaranteed. For example, users can apply and remove the INBOX and UNREAD labels from messages and threads, but cannot apply or remove the DRAFTS or SENT labels from messages or threads.
+  "threadsUnread": 42, # The number of unread threads with the label.
+  "messagesUnread": 42, # The number of unread messages with the label.
+  "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
+  "threadsTotal": 42, # The total number of threads with the label.
   "messageListVisibility": "A String", # The visibility of the label in the message list in the Gmail web interface.
   "id": "A String", # The immutable ID of the label.
-  "name": "A String", # The display name of the label.
-  "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
 }
 
 
@@ -230,11 +258,15 @@
   An object of the form:
 
     { # Labels are used to categorize messages and threads within the user's mailbox.
+    "name": "A String", # The display name of the label.
+    "messagesTotal": 42, # The total number of messages with the label.
     "type": "A String", # The owner type for the label. User labels are created by the user and can be modified and deleted by the user and can be applied to any message or thread. System labels are internally created and cannot be added, modified, or deleted. System labels may be able to be applied to or removed from messages and threads under some circumstances but this is not guaranteed. For example, users can apply and remove the INBOX and UNREAD labels from messages and threads, but cannot apply or remove the DRAFTS or SENT labels from messages or threads.
+    "threadsUnread": 42, # The number of unread threads with the label.
+    "messagesUnread": 42, # The number of unread messages with the label.
+    "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
+    "threadsTotal": 42, # The total number of threads with the label.
     "messageListVisibility": "A String", # The visibility of the label in the message list in the Gmail web interface.
     "id": "A String", # The immutable ID of the label.
-    "name": "A String", # The display name of the label.
-    "labelListVisibility": "A String", # The visibility of the label in the label list in the Gmail web interface.
   }</pre>
 </div>
 
diff --git a/docs/dyn/gmail_v1.users.messages.html b/docs/dyn/gmail_v1.users.messages.html
index c31024d..c8b8d1a 100644
--- a/docs/dyn/gmail_v1.users.messages.html
+++ b/docs/dyn/gmail_v1.users.messages.html
@@ -83,14 +83,14 @@
   <code><a href="#delete">delete(userId, id)</a></code></p>
 <p class="firstline">Immediately and permanently deletes the specified message. This operation cannot be undone. Prefer messages.trash instead.</p>
 <p class="toc_element">
-  <code><a href="#get">get(userId, id, format=None)</a></code></p>
+  <code><a href="#get">get(userId, id, format=None, metadataHeaders=None)</a></code></p>
 <p class="firstline">Gets the specified message.</p>
 <p class="toc_element">
-  <code><a href="#import_">import_(userId, body=None, media_body=None)</a></code></p>
-<p class="firstline">Directly imports a message into only this user's mailbox, similar to receiving via SMTP. Does not send a message.</p>
+  <code><a href="#import_">import_(userId, body=None, media_body=None, internalDateSource=None)</a></code></p>
+<p class="firstline">Imports a message into only this user's mailbox, with standard email delivery scanning and classification similar to receiving via SMTP. Does not send a message.</p>
 <p class="toc_element">
-  <code><a href="#insert">insert(userId, body=None, media_body=None)</a></code></p>
-<p class="firstline">Directly inserts a message into only this user's mailbox. Does not send a message.</p>
+  <code><a href="#insert">insert(userId, body=None, media_body=None, internalDateSource=None)</a></code></p>
+<p class="firstline">Directly inserts a message into only this user's mailbox similar to IMAP APPEND, bypassing most scanning and classification. Does not send a message.</p>
 <p class="toc_element">
   <code><a href="#list">list(userId, labelIds=None, q=None, pageToken=None, maxResults=None, includeSpamTrash=None)</a></code></p>
 <p class="firstline">Lists the messages in the user's mailbox.</p>
@@ -121,7 +121,7 @@
 </div>
 
 <div class="method">
-    <code class="details" id="get">get(userId, id, format=None)</code>
+    <code class="details" id="get">get(userId, id, format=None, metadataHeaders=None)</code>
   <pre>Gets the specified message.
 
 Args:
@@ -130,8 +130,10 @@
   format: string, The format to return the message in.
     Allowed values
       full - 
+      metadata - 
       minimal - 
       raw - 
+  metadataHeaders: string, When given and format is METADATA, only include headers specified. (repeated)
 
 Returns:
   An object of the form:
@@ -162,7 +164,7 @@
     "sizeEstimate": 42, # Estimated size in bytes of the message.
     "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-        # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+        # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
         # - The Subject headers must match.
     "labelIds": [ # List of IDs of labels applied to this message.
       "A String",
@@ -172,8 +174,8 @@
 </div>
 
 <div class="method">
-    <code class="details" id="import_">import_(userId, body=None, media_body=None)</code>
-  <pre>Directly imports a message into only this user's mailbox, similar to receiving via SMTP. Does not send a message.
+    <code class="details" id="import_">import_(userId, body=None, media_body=None, internalDateSource=None)</code>
+  <pre>Imports a message into only this user's mailbox, with standard email delivery scanning and classification similar to receiving via SMTP. Does not send a message.
 
 Args:
   userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
@@ -206,7 +208,7 @@
   "sizeEstimate": 42, # Estimated size in bytes of the message.
   "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
       # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-      # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+      # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
       # - The Subject headers must match.
   "labelIds": [ # List of IDs of labels applied to this message.
     "A String",
@@ -215,6 +217,10 @@
 }
 
   media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
+  internalDateSource: string, Source for Gmail's internal date of the message.
+    Allowed values
+      dateHeader - 
+      receivedTime - 
 
 Returns:
   An object of the form:
@@ -245,7 +251,7 @@
     "sizeEstimate": 42, # Estimated size in bytes of the message.
     "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-        # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+        # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
         # - The Subject headers must match.
     "labelIds": [ # List of IDs of labels applied to this message.
       "A String",
@@ -255,8 +261,8 @@
 </div>
 
 <div class="method">
-    <code class="details" id="insert">insert(userId, body=None, media_body=None)</code>
-  <pre>Directly inserts a message into only this user's mailbox. Does not send a message.
+    <code class="details" id="insert">insert(userId, body=None, media_body=None, internalDateSource=None)</code>
+  <pre>Directly inserts a message into only this user's mailbox similar to IMAP APPEND, bypassing most scanning and classification. Does not send a message.
 
 Args:
   userId: string, The user's email address. The special value me can be used to indicate the authenticated user. (required)
@@ -289,7 +295,7 @@
   "sizeEstimate": 42, # Estimated size in bytes of the message.
   "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
       # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-      # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+      # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
       # - The Subject headers must match.
   "labelIds": [ # List of IDs of labels applied to this message.
     "A String",
@@ -298,6 +304,10 @@
 }
 
   media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
+  internalDateSource: string, Source for Gmail's internal date of the message.
+    Allowed values
+      dateHeader - 
+      receivedTime - 
 
 Returns:
   An object of the form:
@@ -328,7 +338,7 @@
     "sizeEstimate": 42, # Estimated size in bytes of the message.
     "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-        # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+        # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
         # - The Subject headers must match.
     "labelIds": [ # List of IDs of labels applied to this message.
       "A String",
@@ -382,7 +392,7 @@
         "sizeEstimate": 42, # Estimated size in bytes of the message.
         "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
             # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-            # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+            # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
             # - The Subject headers must match.
         "labelIds": [ # List of IDs of labels applied to this message.
           "A String",
@@ -456,7 +466,7 @@
     "sizeEstimate": 42, # Estimated size in bytes of the message.
     "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-        # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+        # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
         # - The Subject headers must match.
     "labelIds": [ # List of IDs of labels applied to this message.
       "A String",
@@ -500,7 +510,7 @@
   "sizeEstimate": 42, # Estimated size in bytes of the message.
   "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
       # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-      # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+      # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
       # - The Subject headers must match.
   "labelIds": [ # List of IDs of labels applied to this message.
     "A String",
@@ -539,7 +549,7 @@
     "sizeEstimate": 42, # Estimated size in bytes of the message.
     "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-        # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+        # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
         # - The Subject headers must match.
     "labelIds": [ # List of IDs of labels applied to this message.
       "A String",
@@ -585,7 +595,7 @@
     "sizeEstimate": 42, # Estimated size in bytes of the message.
     "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-        # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+        # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
         # - The Subject headers must match.
     "labelIds": [ # List of IDs of labels applied to this message.
       "A String",
@@ -631,7 +641,7 @@
     "sizeEstimate": 42, # Estimated size in bytes of the message.
     "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
         # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-        # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+        # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
         # - The Subject headers must match.
     "labelIds": [ # List of IDs of labels applied to this message.
       "A String",
diff --git a/docs/dyn/gmail_v1.users.threads.html b/docs/dyn/gmail_v1.users.threads.html
index 6973432..aaecfb6 100644
--- a/docs/dyn/gmail_v1.users.threads.html
+++ b/docs/dyn/gmail_v1.users.threads.html
@@ -146,7 +146,7 @@
         "sizeEstimate": 42, # Estimated size in bytes of the message.
         "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
             # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-            # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+            # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
             # - The Subject headers must match.
         "labelIds": [ # List of IDs of labels applied to this message.
           "A String",
@@ -207,7 +207,7 @@
             "sizeEstimate": 42, # Estimated size in bytes of the message.
             "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
                 # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-                # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+                # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
                 # - The Subject headers must match.
             "labelIds": [ # List of IDs of labels applied to this message.
               "A String",
@@ -288,7 +288,7 @@
         "sizeEstimate": 42, # Estimated size in bytes of the message.
         "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
             # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-            # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+            # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
             # - The Subject headers must match.
         "labelIds": [ # List of IDs of labels applied to this message.
           "A String",
@@ -341,7 +341,7 @@
         "sizeEstimate": 42, # Estimated size in bytes of the message.
         "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
             # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-            # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+            # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
             # - The Subject headers must match.
         "labelIds": [ # List of IDs of labels applied to this message.
           "A String",
@@ -394,7 +394,7 @@
         "sizeEstimate": 42, # Estimated size in bytes of the message.
         "threadId": "A String", # The ID of the thread the message belongs to. To add a message or draft to a thread, the following criteria must be met:
             # - The requested threadId must be specified on the Message or Draft.Message you supply with your request.
-            # - The References and In-Reply-To headers must be set in compliance with the <a href="https://tools.ietf.org/html/rfc2822"RFC 2822 standard.
+            # - The References and In-Reply-To headers must be set in compliance with the RFC 2822 standard.
             # - The Subject headers must match.
         "labelIds": [ # List of IDs of labels applied to this message.
           "A String",
diff --git a/docs/dyn/identitytoolkit_v3.relyingparty.html b/docs/dyn/identitytoolkit_v3.relyingparty.html
index 339a9a5..f3e5244 100644
--- a/docs/dyn/identitytoolkit_v3.relyingparty.html
+++ b/docs/dyn/identitytoolkit_v3.relyingparty.html
@@ -94,7 +94,7 @@
 <p class="firstline">Get token signing public key.</p>
 <p class="toc_element">
   <code><a href="#resetPassword">resetPassword(body)</a></code></p>
-<p class="firstline">Set account info for a user.</p>
+<p class="firstline">Reset password for a user.</p>
 <p class="toc_element">
   <code><a href="#setAccountInfo">setAccountInfo(body)</a></code></p>
 <p class="firstline">Set account info for a user.</p>
@@ -133,9 +133,10 @@
 
     { # Response of creating the IDP authentication URL.
     "kind": "identitytoolkit#CreateAuthUriResponse", # The fixed string identitytoolkit#CreateAuthUriResponse".
+    "captchaRequired": True or False, # True if captcha is required.
     "registered": True or False, # Whether the user is registered if the identifier is an email.
-    "providerId": "A String", # The provider ID of the auth URI.
     "forExistingProvider": True or False, # True if the authUri is for user's existing provider.
+    "providerId": "A String", # The provider ID of the auth URI.
     "authUri": "A String", # The URI used by the IDP to authenticate the user.
   }</pre>
 </div>
@@ -298,7 +299,7 @@
 
 <div class="method">
     <code class="details" id="resetPassword">resetPassword(body)</code>
-  <pre>Set account info for a user.
+  <pre>Reset password for a user.
 
 Args:
   body: object, The request body. (required)
diff --git a/docs/dyn/manager_v1beta2.templates.html b/docs/dyn/manager_v1beta2.templates.html
index 0579ddb..a6b124d 100644
--- a/docs/dyn/manager_v1beta2.templates.html
+++ b/docs/dyn/manager_v1beta2.templates.html
@@ -117,6 +117,7 @@
           "lbModule": {
             "description": "A String",
             "portRange": "A String",
+            "sessionAffinity": "A String",
             "ipProtocol": "A String",
             "healthChecks": [
               "A String",
@@ -190,6 +191,7 @@
                     "initializeParams": { # Initialization parameters for creating a new disk. # Create the new disk using these parameters. The name of the disk will be <instance_name>-<five_random_charactersgt;.
                       "diskSizeGb": "A String", # The size of the created disk in gigabytes.
                       "sourceImage": "A String", # The fully-qualified URL of a source image to use to create this disk.
+                      "diskType": "A String", # Name of the disk type resource describing which disk type to use to create the disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard'
                     },
                     "boot": True or False, # If true, indicates that this is the root persistent disk.
                     "attachment": { # How to attach a disk to a Replica. # How the disk will be attached to the Replica.
@@ -287,6 +289,7 @@
         "lbModule": {
           "description": "A String",
           "portRange": "A String",
+          "sessionAffinity": "A String",
           "ipProtocol": "A String",
           "healthChecks": [
             "A String",
@@ -360,6 +363,7 @@
                   "initializeParams": { # Initialization parameters for creating a new disk. # Create the new disk using these parameters. The name of the disk will be <instance_name>-<five_random_charactersgt;.
                     "diskSizeGb": "A String", # The size of the created disk in gigabytes.
                     "sourceImage": "A String", # The fully-qualified URL of a source image to use to create this disk.
+                    "diskType": "A String", # Name of the disk type resource describing which disk type to use to create the disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard'
                   },
                   "boot": True or False, # If true, indicates that this is the root persistent disk.
                   "attachment": { # How to attach a disk to a Replica. # How the disk will be attached to the Replica.
@@ -451,6 +455,7 @@
           "lbModule": {
             "description": "A String",
             "portRange": "A String",
+            "sessionAffinity": "A String",
             "ipProtocol": "A String",
             "healthChecks": [
               "A String",
@@ -524,6 +529,7 @@
                     "initializeParams": { # Initialization parameters for creating a new disk. # Create the new disk using these parameters. The name of the disk will be <instance_name>-<five_random_charactersgt;.
                       "diskSizeGb": "A String", # The size of the created disk in gigabytes.
                       "sourceImage": "A String", # The fully-qualified URL of a source image to use to create this disk.
+                      "diskType": "A String", # Name of the disk type resource describing which disk type to use to create the disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard'
                     },
                     "boot": True or False, # If true, indicates that this is the root persistent disk.
                     "attachment": { # How to attach a disk to a Replica. # How the disk will be attached to the Replica.
@@ -627,6 +633,7 @@
               "lbModule": {
                 "description": "A String",
                 "portRange": "A String",
+                "sessionAffinity": "A String",
                 "ipProtocol": "A String",
                 "healthChecks": [
                   "A String",
@@ -700,6 +707,7 @@
                         "initializeParams": { # Initialization parameters for creating a new disk. # Create the new disk using these parameters. The name of the disk will be <instance_name>-<five_random_charactersgt;.
                           "diskSizeGb": "A String", # The size of the created disk in gigabytes.
                           "sourceImage": "A String", # The fully-qualified URL of a source image to use to create this disk.
+                          "diskType": "A String", # Name of the disk type resource describing which disk type to use to create the disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard'
                         },
                         "boot": True or False, # If true, indicates that this is the root persistent disk.
                         "attachment": { # How to attach a disk to a Replica. # How the disk will be attached to the Replica.
diff --git a/docs/dyn/mapsengine_v1.assets.html b/docs/dyn/mapsengine_v1.assets.html
index 4df1b5a..3e32482 100644
--- a/docs/dyn/mapsengine_v1.assets.html
+++ b/docs/dyn/mapsengine_v1.assets.html
@@ -80,10 +80,15 @@
 <p class="firstline">Returns the parents Resource.</p>
 
 <p class="toc_element">
+  <code><a href="mapsengine_v1.assets.permissions.html">permissions()</a></code>
+</p>
+<p class="firstline">Returns the permissions Resource.</p>
+
+<p class="toc_element">
   <code><a href="#get">get(id)</a></code></p>
 <p class="firstline">Return metadata for a particular asset.</p>
 <p class="toc_element">
-  <code><a href="#list">list(modifiedBefore=None, createdBefore=None, projectId=None, pageToken=None, type=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, creatorEmail=None)</a></code></p>
+  <code><a href="#list">list(modifiedBefore=None, creatorEmail=None, projectId=None, pageToken=None, role=None, type=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, search=None, createdBefore=None)</a></code></p>
 <p class="firstline">Return all assets readable by the current user.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
@@ -109,10 +114,13 @@
     ],
     "projectId": "A String", # The ID of the project to which the asset belongs.
     "creationTime": "A String", # The creation time of this asset. The value is an RFC 3339-formatted date-time value (for example, 1970-01-01T00:00:00Z).
+    "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
     "etag": "A String", # The ETag, used to refer to the current version of the asset.
-    "bbox": [ # A rectangular bounding box which contains all of the data in this asset. The numbers represent latitude and longitude in decimal degrees.
+    "creatorEmail": "A String", # The email address of the creator of this asset. This is only returned on GET requests and not LIST requests.
+    "bbox": [ # A rectangular bounding box which contains all of the data in this asset. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
       3.14,
     ],
+    "lastModifierEmail": "A String", # The email address of the last modifier of this asset. This is only returned on GET requests and not LIST requests.
     "lastModifiedTime": "A String", # The last modified time of this asset. The value is an RFC 3339-formatted date-time value (for example, 1970-01-01T00:00:00Z).
     "type": "A String", # The type of asset. One of raster, rasterCollection, table, map, or layer.
     "id": "A String", # The asset's globally unique ID.
@@ -121,26 +129,27 @@
 </div>
 
 <div class="method">
-    <code class="details" id="list">list(modifiedBefore=None, createdBefore=None, projectId=None, pageToken=None, type=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, creatorEmail=None)</code>
+    <code class="details" id="list">list(modifiedBefore=None, creatorEmail=None, projectId=None, pageToken=None, role=None, type=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, search=None, createdBefore=None)</code>
   <pre>Return all assets readable by the current user.
 
 Args:
   modifiedBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or before this time.
-  createdBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or before this time.
+  creatorEmail: string, An email address representing a user. Returned assets that have been created by the user associated with the provided email address.
   projectId: string, The ID of a Maps Engine project, used to filter the response. To list all available projects with their IDs, send a Projects: list request. You can also find your project ID as the value of the DashboardPlace:cid URL parameter when signed in to mapsengine.google.com.
   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.
-  type: string, An asset type restriction. If set, only resources of this type will be returned.
+  role: string, The role parameter indicates that the response should only contain assets where the current user has the specified level of access.
     Allowed values
-      layer - Return layers.
-      map - Return maps.
-      rasterCollection - Return raster collections.
-      table - Return tables.
+      owner - The user can read, write and administer the asset.
+      reader - The user can read the asset.
+      writer - The user can read and write the asset.
+  type: string, A comma separated list of asset types. Returned assets will have one of the types from the provided list. Supported values are 'map', 'layer', 'rasterCollection' and 'table'.
   createdAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or after this time.
   tags: string, A comma separated list of tags. Returned assets will contain all the tags from the list.
   maxResults: integer, The maximum number of items to include in a single response page. The maximum supported value is 100.
   bbox: string, A bounding box, expressed as "west,south,east,north". If set, only assets which intersect this bounding box will be returned.
   modifiedAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or after this time.
-  creatorEmail: string, An email address representing a user. Returned assets that have been created by the user associated with the provided email address.
+  search: string, An unstructured search string used to filter the set of results based on asset metadata.
+  createdBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or before this time.
 
 Returns:
   An object of the form:
@@ -158,10 +167,13 @@
         ],
         "projectId": "A String", # The ID of the project to which the asset belongs.
         "creationTime": "A String", # The creation time of this asset. The value is an RFC 3339-formatted date-time value (for example, 1970-01-01T00:00:00Z).
+        "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
         "etag": "A String", # The ETag, used to refer to the current version of the asset.
-        "bbox": [ # A rectangular bounding box which contains all of the data in this asset. The numbers represent latitude and longitude in decimal degrees.
+        "creatorEmail": "A String", # The email address of the creator of this asset. This is only returned on GET requests and not LIST requests.
+        "bbox": [ # A rectangular bounding box which contains all of the data in this asset. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
           3.14,
         ],
+        "lastModifierEmail": "A String", # The email address of the last modifier of this asset. This is only returned on GET requests and not LIST requests.
         "lastModifiedTime": "A String", # The last modified time of this asset. The value is an RFC 3339-formatted date-time value (for example, 1970-01-01T00:00:00Z).
         "type": "A String", # The type of asset. One of raster, rasterCollection, table, map, or layer.
         "id": "A String", # The asset's globally unique ID.
diff --git a/docs/dyn/mapsengine_v1.assets.permissions.html b/docs/dyn/mapsengine_v1.assets.permissions.html
new file mode 100644
index 0000000..04d3ff0
--- /dev/null
+++ b/docs/dyn/mapsengine_v1.assets.permissions.html
@@ -0,0 +1,103 @@
+<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="mapsengine_v1.html">Google Maps Engine API</a> . <a href="mapsengine_v1.assets.html">assets</a> . <a href="mapsengine_v1.assets.permissions.html">permissions</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#list">list(id)</a></code></p>
+<p class="firstline">Return all of the permissions for the specified asset.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="list">list(id)</code>
+  <pre>Return all of the permissions for the specified asset.
+
+Args:
+  id: string, The ID of the asset whose permissions will be listed. (required)
+
+Returns:
+  An object of the form:
+
+    {
+    "permissions": [ # The set of permissions associated with this asset.
+      { # A permission defines the user or group that has access to an asset, and the type of access they have.
+        "type": "A String", # The account type.
+        "role": "A String", # The type of access granted to this user or group.
+        "discoverable": True or False, # Indicates whether a public asset is listed and can be found via a web search (value true), or is visible only to people who have a link to the asset (value false).
+        "id": "A String", # The unique identifier of the permission. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      },
+    ],
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/mapsengine_v1.layers.html b/docs/dyn/mapsengine_v1.layers.html
index 6a27876..a41fe23 100644
--- a/docs/dyn/mapsengine_v1.layers.html
+++ b/docs/dyn/mapsengine_v1.layers.html
@@ -80,6 +80,11 @@
 <p class="firstline">Returns the parents Resource.</p>
 
 <p class="toc_element">
+  <code><a href="mapsengine_v1.layers.permissions.html">permissions()</a></code>
+</p>
+<p class="firstline">Returns the permissions Resource.</p>
+
+<p class="toc_element">
   <code><a href="#cancelProcessing">cancelProcessing(id)</a></code></p>
 <p class="firstline">Cancel processing on a layer asset.</p>
 <p class="toc_element">
@@ -92,9 +97,18 @@
   <code><a href="#get">get(id, version=None)</a></code></p>
 <p class="firstline">Return metadata for a particular layer.</p>
 <p class="toc_element">
-  <code><a href="#list">list(modifiedAfter=None, createdAfter=None, tags=None, projectId=None, maxResults=None, pageToken=None, createdBefore=None, bbox=None, creatorEmail=None, modifiedBefore=None)</a></code></p>
+  <code><a href="#getPublished">getPublished(id)</a></code></p>
+<p class="firstline">Return the published metadata for a particular layer.</p>
+<p class="toc_element">
+  <code><a href="#list">list(modifiedBefore=None, creatorEmail=None, processingStatus=None, projectId=None, pageToken=None, role=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, search=None, createdBefore=None)</a></code></p>
 <p class="firstline">Return all layers readable by the current user.</p>
 <p class="toc_element">
+  <code><a href="#listPublished">listPublished(pageToken=None, maxResults=None, projectId=None)</a></code></p>
+<p class="firstline">Return all published layers readable by the current user.</p>
+<p class="toc_element">
+  <code><a href="#listPublished_next">listPublished_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="#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">
@@ -104,7 +118,7 @@
   <code><a href="#process">process(id)</a></code></p>
 <p class="firstline">Process a layer asset.</p>
 <p class="toc_element">
-  <code><a href="#publish">publish(id)</a></code></p>
+  <code><a href="#publish">publish(id, force=None)</a></code></p>
 <p class="firstline">Publish a layer asset.</p>
 <p class="toc_element">
   <code><a href="#unpublish">unpublish(id)</a></code></p>
@@ -133,7 +147,7 @@
     The object takes the form of:
 
 { # A Layer combines multiple datasources, with styling information, for presentation on a map.
-  "style": { # A vector style contains styling information for vector layer. # The Styling information for a vector layer.
+  "style": { # A vector style contains styling information for vector layer. # The styling information for a vector layer. Note: Style information is returned in response to a get request but not a list request. After requesting a list of layers, you'll need to send a get request to retrieve the VectorStyles for each layer.
     "featureInfo": { # A feature info contains information about individual feature. # Individual feature info, this is called Info Window in Maps Engine UI. If not provided, a default template with all attributes will be generated.
       "content": "A String", # HTML template of the info window. If not provided, a default template with all attributes will be generated.
     },
@@ -153,8 +167,32 @@
             "column": "A String", # The column value of the feature to be displayed.
             "size": 3.14, # Font size of the label, in pixels. 8 <= size <= 15. If not provided, a default size will be provided.
           },
-          "icon": { # Style for icon, this is part of point style. # Icon for the point; if it isn't null, exactly one field in 'icon' must be set.
+          "icon": { # Style for icon, this is part of point style. # Icon for the point; if it isn't null, exactly one of 'name', 'id' or 'scaledShape' must be set.
+            "scalingFunction": { # Parameters for scaling scaled shapes. # The function used to scale shapes. Required when a scaledShape is specified.
+              "column": "A String", # Name of the numeric column used to scale a shape.
+              "valueRange": { # Range of values used for scaling shapes. The min/max values will be drawn as shapes with the min/max size. # The range of values to display across the size range.
+                "max": 3.14, # Maximum value.
+                "min": 3.14, # Minimum value.
+              },
+              "sizeRange": { # Scaled shape size range in pixels. For circles, size corresponds to diameter. # The range of shape sizes, in pixels. For circles, the size corresponds to the diameter.
+                "max": 3.14, # Maximum size, in pixels.
+                "min": 3.14, # Minimum size, in pixels.
+              },
+              "scalingType": "A String", # The type of scaling function to use. Defaults to SQRT. Currently only linear and square root scaling are supported.
+            },
             "id": "A String", # Custom icon id.
+            "scaledShape": { # Parameters for styling points as scaled shapes. # A scalable shape.
+              "shape": "A String", # Name of the shape.
+              "border": { # Border in line style. Both color and width are required. # Border color/width of the shape. If not specified the shape won't have a border.
+                "color": "A String", # Color of the border.
+                "opacity": 3.14, # Opacity of the border.
+                "width": 3.14, # Width of the border, in pixels.
+              },
+              "fill": { # Basic color used in styling. # The fill color of the shape. If not specified the shape will be transparent (although the borders may not be).
+                "color": "A String", # The CSS style color, can be in format of "red" or "#7733EE".
+                "opacity": 3.14, # Opacity ranges from 0 to 1, inclusive. If not provided, default to 1.
+              },
+            },
             "name": "A String", # Stock icon name. To use a stock icon, prefix it with 'gx_'. See Stock icon names for valid icon names. For example, to specify small_red, set name to 'gx_small_red'.
           },
         },
@@ -211,28 +249,33 @@
       },
     ],
   },
-  "description": "A String", # The description of this Layer, supplied by the author.
-  "processingStatus": "A String", # The processing status of this layer.
-  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
-  "datasourceType": "A String", # The type of the datasources used to build this Layer.
-  "tags": [ # Tags of this Layer.
-    "A String",
-  ],
-  "creationTime": "A String", # The creation time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-  "name": "A String", # The name of this Layer, supplied by the author.
-  "etag": "A String", # The ETag, used to refer to the current version of the asset.
-  "bbox": [ # A rectangular bounding box which contains all of the data in this Layer. The numbers represent latitude and longitude in decimal degrees.
-    3.14,
-  ],
-  "projectId": "A String", # The ID of the project that this Layer is in.
-  "lastModifiedTime": "A String", # The last modified time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-  "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
-  "id": "A String", # A globally unique ID, used to refer to this Layer.
-  "datasources": [ # An array of datasources used to build this Layer. If datasourceType is "image", then each element in this array is a reference to an Image or RasterCollection. If datasourceType is "table" then each element in this array is a reference to a Vector Table.
+  "datasources": [ # An array of datasources used to build this layer. If layerType is "image", or layerType is not specified and datasourceType is "image", then each element in this array is a reference to an Image or RasterCollection. If layerType is "vector", or layerType is not specified and datasourceType is "table" then each element in this array is a reference to a Vector Table.
     {
       "id": "A String", # The ID of a datasource.
     },
   ],
+  "processingStatus": "A String", # The processing status of this layer.
+  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
+  "datasourceType": "A String", # Deprecated: The type of the datasources used to build this Layer. Note: This has been replaced by layerType, but is still available for now to maintain backward compatibility.
+  "tags": [ # Tags of this Layer.
+    "A String",
+  ],
+  "creationTime": "A String", # The creation time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+  "publishingStatus": "A String", # The publishing status of this layer.
+  "name": "A String", # The name of this Layer, supplied by the author.
+  "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
+  "etag": "A String", # The ETag, used to refer to the current version of the asset.
+  "creatorEmail": "A String", # The email address of the creator of this layer. This is only returned on GET requests and not LIST requests.
+  "bbox": [ # A rectangular bounding box which contains all of the data in this Layer. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
+    3.14,
+  ],
+  "layerType": "A String", # The type of the datasources used to build this Layer. This should be used instead of datasourceType. At least one of layerType and datasourceType and must be specified, but layerType takes precedence.
+  "projectId": "A String", # The ID of the project that this Layer is in.
+  "lastModifierEmail": "A String", # The email address of the last modifier of this layer. This is only returned on GET requests and not LIST requests.
+  "lastModifiedTime": "A String", # The last modified time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+  "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
+  "id": "A String", # A globally unique ID, used to refer to this Layer.
+  "description": "A String", # The description of this Layer, supplied by the author.
 }
 
   process: boolean, Whether to queue the created layer for processing.
@@ -241,7 +284,7 @@
   An object of the form:
 
     { # A Layer combines multiple datasources, with styling information, for presentation on a map.
-    "style": { # A vector style contains styling information for vector layer. # The Styling information for a vector layer.
+    "style": { # A vector style contains styling information for vector layer. # The styling information for a vector layer. Note: Style information is returned in response to a get request but not a list request. After requesting a list of layers, you'll need to send a get request to retrieve the VectorStyles for each layer.
       "featureInfo": { # A feature info contains information about individual feature. # Individual feature info, this is called Info Window in Maps Engine UI. If not provided, a default template with all attributes will be generated.
         "content": "A String", # HTML template of the info window. If not provided, a default template with all attributes will be generated.
       },
@@ -261,8 +304,32 @@
               "column": "A String", # The column value of the feature to be displayed.
               "size": 3.14, # Font size of the label, in pixels. 8 <= size <= 15. If not provided, a default size will be provided.
             },
-            "icon": { # Style for icon, this is part of point style. # Icon for the point; if it isn't null, exactly one field in 'icon' must be set.
+            "icon": { # Style for icon, this is part of point style. # Icon for the point; if it isn't null, exactly one of 'name', 'id' or 'scaledShape' must be set.
+              "scalingFunction": { # Parameters for scaling scaled shapes. # The function used to scale shapes. Required when a scaledShape is specified.
+                "column": "A String", # Name of the numeric column used to scale a shape.
+                "valueRange": { # Range of values used for scaling shapes. The min/max values will be drawn as shapes with the min/max size. # The range of values to display across the size range.
+                  "max": 3.14, # Maximum value.
+                  "min": 3.14, # Minimum value.
+                },
+                "sizeRange": { # Scaled shape size range in pixels. For circles, size corresponds to diameter. # The range of shape sizes, in pixels. For circles, the size corresponds to the diameter.
+                  "max": 3.14, # Maximum size, in pixels.
+                  "min": 3.14, # Minimum size, in pixels.
+                },
+                "scalingType": "A String", # The type of scaling function to use. Defaults to SQRT. Currently only linear and square root scaling are supported.
+              },
               "id": "A String", # Custom icon id.
+              "scaledShape": { # Parameters for styling points as scaled shapes. # A scalable shape.
+                "shape": "A String", # Name of the shape.
+                "border": { # Border in line style. Both color and width are required. # Border color/width of the shape. If not specified the shape won't have a border.
+                  "color": "A String", # Color of the border.
+                  "opacity": 3.14, # Opacity of the border.
+                  "width": 3.14, # Width of the border, in pixels.
+                },
+                "fill": { # Basic color used in styling. # The fill color of the shape. If not specified the shape will be transparent (although the borders may not be).
+                  "color": "A String", # The CSS style color, can be in format of "red" or "#7733EE".
+                  "opacity": 3.14, # Opacity ranges from 0 to 1, inclusive. If not provided, default to 1.
+                },
+              },
               "name": "A String", # Stock icon name. To use a stock icon, prefix it with 'gx_'. See Stock icon names for valid icon names. For example, to specify small_red, set name to 'gx_small_red'.
             },
           },
@@ -319,28 +386,33 @@
         },
       ],
     },
-    "description": "A String", # The description of this Layer, supplied by the author.
-    "processingStatus": "A String", # The processing status of this layer.
-    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
-    "datasourceType": "A String", # The type of the datasources used to build this Layer.
-    "tags": [ # Tags of this Layer.
-      "A String",
-    ],
-    "creationTime": "A String", # The creation time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-    "name": "A String", # The name of this Layer, supplied by the author.
-    "etag": "A String", # The ETag, used to refer to the current version of the asset.
-    "bbox": [ # A rectangular bounding box which contains all of the data in this Layer. The numbers represent latitude and longitude in decimal degrees.
-      3.14,
-    ],
-    "projectId": "A String", # The ID of the project that this Layer is in.
-    "lastModifiedTime": "A String", # The last modified time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-    "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
-    "id": "A String", # A globally unique ID, used to refer to this Layer.
-    "datasources": [ # An array of datasources used to build this Layer. If datasourceType is "image", then each element in this array is a reference to an Image or RasterCollection. If datasourceType is "table" then each element in this array is a reference to a Vector Table.
+    "datasources": [ # An array of datasources used to build this layer. If layerType is "image", or layerType is not specified and datasourceType is "image", then each element in this array is a reference to an Image or RasterCollection. If layerType is "vector", or layerType is not specified and datasourceType is "table" then each element in this array is a reference to a Vector Table.
       {
         "id": "A String", # The ID of a datasource.
       },
     ],
+    "processingStatus": "A String", # The processing status of this layer.
+    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
+    "datasourceType": "A String", # Deprecated: The type of the datasources used to build this Layer. Note: This has been replaced by layerType, but is still available for now to maintain backward compatibility.
+    "tags": [ # Tags of this Layer.
+      "A String",
+    ],
+    "creationTime": "A String", # The creation time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+    "publishingStatus": "A String", # The publishing status of this layer.
+    "name": "A String", # The name of this Layer, supplied by the author.
+    "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
+    "etag": "A String", # The ETag, used to refer to the current version of the asset.
+    "creatorEmail": "A String", # The email address of the creator of this layer. This is only returned on GET requests and not LIST requests.
+    "bbox": [ # A rectangular bounding box which contains all of the data in this Layer. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
+      3.14,
+    ],
+    "layerType": "A String", # The type of the datasources used to build this Layer. This should be used instead of datasourceType. At least one of layerType and datasourceType and must be specified, but layerType takes precedence.
+    "projectId": "A String", # The ID of the project that this Layer is in.
+    "lastModifierEmail": "A String", # The email address of the last modifier of this layer. This is only returned on GET requests and not LIST requests.
+    "lastModifiedTime": "A String", # The last modified time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+    "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
+    "id": "A String", # A globally unique ID, used to refer to this Layer.
+    "description": "A String", # The description of this Layer, supplied by the author.
   }</pre>
 </div>
 
@@ -359,7 +431,7 @@
 
 Args:
   id: string, The ID of the layer. (required)
-  version: string, A parameter
+  version: string, Deprecated: The version parameter indicates which version of the layer should be returned. When version is set to published, the published version of the layer will be returned. Please use the layers.getPublished endpoint instead.
     Allowed values
       draft - The draft version.
       published - The published version.
@@ -368,7 +440,7 @@
   An object of the form:
 
     { # A Layer combines multiple datasources, with styling information, for presentation on a map.
-    "style": { # A vector style contains styling information for vector layer. # The Styling information for a vector layer.
+    "style": { # A vector style contains styling information for vector layer. # The styling information for a vector layer. Note: Style information is returned in response to a get request but not a list request. After requesting a list of layers, you'll need to send a get request to retrieve the VectorStyles for each layer.
       "featureInfo": { # A feature info contains information about individual feature. # Individual feature info, this is called Info Window in Maps Engine UI. If not provided, a default template with all attributes will be generated.
         "content": "A String", # HTML template of the info window. If not provided, a default template with all attributes will be generated.
       },
@@ -388,8 +460,32 @@
               "column": "A String", # The column value of the feature to be displayed.
               "size": 3.14, # Font size of the label, in pixels. 8 <= size <= 15. If not provided, a default size will be provided.
             },
-            "icon": { # Style for icon, this is part of point style. # Icon for the point; if it isn't null, exactly one field in 'icon' must be set.
+            "icon": { # Style for icon, this is part of point style. # Icon for the point; if it isn't null, exactly one of 'name', 'id' or 'scaledShape' must be set.
+              "scalingFunction": { # Parameters for scaling scaled shapes. # The function used to scale shapes. Required when a scaledShape is specified.
+                "column": "A String", # Name of the numeric column used to scale a shape.
+                "valueRange": { # Range of values used for scaling shapes. The min/max values will be drawn as shapes with the min/max size. # The range of values to display across the size range.
+                  "max": 3.14, # Maximum value.
+                  "min": 3.14, # Minimum value.
+                },
+                "sizeRange": { # Scaled shape size range in pixels. For circles, size corresponds to diameter. # The range of shape sizes, in pixels. For circles, the size corresponds to the diameter.
+                  "max": 3.14, # Maximum size, in pixels.
+                  "min": 3.14, # Minimum size, in pixels.
+                },
+                "scalingType": "A String", # The type of scaling function to use. Defaults to SQRT. Currently only linear and square root scaling are supported.
+              },
               "id": "A String", # Custom icon id.
+              "scaledShape": { # Parameters for styling points as scaled shapes. # A scalable shape.
+                "shape": "A String", # Name of the shape.
+                "border": { # Border in line style. Both color and width are required. # Border color/width of the shape. If not specified the shape won't have a border.
+                  "color": "A String", # Color of the border.
+                  "opacity": 3.14, # Opacity of the border.
+                  "width": 3.14, # Width of the border, in pixels.
+                },
+                "fill": { # Basic color used in styling. # The fill color of the shape. If not specified the shape will be transparent (although the borders may not be).
+                  "color": "A String", # The CSS style color, can be in format of "red" or "#7733EE".
+                  "opacity": 3.14, # Opacity ranges from 0 to 1, inclusive. If not provided, default to 1.
+                },
+              },
               "name": "A String", # Stock icon name. To use a stock icon, prefix it with 'gx_'. See Stock icon names for valid icon names. For example, to specify small_red, set name to 'gx_small_red'.
             },
           },
@@ -446,54 +542,91 @@
         },
       ],
     },
-    "description": "A String", # The description of this Layer, supplied by the author.
-    "processingStatus": "A String", # The processing status of this layer.
-    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
-    "datasourceType": "A String", # The type of the datasources used to build this Layer.
-    "tags": [ # Tags of this Layer.
-      "A String",
-    ],
-    "creationTime": "A String", # The creation time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-    "name": "A String", # The name of this Layer, supplied by the author.
-    "etag": "A String", # The ETag, used to refer to the current version of the asset.
-    "bbox": [ # A rectangular bounding box which contains all of the data in this Layer. The numbers represent latitude and longitude in decimal degrees.
-      3.14,
-    ],
-    "projectId": "A String", # The ID of the project that this Layer is in.
-    "lastModifiedTime": "A String", # The last modified time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-    "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
-    "id": "A String", # A globally unique ID, used to refer to this Layer.
-    "datasources": [ # An array of datasources used to build this Layer. If datasourceType is "image", then each element in this array is a reference to an Image or RasterCollection. If datasourceType is "table" then each element in this array is a reference to a Vector Table.
+    "datasources": [ # An array of datasources used to build this layer. If layerType is "image", or layerType is not specified and datasourceType is "image", then each element in this array is a reference to an Image or RasterCollection. If layerType is "vector", or layerType is not specified and datasourceType is "table" then each element in this array is a reference to a Vector Table.
       {
         "id": "A String", # The ID of a datasource.
       },
     ],
+    "processingStatus": "A String", # The processing status of this layer.
+    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
+    "datasourceType": "A String", # Deprecated: The type of the datasources used to build this Layer. Note: This has been replaced by layerType, but is still available for now to maintain backward compatibility.
+    "tags": [ # Tags of this Layer.
+      "A String",
+    ],
+    "creationTime": "A String", # The creation time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+    "publishingStatus": "A String", # The publishing status of this layer.
+    "name": "A String", # The name of this Layer, supplied by the author.
+    "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
+    "etag": "A String", # The ETag, used to refer to the current version of the asset.
+    "creatorEmail": "A String", # The email address of the creator of this layer. This is only returned on GET requests and not LIST requests.
+    "bbox": [ # A rectangular bounding box which contains all of the data in this Layer. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
+      3.14,
+    ],
+    "layerType": "A String", # The type of the datasources used to build this Layer. This should be used instead of datasourceType. At least one of layerType and datasourceType and must be specified, but layerType takes precedence.
+    "projectId": "A String", # The ID of the project that this Layer is in.
+    "lastModifierEmail": "A String", # The email address of the last modifier of this layer. This is only returned on GET requests and not LIST requests.
+    "lastModifiedTime": "A String", # The last modified time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+    "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
+    "id": "A String", # A globally unique ID, used to refer to this Layer.
+    "description": "A String", # The description of this Layer, supplied by the author.
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="list">list(modifiedAfter=None, createdAfter=None, tags=None, projectId=None, maxResults=None, pageToken=None, createdBefore=None, bbox=None, creatorEmail=None, modifiedBefore=None)</code>
-  <pre>Return all layers readable by the current user.
+    <code class="details" id="getPublished">getPublished(id)</code>
+  <pre>Return the published metadata for a particular layer.
 
 Args:
-  modifiedAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or after this time.
-  createdAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or after this time.
-  tags: string, A comma separated list of tags. Returned assets will contain all the tags from the list.
-  projectId: string, The ID of a Maps Engine project, used to filter the response. To list all available projects with their IDs, send a Projects: list request. You can also find your project ID as the value of the DashboardPlace:cid URL parameter when signed in to mapsengine.google.com.
-  maxResults: integer, The maximum number of items to include in a single response page. The maximum supported value is 100.
-  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.
-  createdBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or before this time.
-  bbox: string, A bounding box, expressed as "west,south,east,north". If set, only assets which intersect this bounding box will be returned.
-  creatorEmail: string, An email address representing a user. Returned assets that have been created by the user associated with the provided email address.
-  modifiedBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or before this time.
+  id: string, The ID of the layer. (required)
 
 Returns:
   An object of the form:
 
-    { # The response returned by a call to layers.List.
+    { # The published version of a layer.
+    "projectId": "A String", # The ID of the project that this Layer is in.
+    "name": "A String", # The name of this Layer, supplied by the author.
+    "description": "A String", # The description of this Layer, supplied by the author.
+    "layerType": "A String", # The type of the datasources used to build this Layer. This should be used instead of datasourceType. At least one of layerType and datasourceType and must be specified, but layerType takes precedence.
+    "id": "A String", # A globally unique ID, used to refer to this Layer.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(modifiedBefore=None, creatorEmail=None, processingStatus=None, projectId=None, pageToken=None, role=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, search=None, createdBefore=None)</code>
+  <pre>Return all layers readable by the current user.
+
+Args:
+  modifiedBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or before this time.
+  creatorEmail: string, An email address representing a user. Returned assets that have been created by the user associated with the provided email address.
+  processingStatus: string, A parameter
+    Allowed values
+      complete - The layer has completed processing.
+      failed - The layer has failed processing.
+      notReady - The layer is not ready for processing.
+      processing - The layer is processing.
+      ready - The layer is ready for processing.
+  projectId: string, The ID of a Maps Engine project, used to filter the response. To list all available projects with their IDs, send a Projects: list request. You can also find your project ID as the value of the DashboardPlace:cid URL parameter when signed in to mapsengine.google.com.
+  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.
+  role: string, The role parameter indicates that the response should only contain assets where the current user has the specified level of access.
+    Allowed values
+      owner - The user can read, write and administer the asset.
+      reader - The user can read the asset.
+      writer - The user can read and write the asset.
+  createdAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or after this time.
+  tags: string, A comma separated list of tags. Returned assets will contain all the tags from the list.
+  maxResults: integer, The maximum number of items to include in a single response page. The maximum supported value is 100.
+  bbox: string, A bounding box, expressed as "west,south,east,north". If set, only assets which intersect this bounding box will be returned.
+  modifiedAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or after this time.
+  search: string, An unstructured search string used to filter the set of results based on asset metadata.
+  createdBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or before this time.
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to layers.List. Note: The list response does not include all the fields available in a layer. Refer to the layer resource description for details of the fields that are not included. You'll need to send a get request to retrieve the additional fields for each layer.
     "layers": [ # Resources returned.
       { # A Layer combines multiple datasources, with styling information, for presentation on a map.
-        "style": { # A vector style contains styling information for vector layer. # The Styling information for a vector layer.
+        "style": { # A vector style contains styling information for vector layer. # The styling information for a vector layer. Note: Style information is returned in response to a get request but not a list request. After requesting a list of layers, you'll need to send a get request to retrieve the VectorStyles for each layer.
           "featureInfo": { # A feature info contains information about individual feature. # Individual feature info, this is called Info Window in Maps Engine UI. If not provided, a default template with all attributes will be generated.
             "content": "A String", # HTML template of the info window. If not provided, a default template with all attributes will be generated.
           },
@@ -513,8 +646,32 @@
                   "column": "A String", # The column value of the feature to be displayed.
                   "size": 3.14, # Font size of the label, in pixels. 8 <= size <= 15. If not provided, a default size will be provided.
                 },
-                "icon": { # Style for icon, this is part of point style. # Icon for the point; if it isn't null, exactly one field in 'icon' must be set.
+                "icon": { # Style for icon, this is part of point style. # Icon for the point; if it isn't null, exactly one of 'name', 'id' or 'scaledShape' must be set.
+                  "scalingFunction": { # Parameters for scaling scaled shapes. # The function used to scale shapes. Required when a scaledShape is specified.
+                    "column": "A String", # Name of the numeric column used to scale a shape.
+                    "valueRange": { # Range of values used for scaling shapes. The min/max values will be drawn as shapes with the min/max size. # The range of values to display across the size range.
+                      "max": 3.14, # Maximum value.
+                      "min": 3.14, # Minimum value.
+                    },
+                    "sizeRange": { # Scaled shape size range in pixels. For circles, size corresponds to diameter. # The range of shape sizes, in pixels. For circles, the size corresponds to the diameter.
+                      "max": 3.14, # Maximum size, in pixels.
+                      "min": 3.14, # Minimum size, in pixels.
+                    },
+                    "scalingType": "A String", # The type of scaling function to use. Defaults to SQRT. Currently only linear and square root scaling are supported.
+                  },
                   "id": "A String", # Custom icon id.
+                  "scaledShape": { # Parameters for styling points as scaled shapes. # A scalable shape.
+                    "shape": "A String", # Name of the shape.
+                    "border": { # Border in line style. Both color and width are required. # Border color/width of the shape. If not specified the shape won't have a border.
+                      "color": "A String", # Color of the border.
+                      "opacity": 3.14, # Opacity of the border.
+                      "width": 3.14, # Width of the border, in pixels.
+                    },
+                    "fill": { # Basic color used in styling. # The fill color of the shape. If not specified the shape will be transparent (although the borders may not be).
+                      "color": "A String", # The CSS style color, can be in format of "red" or "#7733EE".
+                      "opacity": 3.14, # Opacity ranges from 0 to 1, inclusive. If not provided, default to 1.
+                    },
+                  },
                   "name": "A String", # Stock icon name. To use a stock icon, prefix it with 'gx_'. See Stock icon names for valid icon names. For example, to specify small_red, set name to 'gx_small_red'.
                 },
               },
@@ -571,28 +728,33 @@
             },
           ],
         },
-        "description": "A String", # The description of this Layer, supplied by the author.
-        "processingStatus": "A String", # The processing status of this layer.
-        "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
-        "datasourceType": "A String", # The type of the datasources used to build this Layer.
-        "tags": [ # Tags of this Layer.
-          "A String",
-        ],
-        "creationTime": "A String", # The creation time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-        "name": "A String", # The name of this Layer, supplied by the author.
-        "etag": "A String", # The ETag, used to refer to the current version of the asset.
-        "bbox": [ # A rectangular bounding box which contains all of the data in this Layer. The numbers represent latitude and longitude in decimal degrees.
-          3.14,
-        ],
-        "projectId": "A String", # The ID of the project that this Layer is in.
-        "lastModifiedTime": "A String", # The last modified time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-        "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
-        "id": "A String", # A globally unique ID, used to refer to this Layer.
-        "datasources": [ # An array of datasources used to build this Layer. If datasourceType is "image", then each element in this array is a reference to an Image or RasterCollection. If datasourceType is "table" then each element in this array is a reference to a Vector Table.
+        "datasources": [ # An array of datasources used to build this layer. If layerType is "image", or layerType is not specified and datasourceType is "image", then each element in this array is a reference to an Image or RasterCollection. If layerType is "vector", or layerType is not specified and datasourceType is "table" then each element in this array is a reference to a Vector Table.
           {
             "id": "A String", # The ID of a datasource.
           },
         ],
+        "processingStatus": "A String", # The processing status of this layer.
+        "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
+        "datasourceType": "A String", # Deprecated: The type of the datasources used to build this Layer. Note: This has been replaced by layerType, but is still available for now to maintain backward compatibility.
+        "tags": [ # Tags of this Layer.
+          "A String",
+        ],
+        "creationTime": "A String", # The creation time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+        "publishingStatus": "A String", # The publishing status of this layer.
+        "name": "A String", # The name of this Layer, supplied by the author.
+        "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
+        "etag": "A String", # The ETag, used to refer to the current version of the asset.
+        "creatorEmail": "A String", # The email address of the creator of this layer. This is only returned on GET requests and not LIST requests.
+        "bbox": [ # A rectangular bounding box which contains all of the data in this Layer. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
+          3.14,
+        ],
+        "layerType": "A String", # The type of the datasources used to build this Layer. This should be used instead of datasourceType. At least one of layerType and datasourceType and must be specified, but layerType takes precedence.
+        "projectId": "A String", # The ID of the project that this Layer is in.
+        "lastModifierEmail": "A String", # The email address of the last modifier of this layer. This is only returned on GET requests and not LIST requests.
+        "lastModifiedTime": "A String", # The last modified time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+        "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
+        "id": "A String", # A globally unique ID, used to refer to this Layer.
+        "description": "A String", # The description of this Layer, supplied by the author.
       },
     ],
     "nextPageToken": "A String", # Next page token.
@@ -600,6 +762,46 @@
 </div>
 
 <div class="method">
+    <code class="details" id="listPublished">listPublished(pageToken=None, maxResults=None, projectId=None)</code>
+  <pre>Return all published layers readable by the current user.
+
+Args:
+  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 items to include in a single response page. The maximum supported value is 100.
+  projectId: string, The ID of a Maps Engine project, used to filter the response. To list all available projects with their IDs, send a Projects: list request. You can also find your project ID as the value of the DashboardPlace:cid URL parameter when signed in to mapsengine.google.com.
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to layers.List.published.
+    "layers": [ # Resources returned.
+      { # The published version of a layer.
+        "projectId": "A String", # The ID of the project that this Layer is in.
+        "name": "A String", # The name of this Layer, supplied by the author.
+        "description": "A String", # The description of this Layer, supplied by the author.
+        "layerType": "A String", # The type of the datasources used to build this Layer. This should be used instead of datasourceType. At least one of layerType and datasourceType and must be specified, but layerType takes precedence.
+        "id": "A String", # A globally unique ID, used to refer to this Layer.
+      },
+    ],
+    "nextPageToken": "A String", # Next page token.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="listPublished_next">listPublished_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="list_next">list_next(previous_request, previous_response)</code>
   <pre>Retrieves the next page of results.
 
@@ -623,7 +825,7 @@
     The object takes the form of:
 
 { # A Layer combines multiple datasources, with styling information, for presentation on a map.
-  "style": { # A vector style contains styling information for vector layer. # The Styling information for a vector layer.
+  "style": { # A vector style contains styling information for vector layer. # The styling information for a vector layer. Note: Style information is returned in response to a get request but not a list request. After requesting a list of layers, you'll need to send a get request to retrieve the VectorStyles for each layer.
     "featureInfo": { # A feature info contains information about individual feature. # Individual feature info, this is called Info Window in Maps Engine UI. If not provided, a default template with all attributes will be generated.
       "content": "A String", # HTML template of the info window. If not provided, a default template with all attributes will be generated.
     },
@@ -643,8 +845,32 @@
             "column": "A String", # The column value of the feature to be displayed.
             "size": 3.14, # Font size of the label, in pixels. 8 <= size <= 15. If not provided, a default size will be provided.
           },
-          "icon": { # Style for icon, this is part of point style. # Icon for the point; if it isn't null, exactly one field in 'icon' must be set.
+          "icon": { # Style for icon, this is part of point style. # Icon for the point; if it isn't null, exactly one of 'name', 'id' or 'scaledShape' must be set.
+            "scalingFunction": { # Parameters for scaling scaled shapes. # The function used to scale shapes. Required when a scaledShape is specified.
+              "column": "A String", # Name of the numeric column used to scale a shape.
+              "valueRange": { # Range of values used for scaling shapes. The min/max values will be drawn as shapes with the min/max size. # The range of values to display across the size range.
+                "max": 3.14, # Maximum value.
+                "min": 3.14, # Minimum value.
+              },
+              "sizeRange": { # Scaled shape size range in pixels. For circles, size corresponds to diameter. # The range of shape sizes, in pixels. For circles, the size corresponds to the diameter.
+                "max": 3.14, # Maximum size, in pixels.
+                "min": 3.14, # Minimum size, in pixels.
+              },
+              "scalingType": "A String", # The type of scaling function to use. Defaults to SQRT. Currently only linear and square root scaling are supported.
+            },
             "id": "A String", # Custom icon id.
+            "scaledShape": { # Parameters for styling points as scaled shapes. # A scalable shape.
+              "shape": "A String", # Name of the shape.
+              "border": { # Border in line style. Both color and width are required. # Border color/width of the shape. If not specified the shape won't have a border.
+                "color": "A String", # Color of the border.
+                "opacity": 3.14, # Opacity of the border.
+                "width": 3.14, # Width of the border, in pixels.
+              },
+              "fill": { # Basic color used in styling. # The fill color of the shape. If not specified the shape will be transparent (although the borders may not be).
+                "color": "A String", # The CSS style color, can be in format of "red" or "#7733EE".
+                "opacity": 3.14, # Opacity ranges from 0 to 1, inclusive. If not provided, default to 1.
+              },
+            },
             "name": "A String", # Stock icon name. To use a stock icon, prefix it with 'gx_'. See Stock icon names for valid icon names. For example, to specify small_red, set name to 'gx_small_red'.
           },
         },
@@ -701,28 +927,33 @@
       },
     ],
   },
-  "description": "A String", # The description of this Layer, supplied by the author.
-  "processingStatus": "A String", # The processing status of this layer.
-  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
-  "datasourceType": "A String", # The type of the datasources used to build this Layer.
-  "tags": [ # Tags of this Layer.
-    "A String",
-  ],
-  "creationTime": "A String", # The creation time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-  "name": "A String", # The name of this Layer, supplied by the author.
-  "etag": "A String", # The ETag, used to refer to the current version of the asset.
-  "bbox": [ # A rectangular bounding box which contains all of the data in this Layer. The numbers represent latitude and longitude in decimal degrees.
-    3.14,
-  ],
-  "projectId": "A String", # The ID of the project that this Layer is in.
-  "lastModifiedTime": "A String", # The last modified time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-  "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
-  "id": "A String", # A globally unique ID, used to refer to this Layer.
-  "datasources": [ # An array of datasources used to build this Layer. If datasourceType is "image", then each element in this array is a reference to an Image or RasterCollection. If datasourceType is "table" then each element in this array is a reference to a Vector Table.
+  "datasources": [ # An array of datasources used to build this layer. If layerType is "image", or layerType is not specified and datasourceType is "image", then each element in this array is a reference to an Image or RasterCollection. If layerType is "vector", or layerType is not specified and datasourceType is "table" then each element in this array is a reference to a Vector Table.
     {
       "id": "A String", # The ID of a datasource.
     },
   ],
+  "processingStatus": "A String", # The processing status of this layer.
+  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
+  "datasourceType": "A String", # Deprecated: The type of the datasources used to build this Layer. Note: This has been replaced by layerType, but is still available for now to maintain backward compatibility.
+  "tags": [ # Tags of this Layer.
+    "A String",
+  ],
+  "creationTime": "A String", # The creation time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+  "publishingStatus": "A String", # The publishing status of this layer.
+  "name": "A String", # The name of this Layer, supplied by the author.
+  "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
+  "etag": "A String", # The ETag, used to refer to the current version of the asset.
+  "creatorEmail": "A String", # The email address of the creator of this layer. This is only returned on GET requests and not LIST requests.
+  "bbox": [ # A rectangular bounding box which contains all of the data in this Layer. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
+    3.14,
+  ],
+  "layerType": "A String", # The type of the datasources used to build this Layer. This should be used instead of datasourceType. At least one of layerType and datasourceType and must be specified, but layerType takes precedence.
+  "projectId": "A String", # The ID of the project that this Layer is in.
+  "lastModifierEmail": "A String", # The email address of the last modifier of this layer. This is only returned on GET requests and not LIST requests.
+  "lastModifiedTime": "A String", # The last modified time of this layer. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+  "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
+  "id": "A String", # A globally unique ID, used to refer to this Layer.
+  "description": "A String", # The description of this Layer, supplied by the author.
 }
 
 </pre>
@@ -743,11 +974,12 @@
 </div>
 
 <div class="method">
-    <code class="details" id="publish">publish(id)</code>
+    <code class="details" id="publish">publish(id, force=None)</code>
   <pre>Publish a layer asset.
 
 Args:
   id: string, The ID of the layer. (required)
+  force: boolean, If set to true, the API will allow publication of the layer even if it's out of date. If not true, you'll need to reprocess any out-of-date layer before publishing.
 
 Returns:
   An object of the form:
diff --git a/docs/dyn/mapsengine_v1.layers.permissions.html b/docs/dyn/mapsengine_v1.layers.permissions.html
new file mode 100644
index 0000000..bd78562
--- /dev/null
+++ b/docs/dyn/mapsengine_v1.layers.permissions.html
@@ -0,0 +1,162 @@
+<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="mapsengine_v1.html">Google Maps Engine API</a> . <a href="mapsengine_v1.layers.html">layers</a> . <a href="mapsengine_v1.layers.permissions.html">permissions</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#batchDelete">batchDelete(id, body)</a></code></p>
+<p class="firstline">Remove permission entries from an already existing asset.</p>
+<p class="toc_element">
+  <code><a href="#batchUpdate">batchUpdate(id, body)</a></code></p>
+<p class="firstline">Add or update permission entries to an already existing asset.</p>
+<p class="toc_element">
+  <code><a href="#list">list(id)</a></code></p>
+<p class="firstline">Return all of the permissions for the specified asset.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="batchDelete">batchDelete(id, body)</code>
+  <pre>Remove permission entries from an already existing asset.
+
+Args:
+  id: string, The ID of the asset from which permissions will be removed. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # The request sent to mapsengine.permissions.batchDelete.
+    "ids": [ # An array of permission ids to be removed. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      "A String",
+    ],
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to mapsengine.permissions.batchDelete.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="batchUpdate">batchUpdate(id, body)</code>
+  <pre>Add or update permission entries to an already existing asset.
+
+An asset can hold up to 20 different permission entries. Each batchInsert request is atomic.
+
+Args:
+  id: string, The ID of the asset to which permissions will be added. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # The request sent to mapsengine.permissions.batchUpdate.
+    "permissions": [ # The permissions to be inserted or updated.
+      { # A permission defines the user or group that has access to an asset, and the type of access they have.
+        "type": "A String", # The account type.
+        "role": "A String", # The type of access granted to this user or group.
+        "discoverable": True or False, # Indicates whether a public asset is listed and can be found via a web search (value true), or is visible only to people who have a link to the asset (value false).
+        "id": "A String", # The unique identifier of the permission. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      },
+    ],
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to mapsengine.permissions.batchUpdate.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(id)</code>
+  <pre>Return all of the permissions for the specified asset.
+
+Args:
+  id: string, The ID of the asset whose permissions will be listed. (required)
+
+Returns:
+  An object of the form:
+
+    {
+    "permissions": [ # The set of permissions associated with this asset.
+      { # A permission defines the user or group that has access to an asset, and the type of access they have.
+        "type": "A String", # The account type.
+        "role": "A String", # The type of access granted to this user or group.
+        "discoverable": True or False, # Indicates whether a public asset is listed and can be found via a web search (value true), or is visible only to people who have a link to the asset (value false).
+        "id": "A String", # The unique identifier of the permission. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      },
+    ],
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/mapsengine_v1.maps.html b/docs/dyn/mapsengine_v1.maps.html
index e972972..264cb07 100644
--- a/docs/dyn/mapsengine_v1.maps.html
+++ b/docs/dyn/mapsengine_v1.maps.html
@@ -75,6 +75,11 @@
 <h1><a href="mapsengine_v1.html">Google Maps Engine API</a> . <a href="mapsengine_v1.maps.html">maps</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
+  <code><a href="mapsengine_v1.maps.permissions.html">permissions()</a></code>
+</p>
+<p class="firstline">Returns the permissions Resource.</p>
+
+<p class="toc_element">
   <code><a href="#create">create(body)</a></code></p>
 <p class="firstline">Create a map asset.</p>
 <p class="toc_element">
@@ -84,16 +89,25 @@
   <code><a href="#get">get(id, version=None)</a></code></p>
 <p class="firstline">Return metadata for a particular map.</p>
 <p class="toc_element">
-  <code><a href="#list">list(modifiedAfter=None, createdAfter=None, tags=None, projectId=None, maxResults=None, pageToken=None, createdBefore=None, bbox=None, creatorEmail=None, modifiedBefore=None)</a></code></p>
+  <code><a href="#getPublished">getPublished(id)</a></code></p>
+<p class="firstline">Return the published metadata for a particular map.</p>
+<p class="toc_element">
+  <code><a href="#list">list(modifiedBefore=None, creatorEmail=None, processingStatus=None, projectId=None, pageToken=None, role=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, search=None, createdBefore=None)</a></code></p>
 <p class="firstline">Return all maps readable by the current user.</p>
 <p class="toc_element">
+  <code><a href="#listPublished">listPublished(pageToken=None, maxResults=None, projectId=None)</a></code></p>
+<p class="firstline">Return all published maps readable by the current user.</p>
+<p class="toc_element">
+  <code><a href="#listPublished_next">listPublished_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="#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(id, body)</a></code></p>
 <p class="firstline">Mutate a map asset.</p>
 <p class="toc_element">
-  <code><a href="#publish">publish(id)</a></code></p>
+  <code><a href="#publish">publish(id, force=None)</a></code></p>
 <p class="firstline">Publish a map asset.</p>
 <p class="toc_element">
   <code><a href="#unpublish">unpublish(id)</a></code></p>
@@ -113,22 +127,25 @@
     3.14,
   ],
   "processingStatus": "A String", # The processing status of this map. Map processing is automatically started once a map becomes ready for processing.
-  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
   "projectId": "A String", # The ID of the project that this Map is in.
   "tags": [ # Tags of this Map.
     "A String",
   ],
   "creationTime": "A String", # The creation time of this map. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
   "publishingStatus": "A String", # The publishing status of this map.
+  "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
   "etag": "A String", # The ETag, used to refer to the current version of the asset.
-  "bbox": [ # A rectangular bounding box which contains all of the data in this Map. The numbers represent latitude and longitude in decimal degrees.
+  "creatorEmail": "A String", # The email address of the creator of this map. This is only returned on GET requests and not LIST requests.
+  "bbox": [ # A rectangular bounding box which contains all of the data in this Map. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
     3.14,
   ],
+  "lastModifierEmail": "A String", # The email address of the last modifier of this map. This is only returned on GET requests and not LIST requests.
   "versions": [ # Deprecated: An array containing the available versions of this Map. Currently may only contain "published". The publishingStatus field should be used instead.
     "published",
   ],
   "lastModifiedTime": "A String", # The last modified time of this map. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-  "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
+  "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. This is an input field only. It is not returned in response to a list or get request.
   "id": "A String", # A globally unique ID, used to refer to this Map.
   "contents": [ # The contents of this Map.
     {
@@ -147,22 +164,25 @@
       3.14,
     ],
     "processingStatus": "A String", # The processing status of this map. Map processing is automatically started once a map becomes ready for processing.
-    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
     "projectId": "A String", # The ID of the project that this Map is in.
     "tags": [ # Tags of this Map.
       "A String",
     ],
     "creationTime": "A String", # The creation time of this map. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
     "publishingStatus": "A String", # The publishing status of this map.
+    "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
     "etag": "A String", # The ETag, used to refer to the current version of the asset.
-    "bbox": [ # A rectangular bounding box which contains all of the data in this Map. The numbers represent latitude and longitude in decimal degrees.
+    "creatorEmail": "A String", # The email address of the creator of this map. This is only returned on GET requests and not LIST requests.
+    "bbox": [ # A rectangular bounding box which contains all of the data in this Map. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
       3.14,
     ],
+    "lastModifierEmail": "A String", # The email address of the last modifier of this map. This is only returned on GET requests and not LIST requests.
     "versions": [ # Deprecated: An array containing the available versions of this Map. Currently may only contain "published". The publishingStatus field should be used instead.
       "published",
     ],
     "lastModifiedTime": "A String", # The last modified time of this map. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-    "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
+    "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. This is an input field only. It is not returned in response to a list or get request.
     "id": "A String", # A globally unique ID, used to refer to this Map.
     "contents": [ # The contents of this Map.
       {
@@ -187,7 +207,7 @@
 
 Args:
   id: string, The ID of the map. (required)
-  version: string, A parameter
+  version: string, Deprecated: The version parameter indicates which version of the map should be returned. When version is set to published, the published version of the map will be returned. Please use the maps.getPublished endpoint instead.
     Allowed values
       draft - The draft version.
       published - The published version.
@@ -201,22 +221,25 @@
       3.14,
     ],
     "processingStatus": "A String", # The processing status of this map. Map processing is automatically started once a map becomes ready for processing.
-    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
     "projectId": "A String", # The ID of the project that this Map is in.
     "tags": [ # Tags of this Map.
       "A String",
     ],
     "creationTime": "A String", # The creation time of this map. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
     "publishingStatus": "A String", # The publishing status of this map.
+    "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
     "etag": "A String", # The ETag, used to refer to the current version of the asset.
-    "bbox": [ # A rectangular bounding box which contains all of the data in this Map. The numbers represent latitude and longitude in decimal degrees.
+    "creatorEmail": "A String", # The email address of the creator of this map. This is only returned on GET requests and not LIST requests.
+    "bbox": [ # A rectangular bounding box which contains all of the data in this Map. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
       3.14,
     ],
+    "lastModifierEmail": "A String", # The email address of the last modifier of this map. This is only returned on GET requests and not LIST requests.
     "versions": [ # Deprecated: An array containing the available versions of this Map. Currently may only contain "published". The publishingStatus field should be used instead.
       "published",
     ],
     "lastModifiedTime": "A String", # The last modified time of this map. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-    "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
+    "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. This is an input field only. It is not returned in response to a list or get request.
     "id": "A String", # A globally unique ID, used to refer to this Map.
     "contents": [ # The contents of this Map.
       {
@@ -227,20 +250,57 @@
 </div>
 
 <div class="method">
-    <code class="details" id="list">list(modifiedAfter=None, createdAfter=None, tags=None, projectId=None, maxResults=None, pageToken=None, createdBefore=None, bbox=None, creatorEmail=None, modifiedBefore=None)</code>
+    <code class="details" id="getPublished">getPublished(id)</code>
+  <pre>Return the published metadata for a particular map.
+
+Args:
+  id: string, The ID of the map. (required)
+
+Returns:
+  An object of the form:
+
+    { # The published version of a map asset.
+    "name": "A String", # The name of this Map, supplied by the author.
+    "defaultViewport": [ # A rectangular geographic bounds. # An array of four numbers (west, south, east, north) which defines the rectangular bounding box of the default viewport. The numbers represent latitude and longitude in decimal degrees.
+      3.14,
+    ],
+    "projectId": "A String", # The ID of the project that this Map is in.
+    "id": "A String", # A globally unique ID, used to refer to this Map.
+    "contents": [ # The contents of this Map.
+      {
+      },
+    ],
+    "description": "A String", # The description of this Map, supplied by the author.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(modifiedBefore=None, creatorEmail=None, processingStatus=None, projectId=None, pageToken=None, role=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, search=None, createdBefore=None)</code>
   <pre>Return all maps readable by the current user.
 
 Args:
-  modifiedAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or after this time.
+  modifiedBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or before this time.
+  creatorEmail: string, An email address representing a user. Returned assets that have been created by the user associated with the provided email address.
+  processingStatus: string, A parameter
+    Allowed values
+      complete - The map has completed processing.
+      failed - The map has failed processing.
+      notReady - The map is not ready for processing.
+      processing - The map is processing.
+  projectId: string, The ID of a Maps Engine project, used to filter the response. To list all available projects with their IDs, send a Projects: list request. You can also find your project ID as the value of the DashboardPlace:cid URL parameter when signed in to mapsengine.google.com.
+  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.
+  role: string, The role parameter indicates that the response should only contain assets where the current user has the specified level of access.
+    Allowed values
+      owner - The user can read, write and administer the asset.
+      reader - The user can read the asset.
+      writer - The user can read and write the asset.
   createdAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or after this time.
   tags: string, A comma separated list of tags. Returned assets will contain all the tags from the list.
-  projectId: string, The ID of a Maps Engine project, used to filter the response. To list all available projects with their IDs, send a Projects: list request. You can also find your project ID as the value of the DashboardPlace:cid URL parameter when signed in to mapsengine.google.com.
   maxResults: integer, The maximum number of items to include in a single response page. The maximum supported value is 100.
-  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.
-  createdBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or before this time.
   bbox: string, A bounding box, expressed as "west,south,east,north". If set, only assets which intersect this bounding box will be returned.
-  creatorEmail: string, An email address representing a user. Returned assets that have been created by the user associated with the provided email address.
-  modifiedBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or before this time.
+  modifiedAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or after this time.
+  search: string, An unstructured search string used to filter the set of results based on asset metadata.
+  createdBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or before this time.
 
 Returns:
   An object of the form:
@@ -254,22 +314,25 @@
           3.14,
         ],
         "processingStatus": "A String", # The processing status of this map. Map processing is automatically started once a map becomes ready for processing.
-        "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+        "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
         "projectId": "A String", # The ID of the project that this Map is in.
         "tags": [ # Tags of this Map.
           "A String",
         ],
         "creationTime": "A String", # The creation time of this map. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
         "publishingStatus": "A String", # The publishing status of this map.
+        "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
         "etag": "A String", # The ETag, used to refer to the current version of the asset.
-        "bbox": [ # A rectangular bounding box which contains all of the data in this Map. The numbers represent latitude and longitude in decimal degrees.
+        "creatorEmail": "A String", # The email address of the creator of this map. This is only returned on GET requests and not LIST requests.
+        "bbox": [ # A rectangular bounding box which contains all of the data in this Map. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
           3.14,
         ],
+        "lastModifierEmail": "A String", # The email address of the last modifier of this map. This is only returned on GET requests and not LIST requests.
         "versions": [ # Deprecated: An array containing the available versions of this Map. Currently may only contain "published". The publishingStatus field should be used instead.
           "published",
         ],
         "lastModifiedTime": "A String", # The last modified time of this map. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-        "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
+        "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. This is an input field only. It is not returned in response to a list or get request.
         "id": "A String", # A globally unique ID, used to refer to this Map.
         "contents": [ # The contents of this Map.
           {
@@ -282,6 +345,52 @@
 </div>
 
 <div class="method">
+    <code class="details" id="listPublished">listPublished(pageToken=None, maxResults=None, projectId=None)</code>
+  <pre>Return all published maps readable by the current user.
+
+Args:
+  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 items to include in a single response page. The maximum supported value is 100.
+  projectId: string, The ID of a Maps Engine project, used to filter the response. To list all available projects with their IDs, send a Projects: list request. You can also find your project ID as the value of the DashboardPlace:cid URL parameter when signed in to mapsengine.google.com.
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to maps.List.published.
+    "nextPageToken": "A String", # Next page token.
+    "maps": [ # Resources returned.
+      { # The published version of a map asset.
+        "name": "A String", # The name of this Map, supplied by the author.
+        "defaultViewport": [ # A rectangular geographic bounds. # An array of four numbers (west, south, east, north) which defines the rectangular bounding box of the default viewport. The numbers represent latitude and longitude in decimal degrees.
+          3.14,
+        ],
+        "projectId": "A String", # The ID of the project that this Map is in.
+        "id": "A String", # A globally unique ID, used to refer to this Map.
+        "contents": [ # The contents of this Map.
+          {
+          },
+        ],
+        "description": "A String", # The description of this Map, supplied by the author.
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="listPublished_next">listPublished_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="list_next">list_next(previous_request, previous_response)</code>
   <pre>Retrieves the next page of results.
 
@@ -310,22 +419,25 @@
     3.14,
   ],
   "processingStatus": "A String", # The processing status of this map. Map processing is automatically started once a map becomes ready for processing.
-  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
   "projectId": "A String", # The ID of the project that this Map is in.
   "tags": [ # Tags of this Map.
     "A String",
   ],
   "creationTime": "A String", # The creation time of this map. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
   "publishingStatus": "A String", # The publishing status of this map.
+  "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
   "etag": "A String", # The ETag, used to refer to the current version of the asset.
-  "bbox": [ # A rectangular bounding box which contains all of the data in this Map. The numbers represent latitude and longitude in decimal degrees.
+  "creatorEmail": "A String", # The email address of the creator of this map. This is only returned on GET requests and not LIST requests.
+  "bbox": [ # A rectangular bounding box which contains all of the data in this Map. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
     3.14,
   ],
+  "lastModifierEmail": "A String", # The email address of the last modifier of this map. This is only returned on GET requests and not LIST requests.
   "versions": [ # Deprecated: An array containing the available versions of this Map. Currently may only contain "published". The publishingStatus field should be used instead.
     "published",
   ],
   "lastModifiedTime": "A String", # The last modified time of this map. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-  "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
+  "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. This is an input field only. It is not returned in response to a list or get request.
   "id": "A String", # A globally unique ID, used to refer to this Map.
   "contents": [ # The contents of this Map.
     {
@@ -338,11 +450,12 @@
 </div>
 
 <div class="method">
-    <code class="details" id="publish">publish(id)</code>
+    <code class="details" id="publish">publish(id, force=None)</code>
   <pre>Publish a map asset.
 
 Args:
   id: string, The ID of the map. (required)
+  force: boolean, If set to true, the API will allow publication of the map even if it's out of date. If false, the map must have a processingStatus of complete before publishing.
 
 Returns:
   An object of the form:
diff --git a/docs/dyn/mapsengine_v1.maps.permissions.html b/docs/dyn/mapsengine_v1.maps.permissions.html
new file mode 100644
index 0000000..c612ae6
--- /dev/null
+++ b/docs/dyn/mapsengine_v1.maps.permissions.html
@@ -0,0 +1,162 @@
+<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="mapsengine_v1.html">Google Maps Engine API</a> . <a href="mapsengine_v1.maps.html">maps</a> . <a href="mapsengine_v1.maps.permissions.html">permissions</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#batchDelete">batchDelete(id, body)</a></code></p>
+<p class="firstline">Remove permission entries from an already existing asset.</p>
+<p class="toc_element">
+  <code><a href="#batchUpdate">batchUpdate(id, body)</a></code></p>
+<p class="firstline">Add or update permission entries to an already existing asset.</p>
+<p class="toc_element">
+  <code><a href="#list">list(id)</a></code></p>
+<p class="firstline">Return all of the permissions for the specified asset.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="batchDelete">batchDelete(id, body)</code>
+  <pre>Remove permission entries from an already existing asset.
+
+Args:
+  id: string, The ID of the asset from which permissions will be removed. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # The request sent to mapsengine.permissions.batchDelete.
+    "ids": [ # An array of permission ids to be removed. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      "A String",
+    ],
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to mapsengine.permissions.batchDelete.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="batchUpdate">batchUpdate(id, body)</code>
+  <pre>Add or update permission entries to an already existing asset.
+
+An asset can hold up to 20 different permission entries. Each batchInsert request is atomic.
+
+Args:
+  id: string, The ID of the asset to which permissions will be added. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # The request sent to mapsengine.permissions.batchUpdate.
+    "permissions": [ # The permissions to be inserted or updated.
+      { # A permission defines the user or group that has access to an asset, and the type of access they have.
+        "type": "A String", # The account type.
+        "role": "A String", # The type of access granted to this user or group.
+        "discoverable": True or False, # Indicates whether a public asset is listed and can be found via a web search (value true), or is visible only to people who have a link to the asset (value false).
+        "id": "A String", # The unique identifier of the permission. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      },
+    ],
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to mapsengine.permissions.batchUpdate.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(id)</code>
+  <pre>Return all of the permissions for the specified asset.
+
+Args:
+  id: string, The ID of the asset whose permissions will be listed. (required)
+
+Returns:
+  An object of the form:
+
+    {
+    "permissions": [ # The set of permissions associated with this asset.
+      { # A permission defines the user or group that has access to an asset, and the type of access they have.
+        "type": "A String", # The account type.
+        "role": "A String", # The type of access granted to this user or group.
+        "discoverable": True or False, # Indicates whether a public asset is listed and can be found via a web search (value true), or is visible only to people who have a link to the asset (value false).
+        "id": "A String", # The unique identifier of the permission. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      },
+    ],
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/mapsengine_v1.projects.html b/docs/dyn/mapsengine_v1.projects.html
index 70571a7..92641d2 100644
--- a/docs/dyn/mapsengine_v1.projects.html
+++ b/docs/dyn/mapsengine_v1.projects.html
@@ -75,6 +75,11 @@
 <h1><a href="mapsengine_v1.html">Google Maps Engine API</a> . <a href="mapsengine_v1.projects.html">projects</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
+  <code><a href="mapsengine_v1.projects.icons.html">icons()</a></code>
+</p>
+<p class="firstline">Returns the icons Resource.</p>
+
+<p class="toc_element">
   <code><a href="#list">list()</a></code></p>
 <p class="firstline">Return all projects readable by the current user.</p>
 <h3>Method Details</h3>
diff --git a/docs/dyn/mapsengine_v1.projects.icons.html b/docs/dyn/mapsengine_v1.projects.icons.html
new file mode 100644
index 0000000..486cba0
--- /dev/null
+++ b/docs/dyn/mapsengine_v1.projects.icons.html
@@ -0,0 +1,190 @@
+<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="mapsengine_v1.html">Google Maps Engine API</a> . <a href="mapsengine_v1.projects.html">projects</a> . <a href="mapsengine_v1.projects.icons.html">icons</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#create">create(projectId, body=None, media_body=None)</a></code></p>
+<p class="firstline">Create an icon.</p>
+<p class="toc_element">
+  <code><a href="#get">get(projectId, id)</a></code></p>
+<p class="firstline">Return an icon or its associated metadata</p>
+<p class="toc_element">
+  <code><a href="#get_media">get_media(projectId, id)</a></code></p>
+<p class="firstline">Return an icon or its associated metadata</p>
+<p class="toc_element">
+  <code><a href="#list">list(projectId, pageToken=None, maxResults=None)</a></code></p>
+<p class="firstline">Return all icons in the current project</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="create">create(projectId, body=None, media_body=None)</code>
+  <pre>Create an icon.
+
+Args:
+  projectId: string, The ID of the project. (required)
+  body: object, The request body.
+    The object takes the form of:
+
+{ # An icon is a user-uploaded image that can be used to style point geometries.
+    "description": "A String", # The description of this Icon, supplied by the author.
+    "name": "A String", # The name of this Icon, supplied by the author.
+    "id": "A String", # An ID used to refer to this Icon.
+  }
+
+  media_body: string, The filename of the media request body, or an instance of a MediaUpload object.
+
+Returns:
+  An object of the form:
+
+    { # An icon is a user-uploaded image that can be used to style point geometries.
+      "description": "A String", # The description of this Icon, supplied by the author.
+      "name": "A String", # The name of this Icon, supplied by the author.
+      "id": "A String", # An ID used to refer to this Icon.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(projectId, id)</code>
+  <pre>Return an icon or its associated metadata
+
+Args:
+  projectId: string, The ID of the project. (required)
+  id: string, The ID of the icon. (required)
+
+Returns:
+  An object of the form:
+
+    { # An icon is a user-uploaded image that can be used to style point geometries.
+      "description": "A String", # The description of this Icon, supplied by the author.
+      "name": "A String", # The name of this Icon, supplied by the author.
+      "id": "A String", # An ID used to refer to this Icon.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get_media">get_media(projectId, id)</code>
+  <pre>Return an icon or its associated metadata
+
+Args:
+  projectId: string, The ID of the project. (required)
+  id: string, The ID of the icon. (required)
+
+Returns:
+  The media object as a string.
+
+    </pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(projectId, pageToken=None, maxResults=None)</code>
+  <pre>Return all icons in the current project
+
+Args:
+  projectId: string, The ID of the project. (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 items to include in a single response page. The maximum supported value is 50.
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to icons.List.
+    "nextPageToken": "A String", # Next page token.
+    "icons": [ # Resources returned.
+      { # An icon is a user-uploaded image that can be used to style point geometries.
+          "description": "A String", # The description of this Icon, supplied by the author.
+          "name": "A String", # The name of this Icon, supplied by the author.
+          "id": "A String", # An ID used to refer to this Icon.
+        },
+    ],
+  }</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/mapsengine_v1.rasterCollections.html b/docs/dyn/mapsengine_v1.rasterCollections.html
index 2b43d74..bdda0af 100644
--- a/docs/dyn/mapsengine_v1.rasterCollections.html
+++ b/docs/dyn/mapsengine_v1.rasterCollections.html
@@ -80,6 +80,11 @@
 <p class="firstline">Returns the parents Resource.</p>
 
 <p class="toc_element">
+  <code><a href="mapsengine_v1.rasterCollections.permissions.html">permissions()</a></code>
+</p>
+<p class="firstline">Returns the permissions Resource.</p>
+
+<p class="toc_element">
   <code><a href="mapsengine_v1.rasterCollections.rasters.html">rasters()</a></code>
 </p>
 <p class="firstline">Returns the rasters Resource.</p>
@@ -97,7 +102,7 @@
   <code><a href="#get">get(id)</a></code></p>
 <p class="firstline">Return metadata for a particular raster collection.</p>
 <p class="toc_element">
-  <code><a href="#list">list(modifiedAfter=None, createdAfter=None, tags=None, projectId=None, maxResults=None, pageToken=None, createdBefore=None, bbox=None, creatorEmail=None, modifiedBefore=None)</a></code></p>
+  <code><a href="#list">list(modifiedBefore=None, creatorEmail=None, processingStatus=None, projectId=None, pageToken=None, role=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, search=None, createdBefore=None)</a></code></p>
 <p class="firstline">Return all raster collections readable by the current user.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
@@ -132,20 +137,23 @@
     The object takes the form of:
 
 { # A raster collection groups multiple Raster resources for inclusion in a Layer.
-  "attribution": "A String", # The name of the attribution to be used for this RasterCollection.
+  "attribution": "A String", # The name of the attribution to be used for this RasterCollection. Note: Attribution is returned in response to a get request but not a list request. After requesting a list of raster collections, you'll need to send a get request to retrieve the attribution for each raster collection.
   "description": "A String", # The description of this RasterCollection, supplied by the author.
   "processingStatus": "A String", # The processing status of this RasterCollection.
-  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
   "projectId": "A String", # The ID of the project that this RasterCollection is in.
   "tags": [ # Tags of this RasterCollection.
     "A String",
   ],
   "creationTime": "A String", # The creation time of this RasterCollection. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+  "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
   "rasterType": "A String", # The type of rasters contained within this RasterCollection.
   "etag": "A String", # The ETag, used to refer to the current version of the asset.
-  "bbox": [ # A rectangular bounding box which contains all of the data in this RasterCollection. The numbers represent latitude and longitude in decimal degrees.
+  "creatorEmail": "A String", # The email address of the creator of this raster collection. This is only returned on GET requests and not LIST requests.
+  "bbox": [ # A rectangular bounding box which contains all of the data in this RasterCollection. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
     3.14,
   ],
+  "lastModifierEmail": "A String", # The email address of the last modifier of this raster collection. This is only returned on GET requests and not LIST requests.
   "lastModifiedTime": "A String", # The last modified time of this RasterCollection. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
   "id": "A String", # A globally unique ID, used to refer to this RasterCollection.
   "mosaic": True or False, # True if this RasterCollection is a mosaic.
@@ -157,20 +165,23 @@
   An object of the form:
 
     { # A raster collection groups multiple Raster resources for inclusion in a Layer.
-    "attribution": "A String", # The name of the attribution to be used for this RasterCollection.
+    "attribution": "A String", # The name of the attribution to be used for this RasterCollection. Note: Attribution is returned in response to a get request but not a list request. After requesting a list of raster collections, you'll need to send a get request to retrieve the attribution for each raster collection.
     "description": "A String", # The description of this RasterCollection, supplied by the author.
     "processingStatus": "A String", # The processing status of this RasterCollection.
-    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
     "projectId": "A String", # The ID of the project that this RasterCollection is in.
     "tags": [ # Tags of this RasterCollection.
       "A String",
     ],
     "creationTime": "A String", # The creation time of this RasterCollection. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+    "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
     "rasterType": "A String", # The type of rasters contained within this RasterCollection.
     "etag": "A String", # The ETag, used to refer to the current version of the asset.
-    "bbox": [ # A rectangular bounding box which contains all of the data in this RasterCollection. The numbers represent latitude and longitude in decimal degrees.
+    "creatorEmail": "A String", # The email address of the creator of this raster collection. This is only returned on GET requests and not LIST requests.
+    "bbox": [ # A rectangular bounding box which contains all of the data in this RasterCollection. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
       3.14,
     ],
+    "lastModifierEmail": "A String", # The email address of the last modifier of this raster collection. This is only returned on GET requests and not LIST requests.
     "lastModifiedTime": "A String", # The last modified time of this RasterCollection. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
     "id": "A String", # A globally unique ID, used to refer to this RasterCollection.
     "mosaic": True or False, # True if this RasterCollection is a mosaic.
@@ -198,20 +209,23 @@
   An object of the form:
 
     { # A raster collection groups multiple Raster resources for inclusion in a Layer.
-    "attribution": "A String", # The name of the attribution to be used for this RasterCollection.
+    "attribution": "A String", # The name of the attribution to be used for this RasterCollection. Note: Attribution is returned in response to a get request but not a list request. After requesting a list of raster collections, you'll need to send a get request to retrieve the attribution for each raster collection.
     "description": "A String", # The description of this RasterCollection, supplied by the author.
     "processingStatus": "A String", # The processing status of this RasterCollection.
-    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
     "projectId": "A String", # The ID of the project that this RasterCollection is in.
     "tags": [ # Tags of this RasterCollection.
       "A String",
     ],
     "creationTime": "A String", # The creation time of this RasterCollection. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+    "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
     "rasterType": "A String", # The type of rasters contained within this RasterCollection.
     "etag": "A String", # The ETag, used to refer to the current version of the asset.
-    "bbox": [ # A rectangular bounding box which contains all of the data in this RasterCollection. The numbers represent latitude and longitude in decimal degrees.
+    "creatorEmail": "A String", # The email address of the creator of this raster collection. This is only returned on GET requests and not LIST requests.
+    "bbox": [ # A rectangular bounding box which contains all of the data in this RasterCollection. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
       3.14,
     ],
+    "lastModifierEmail": "A String", # The email address of the last modifier of this raster collection. This is only returned on GET requests and not LIST requests.
     "lastModifiedTime": "A String", # The last modified time of this RasterCollection. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
     "id": "A String", # A globally unique ID, used to refer to this RasterCollection.
     "mosaic": True or False, # True if this RasterCollection is a mosaic.
@@ -220,42 +234,58 @@
 </div>
 
 <div class="method">
-    <code class="details" id="list">list(modifiedAfter=None, createdAfter=None, tags=None, projectId=None, maxResults=None, pageToken=None, createdBefore=None, bbox=None, creatorEmail=None, modifiedBefore=None)</code>
+    <code class="details" id="list">list(modifiedBefore=None, creatorEmail=None, processingStatus=None, projectId=None, pageToken=None, role=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, search=None, createdBefore=None)</code>
   <pre>Return all raster collections readable by the current user.
 
 Args:
-  modifiedAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or after this time.
+  modifiedBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or before this time.
+  creatorEmail: string, An email address representing a user. Returned assets that have been created by the user associated with the provided email address.
+  processingStatus: string, A parameter
+    Allowed values
+      complete - The raster collection has completed processing.
+      failed - The raster collection has failed processing.
+      notReady - The raster collection is not ready for processing.
+      processing - The raster collection is processing.
+      ready - The raster collection is ready for processing.
+  projectId: string, The ID of a Maps Engine project, used to filter the response. To list all available projects with their IDs, send a Projects: list request. You can also find your project ID as the value of the DashboardPlace:cid URL parameter when signed in to mapsengine.google.com.
+  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.
+  role: string, The role parameter indicates that the response should only contain assets where the current user has the specified level of access.
+    Allowed values
+      owner - The user can read, write and administer the asset.
+      reader - The user can read the asset.
+      writer - The user can read and write the asset.
   createdAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or after this time.
   tags: string, A comma separated list of tags. Returned assets will contain all the tags from the list.
-  projectId: string, The ID of a Maps Engine project, used to filter the response. To list all available projects with their IDs, send a Projects: list request. You can also find your project ID as the value of the DashboardPlace:cid URL parameter when signed in to mapsengine.google.com.
   maxResults: integer, The maximum number of items to include in a single response page. The maximum supported value is 100.
-  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.
-  createdBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or before this time.
   bbox: string, A bounding box, expressed as "west,south,east,north". If set, only assets which intersect this bounding box will be returned.
-  creatorEmail: string, An email address representing a user. Returned assets that have been created by the user associated with the provided email address.
-  modifiedBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or before this time.
+  modifiedAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or after this time.
+  search: string, An unstructured search string used to filter the set of results based on asset metadata.
+  createdBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or before this time.
 
 Returns:
   An object of the form:
 
-    { # The response returned by a call to raster_collections.List.
+    { # The response returned by a call to raster_collections.List. Note: The list response does not include all the fields available in a raster collection. Refer to the RasterCollection resource description for details of the fields that are not included. You'll need to send a get request to retrieve the additional fields for each raster collection.
     "nextPageToken": "A String", # Next page token.
     "rasterCollections": [ # Resources returned.
       { # A raster collection groups multiple Raster resources for inclusion in a Layer.
-        "attribution": "A String", # The name of the attribution to be used for this RasterCollection.
+        "attribution": "A String", # The name of the attribution to be used for this RasterCollection. Note: Attribution is returned in response to a get request but not a list request. After requesting a list of raster collections, you'll need to send a get request to retrieve the attribution for each raster collection.
         "description": "A String", # The description of this RasterCollection, supplied by the author.
         "processingStatus": "A String", # The processing status of this RasterCollection.
-        "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+        "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
         "projectId": "A String", # The ID of the project that this RasterCollection is in.
         "tags": [ # Tags of this RasterCollection.
           "A String",
         ],
         "creationTime": "A String", # The creation time of this RasterCollection. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+        "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
         "rasterType": "A String", # The type of rasters contained within this RasterCollection.
         "etag": "A String", # The ETag, used to refer to the current version of the asset.
-        "bbox": [ # A rectangular bounding box which contains all of the data in this RasterCollection. The numbers represent latitude and longitude in decimal degrees.
+        "creatorEmail": "A String", # The email address of the creator of this raster collection. This is only returned on GET requests and not LIST requests.
+        "bbox": [ # A rectangular bounding box which contains all of the data in this RasterCollection. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
           3.14,
         ],
+        "lastModifierEmail": "A String", # The email address of the last modifier of this raster collection. This is only returned on GET requests and not LIST requests.
         "lastModifiedTime": "A String", # The last modified time of this RasterCollection. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
         "id": "A String", # A globally unique ID, used to refer to this RasterCollection.
         "mosaic": True or False, # True if this RasterCollection is a mosaic.
@@ -289,20 +319,23 @@
     The object takes the form of:
 
 { # A raster collection groups multiple Raster resources for inclusion in a Layer.
-  "attribution": "A String", # The name of the attribution to be used for this RasterCollection.
+  "attribution": "A String", # The name of the attribution to be used for this RasterCollection. Note: Attribution is returned in response to a get request but not a list request. After requesting a list of raster collections, you'll need to send a get request to retrieve the attribution for each raster collection.
   "description": "A String", # The description of this RasterCollection, supplied by the author.
   "processingStatus": "A String", # The processing status of this RasterCollection.
-  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
   "projectId": "A String", # The ID of the project that this RasterCollection is in.
   "tags": [ # Tags of this RasterCollection.
     "A String",
   ],
   "creationTime": "A String", # The creation time of this RasterCollection. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+  "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
   "rasterType": "A String", # The type of rasters contained within this RasterCollection.
   "etag": "A String", # The ETag, used to refer to the current version of the asset.
-  "bbox": [ # A rectangular bounding box which contains all of the data in this RasterCollection. The numbers represent latitude and longitude in decimal degrees.
+  "creatorEmail": "A String", # The email address of the creator of this raster collection. This is only returned on GET requests and not LIST requests.
+  "bbox": [ # A rectangular bounding box which contains all of the data in this RasterCollection. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
     3.14,
   ],
+  "lastModifierEmail": "A String", # The email address of the last modifier of this raster collection. This is only returned on GET requests and not LIST requests.
   "lastModifiedTime": "A String", # The last modified time of this RasterCollection. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
   "id": "A String", # A globally unique ID, used to refer to this RasterCollection.
   "mosaic": True or False, # True if this RasterCollection is a mosaic.
diff --git a/docs/dyn/mapsengine_v1.rasterCollections.permissions.html b/docs/dyn/mapsengine_v1.rasterCollections.permissions.html
new file mode 100644
index 0000000..b3a3c92
--- /dev/null
+++ b/docs/dyn/mapsengine_v1.rasterCollections.permissions.html
@@ -0,0 +1,162 @@
+<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="mapsengine_v1.html">Google Maps Engine API</a> . <a href="mapsengine_v1.rasterCollections.html">rasterCollections</a> . <a href="mapsengine_v1.rasterCollections.permissions.html">permissions</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#batchDelete">batchDelete(id, body)</a></code></p>
+<p class="firstline">Remove permission entries from an already existing asset.</p>
+<p class="toc_element">
+  <code><a href="#batchUpdate">batchUpdate(id, body)</a></code></p>
+<p class="firstline">Add or update permission entries to an already existing asset.</p>
+<p class="toc_element">
+  <code><a href="#list">list(id)</a></code></p>
+<p class="firstline">Return all of the permissions for the specified asset.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="batchDelete">batchDelete(id, body)</code>
+  <pre>Remove permission entries from an already existing asset.
+
+Args:
+  id: string, The ID of the asset from which permissions will be removed. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # The request sent to mapsengine.permissions.batchDelete.
+    "ids": [ # An array of permission ids to be removed. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      "A String",
+    ],
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to mapsengine.permissions.batchDelete.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="batchUpdate">batchUpdate(id, body)</code>
+  <pre>Add or update permission entries to an already existing asset.
+
+An asset can hold up to 20 different permission entries. Each batchInsert request is atomic.
+
+Args:
+  id: string, The ID of the asset to which permissions will be added. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # The request sent to mapsengine.permissions.batchUpdate.
+    "permissions": [ # The permissions to be inserted or updated.
+      { # A permission defines the user or group that has access to an asset, and the type of access they have.
+        "type": "A String", # The account type.
+        "role": "A String", # The type of access granted to this user or group.
+        "discoverable": True or False, # Indicates whether a public asset is listed and can be found via a web search (value true), or is visible only to people who have a link to the asset (value false).
+        "id": "A String", # The unique identifier of the permission. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      },
+    ],
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to mapsengine.permissions.batchUpdate.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(id)</code>
+  <pre>Return all of the permissions for the specified asset.
+
+Args:
+  id: string, The ID of the asset whose permissions will be listed. (required)
+
+Returns:
+  An object of the form:
+
+    {
+    "permissions": [ # The set of permissions associated with this asset.
+      { # A permission defines the user or group that has access to an asset, and the type of access they have.
+        "type": "A String", # The account type.
+        "role": "A String", # The type of access granted to this user or group.
+        "discoverable": True or False, # Indicates whether a public asset is listed and can be found via a web search (value true), or is visible only to people who have a link to the asset (value false).
+        "id": "A String", # The unique identifier of the permission. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      },
+    ],
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/mapsengine_v1.rasterCollections.rasters.html b/docs/dyn/mapsengine_v1.rasterCollections.rasters.html
index cbc4e70..46307d8 100644
--- a/docs/dyn/mapsengine_v1.rasterCollections.rasters.html
+++ b/docs/dyn/mapsengine_v1.rasterCollections.rasters.html
@@ -81,7 +81,7 @@
   <code><a href="#batchInsert">batchInsert(id, body)</a></code></p>
 <p class="firstline">Add rasters to an existing raster collection. Rasters must be successfully processed in order to be added to a raster collection.</p>
 <p class="toc_element">
-  <code><a href="#list">list(id, modifiedAfter=None, pageToken=None, createdAfter=None, tags=None, maxResults=None, createdBefore=None, bbox=None, creatorEmail=None, modifiedBefore=None)</a></code></p>
+  <code><a href="#list">list(id, modifiedBefore=None, creatorEmail=None, pageToken=None, role=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, search=None, createdBefore=None)</a></code></p>
 <p class="firstline">Return all rasters within a raster collection.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
@@ -138,20 +138,26 @@
 </div>
 
 <div class="method">
-    <code class="details" id="list">list(id, modifiedAfter=None, pageToken=None, createdAfter=None, tags=None, maxResults=None, createdBefore=None, bbox=None, creatorEmail=None, modifiedBefore=None)</code>
+    <code class="details" id="list">list(id, modifiedBefore=None, creatorEmail=None, pageToken=None, role=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, search=None, createdBefore=None)</code>
   <pre>Return all rasters within a raster collection.
 
 Args:
   id: string, The ID of the raster collection to which these rasters belong. (required)
-  modifiedAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or after this time.
+  modifiedBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or before this time.
+  creatorEmail: string, An email address representing a user. Returned assets that have been created by the user associated with the provided email address.
   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.
+  role: string, The role parameter indicates that the response should only contain assets where the current user has the specified level of access.
+    Allowed values
+      owner - The user can read, write and administer the asset.
+      reader - The user can read the asset.
+      writer - The user can read and write the asset.
   createdAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or after this time.
   tags: string, A comma separated list of tags. Returned assets will contain all the tags from the list.
   maxResults: integer, The maximum number of items to include in a single response page. The maximum supported value is 100.
-  createdBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or before this time.
   bbox: string, A bounding box, expressed as "west,south,east,north". If set, only assets which intersect this bounding box will be returned.
-  creatorEmail: string, An email address representing a user. Returned assets that have been created by the user associated with the provided email address.
-  modifiedBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or before this time.
+  modifiedAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or after this time.
+  search: string, An unstructured search string used to filter the set of results based on asset metadata.
+  createdBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or before this time.
 
 Returns:
   An object of the form:
@@ -167,7 +173,7 @@
         "rasterType": "image", # The type of this Raster. Always "image" today.
         "projectId": "A String", # The ID of the project that this Raster is in.
         "creationTime": "A String", # The creation time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-        "bbox": [ # A rectangular bounding box which contains all of the data in this Raster. The numbers represent latitude and longitude in decimal degrees.
+        "bbox": [ # A rectangular bounding box which contains all of the data in this Raster. The box is expressed as \"west, south, east, north\". The numbers represent latitudes and longitudes in decimal degrees.
           3.14,
         ],
         "lastModifiedTime": "A String", # The last modified time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
diff --git a/docs/dyn/mapsengine_v1.rasters.html b/docs/dyn/mapsengine_v1.rasters.html
index a24f148..8c7a2f6 100644
--- a/docs/dyn/mapsengine_v1.rasters.html
+++ b/docs/dyn/mapsengine_v1.rasters.html
@@ -85,15 +85,29 @@
 <p class="firstline">Returns the parents Resource.</p>
 
 <p class="toc_element">
+  <code><a href="mapsengine_v1.rasters.permissions.html">permissions()</a></code>
+</p>
+<p class="firstline">Returns the permissions Resource.</p>
+
+<p class="toc_element">
   <code><a href="#delete">delete(id)</a></code></p>
 <p class="firstline">Delete a raster.</p>
 <p class="toc_element">
   <code><a href="#get">get(id)</a></code></p>
 <p class="firstline">Return metadata for a single raster.</p>
 <p class="toc_element">
+  <code><a href="#list">list(projectId, modifiedBefore=None, creatorEmail=None, processingStatus=None, pageToken=None, role=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, search=None, createdBefore=None)</a></code></p>
+<p class="firstline">Return all rasters readable by the current user.</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(id, body)</a></code></p>
 <p class="firstline">Mutate a raster asset.</p>
 <p class="toc_element">
+  <code><a href="#process">process(id)</a></code></p>
+<p class="firstline">Process a raster asset.</p>
+<p class="toc_element">
   <code><a href="#upload">upload(body)</a></code></p>
 <p class="firstline">Create a skeleton raster asset for upload.</p>
 <h3>Method Details</h3>
@@ -117,37 +131,128 @@
   An object of the form:
 
     { # A geo-referenced raster.
-      "files": [ # The files associated with this Raster.
-        { # A single File, which is a component of an Asset.
-          "size": "A String", # The size of the file in bytes.
-          "uploadStatus": "A String", # The upload status of the file.
-          "filename": "A String", # The name of the file.
-        },
-      ],
-      "attribution": "A String", # The name of the attribution to be used for this Raster.
-      "description": "A String", # The description of this Raster, supplied by the author.
-      "processingStatus": "A String", # The processing status of this Raster.
-      "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
-      "projectId": "A String", # The ID of the project that this Raster is in.
-      "tags": [ # Tags of this Raster.
-        "A String",
-      ],
-      "creationTime": "A String", # The creation time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-      "name": "A String", # The name of this Raster, supplied by the author.
-      "etag": "A String", # The ETag, used to refer to the current version of the asset.
-      "acquisitionTime": { # Acquisition time represents acquired time of a raster. # The acquisition time of this Raster.
-        "start": "A String", # The acquisition time, or start time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
-        "end": "A String", # The end time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
-        "precision": "A String", # The precision of acquisition time.
+    "files": [ # The files associated with this Raster.
+      { # A single File, which is a component of an Asset.
+        "size": "A String", # The size of the file in bytes.
+        "uploadStatus": "A String", # The upload status of the file.
+        "filename": "A String", # The name of the file.
       },
-      "maskType": "autoMask", # The mask processing type of this Raster.
-      "lastModifiedTime": "A String", # The last modified time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-      "id": "A String", # A globally unique ID, used to refer to this Raster.
-      "rasterType": "A String", # The type of this Raster. Always "image" today.
-      "bbox": [ # A rectangular bounding box which contains all of the data in this Raster. The numbers represent latitude and longitude in decimal degrees.
-        3.14,
-      ],
-    }</pre>
+    ],
+    "attribution": "A String", # The name of the attribution to be used for this Raster.
+    "description": "A String", # The description of this Raster, supplied by the author.
+    "processingStatus": "A String", # The processing status of this Raster.
+    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
+    "projectId": "A String", # The ID of the project that this Raster is in.
+    "tags": [ # Tags of this Raster.
+      "A String",
+    ],
+    "creationTime": "A String", # The creation time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+    "name": "A String", # The name of this Raster, supplied by the author.
+    "maskType": "autoMask", # The mask processing type of this Raster.
+    "etag": "A String", # The ETag, used to refer to the current version of the asset.
+    "creatorEmail": "A String", # The email address of the creator of this raster. This is only returned on GET requests and not LIST requests.
+    "acquisitionTime": { # Acquisition time represents acquired time of a raster. # The acquisition time of this Raster.
+      "start": "A String", # The acquisition time, or start time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
+      "end": "A String", # The end time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
+      "precision": "A String", # The precision of acquisition time.
+    },
+    "lastModifierEmail": "A String", # The email address of the last modifier of this raster. This is only returned on GET requests and not LIST requests.
+    "lastModifiedTime": "A String", # The last modified time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+    "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
+    "id": "A String", # A globally unique ID, used to refer to this Raster.
+    "rasterType": "A String", # The type of this Raster. Always "image" today.
+    "bbox": [ # A rectangular bounding box which contains all of the data in this Raster. The box is expressed as \"west, south, east, north\". The numbers represent latitudes and longitudes in decimal degrees.
+      3.14,
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(projectId, modifiedBefore=None, creatorEmail=None, processingStatus=None, pageToken=None, role=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, search=None, createdBefore=None)</code>
+  <pre>Return all rasters readable by the current user.
+
+Args:
+  projectId: string, The ID of a Maps Engine project, used to filter the response. To list all available projects with their IDs, send a Projects: list request. You can also find your project ID as the value of the DashboardPlace:cid URL parameter when signed in to mapsengine.google.com. (required)
+  modifiedBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or before this time.
+  creatorEmail: string, An email address representing a user. Returned assets that have been created by the user associated with the provided email address.
+  processingStatus: string, A parameter
+    Allowed values
+      complete - The raster has completed processing.
+      failed - The raster has failed processing.
+      notReady - The raster is not ready for processing.
+      processing - The raster is processing.
+      ready - The raster is ready for processing.
+  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.
+  role: string, The role parameter indicates that the response should only contain assets where the current user has the specified level of access.
+    Allowed values
+      owner - The user can read, write and administer the asset.
+      reader - The user can read the asset.
+      writer - The user can read and write the asset.
+  createdAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or after this time.
+  tags: string, A comma separated list of tags. Returned assets will contain all the tags from the list.
+  maxResults: integer, The maximum number of items to include in a single response page. The maximum supported value is 100.
+  bbox: string, A bounding box, expressed as "west,south,east,north". If set, only assets which intersect this bounding box will be returned.
+  modifiedAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or after this time.
+  search: string, An unstructured search string used to filter the set of results based on asset metadata.
+  createdBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or before this time.
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to rasters.List.
+    "nextPageToken": "A String", # Next page token.
+    "rasters": [ # Resources returned.
+      { # A geo-referenced raster.
+        "files": [ # The files associated with this Raster.
+          { # A single File, which is a component of an Asset.
+            "size": "A String", # The size of the file in bytes.
+            "uploadStatus": "A String", # The upload status of the file.
+            "filename": "A String", # The name of the file.
+          },
+        ],
+        "attribution": "A String", # The name of the attribution to be used for this Raster.
+        "description": "A String", # The description of this Raster, supplied by the author.
+        "processingStatus": "A String", # The processing status of this Raster.
+        "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
+        "projectId": "A String", # The ID of the project that this Raster is in.
+        "tags": [ # Tags of this Raster.
+          "A String",
+        ],
+        "creationTime": "A String", # The creation time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+        "name": "A String", # The name of this Raster, supplied by the author.
+        "maskType": "autoMask", # The mask processing type of this Raster.
+        "etag": "A String", # The ETag, used to refer to the current version of the asset.
+        "creatorEmail": "A String", # The email address of the creator of this raster. This is only returned on GET requests and not LIST requests.
+        "acquisitionTime": { # Acquisition time represents acquired time of a raster. # The acquisition time of this Raster.
+          "start": "A String", # The acquisition time, or start time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
+          "end": "A String", # The end time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
+          "precision": "A String", # The precision of acquisition time.
+        },
+        "lastModifierEmail": "A String", # The email address of the last modifier of this raster. This is only returned on GET requests and not LIST requests.
+        "lastModifiedTime": "A String", # The last modified time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+        "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
+        "id": "A String", # A globally unique ID, used to refer to this Raster.
+        "rasterType": "A String", # The type of this Raster. Always "image" today.
+        "bbox": [ # A rectangular bounding box which contains all of the data in this Raster. The box is expressed as \"west, south, east, north\". The numbers represent latitudes and longitudes in decimal degrees.
+          3.14,
+        ],
+      },
+    ],
+  }</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">
@@ -160,42 +265,59 @@
     The object takes the form of:
 
 { # A geo-referenced raster.
-    "files": [ # The files associated with this Raster.
-      { # A single File, which is a component of an Asset.
-        "size": "A String", # The size of the file in bytes.
-        "uploadStatus": "A String", # The upload status of the file.
-        "filename": "A String", # The name of the file.
-      },
-    ],
-    "attribution": "A String", # The name of the attribution to be used for this Raster.
-    "description": "A String", # The description of this Raster, supplied by the author.
-    "processingStatus": "A String", # The processing status of this Raster.
-    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
-    "projectId": "A String", # The ID of the project that this Raster is in.
-    "tags": [ # Tags of this Raster.
-      "A String",
-    ],
-    "creationTime": "A String", # The creation time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-    "name": "A String", # The name of this Raster, supplied by the author.
-    "etag": "A String", # The ETag, used to refer to the current version of the asset.
-    "acquisitionTime": { # Acquisition time represents acquired time of a raster. # The acquisition time of this Raster.
-      "start": "A String", # The acquisition time, or start time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
-      "end": "A String", # The end time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
-      "precision": "A String", # The precision of acquisition time.
+  "files": [ # The files associated with this Raster.
+    { # A single File, which is a component of an Asset.
+      "size": "A String", # The size of the file in bytes.
+      "uploadStatus": "A String", # The upload status of the file.
+      "filename": "A String", # The name of the file.
     },
-    "maskType": "autoMask", # The mask processing type of this Raster.
-    "lastModifiedTime": "A String", # The last modified time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-    "id": "A String", # A globally unique ID, used to refer to this Raster.
-    "rasterType": "A String", # The type of this Raster. Always "image" today.
-    "bbox": [ # A rectangular bounding box which contains all of the data in this Raster. The numbers represent latitude and longitude in decimal degrees.
-      3.14,
-    ],
-  }
+  ],
+  "attribution": "A String", # The name of the attribution to be used for this Raster.
+  "description": "A String", # The description of this Raster, supplied by the author.
+  "processingStatus": "A String", # The processing status of this Raster.
+  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
+  "projectId": "A String", # The ID of the project that this Raster is in.
+  "tags": [ # Tags of this Raster.
+    "A String",
+  ],
+  "creationTime": "A String", # The creation time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+  "name": "A String", # The name of this Raster, supplied by the author.
+  "maskType": "autoMask", # The mask processing type of this Raster.
+  "etag": "A String", # The ETag, used to refer to the current version of the asset.
+  "creatorEmail": "A String", # The email address of the creator of this raster. This is only returned on GET requests and not LIST requests.
+  "acquisitionTime": { # Acquisition time represents acquired time of a raster. # The acquisition time of this Raster.
+    "start": "A String", # The acquisition time, or start time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
+    "end": "A String", # The end time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
+    "precision": "A String", # The precision of acquisition time.
+  },
+  "lastModifierEmail": "A String", # The email address of the last modifier of this raster. This is only returned on GET requests and not LIST requests.
+  "lastModifiedTime": "A String", # The last modified time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+  "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
+  "id": "A String", # A globally unique ID, used to refer to this Raster.
+  "rasterType": "A String", # The type of this Raster. Always "image" today.
+  "bbox": [ # A rectangular bounding box which contains all of the data in this Raster. The box is expressed as \"west, south, east, north\". The numbers represent latitudes and longitudes in decimal degrees.
+    3.14,
+  ],
+}
 
 </pre>
 </div>
 
 <div class="method">
+    <code class="details" id="process">process(id)</code>
+  <pre>Process a raster asset.
+
+Args:
+  id: string, The ID of the raster. (required)
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to any asset's Process method.
+  }</pre>
+</div>
+
+<div class="method">
     <code class="details" id="upload">upload(body)</code>
   <pre>Create a skeleton raster asset for upload.
 
@@ -204,6 +326,46 @@
     The object takes the form of:
 
 { # A geo-referenced raster.
+  "files": [ # The files associated with this Raster.
+    { # A single File, which is a component of an Asset.
+      "size": "A String", # The size of the file in bytes.
+      "uploadStatus": "A String", # The upload status of the file.
+      "filename": "A String", # The name of the file.
+    },
+  ],
+  "attribution": "A String", # The name of the attribution to be used for this Raster.
+  "description": "A String", # The description of this Raster, supplied by the author.
+  "processingStatus": "A String", # The processing status of this Raster.
+  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
+  "projectId": "A String", # The ID of the project that this Raster is in.
+  "tags": [ # Tags of this Raster.
+    "A String",
+  ],
+  "creationTime": "A String", # The creation time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+  "name": "A String", # The name of this Raster, supplied by the author.
+  "maskType": "autoMask", # The mask processing type of this Raster.
+  "etag": "A String", # The ETag, used to refer to the current version of the asset.
+  "creatorEmail": "A String", # The email address of the creator of this raster. This is only returned on GET requests and not LIST requests.
+  "acquisitionTime": { # Acquisition time represents acquired time of a raster. # The acquisition time of this Raster.
+    "start": "A String", # The acquisition time, or start time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
+    "end": "A String", # The end time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
+    "precision": "A String", # The precision of acquisition time.
+  },
+  "lastModifierEmail": "A String", # The email address of the last modifier of this raster. This is only returned on GET requests and not LIST requests.
+  "lastModifiedTime": "A String", # The last modified time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+  "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
+  "id": "A String", # A globally unique ID, used to refer to this Raster.
+  "rasterType": "A String", # The type of this Raster. Always "image" today.
+  "bbox": [ # A rectangular bounding box which contains all of the data in this Raster. The box is expressed as \"west, south, east, north\". The numbers represent latitudes and longitudes in decimal degrees.
+    3.14,
+  ],
+}
+
+
+Returns:
+  An object of the form:
+
+    { # A geo-referenced raster.
     "files": [ # The files associated with this Raster.
       { # A single File, which is a component of an Asset.
         "size": "A String", # The size of the file in bytes.
@@ -214,64 +376,30 @@
     "attribution": "A String", # The name of the attribution to be used for this Raster.
     "description": "A String", # The description of this Raster, supplied by the author.
     "processingStatus": "A String", # The processing status of this Raster.
-    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
     "projectId": "A String", # The ID of the project that this Raster is in.
     "tags": [ # Tags of this Raster.
       "A String",
     ],
     "creationTime": "A String", # The creation time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
     "name": "A String", # The name of this Raster, supplied by the author.
+    "maskType": "autoMask", # The mask processing type of this Raster.
     "etag": "A String", # The ETag, used to refer to the current version of the asset.
+    "creatorEmail": "A String", # The email address of the creator of this raster. This is only returned on GET requests and not LIST requests.
     "acquisitionTime": { # Acquisition time represents acquired time of a raster. # The acquisition time of this Raster.
       "start": "A String", # The acquisition time, or start time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
       "end": "A String", # The end time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
       "precision": "A String", # The precision of acquisition time.
     },
-    "maskType": "autoMask", # The mask processing type of this Raster.
+    "lastModifierEmail": "A String", # The email address of the last modifier of this raster. This is only returned on GET requests and not LIST requests.
     "lastModifiedTime": "A String", # The last modified time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
+    "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
     "id": "A String", # A globally unique ID, used to refer to this Raster.
     "rasterType": "A String", # The type of this Raster. Always "image" today.
-    "bbox": [ # A rectangular bounding box which contains all of the data in this Raster. The numbers represent latitude and longitude in decimal degrees.
+    "bbox": [ # A rectangular bounding box which contains all of the data in this Raster. The box is expressed as \"west, south, east, north\". The numbers represent latitudes and longitudes in decimal degrees.
       3.14,
     ],
-  }
-
-
-Returns:
-  An object of the form:
-
-    { # A geo-referenced raster.
-      "files": [ # The files associated with this Raster.
-        { # A single File, which is a component of an Asset.
-          "size": "A String", # The size of the file in bytes.
-          "uploadStatus": "A String", # The upload status of the file.
-          "filename": "A String", # The name of the file.
-        },
-      ],
-      "attribution": "A String", # The name of the attribution to be used for this Raster.
-      "description": "A String", # The description of this Raster, supplied by the author.
-      "processingStatus": "A String", # The processing status of this Raster.
-      "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
-      "projectId": "A String", # The ID of the project that this Raster is in.
-      "tags": [ # Tags of this Raster.
-        "A String",
-      ],
-      "creationTime": "A String", # The creation time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-      "name": "A String", # The name of this Raster, supplied by the author.
-      "etag": "A String", # The ETag, used to refer to the current version of the asset.
-      "acquisitionTime": { # Acquisition time represents acquired time of a raster. # The acquisition time of this Raster.
-        "start": "A String", # The acquisition time, or start time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
-        "end": "A String", # The end time if acquisition time is a range. The value is an RFC 3339 formatted date-time value (1970-01-01T00:00:00Z).
-        "precision": "A String", # The precision of acquisition time.
-      },
-      "maskType": "autoMask", # The mask processing type of this Raster.
-      "lastModifiedTime": "A String", # The last modified time of this raster. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-      "id": "A String", # A globally unique ID, used to refer to this Raster.
-      "rasterType": "A String", # The type of this Raster. Always "image" today.
-      "bbox": [ # A rectangular bounding box which contains all of the data in this Raster. The numbers represent latitude and longitude in decimal degrees.
-        3.14,
-      ],
-    }</pre>
+  }</pre>
 </div>
 
 </body></html>
\ No newline at end of file
diff --git a/docs/dyn/mapsengine_v1.rasters.permissions.html b/docs/dyn/mapsengine_v1.rasters.permissions.html
new file mode 100644
index 0000000..8049212
--- /dev/null
+++ b/docs/dyn/mapsengine_v1.rasters.permissions.html
@@ -0,0 +1,162 @@
+<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="mapsengine_v1.html">Google Maps Engine API</a> . <a href="mapsengine_v1.rasters.html">rasters</a> . <a href="mapsengine_v1.rasters.permissions.html">permissions</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#batchDelete">batchDelete(id, body)</a></code></p>
+<p class="firstline">Remove permission entries from an already existing asset.</p>
+<p class="toc_element">
+  <code><a href="#batchUpdate">batchUpdate(id, body)</a></code></p>
+<p class="firstline">Add or update permission entries to an already existing asset.</p>
+<p class="toc_element">
+  <code><a href="#list">list(id)</a></code></p>
+<p class="firstline">Return all of the permissions for the specified asset.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="batchDelete">batchDelete(id, body)</code>
+  <pre>Remove permission entries from an already existing asset.
+
+Args:
+  id: string, The ID of the asset from which permissions will be removed. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # The request sent to mapsengine.permissions.batchDelete.
+    "ids": [ # An array of permission ids to be removed. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      "A String",
+    ],
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to mapsengine.permissions.batchDelete.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="batchUpdate">batchUpdate(id, body)</code>
+  <pre>Add or update permission entries to an already existing asset.
+
+An asset can hold up to 20 different permission entries. Each batchInsert request is atomic.
+
+Args:
+  id: string, The ID of the asset to which permissions will be added. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # The request sent to mapsengine.permissions.batchUpdate.
+    "permissions": [ # The permissions to be inserted or updated.
+      { # A permission defines the user or group that has access to an asset, and the type of access they have.
+        "type": "A String", # The account type.
+        "role": "A String", # The type of access granted to this user or group.
+        "discoverable": True or False, # Indicates whether a public asset is listed and can be found via a web search (value true), or is visible only to people who have a link to the asset (value false).
+        "id": "A String", # The unique identifier of the permission. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      },
+    ],
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to mapsengine.permissions.batchUpdate.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(id)</code>
+  <pre>Return all of the permissions for the specified asset.
+
+Args:
+  id: string, The ID of the asset whose permissions will be listed. (required)
+
+Returns:
+  An object of the form:
+
+    {
+    "permissions": [ # The set of permissions associated with this asset.
+      { # A permission defines the user or group that has access to an asset, and the type of access they have.
+        "type": "A String", # The account type.
+        "role": "A String", # The type of access granted to this user or group.
+        "discoverable": True or False, # Indicates whether a public asset is listed and can be found via a web search (value true), or is visible only to people who have a link to the asset (value false).
+        "id": "A String", # The unique identifier of the permission. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      },
+    ],
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/mapsengine_v1.tables.features.html b/docs/dyn/mapsengine_v1.tables.features.html
index f5368a6..32eea5a 100644
--- a/docs/dyn/mapsengine_v1.tables.features.html
+++ b/docs/dyn/mapsengine_v1.tables.features.html
@@ -132,6 +132,7 @@
     The object takes the form of:
 
 { # The request sent to features.Insert.
+    "normalizeGeometries": true, # If true, the server will normalize feature geometries. It is assumed that the South Pole is exterior to any polygons given. See here for a list of normalizations. If false, all feature geometries must be given already normalized. The points in all LinearRings must be listed in counter-clockwise order, and LinearRings may not intersect.
     "features": [
       { # A feature within a table.
         "geometry": { # The geometry member of this Feature.
@@ -171,6 +172,7 @@
     The object takes the form of:
 
 { # The request sent to features.BatchPatch.
+    "normalizeGeometries": true, # If true, the server will normalize feature geometries. It is assumed that the South Pole is exterior to any polygons given. See here for a list of normalizations. If false, all feature geometries must be given already normalized. The points in all LinearRings must be listed in counter-clockwise order, and LinearRings may not intersect.
     "features": [
       { # A feature within a table.
         "geometry": { # The geometry member of this Feature.
diff --git a/docs/dyn/mapsengine_v1.tables.html b/docs/dyn/mapsengine_v1.tables.html
index dba1a5f..7a2f7c2 100644
--- a/docs/dyn/mapsengine_v1.tables.html
+++ b/docs/dyn/mapsengine_v1.tables.html
@@ -90,6 +90,11 @@
 <p class="firstline">Returns the parents Resource.</p>
 
 <p class="toc_element">
+  <code><a href="mapsengine_v1.tables.permissions.html">permissions()</a></code>
+</p>
+<p class="firstline">Returns the permissions Resource.</p>
+
+<p class="toc_element">
   <code><a href="#create">create(body)</a></code></p>
 <p class="firstline">Create a table asset.</p>
 <p class="toc_element">
@@ -99,7 +104,7 @@
   <code><a href="#get">get(id, version=None)</a></code></p>
 <p class="firstline">Return metadata for a particular table, including the schema.</p>
 <p class="toc_element">
-  <code><a href="#list">list(modifiedAfter=None, createdAfter=None, tags=None, projectId=None, maxResults=None, pageToken=None, createdBefore=None, bbox=None, creatorEmail=None, modifiedBefore=None)</a></code></p>
+  <code><a href="#list">list(modifiedBefore=None, creatorEmail=None, processingStatus=None, projectId=None, pageToken=None, role=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, search=None, createdBefore=None)</a></code></p>
 <p class="firstline">Return all tables readable by the current user.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
@@ -108,6 +113,9 @@
   <code><a href="#patch">patch(id, body)</a></code></p>
 <p class="firstline">Mutate a table asset.</p>
 <p class="toc_element">
+  <code><a href="#process">process(id)</a></code></p>
+<p class="firstline">Process a table asset.</p>
+<p class="toc_element">
   <code><a href="#upload">upload(body)</a></code></p>
 <p class="firstline">Create a placeholder table asset to which table files can be uploaded.</p>
 <h3>Method Details</h3>
@@ -127,7 +135,7 @@
       "filename": "A String", # The name of the file.
     },
   ],
-  "schema": { # A schema indicating the properties which may be associated with features within a Table, and the types of those properties. # The schema for this table.
+  "schema": { # A schema indicating the properties which may be associated with features within a Table, and the types of those properties. # The schema for this table. Note: The schema is returned in response to a get request but not a list request. After requesting a list of tables, you'll need to send a get request to retrieve the schema for each table.
     "primaryGeometry": "A String", # The name of the column that contains a feature's geometry. This field can be omitted during table create; Google Maps Engine supports only a single geometry column, which must be named geometry and be the first object in the columns array.
     "primaryKey": "A String", # The name of the column that contains the unique identifier of a Feature.
     "columns": [ # An array of TableColumn objects. The first object in the array must be named geometry and be of type points, lineStrings, polygons, or mixedGeometry.
@@ -139,19 +147,22 @@
   },
   "description": "A String", # The description of this table, supplied by the author.
   "processingStatus": "A String", # The processing status of this table.
-  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
   "projectId": "A String", # The ID of the project to which the table belongs.
   "tags": [ # An array of text strings, with each string representing a tag. More information about tags can be found in the Tagging data article of the Maps Engine help center.
     "A String",
   ],
   "creationTime": "A String", # The creation time of this table. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
   "sourceEncoding": "UTF-8", # Encoding of the uploaded files. Valid values include UTF-8, CP1251, ISO 8859-1, and Shift_JIS.
+  "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
   "etag": "A String", # The ETag, used to refer to the current version of the asset.
-  "bbox": [ # A rectangular bounding box which contains all of the data in this table. The numbers represent latitude and longitude in decimal degrees.
+  "creatorEmail": "A String", # The email address of the creator of this table. This is only returned on GET requests and not LIST requests.
+  "bbox": [ # A rectangular bounding box which contains all of the data in this Table. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
     3.14,
   ],
+  "lastModifierEmail": "A String", # The email address of the last modifier of this table. This is only returned on GET requests and not LIST requests.
   "lastModifiedTime": "A String", # The last modified time of this table. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-  "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
+  "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
   "id": "A String", # A globally unique ID, used to refer to this table.
   "name": "A String", # The name of this table, supplied by the author.
 }
@@ -168,7 +179,7 @@
         "filename": "A String", # The name of the file.
       },
     ],
-    "schema": { # A schema indicating the properties which may be associated with features within a Table, and the types of those properties. # The schema for this table.
+    "schema": { # A schema indicating the properties which may be associated with features within a Table, and the types of those properties. # The schema for this table. Note: The schema is returned in response to a get request but not a list request. After requesting a list of tables, you'll need to send a get request to retrieve the schema for each table.
       "primaryGeometry": "A String", # The name of the column that contains a feature's geometry. This field can be omitted during table create; Google Maps Engine supports only a single geometry column, which must be named geometry and be the first object in the columns array.
       "primaryKey": "A String", # The name of the column that contains the unique identifier of a Feature.
       "columns": [ # An array of TableColumn objects. The first object in the array must be named geometry and be of type points, lineStrings, polygons, or mixedGeometry.
@@ -180,19 +191,22 @@
     },
     "description": "A String", # The description of this table, supplied by the author.
     "processingStatus": "A String", # The processing status of this table.
-    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
     "projectId": "A String", # The ID of the project to which the table belongs.
     "tags": [ # An array of text strings, with each string representing a tag. More information about tags can be found in the Tagging data article of the Maps Engine help center.
       "A String",
     ],
     "creationTime": "A String", # The creation time of this table. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
     "sourceEncoding": "UTF-8", # Encoding of the uploaded files. Valid values include UTF-8, CP1251, ISO 8859-1, and Shift_JIS.
+    "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
     "etag": "A String", # The ETag, used to refer to the current version of the asset.
-    "bbox": [ # A rectangular bounding box which contains all of the data in this table. The numbers represent latitude and longitude in decimal degrees.
+    "creatorEmail": "A String", # The email address of the creator of this table. This is only returned on GET requests and not LIST requests.
+    "bbox": [ # A rectangular bounding box which contains all of the data in this Table. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
       3.14,
     ],
+    "lastModifierEmail": "A String", # The email address of the last modifier of this table. This is only returned on GET requests and not LIST requests.
     "lastModifiedTime": "A String", # The last modified time of this table. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-    "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
+    "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
     "id": "A String", # A globally unique ID, used to refer to this table.
     "name": "A String", # The name of this table, supplied by the author.
   }</pre>
@@ -229,7 +243,7 @@
         "filename": "A String", # The name of the file.
       },
     ],
-    "schema": { # A schema indicating the properties which may be associated with features within a Table, and the types of those properties. # The schema for this table.
+    "schema": { # A schema indicating the properties which may be associated with features within a Table, and the types of those properties. # The schema for this table. Note: The schema is returned in response to a get request but not a list request. After requesting a list of tables, you'll need to send a get request to retrieve the schema for each table.
       "primaryGeometry": "A String", # The name of the column that contains a feature's geometry. This field can be omitted during table create; Google Maps Engine supports only a single geometry column, which must be named geometry and be the first object in the columns array.
       "primaryKey": "A String", # The name of the column that contains the unique identifier of a Feature.
       "columns": [ # An array of TableColumn objects. The first object in the array must be named geometry and be of type points, lineStrings, polygons, or mixedGeometry.
@@ -241,44 +255,60 @@
     },
     "description": "A String", # The description of this table, supplied by the author.
     "processingStatus": "A String", # The processing status of this table.
-    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
     "projectId": "A String", # The ID of the project to which the table belongs.
     "tags": [ # An array of text strings, with each string representing a tag. More information about tags can be found in the Tagging data article of the Maps Engine help center.
       "A String",
     ],
     "creationTime": "A String", # The creation time of this table. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
     "sourceEncoding": "UTF-8", # Encoding of the uploaded files. Valid values include UTF-8, CP1251, ISO 8859-1, and Shift_JIS.
+    "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
     "etag": "A String", # The ETag, used to refer to the current version of the asset.
-    "bbox": [ # A rectangular bounding box which contains all of the data in this table. The numbers represent latitude and longitude in decimal degrees.
+    "creatorEmail": "A String", # The email address of the creator of this table. This is only returned on GET requests and not LIST requests.
+    "bbox": [ # A rectangular bounding box which contains all of the data in this Table. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
       3.14,
     ],
+    "lastModifierEmail": "A String", # The email address of the last modifier of this table. This is only returned on GET requests and not LIST requests.
     "lastModifiedTime": "A String", # The last modified time of this table. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-    "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
+    "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
     "id": "A String", # A globally unique ID, used to refer to this table.
     "name": "A String", # The name of this table, supplied by the author.
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="list">list(modifiedAfter=None, createdAfter=None, tags=None, projectId=None, maxResults=None, pageToken=None, createdBefore=None, bbox=None, creatorEmail=None, modifiedBefore=None)</code>
+    <code class="details" id="list">list(modifiedBefore=None, creatorEmail=None, processingStatus=None, projectId=None, pageToken=None, role=None, createdAfter=None, tags=None, maxResults=None, bbox=None, modifiedAfter=None, search=None, createdBefore=None)</code>
   <pre>Return all tables readable by the current user.
 
 Args:
-  modifiedAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or after this time.
+  modifiedBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or before this time.
+  creatorEmail: string, An email address representing a user. Returned assets that have been created by the user associated with the provided email address.
+  processingStatus: string, A parameter
+    Allowed values
+      complete - The table has completed processing.
+      failed - The table has failed processing.
+      notReady - The table is not ready for processing.
+      processing - The table is processing.
+      ready - The table is ready for processing.
+  projectId: string, The ID of a Maps Engine project, used to filter the response. To list all available projects with their IDs, send a Projects: list request. You can also find your project ID as the value of the DashboardPlace:cid URL parameter when signed in to mapsengine.google.com.
+  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.
+  role: string, The role parameter indicates that the response should only contain assets where the current user has the specified level of access.
+    Allowed values
+      owner - The user can read, write and administer the asset.
+      reader - The user can read the asset.
+      writer - The user can read and write the asset.
   createdAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or after this time.
   tags: string, A comma separated list of tags. Returned assets will contain all the tags from the list.
-  projectId: string, The ID of a Maps Engine project, used to filter the response. To list all available projects with their IDs, send a Projects: list request. You can also find your project ID as the value of the DashboardPlace:cid URL parameter when signed in to mapsengine.google.com.
   maxResults: integer, The maximum number of items to include in a single response page. The maximum supported value is 100.
-  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.
-  createdBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or before this time.
   bbox: string, A bounding box, expressed as "west,south,east,north". If set, only assets which intersect this bounding box will be returned.
-  creatorEmail: string, An email address representing a user. Returned assets that have been created by the user associated with the provided email address.
-  modifiedBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or before this time.
+  modifiedAfter: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been modified at or after this time.
+  search: string, An unstructured search string used to filter the set of results based on asset metadata.
+  createdBefore: string, An RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z). Returned assets will have been created at or before this time.
 
 Returns:
   An object of the form:
 
-    { # The response returned by a call to tables.List.
+    { # The response returned by a call to tables.List. Note: The list response does not include all the fields available in a table. Refer to the table resource description for details of the fields that are not included. You'll need to send a get request to retrieve the additional fields for each table.
     "nextPageToken": "A String", # Next page token.
     "tables": [ # Resources returned.
       { # A collection of geographic features, and associated metadata.
@@ -289,7 +319,7 @@
             "filename": "A String", # The name of the file.
           },
         ],
-        "schema": { # A schema indicating the properties which may be associated with features within a Table, and the types of those properties. # The schema for this table.
+        "schema": { # A schema indicating the properties which may be associated with features within a Table, and the types of those properties. # The schema for this table. Note: The schema is returned in response to a get request but not a list request. After requesting a list of tables, you'll need to send a get request to retrieve the schema for each table.
           "primaryGeometry": "A String", # The name of the column that contains a feature's geometry. This field can be omitted during table create; Google Maps Engine supports only a single geometry column, which must be named geometry and be the first object in the columns array.
           "primaryKey": "A String", # The name of the column that contains the unique identifier of a Feature.
           "columns": [ # An array of TableColumn objects. The first object in the array must be named geometry and be of type points, lineStrings, polygons, or mixedGeometry.
@@ -301,19 +331,22 @@
         },
         "description": "A String", # The description of this table, supplied by the author.
         "processingStatus": "A String", # The processing status of this table.
-        "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+        "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
         "projectId": "A String", # The ID of the project to which the table belongs.
         "tags": [ # An array of text strings, with each string representing a tag. More information about tags can be found in the Tagging data article of the Maps Engine help center.
           "A String",
         ],
         "creationTime": "A String", # The creation time of this table. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
         "sourceEncoding": "UTF-8", # Encoding of the uploaded files. Valid values include UTF-8, CP1251, ISO 8859-1, and Shift_JIS.
+        "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
         "etag": "A String", # The ETag, used to refer to the current version of the asset.
-        "bbox": [ # A rectangular bounding box which contains all of the data in this table. The numbers represent latitude and longitude in decimal degrees.
+        "creatorEmail": "A String", # The email address of the creator of this table. This is only returned on GET requests and not LIST requests.
+        "bbox": [ # A rectangular bounding box which contains all of the data in this Table. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
           3.14,
         ],
+        "lastModifierEmail": "A String", # The email address of the last modifier of this table. This is only returned on GET requests and not LIST requests.
         "lastModifiedTime": "A String", # The last modified time of this table. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-        "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
+        "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
         "id": "A String", # A globally unique ID, used to refer to this table.
         "name": "A String", # The name of this table, supplied by the author.
       },
@@ -352,7 +385,7 @@
       "filename": "A String", # The name of the file.
     },
   ],
-  "schema": { # A schema indicating the properties which may be associated with features within a Table, and the types of those properties. # The schema for this table.
+  "schema": { # A schema indicating the properties which may be associated with features within a Table, and the types of those properties. # The schema for this table. Note: The schema is returned in response to a get request but not a list request. After requesting a list of tables, you'll need to send a get request to retrieve the schema for each table.
     "primaryGeometry": "A String", # The name of the column that contains a feature's geometry. This field can be omitted during table create; Google Maps Engine supports only a single geometry column, which must be named geometry and be the first object in the columns array.
     "primaryKey": "A String", # The name of the column that contains the unique identifier of a Feature.
     "columns": [ # An array of TableColumn objects. The first object in the array must be named geometry and be of type points, lineStrings, polygons, or mixedGeometry.
@@ -364,19 +397,22 @@
   },
   "description": "A String", # The description of this table, supplied by the author.
   "processingStatus": "A String", # The processing status of this table.
-  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
   "projectId": "A String", # The ID of the project to which the table belongs.
   "tags": [ # An array of text strings, with each string representing a tag. More information about tags can be found in the Tagging data article of the Maps Engine help center.
     "A String",
   ],
   "creationTime": "A String", # The creation time of this table. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
   "sourceEncoding": "UTF-8", # Encoding of the uploaded files. Valid values include UTF-8, CP1251, ISO 8859-1, and Shift_JIS.
+  "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
   "etag": "A String", # The ETag, used to refer to the current version of the asset.
-  "bbox": [ # A rectangular bounding box which contains all of the data in this table. The numbers represent latitude and longitude in decimal degrees.
+  "creatorEmail": "A String", # The email address of the creator of this table. This is only returned on GET requests and not LIST requests.
+  "bbox": [ # A rectangular bounding box which contains all of the data in this Table. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
     3.14,
   ],
+  "lastModifierEmail": "A String", # The email address of the last modifier of this table. This is only returned on GET requests and not LIST requests.
   "lastModifiedTime": "A String", # The last modified time of this table. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-  "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
+  "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
   "id": "A String", # A globally unique ID, used to refer to this table.
   "name": "A String", # The name of this table, supplied by the author.
 }
@@ -385,6 +421,20 @@
 </div>
 
 <div class="method">
+    <code class="details" id="process">process(id)</code>
+  <pre>Process a table asset.
+
+Args:
+  id: string, The ID of the table. (required)
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to any asset's Process method.
+  }</pre>
+</div>
+
+<div class="method">
     <code class="details" id="upload">upload(body)</code>
   <pre>Create a placeholder table asset to which table files can be uploaded.
 Once the placeholder has been created, files are uploaded to the https://www.googleapis.com/upload/mapsengine/v1/tables/table_id/files endpoint.
@@ -402,7 +452,7 @@
       "filename": "A String", # The name of the file.
     },
   ],
-  "schema": { # A schema indicating the properties which may be associated with features within a Table, and the types of those properties. # The schema for this table.
+  "schema": { # A schema indicating the properties which may be associated with features within a Table, and the types of those properties. # The schema for this table. Note: The schema is returned in response to a get request but not a list request. After requesting a list of tables, you'll need to send a get request to retrieve the schema for each table.
     "primaryGeometry": "A String", # The name of the column that contains a feature's geometry. This field can be omitted during table create; Google Maps Engine supports only a single geometry column, which must be named geometry and be the first object in the columns array.
     "primaryKey": "A String", # The name of the column that contains the unique identifier of a Feature.
     "columns": [ # An array of TableColumn objects. The first object in the array must be named geometry and be of type points, lineStrings, polygons, or mixedGeometry.
@@ -414,19 +464,22 @@
   },
   "description": "A String", # The description of this table, supplied by the author.
   "processingStatus": "A String", # The processing status of this table.
-  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+  "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
   "projectId": "A String", # The ID of the project to which the table belongs.
   "tags": [ # An array of text strings, with each string representing a tag. More information about tags can be found in the Tagging data article of the Maps Engine help center.
     "A String",
   ],
   "creationTime": "A String", # The creation time of this table. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
   "sourceEncoding": "UTF-8", # Encoding of the uploaded files. Valid values include UTF-8, CP1251, ISO 8859-1, and Shift_JIS.
+  "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
   "etag": "A String", # The ETag, used to refer to the current version of the asset.
-  "bbox": [ # A rectangular bounding box which contains all of the data in this table. The numbers represent latitude and longitude in decimal degrees.
+  "creatorEmail": "A String", # The email address of the creator of this table. This is only returned on GET requests and not LIST requests.
+  "bbox": [ # A rectangular bounding box which contains all of the data in this Table. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
     3.14,
   ],
+  "lastModifierEmail": "A String", # The email address of the last modifier of this table. This is only returned on GET requests and not LIST requests.
   "lastModifiedTime": "A String", # The last modified time of this table. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-  "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
+  "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
   "id": "A String", # A globally unique ID, used to refer to this table.
   "name": "A String", # The name of this table, supplied by the author.
 }
@@ -443,7 +496,7 @@
         "filename": "A String", # The name of the file.
       },
     ],
-    "schema": { # A schema indicating the properties which may be associated with features within a Table, and the types of those properties. # The schema for this table.
+    "schema": { # A schema indicating the properties which may be associated with features within a Table, and the types of those properties. # The schema for this table. Note: The schema is returned in response to a get request but not a list request. After requesting a list of tables, you'll need to send a get request to retrieve the schema for each table.
       "primaryGeometry": "A String", # The name of the column that contains a feature's geometry. This field can be omitted during table create; Google Maps Engine supports only a single geometry column, which must be named geometry and be the first object in the columns array.
       "primaryKey": "A String", # The name of the column that contains the unique identifier of a Feature.
       "columns": [ # An array of TableColumn objects. The first object in the array must be named geometry and be of type points, lineStrings, polygons, or mixedGeometry.
@@ -455,19 +508,22 @@
     },
     "description": "A String", # The description of this table, supplied by the author.
     "processingStatus": "A String", # The processing status of this table.
-    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. The API does not yet support the new permissions model. When you create a map via the API without specifying permissions, the account that created the map is the owner and has effective administrator access. Users can then use the Maps Engine user interface to adjust the permissions. This is a temporary workaround until the API supports the new permissions model. Read Add new users and groups in the Google Maps Engine help center for more information.
+    "draftAccessList": "A String", # Deprecated: The name of an access list of the Map Editor type. The user on whose behalf the request is being sent must be an editor on that access list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
     "projectId": "A String", # The ID of the project to which the table belongs.
     "tags": [ # An array of text strings, with each string representing a tag. More information about tags can be found in the Tagging data article of the Maps Engine help center.
       "A String",
     ],
     "creationTime": "A String", # The creation time of this table. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
     "sourceEncoding": "UTF-8", # Encoding of the uploaded files. Valid values include UTF-8, CP1251, ISO 8859-1, and Shift_JIS.
+    "writersCanEditPermissions": True or False, # If true, WRITERs of the asset are able to edit the asset permissions.
     "etag": "A String", # The ETag, used to refer to the current version of the asset.
-    "bbox": [ # A rectangular bounding box which contains all of the data in this table. The numbers represent latitude and longitude in decimal degrees.
+    "creatorEmail": "A String", # The email address of the creator of this table. This is only returned on GET requests and not LIST requests.
+    "bbox": [ # A rectangular bounding box which contains all of the data in this Table. The box is expressed as \"west, south, east, north\". The numbers represent latitude and longitude in decimal degrees.
       3.14,
     ],
+    "lastModifierEmail": "A String", # The email address of the last modifier of this table. This is only returned on GET requests and not LIST requests.
     "lastModifiedTime": "A String", # The last modified time of this table. The value is an RFC 3339 formatted date-time value (e.g. 1970-01-01T00:00:00Z).
-    "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Read Share data, layers, and maps in the Google Maps Engine help center for more information.
+    "publishedAccessList": "A String", # Deprecated: The access list to whom view permissions are granted. The value must be the name of a Maps Engine access list of the Map Viewer type, and the user must be a viewer on that list. Note: Google Maps Engine no longer uses access lists. Instead, each asset has its own list of permissions. For backward compatibility, the API still accepts access lists for projects that are already using access lists. If you created a GME account/project after July 14th, 2014, you will not be able to send API requests that include access lists. Note: This is an input field only. It is not returned in response to a list or get request.
     "id": "A String", # A globally unique ID, used to refer to this table.
     "name": "A String", # The name of this table, supplied by the author.
   }</pre>
diff --git a/docs/dyn/mapsengine_v1.tables.permissions.html b/docs/dyn/mapsengine_v1.tables.permissions.html
new file mode 100644
index 0000000..8daf3e9
--- /dev/null
+++ b/docs/dyn/mapsengine_v1.tables.permissions.html
@@ -0,0 +1,162 @@
+<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="mapsengine_v1.html">Google Maps Engine API</a> . <a href="mapsengine_v1.tables.html">tables</a> . <a href="mapsengine_v1.tables.permissions.html">permissions</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#batchDelete">batchDelete(id, body)</a></code></p>
+<p class="firstline">Remove permission entries from an already existing asset.</p>
+<p class="toc_element">
+  <code><a href="#batchUpdate">batchUpdate(id, body)</a></code></p>
+<p class="firstline">Add or update permission entries to an already existing asset.</p>
+<p class="toc_element">
+  <code><a href="#list">list(id)</a></code></p>
+<p class="firstline">Return all of the permissions for the specified asset.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="batchDelete">batchDelete(id, body)</code>
+  <pre>Remove permission entries from an already existing asset.
+
+Args:
+  id: string, The ID of the asset from which permissions will be removed. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # The request sent to mapsengine.permissions.batchDelete.
+    "ids": [ # An array of permission ids to be removed. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      "A String",
+    ],
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to mapsengine.permissions.batchDelete.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="batchUpdate">batchUpdate(id, body)</code>
+  <pre>Add or update permission entries to an already existing asset.
+
+An asset can hold up to 20 different permission entries. Each batchInsert request is atomic.
+
+Args:
+  id: string, The ID of the asset to which permissions will be added. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # The request sent to mapsengine.permissions.batchUpdate.
+    "permissions": [ # The permissions to be inserted or updated.
+      { # A permission defines the user or group that has access to an asset, and the type of access they have.
+        "type": "A String", # The account type.
+        "role": "A String", # The type of access granted to this user or group.
+        "discoverable": True or False, # Indicates whether a public asset is listed and can be found via a web search (value true), or is visible only to people who have a link to the asset (value false).
+        "id": "A String", # The unique identifier of the permission. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      },
+    ],
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # The response returned by a call to mapsengine.permissions.batchUpdate.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(id)</code>
+  <pre>Return all of the permissions for the specified asset.
+
+Args:
+  id: string, The ID of the asset whose permissions will be listed. (required)
+
+Returns:
+  An object of the form:
+
+    {
+    "permissions": [ # The set of permissions associated with this asset.
+      { # A permission defines the user or group that has access to an asset, and the type of access they have.
+        "type": "A String", # The account type.
+        "role": "A String", # The type of access granted to this user or group.
+        "discoverable": True or False, # Indicates whether a public asset is listed and can be found via a web search (value true), or is visible only to people who have a link to the asset (value false).
+        "id": "A String", # The unique identifier of the permission. This could be the email address of the user or group this permission refers to, or the string "anyone" for public permissions.
+      },
+    ],
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/mirror_v1.timeline.html b/docs/dyn/mirror_v1.timeline.html
index c78b36c..eaa7d34 100644
--- a/docs/dyn/mirror_v1.timeline.html
+++ b/docs/dyn/mirror_v1.timeline.html
@@ -164,6 +164,22 @@
       "text": "A String", # Text content of this item.
       "menuItems": [ # A list of menu items that will be presented to the user when this item is selected in the timeline.
         { # A custom menu item that can be presented to the user by a timeline item.
+          "contextual_command": "A String", # The ContextualMenus.Command associated with this MenuItem (e.g. READ_ALOUD). The voice label for this command will be displayed in the voice menu and the touch label will be displayed in the touch menu. Note that the default menu value's display name will be overriden if you specify this property. Values that do not correspond to a ContextualMenus.Command name will be ignored.
+          "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
+          "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
+              # - When the action is OPEN_URI, the payload is the URL of the website to view.
+              # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
+              # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
+          "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
+            { # A single value that is part of a MenuItem.
+              "iconUrl": "A String", # URL of an icon to display with the menu item.
+              "state": "A String", # The state that this value applies to. Allowed values are:
+                  # - DEFAULT - Default value shown when displayed in the menuItems list.
+                  # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
+                  # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
+              "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
+            },
+          ],
           "action": "A String", # Controls the behavior when the user picks the menu option. Allowed values are:
               # - CUSTOM - Custom action set by the service. When the user selects this menuItem, the API triggers a notification to your callbackUrl with the userActions.type set to CUSTOM and the userActions.payload set to the ID of this menu item. This is the default value.
               # - Built-in actions:
@@ -181,22 +197,7 @@
               # - SEND_MESSAGE - Initiate sending a message to the timeline item's creator:
               # - If the creator.phoneNumber is set and Glass is connected to an Android phone, the message is an SMS.
               # - Otherwise, if the creator.email is set, the message is an email.
-          "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
-          "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
-            { # A single value that is part of a MenuItem.
-              "iconUrl": "A String", # URL of an icon to display with the menu item.
-              "state": "A String", # The state that this value applies to. Allowed values are:
-                  # - DEFAULT - Default value shown when displayed in the menuItems list.
-                  # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
-                  # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
-              "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
-            },
-          ],
           "id": "A String", # The ID for this menu item. This is generated by the application and is treated as an opaque token.
-          "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
-              # - When the action is OPEN_URI, the payload is the URL of the website to view.
-              # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
-              # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
         },
       ],
       "isBundleCover": True or False, # Whether this item is a bundle cover.
@@ -347,6 +348,22 @@
     "text": "A String", # Text content of this item.
     "menuItems": [ # A list of menu items that will be presented to the user when this item is selected in the timeline.
       { # A custom menu item that can be presented to the user by a timeline item.
+        "contextual_command": "A String", # The ContextualMenus.Command associated with this MenuItem (e.g. READ_ALOUD). The voice label for this command will be displayed in the voice menu and the touch label will be displayed in the touch menu. Note that the default menu value's display name will be overriden if you specify this property. Values that do not correspond to a ContextualMenus.Command name will be ignored.
+        "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
+        "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
+            # - When the action is OPEN_URI, the payload is the URL of the website to view.
+            # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
+            # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
+        "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
+          { # A single value that is part of a MenuItem.
+            "iconUrl": "A String", # URL of an icon to display with the menu item.
+            "state": "A String", # The state that this value applies to. Allowed values are:
+                # - DEFAULT - Default value shown when displayed in the menuItems list.
+                # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
+                # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
+            "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
+          },
+        ],
         "action": "A String", # Controls the behavior when the user picks the menu option. Allowed values are:
             # - CUSTOM - Custom action set by the service. When the user selects this menuItem, the API triggers a notification to your callbackUrl with the userActions.type set to CUSTOM and the userActions.payload set to the ID of this menu item. This is the default value.
             # - Built-in actions:
@@ -364,22 +381,7 @@
             # - SEND_MESSAGE - Initiate sending a message to the timeline item's creator:
             # - If the creator.phoneNumber is set and Glass is connected to an Android phone, the message is an SMS.
             # - Otherwise, if the creator.email is set, the message is an email.
-        "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
-        "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
-          { # A single value that is part of a MenuItem.
-            "iconUrl": "A String", # URL of an icon to display with the menu item.
-            "state": "A String", # The state that this value applies to. Allowed values are:
-                # - DEFAULT - Default value shown when displayed in the menuItems list.
-                # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
-                # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
-            "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
-          },
-        ],
         "id": "A String", # The ID for this menu item. This is generated by the application and is treated as an opaque token.
-        "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
-            # - When the action is OPEN_URI, the payload is the URL of the website to view.
-            # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
-            # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
       },
     ],
     "isBundleCover": True or False, # Whether this item is a bundle cover.
@@ -526,6 +528,22 @@
       "text": "A String", # Text content of this item.
       "menuItems": [ # A list of menu items that will be presented to the user when this item is selected in the timeline.
         { # A custom menu item that can be presented to the user by a timeline item.
+          "contextual_command": "A String", # The ContextualMenus.Command associated with this MenuItem (e.g. READ_ALOUD). The voice label for this command will be displayed in the voice menu and the touch label will be displayed in the touch menu. Note that the default menu value's display name will be overriden if you specify this property. Values that do not correspond to a ContextualMenus.Command name will be ignored.
+          "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
+          "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
+              # - When the action is OPEN_URI, the payload is the URL of the website to view.
+              # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
+              # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
+          "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
+            { # A single value that is part of a MenuItem.
+              "iconUrl": "A String", # URL of an icon to display with the menu item.
+              "state": "A String", # The state that this value applies to. Allowed values are:
+                  # - DEFAULT - Default value shown when displayed in the menuItems list.
+                  # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
+                  # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
+              "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
+            },
+          ],
           "action": "A String", # Controls the behavior when the user picks the menu option. Allowed values are:
               # - CUSTOM - Custom action set by the service. When the user selects this menuItem, the API triggers a notification to your callbackUrl with the userActions.type set to CUSTOM and the userActions.payload set to the ID of this menu item. This is the default value.
               # - Built-in actions:
@@ -543,22 +561,7 @@
               # - SEND_MESSAGE - Initiate sending a message to the timeline item's creator:
               # - If the creator.phoneNumber is set and Glass is connected to an Android phone, the message is an SMS.
               # - Otherwise, if the creator.email is set, the message is an email.
-          "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
-          "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
-            { # A single value that is part of a MenuItem.
-              "iconUrl": "A String", # URL of an icon to display with the menu item.
-              "state": "A String", # The state that this value applies to. Allowed values are:
-                  # - DEFAULT - Default value shown when displayed in the menuItems list.
-                  # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
-                  # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
-              "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
-            },
-          ],
           "id": "A String", # The ID for this menu item. This is generated by the application and is treated as an opaque token.
-          "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
-              # - When the action is OPEN_URI, the payload is the URL of the website to view.
-              # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
-              # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
         },
       ],
       "isBundleCover": True or False, # Whether this item is a bundle cover.
@@ -723,6 +726,22 @@
           "text": "A String", # Text content of this item.
           "menuItems": [ # A list of menu items that will be presented to the user when this item is selected in the timeline.
             { # A custom menu item that can be presented to the user by a timeline item.
+              "contextual_command": "A String", # The ContextualMenus.Command associated with this MenuItem (e.g. READ_ALOUD). The voice label for this command will be displayed in the voice menu and the touch label will be displayed in the touch menu. Note that the default menu value's display name will be overriden if you specify this property. Values that do not correspond to a ContextualMenus.Command name will be ignored.
+              "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
+              "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
+                  # - When the action is OPEN_URI, the payload is the URL of the website to view.
+                  # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
+                  # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
+              "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
+                { # A single value that is part of a MenuItem.
+                  "iconUrl": "A String", # URL of an icon to display with the menu item.
+                  "state": "A String", # The state that this value applies to. Allowed values are:
+                      # - DEFAULT - Default value shown when displayed in the menuItems list.
+                      # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
+                      # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
+                  "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
+                },
+              ],
               "action": "A String", # Controls the behavior when the user picks the menu option. Allowed values are:
                   # - CUSTOM - Custom action set by the service. When the user selects this menuItem, the API triggers a notification to your callbackUrl with the userActions.type set to CUSTOM and the userActions.payload set to the ID of this menu item. This is the default value.
                   # - Built-in actions:
@@ -740,22 +759,7 @@
                   # - SEND_MESSAGE - Initiate sending a message to the timeline item's creator:
                   # - If the creator.phoneNumber is set and Glass is connected to an Android phone, the message is an SMS.
                   # - Otherwise, if the creator.email is set, the message is an email.
-              "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
-              "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
-                { # A single value that is part of a MenuItem.
-                  "iconUrl": "A String", # URL of an icon to display with the menu item.
-                  "state": "A String", # The state that this value applies to. Allowed values are:
-                      # - DEFAULT - Default value shown when displayed in the menuItems list.
-                      # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
-                      # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
-                  "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
-                },
-              ],
               "id": "A String", # The ID for this menu item. This is generated by the application and is treated as an opaque token.
-              "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
-                  # - When the action is OPEN_URI, the payload is the URL of the website to view.
-                  # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
-                  # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
             },
           ],
           "isBundleCover": True or False, # Whether this item is a bundle cover.
@@ -924,6 +928,22 @@
     "text": "A String", # Text content of this item.
     "menuItems": [ # A list of menu items that will be presented to the user when this item is selected in the timeline.
       { # A custom menu item that can be presented to the user by a timeline item.
+        "contextual_command": "A String", # The ContextualMenus.Command associated with this MenuItem (e.g. READ_ALOUD). The voice label for this command will be displayed in the voice menu and the touch label will be displayed in the touch menu. Note that the default menu value's display name will be overriden if you specify this property. Values that do not correspond to a ContextualMenus.Command name will be ignored.
+        "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
+        "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
+            # - When the action is OPEN_URI, the payload is the URL of the website to view.
+            # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
+            # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
+        "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
+          { # A single value that is part of a MenuItem.
+            "iconUrl": "A String", # URL of an icon to display with the menu item.
+            "state": "A String", # The state that this value applies to. Allowed values are:
+                # - DEFAULT - Default value shown when displayed in the menuItems list.
+                # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
+                # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
+            "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
+          },
+        ],
         "action": "A String", # Controls the behavior when the user picks the menu option. Allowed values are:
             # - CUSTOM - Custom action set by the service. When the user selects this menuItem, the API triggers a notification to your callbackUrl with the userActions.type set to CUSTOM and the userActions.payload set to the ID of this menu item. This is the default value.
             # - Built-in actions:
@@ -941,22 +961,7 @@
             # - SEND_MESSAGE - Initiate sending a message to the timeline item's creator:
             # - If the creator.phoneNumber is set and Glass is connected to an Android phone, the message is an SMS.
             # - Otherwise, if the creator.email is set, the message is an email.
-        "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
-        "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
-          { # A single value that is part of a MenuItem.
-            "iconUrl": "A String", # URL of an icon to display with the menu item.
-            "state": "A String", # The state that this value applies to. Allowed values are:
-                # - DEFAULT - Default value shown when displayed in the menuItems list.
-                # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
-                # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
-            "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
-          },
-        ],
         "id": "A String", # The ID for this menu item. This is generated by the application and is treated as an opaque token.
-        "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
-            # - When the action is OPEN_URI, the payload is the URL of the website to view.
-            # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
-            # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
       },
     ],
     "isBundleCover": True or False, # Whether this item is a bundle cover.
@@ -1102,6 +1107,22 @@
       "text": "A String", # Text content of this item.
       "menuItems": [ # A list of menu items that will be presented to the user when this item is selected in the timeline.
         { # A custom menu item that can be presented to the user by a timeline item.
+          "contextual_command": "A String", # The ContextualMenus.Command associated with this MenuItem (e.g. READ_ALOUD). The voice label for this command will be displayed in the voice menu and the touch label will be displayed in the touch menu. Note that the default menu value's display name will be overriden if you specify this property. Values that do not correspond to a ContextualMenus.Command name will be ignored.
+          "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
+          "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
+              # - When the action is OPEN_URI, the payload is the URL of the website to view.
+              # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
+              # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
+          "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
+            { # A single value that is part of a MenuItem.
+              "iconUrl": "A String", # URL of an icon to display with the menu item.
+              "state": "A String", # The state that this value applies to. Allowed values are:
+                  # - DEFAULT - Default value shown when displayed in the menuItems list.
+                  # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
+                  # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
+              "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
+            },
+          ],
           "action": "A String", # Controls the behavior when the user picks the menu option. Allowed values are:
               # - CUSTOM - Custom action set by the service. When the user selects this menuItem, the API triggers a notification to your callbackUrl with the userActions.type set to CUSTOM and the userActions.payload set to the ID of this menu item. This is the default value.
               # - Built-in actions:
@@ -1119,22 +1140,7 @@
               # - SEND_MESSAGE - Initiate sending a message to the timeline item's creator:
               # - If the creator.phoneNumber is set and Glass is connected to an Android phone, the message is an SMS.
               # - Otherwise, if the creator.email is set, the message is an email.
-          "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
-          "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
-            { # A single value that is part of a MenuItem.
-              "iconUrl": "A String", # URL of an icon to display with the menu item.
-              "state": "A String", # The state that this value applies to. Allowed values are:
-                  # - DEFAULT - Default value shown when displayed in the menuItems list.
-                  # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
-                  # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
-              "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
-            },
-          ],
           "id": "A String", # The ID for this menu item. This is generated by the application and is treated as an opaque token.
-          "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
-              # - When the action is OPEN_URI, the payload is the URL of the website to view.
-              # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
-              # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
         },
       ],
       "isBundleCover": True or False, # Whether this item is a bundle cover.
@@ -1286,6 +1292,22 @@
     "text": "A String", # Text content of this item.
     "menuItems": [ # A list of menu items that will be presented to the user when this item is selected in the timeline.
       { # A custom menu item that can be presented to the user by a timeline item.
+        "contextual_command": "A String", # The ContextualMenus.Command associated with this MenuItem (e.g. READ_ALOUD). The voice label for this command will be displayed in the voice menu and the touch label will be displayed in the touch menu. Note that the default menu value's display name will be overriden if you specify this property. Values that do not correspond to a ContextualMenus.Command name will be ignored.
+        "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
+        "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
+            # - When the action is OPEN_URI, the payload is the URL of the website to view.
+            # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
+            # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
+        "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
+          { # A single value that is part of a MenuItem.
+            "iconUrl": "A String", # URL of an icon to display with the menu item.
+            "state": "A String", # The state that this value applies to. Allowed values are:
+                # - DEFAULT - Default value shown when displayed in the menuItems list.
+                # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
+                # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
+            "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
+          },
+        ],
         "action": "A String", # Controls the behavior when the user picks the menu option. Allowed values are:
             # - CUSTOM - Custom action set by the service. When the user selects this menuItem, the API triggers a notification to your callbackUrl with the userActions.type set to CUSTOM and the userActions.payload set to the ID of this menu item. This is the default value.
             # - Built-in actions:
@@ -1303,22 +1325,7 @@
             # - SEND_MESSAGE - Initiate sending a message to the timeline item's creator:
             # - If the creator.phoneNumber is set and Glass is connected to an Android phone, the message is an SMS.
             # - Otherwise, if the creator.email is set, the message is an email.
-        "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
-        "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
-          { # A single value that is part of a MenuItem.
-            "iconUrl": "A String", # URL of an icon to display with the menu item.
-            "state": "A String", # The state that this value applies to. Allowed values are:
-                # - DEFAULT - Default value shown when displayed in the menuItems list.
-                # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
-                # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
-            "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
-          },
-        ],
         "id": "A String", # The ID for this menu item. This is generated by the application and is treated as an opaque token.
-        "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
-            # - When the action is OPEN_URI, the payload is the URL of the website to view.
-            # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
-            # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
       },
     ],
     "isBundleCover": True or False, # Whether this item is a bundle cover.
@@ -1465,6 +1472,22 @@
       "text": "A String", # Text content of this item.
       "menuItems": [ # A list of menu items that will be presented to the user when this item is selected in the timeline.
         { # A custom menu item that can be presented to the user by a timeline item.
+          "contextual_command": "A String", # The ContextualMenus.Command associated with this MenuItem (e.g. READ_ALOUD). The voice label for this command will be displayed in the voice menu and the touch label will be displayed in the touch menu. Note that the default menu value's display name will be overriden if you specify this property. Values that do not correspond to a ContextualMenus.Command name will be ignored.
+          "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
+          "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
+              # - When the action is OPEN_URI, the payload is the URL of the website to view.
+              # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
+              # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
+          "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
+            { # A single value that is part of a MenuItem.
+              "iconUrl": "A String", # URL of an icon to display with the menu item.
+              "state": "A String", # The state that this value applies to. Allowed values are:
+                  # - DEFAULT - Default value shown when displayed in the menuItems list.
+                  # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
+                  # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
+              "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
+            },
+          ],
           "action": "A String", # Controls the behavior when the user picks the menu option. Allowed values are:
               # - CUSTOM - Custom action set by the service. When the user selects this menuItem, the API triggers a notification to your callbackUrl with the userActions.type set to CUSTOM and the userActions.payload set to the ID of this menu item. This is the default value.
               # - Built-in actions:
@@ -1482,22 +1505,7 @@
               # - SEND_MESSAGE - Initiate sending a message to the timeline item's creator:
               # - If the creator.phoneNumber is set and Glass is connected to an Android phone, the message is an SMS.
               # - Otherwise, if the creator.email is set, the message is an email.
-          "removeWhenSelected": True or False, # If set to true on a CUSTOM menu item, that item will be removed from the menu after it is selected.
-          "values": [ # For CUSTOM items, a list of values controlling the appearance of the menu item in each of its states. A value for the DEFAULT state must be provided. If the PENDING or CONFIRMED states are missing, they will not be shown.
-            { # A single value that is part of a MenuItem.
-              "iconUrl": "A String", # URL of an icon to display with the menu item.
-              "state": "A String", # The state that this value applies to. Allowed values are:
-                  # - DEFAULT - Default value shown when displayed in the menuItems list.
-                  # - PENDING - Value shown when the menuItem has been selected by the user but can still be cancelled.
-                  # - CONFIRMED - Value shown when the menuItem has been selected by the user and can no longer be cancelled.
-              "displayName": "A String", # The name to display for the menu item. If you specify this property for a built-in menu item, the default contextual voice command for that menu item is not shown.
-            },
-          ],
           "id": "A String", # The ID for this menu item. This is generated by the application and is treated as an opaque token.
-          "payload": "A String", # A generic payload whose meaning changes depending on this MenuItem's action.
-              # - When the action is OPEN_URI, the payload is the URL of the website to view.
-              # - When the action is PLAY_VIDEO, the payload is the streaming URL of the video
-              # - When the action is GET_MEDIA_INPUT, the payload is the text transcription of a user's speech input
         },
       ],
       "isBundleCover": True or False, # Whether this item is a bundle cover.
diff --git a/docs/dyn/pubsub_v1beta1.subscriptions.html b/docs/dyn/pubsub_v1beta1.subscriptions.html
index dbaeb5f..b7a118a 100644
--- a/docs/dyn/pubsub_v1beta1.subscriptions.html
+++ b/docs/dyn/pubsub_v1beta1.subscriptions.html
@@ -246,7 +246,7 @@
     The object takes the form of:
 
 {
-    "ackDeadlineSeconds": 42, # The new Ack deadline. Must be >= 1.
+    "ackDeadlineSeconds": 42, # The new Ack deadline. Must be >= 0.
     "ackId": "A String", # The Ack ID.
     "subscription": "A String", # The name of the subscription from which messages are being pulled.
   }
diff --git a/docs/dyn/replicapool_v1beta1.pools.html b/docs/dyn/replicapool_v1beta1.pools.html
index 74ab0b1..fdc4d81 100644
--- a/docs/dyn/replicapool_v1beta1.pools.html
+++ b/docs/dyn/replicapool_v1beta1.pools.html
@@ -180,6 +180,7 @@
                 "diskSizeGb": "A String", # The size of the created disk in gigabytes.
                 "sourceImage": "A String", # The name or fully-qualified URL of a source image to use to create this disk. If you provide a name of the source image, Replica Pool will look for an image with that name in your project. If you are specifying an image provided by Compute Engine, you will need to provide the full URL with the correct project, such as:
                     # http://www.googleapis.com/compute/v1/projects/debian-cloud/ global/images/debian-wheezy-7-vYYYYMMDD
+                "diskType": "A String", # Name of the disk type resource describing which disk type to use to create the disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard'
               },
               "boot": True or False, # If true, indicates that this is the root persistent disk.
               "attachment": { # Specifies how to attach a disk to a Replica. # How the disk will be attached to the Replica.
@@ -327,6 +328,7 @@
               "diskSizeGb": "A String", # The size of the created disk in gigabytes.
               "sourceImage": "A String", # The name or fully-qualified URL of a source image to use to create this disk. If you provide a name of the source image, Replica Pool will look for an image with that name in your project. If you are specifying an image provided by Compute Engine, you will need to provide the full URL with the correct project, such as:
                   # http://www.googleapis.com/compute/v1/projects/debian-cloud/ global/images/debian-wheezy-7-vYYYYMMDD
+              "diskType": "A String", # Name of the disk type resource describing which disk type to use to create the disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard'
             },
             "boot": True or False, # If true, indicates that this is the root persistent disk.
             "attachment": { # Specifies how to attach a disk to a Replica. # How the disk will be attached to the Replica.
@@ -467,6 +469,7 @@
                 "diskSizeGb": "A String", # The size of the created disk in gigabytes.
                 "sourceImage": "A String", # The name or fully-qualified URL of a source image to use to create this disk. If you provide a name of the source image, Replica Pool will look for an image with that name in your project. If you are specifying an image provided by Compute Engine, you will need to provide the full URL with the correct project, such as:
                     # http://www.googleapis.com/compute/v1/projects/debian-cloud/ global/images/debian-wheezy-7-vYYYYMMDD
+                "diskType": "A String", # Name of the disk type resource describing which disk type to use to create the disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard'
               },
               "boot": True or False, # If true, indicates that this is the root persistent disk.
               "attachment": { # Specifies how to attach a disk to a Replica. # How the disk will be attached to the Replica.
@@ -620,6 +623,7 @@
                     "diskSizeGb": "A String", # The size of the created disk in gigabytes.
                     "sourceImage": "A String", # The name or fully-qualified URL of a source image to use to create this disk. If you provide a name of the source image, Replica Pool will look for an image with that name in your project. If you are specifying an image provided by Compute Engine, you will need to provide the full URL with the correct project, such as:
                         # http://www.googleapis.com/compute/v1/projects/debian-cloud/ global/images/debian-wheezy-7-vYYYYMMDD
+                    "diskType": "A String", # Name of the disk type resource describing which disk type to use to create the disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard'
                   },
                   "boot": True or False, # If true, indicates that this is the root persistent disk.
                   "attachment": { # Specifies how to attach a disk to a Replica. # How the disk will be attached to the Replica.
@@ -786,6 +790,7 @@
                 "diskSizeGb": "A String", # The size of the created disk in gigabytes.
                 "sourceImage": "A String", # The name or fully-qualified URL of a source image to use to create this disk. If you provide a name of the source image, Replica Pool will look for an image with that name in your project. If you are specifying an image provided by Compute Engine, you will need to provide the full URL with the correct project, such as:
                     # http://www.googleapis.com/compute/v1/projects/debian-cloud/ global/images/debian-wheezy-7-vYYYYMMDD
+                "diskType": "A String", # Name of the disk type resource describing which disk type to use to create the disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard'
               },
               "boot": True or False, # If true, indicates that this is the root persistent disk.
               "attachment": { # Specifies how to attach a disk to a Replica. # How the disk will be attached to the Replica.
@@ -917,6 +922,7 @@
           "diskSizeGb": "A String", # The size of the created disk in gigabytes.
           "sourceImage": "A String", # The name or fully-qualified URL of a source image to use to create this disk. If you provide a name of the source image, Replica Pool will look for an image with that name in your project. If you are specifying an image provided by Compute Engine, you will need to provide the full URL with the correct project, such as:
               # http://www.googleapis.com/compute/v1/projects/debian-cloud/ global/images/debian-wheezy-7-vYYYYMMDD
+          "diskType": "A String", # Name of the disk type resource describing which disk type to use to create the disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard'
         },
         "boot": True or False, # If true, indicates that this is the root persistent disk.
         "attachment": { # Specifies how to attach a disk to a Replica. # How the disk will be attached to the Replica.
diff --git a/docs/dyn/reseller_v1.subscriptions.html b/docs/dyn/reseller_v1.subscriptions.html
index d9b420d..9aed40b 100644
--- a/docs/dyn/reseller_v1.subscriptions.html
+++ b/docs/dyn/reseller_v1.subscriptions.html
@@ -75,6 +75,9 @@
 <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="#activate">activate(customerId, subscriptionId)</a></code></p>
+<p class="firstline">Activates a subscription previously suspended by the reseller</p>
+<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">
@@ -101,8 +104,60 @@
 <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>
+<p class="toc_element">
+  <code><a href="#suspend">suspend(customerId, subscriptionId)</a></code></p>
+<p class="firstline">Suspends an active subscription</p>
 <h3>Method Details</h3>
 <div class="method">
+    <code class="details" id="activate">activate(customerId, subscriptionId)</code>
+  <pre>Activates a subscription previously suspended by the reseller
+
+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.
+      },
+      "transferInfo": { # Transfer related information for the subscription.
+        "transferabilityExpirationTime": "A String", # Time when transfer token or intent to transfer will expire.
+        "minimumTransferableSeats": 42,
+      },
+      "resourceUiUrl": "A String", # Ui url for subscription resource.
+      "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.
+        "licensedNumberOfSeats": 42, # Read only field containing the current number of licensed seats. Resellers can utilize this field to gather insights into usage for FLEXIBLE Google-Apps subscriptions and other secondary subscriptions (e.g. Google-Vault, Drive-storage).
+      },
+      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
+      "status": "A String", # Status of the subscription.
+      "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="changePlan">changePlan(customerId, subscriptionId, body)</code>
   <pre>Changes the plan of a subscription
 
@@ -119,6 +174,7 @@
       "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.
+      "licensedNumberOfSeats": 42, # Read only field containing the current number of licensed seats. Resellers can utilize this field to gather insights into usage for FLEXIBLE Google-Apps subscriptions and other secondary subscriptions (e.g. Google-Vault, Drive-storage).
     },
     "purchaseOrderId": "A String", # Purchase order id for your order tracking purposes.
   }
@@ -147,6 +203,7 @@
         "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.
+        "licensedNumberOfSeats": 42, # Read only field containing the current number of licensed seats. Resellers can utilize this field to gather insights into usage for FLEXIBLE Google-Apps subscriptions and other secondary subscriptions (e.g. Google-Vault, Drive-storage).
       },
       "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
       "status": "A String", # Status of the subscription.
@@ -203,6 +260,7 @@
         "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.
+        "licensedNumberOfSeats": 42, # Read only field containing the current number of licensed seats. Resellers can utilize this field to gather insights into usage for FLEXIBLE Google-Apps subscriptions and other secondary subscriptions (e.g. Google-Vault, Drive-storage).
       },
       "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
       "status": "A String", # Status of the subscription.
@@ -234,6 +292,7 @@
   "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.
+  "licensedNumberOfSeats": 42, # Read only field containing the current number of licensed seats. Resellers can utilize this field to gather insights into usage for FLEXIBLE Google-Apps subscriptions and other secondary subscriptions (e.g. Google-Vault, Drive-storage).
 }
 
 
@@ -260,6 +319,7 @@
         "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.
+        "licensedNumberOfSeats": 42, # Read only field containing the current number of licensed seats. Resellers can utilize this field to gather insights into usage for FLEXIBLE Google-Apps subscriptions and other secondary subscriptions (e.g. Google-Vault, Drive-storage).
       },
       "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
       "status": "A String", # Status of the subscription.
@@ -323,6 +383,7 @@
         "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.
+        "licensedNumberOfSeats": 42, # Read only field containing the current number of licensed seats. Resellers can utilize this field to gather insights into usage for FLEXIBLE Google-Apps subscriptions and other secondary subscriptions (e.g. Google-Vault, Drive-storage).
       },
       "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
       "status": "A String", # Status of the subscription.
@@ -369,6 +430,7 @@
       "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.
+      "licensedNumberOfSeats": 42, # Read only field containing the current number of licensed seats. Resellers can utilize this field to gather insights into usage for FLEXIBLE Google-Apps subscriptions and other secondary subscriptions (e.g. Google-Vault, Drive-storage).
     },
     "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
     "status": "A String", # Status of the subscription.
@@ -410,6 +472,7 @@
         "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.
+        "licensedNumberOfSeats": 42, # Read only field containing the current number of licensed seats. Resellers can utilize this field to gather insights into usage for FLEXIBLE Google-Apps subscriptions and other secondary subscriptions (e.g. Google-Vault, Drive-storage).
       },
       "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
       "status": "A String", # Status of the subscription.
@@ -465,6 +528,7 @@
             "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.
+            "licensedNumberOfSeats": 42, # Read only field containing the current number of licensed seats. Resellers can utilize this field to gather insights into usage for FLEXIBLE Google-Apps subscriptions and other secondary subscriptions (e.g. Google-Vault, Drive-storage).
           },
           "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
           "status": "A String", # Status of the subscription.
@@ -529,6 +593,56 @@
         "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.
+        "licensedNumberOfSeats": 42, # Read only field containing the current number of licensed seats. Resellers can utilize this field to gather insights into usage for FLEXIBLE Google-Apps subscriptions and other secondary subscriptions (e.g. Google-Vault, Drive-storage).
+      },
+      "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
+      "status": "A String", # Status of the subscription.
+      "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="suspend">suspend(customerId, subscriptionId)</code>
+  <pre>Suspends an active 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.
+      },
+      "transferInfo": { # Transfer related information for the subscription.
+        "transferabilityExpirationTime": "A String", # Time when transfer token or intent to transfer will expire.
+        "minimumTransferableSeats": 42,
+      },
+      "resourceUiUrl": "A String", # Ui url for subscription resource.
+      "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.
+        "licensedNumberOfSeats": 42, # Read only field containing the current number of licensed seats. Resellers can utilize this field to gather insights into usage for FLEXIBLE Google-Apps subscriptions and other secondary subscriptions (e.g. Google-Vault, Drive-storage).
       },
       "creationTime": "A String", # Creation time of this subscription in milliseconds since Unix epoch.
       "status": "A String", # Status of the subscription.
diff --git a/docs/dyn/resourceviews_v1beta2.html b/docs/dyn/resourceviews_v1beta2.html
new file mode 100644
index 0000000..09b07cd
--- /dev/null
+++ b/docs/dyn/resourceviews_v1beta2.html
@@ -0,0 +1,87 @@
+<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="resourceviews_v1beta2.html">Resource Views API</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="resourceviews_v1beta2.zoneOperations.html">zoneOperations()</a></code>
+</p>
+<p class="firstline">Returns the zoneOperations Resource.</p>
+
+<p class="toc_element">
+  <code><a href="resourceviews_v1beta2.zoneViews.html">zoneViews()</a></code>
+</p>
+<p class="firstline">Returns the zoneViews Resource.</p>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/resourceviews_v1beta2.zoneOperations.html b/docs/dyn/resourceviews_v1beta2.zoneOperations.html
new file mode 100644
index 0000000..7352c9b
--- /dev/null
+++ b/docs/dyn/resourceviews_v1beta2.zoneOperations.html
@@ -0,0 +1,225 @@
+<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="resourceviews_v1beta2.html">Resource Views API</a> . <a href="resourceviews_v1beta2.zoneOperations.html">zoneOperations</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#get">get(project, zone, operation)</a></code></p>
+<p class="firstline">Retrieves the specified zone-specific operation resource.</p>
+<p class="toc_element">
+  <code><a href="#list">list(project, zone, maxResults=None, pageToken=None, filter=None)</a></code></p>
+<p class="firstline">Retrieves the list of operation resources contained within the specified zone.</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(project, zone, operation)</code>
+  <pre>Retrieves the specified zone-specific operation resource.
+
+Args:
+  project: string, Name of the project scoping this request. (required)
+  zone: string, Name of the zone scoping this request. (required)
+  operation: string, Name of the operation resource to return. (required)
+
+Returns:
+  An object of the form:
+
+    { # An operation resource, used to manage asynchronous API requests.
+    "targetId": "A String", # [Output Only] Unique target ID which identifies a particular incarnation of the target.
+    "clientOperationId": "A String", # [Output only] An optional identifier specified by the client when the mutation was initiated. Must be unique for all operation resources in the project.
+    "creationTimestamp": "A String", # [Output Only] The time that this operation was requested, in RFC3339 text format.
+    "id": "A String", # [Output Only] Unique identifier for the resource, generated by the server.
+    "zone": "A String", # [Output Only] URL of the zone where the operation resides. Only available when performing per-zone operations.
+    "operationType": "A String", # [Output only] Type of the operation. Operations include insert, update, and delete.
+    "httpErrorMessage": "A String", # [Output only] If operation fails, the HTTP error message returned.
+    "progress": 42, # [Output only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the operation will be complete. This number should be monotonically increasing as the operation progresses.
+    "httpErrorStatusCode": 42, # [Output only] If operation fails, the HTTP error status code returned.
+    "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the operation.
+    "status": "A String", # [Output Only] Status of the operation.
+    "insertTime": "A String", # [Output Only] The time that this operation was requested, in RFC3339 text format.
+    "warnings": [ # [Output Only] If there are issues with this operation, a warning is returned.
+      {
+        "message": "A String", # [Output only] Optional human-readable details for this warning.
+        "code": "A String", # [Output only] The warning type identifier for this warning.
+        "data": [ # [Output only] Metadata for this warning in key:value format.
+          {
+            "value": "A String", # [Output Only] Metadata value for this warning.
+            "key": "A String", # [Output Only] Metadata key for this warning.
+          },
+        ],
+      },
+    ],
+    "user": "A String", # [Output Only] User who requested the operation, for example: user@example.com.
+    "startTime": "A String", # [Output Only] The time that this operation was started by the server, in RFC3339 text format.
+    "kind": "resourceviews#operation", # [Output only] Type of the resource.
+    "name": "A String", # [Output Only] Name of the resource.
+    "region": "A String", # [Output Only] URL of the region where the operation resides. Only available when performing regional operations.
+    "error": { # [Output Only] If errors occurred during processing of this operation, this field will be populated.
+      "errors": [ # [Output Only] The array of errors encountered while processing this operation.
+        {
+          "message": "A String", # [Output Only] An optional, human-readable error message.
+          "code": "A String", # [Output Only] The error type identifier for this error.
+          "location": "A String", # [Output Only] Indicates the field in the request which caused the error. This property is optional.
+        },
+      ],
+    },
+    "endTime": "A String", # [Output Only] The time that this operation was completed, in RFC3339 text format.
+    "selfLink": "A String", # [Output Only] Server-defined fully-qualified URL for this resource.
+    "targetLink": "A String", # [Output only] URL of the resource the operation is mutating.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(project, zone, maxResults=None, pageToken=None, filter=None)</code>
+  <pre>Retrieves the list of operation resources contained within the specified zone.
+
+Args:
+  project: string, Name of the project scoping this request. (required)
+  zone: string, Name of the zone scoping this request. (required)
+  maxResults: integer, Optional. Maximum count of results to be returned. Maximum value is 500 and default value is 500.
+  pageToken: string, Optional. Tag returned by a previous list request truncated by maxResults. Used to continue a previous list request.
+  filter: string, Optional. Filter expression for filtering listed resources.
+
+Returns:
+  An object of the form:
+
+    {
+    "nextPageToken": "A String", # A token used to continue a truncated list request (output only).
+    "items": [ # The operation resources.
+      { # An operation resource, used to manage asynchronous API requests.
+        "targetId": "A String", # [Output Only] Unique target ID which identifies a particular incarnation of the target.
+        "clientOperationId": "A String", # [Output only] An optional identifier specified by the client when the mutation was initiated. Must be unique for all operation resources in the project.
+        "creationTimestamp": "A String", # [Output Only] The time that this operation was requested, in RFC3339 text format.
+        "id": "A String", # [Output Only] Unique identifier for the resource, generated by the server.
+        "zone": "A String", # [Output Only] URL of the zone where the operation resides. Only available when performing per-zone operations.
+        "operationType": "A String", # [Output only] Type of the operation. Operations include insert, update, and delete.
+        "httpErrorMessage": "A String", # [Output only] If operation fails, the HTTP error message returned.
+        "progress": 42, # [Output only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the operation will be complete. This number should be monotonically increasing as the operation progresses.
+        "httpErrorStatusCode": 42, # [Output only] If operation fails, the HTTP error status code returned.
+        "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the operation.
+        "status": "A String", # [Output Only] Status of the operation.
+        "insertTime": "A String", # [Output Only] The time that this operation was requested, in RFC3339 text format.
+        "warnings": [ # [Output Only] If there are issues with this operation, a warning is returned.
+          {
+            "message": "A String", # [Output only] Optional human-readable details for this warning.
+            "code": "A String", # [Output only] The warning type identifier for this warning.
+            "data": [ # [Output only] Metadata for this warning in key:value format.
+              {
+                "value": "A String", # [Output Only] Metadata value for this warning.
+                "key": "A String", # [Output Only] Metadata key for this warning.
+              },
+            ],
+          },
+        ],
+        "user": "A String", # [Output Only] User who requested the operation, for example: user@example.com.
+        "startTime": "A String", # [Output Only] The time that this operation was started by the server, in RFC3339 text format.
+        "kind": "resourceviews#operation", # [Output only] Type of the resource.
+        "name": "A String", # [Output Only] Name of the resource.
+        "region": "A String", # [Output Only] URL of the region where the operation resides. Only available when performing regional operations.
+        "error": { # [Output Only] If errors occurred during processing of this operation, this field will be populated.
+          "errors": [ # [Output Only] The array of errors encountered while processing this operation.
+            {
+              "message": "A String", # [Output Only] An optional, human-readable error message.
+              "code": "A String", # [Output Only] The error type identifier for this error.
+              "location": "A String", # [Output Only] Indicates the field in the request which caused the error. This property is optional.
+            },
+          ],
+        },
+        "endTime": "A String", # [Output Only] The time that this operation was completed, in RFC3339 text format.
+        "selfLink": "A String", # [Output Only] Server-defined fully-qualified URL for this resource.
+        "targetLink": "A String", # [Output only] URL of the resource the operation is mutating.
+      },
+    ],
+    "kind": "resourceviews#operationList", # Type of resource.
+    "id": "A String", # Unique identifier for the resource; defined by the server (output only).
+    "selfLink": "A String", # Server defined URL for this resource (output only).
+  }</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/resourceviews_v1beta2.zoneViews.html b/docs/dyn/resourceviews_v1beta2.zoneViews.html
new file mode 100644
index 0000000..cd715ba
--- /dev/null
+++ b/docs/dyn/resourceviews_v1beta2.zoneViews.html
@@ -0,0 +1,637 @@
+<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="resourceviews_v1beta2.html">Resource Views API</a> . <a href="resourceviews_v1beta2.zoneViews.html">zoneViews</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#addResources">addResources(project, zone, resourceView, body)</a></code></p>
+<p class="firstline">Add resources to the view.</p>
+<p class="toc_element">
+  <code><a href="#delete">delete(project, zone, resourceView)</a></code></p>
+<p class="firstline">Delete a resource view.</p>
+<p class="toc_element">
+  <code><a href="#get">get(project, zone, resourceView)</a></code></p>
+<p class="firstline">Get the information of a zonal resource view.</p>
+<p class="toc_element">
+  <code><a href="#getService">getService(project, zone, resourceView, resourceName=None)</a></code></p>
+<p class="firstline">Get the service information of a resource view or a resource.</p>
+<p class="toc_element">
+  <code><a href="#insert">insert(project, zone, body)</a></code></p>
+<p class="firstline">Create a resource view.</p>
+<p class="toc_element">
+  <code><a href="#list">list(project, zone, pageToken=None, maxResults=None)</a></code></p>
+<p class="firstline">List resource views.</p>
+<p class="toc_element">
+  <code><a href="#listResources">listResources(project, zone, resourceView, listState=None, format=None, maxResults=None, pageToken=None, serviceName=None)</a></code></p>
+<p class="firstline">List the resources of the resource view.</p>
+<p class="toc_element">
+  <code><a href="#listResources_next">listResources_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="#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="#removeResources">removeResources(project, zone, resourceView, body)</a></code></p>
+<p class="firstline">Remove resources from the view.</p>
+<p class="toc_element">
+  <code><a href="#setService">setService(project, zone, resourceView, body)</a></code></p>
+<p class="firstline">Update the service information of a resource view or a resource.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="addResources">addResources(project, zone, resourceView, body)</code>
+  <pre>Add resources to the view.
+
+Args:
+  project: string, The project name of the resource view. (required)
+  zone: string, The zone name of the resource view. (required)
+  resourceView: string, The name of the resource view. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # The request to add resources to the resource view.
+    "resources": [ # The list of resources to be added.
+      "A String",
+    ],
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # An operation resource, used to manage asynchronous API requests.
+    "targetId": "A String", # [Output Only] Unique target ID which identifies a particular incarnation of the target.
+    "clientOperationId": "A String", # [Output only] An optional identifier specified by the client when the mutation was initiated. Must be unique for all operation resources in the project.
+    "creationTimestamp": "A String", # [Output Only] The time that this operation was requested, in RFC3339 text format.
+    "id": "A String", # [Output Only] Unique identifier for the resource, generated by the server.
+    "zone": "A String", # [Output Only] URL of the zone where the operation resides. Only available when performing per-zone operations.
+    "operationType": "A String", # [Output only] Type of the operation. Operations include insert, update, and delete.
+    "httpErrorMessage": "A String", # [Output only] If operation fails, the HTTP error message returned.
+    "progress": 42, # [Output only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the operation will be complete. This number should be monotonically increasing as the operation progresses.
+    "httpErrorStatusCode": 42, # [Output only] If operation fails, the HTTP error status code returned.
+    "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the operation.
+    "status": "A String", # [Output Only] Status of the operation.
+    "insertTime": "A String", # [Output Only] The time that this operation was requested, in RFC3339 text format.
+    "warnings": [ # [Output Only] If there are issues with this operation, a warning is returned.
+      {
+        "message": "A String", # [Output only] Optional human-readable details for this warning.
+        "code": "A String", # [Output only] The warning type identifier for this warning.
+        "data": [ # [Output only] Metadata for this warning in key:value format.
+          {
+            "value": "A String", # [Output Only] Metadata value for this warning.
+            "key": "A String", # [Output Only] Metadata key for this warning.
+          },
+        ],
+      },
+    ],
+    "user": "A String", # [Output Only] User who requested the operation, for example: user@example.com.
+    "startTime": "A String", # [Output Only] The time that this operation was started by the server, in RFC3339 text format.
+    "kind": "resourceviews#operation", # [Output only] Type of the resource.
+    "name": "A String", # [Output Only] Name of the resource.
+    "region": "A String", # [Output Only] URL of the region where the operation resides. Only available when performing regional operations.
+    "error": { # [Output Only] If errors occurred during processing of this operation, this field will be populated.
+      "errors": [ # [Output Only] The array of errors encountered while processing this operation.
+        {
+          "message": "A String", # [Output Only] An optional, human-readable error message.
+          "code": "A String", # [Output Only] The error type identifier for this error.
+          "location": "A String", # [Output Only] Indicates the field in the request which caused the error. This property is optional.
+        },
+      ],
+    },
+    "endTime": "A String", # [Output Only] The time that this operation was completed, in RFC3339 text format.
+    "selfLink": "A String", # [Output Only] Server-defined fully-qualified URL for this resource.
+    "targetLink": "A String", # [Output only] URL of the resource the operation is mutating.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="delete">delete(project, zone, resourceView)</code>
+  <pre>Delete a resource view.
+
+Args:
+  project: string, The project name of the resource view. (required)
+  zone: string, The zone name of the resource view. (required)
+  resourceView: string, The name of the resource view. (required)
+
+Returns:
+  An object of the form:
+
+    { # An operation resource, used to manage asynchronous API requests.
+    "targetId": "A String", # [Output Only] Unique target ID which identifies a particular incarnation of the target.
+    "clientOperationId": "A String", # [Output only] An optional identifier specified by the client when the mutation was initiated. Must be unique for all operation resources in the project.
+    "creationTimestamp": "A String", # [Output Only] The time that this operation was requested, in RFC3339 text format.
+    "id": "A String", # [Output Only] Unique identifier for the resource, generated by the server.
+    "zone": "A String", # [Output Only] URL of the zone where the operation resides. Only available when performing per-zone operations.
+    "operationType": "A String", # [Output only] Type of the operation. Operations include insert, update, and delete.
+    "httpErrorMessage": "A String", # [Output only] If operation fails, the HTTP error message returned.
+    "progress": 42, # [Output only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the operation will be complete. This number should be monotonically increasing as the operation progresses.
+    "httpErrorStatusCode": 42, # [Output only] If operation fails, the HTTP error status code returned.
+    "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the operation.
+    "status": "A String", # [Output Only] Status of the operation.
+    "insertTime": "A String", # [Output Only] The time that this operation was requested, in RFC3339 text format.
+    "warnings": [ # [Output Only] If there are issues with this operation, a warning is returned.
+      {
+        "message": "A String", # [Output only] Optional human-readable details for this warning.
+        "code": "A String", # [Output only] The warning type identifier for this warning.
+        "data": [ # [Output only] Metadata for this warning in key:value format.
+          {
+            "value": "A String", # [Output Only] Metadata value for this warning.
+            "key": "A String", # [Output Only] Metadata key for this warning.
+          },
+        ],
+      },
+    ],
+    "user": "A String", # [Output Only] User who requested the operation, for example: user@example.com.
+    "startTime": "A String", # [Output Only] The time that this operation was started by the server, in RFC3339 text format.
+    "kind": "resourceviews#operation", # [Output only] Type of the resource.
+    "name": "A String", # [Output Only] Name of the resource.
+    "region": "A String", # [Output Only] URL of the region where the operation resides. Only available when performing regional operations.
+    "error": { # [Output Only] If errors occurred during processing of this operation, this field will be populated.
+      "errors": [ # [Output Only] The array of errors encountered while processing this operation.
+        {
+          "message": "A String", # [Output Only] An optional, human-readable error message.
+          "code": "A String", # [Output Only] The error type identifier for this error.
+          "location": "A String", # [Output Only] Indicates the field in the request which caused the error. This property is optional.
+        },
+      ],
+    },
+    "endTime": "A String", # [Output Only] The time that this operation was completed, in RFC3339 text format.
+    "selfLink": "A String", # [Output Only] Server-defined fully-qualified URL for this resource.
+    "targetLink": "A String", # [Output only] URL of the resource the operation is mutating.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(project, zone, resourceView)</code>
+  <pre>Get the information of a zonal resource view.
+
+Args:
+  project: string, The project name of the resource view. (required)
+  zone: string, The zone name of the resource view. (required)
+  resourceView: string, The name of the resource view. (required)
+
+Returns:
+  An object of the form:
+
+    { # The resource view object.
+      "size": 42, # The total number of resources in the resource view.
+      "kind": "resourceviews#resourceView", # Type of the resource.
+      "description": "A String", # The detailed description of the resource view.
+      "labels": [ # The labels for events.
+        { # The Label to be applied to the resource views.
+          "value": "A String", # Value of the label.
+          "key": "A String", # Key of the label.
+        },
+      ],
+      "network": "A String", # The URL of a Compute Engine network to which the resources in the view belong.
+      "selfLink": "A String", # [Output Only] A self-link to the resource view.
+      "fingerprint": "A String", # The fingerprint of the service endpoint information.
+      "endpoints": [ # Services endpoint information.
+        { # The service endpoint that may be started in a VM.
+          "name": "A String", # The name of the service endpoint.
+          "port": 42, # The port of the service endpoint.
+        },
+      ],
+      "creationTimestamp": "A String", # The creation time of the resource view.
+      "id": "A String", # [Output Only] The ID of the resource view.
+      "resources": [ # A list of all resources in the resource view.
+        "A String",
+      ],
+      "name": "A String", # The name of the resource view.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="getService">getService(project, zone, resourceView, resourceName=None)</code>
+  <pre>Get the service information of a resource view or a resource.
+
+Args:
+  project: string, The project name of the resource view. (required)
+  zone: string, The zone name of the resource view. (required)
+  resourceView: string, The name of the resource view. (required)
+  resourceName: string, The name of the resource if user wants to get the service information of the resource.
+
+Returns:
+  An object of the form:
+
+    {
+    "endpoints": [ # The service information.
+      { # The service endpoint that may be started in a VM.
+        "name": "A String", # The name of the service endpoint.
+        "port": 42, # The port of the service endpoint.
+      },
+    ],
+    "fingerprint": "A String", # The fingerprint of the service information.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="insert">insert(project, zone, body)</code>
+  <pre>Create a resource view.
+
+Args:
+  project: string, The project name of the resource view. (required)
+  zone: string, The zone name of the resource view. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # The resource view object.
+    "size": 42, # The total number of resources in the resource view.
+    "kind": "resourceviews#resourceView", # Type of the resource.
+    "description": "A String", # The detailed description of the resource view.
+    "labels": [ # The labels for events.
+      { # The Label to be applied to the resource views.
+        "value": "A String", # Value of the label.
+        "key": "A String", # Key of the label.
+      },
+    ],
+    "network": "A String", # The URL of a Compute Engine network to which the resources in the view belong.
+    "selfLink": "A String", # [Output Only] A self-link to the resource view.
+    "fingerprint": "A String", # The fingerprint of the service endpoint information.
+    "endpoints": [ # Services endpoint information.
+      { # The service endpoint that may be started in a VM.
+        "name": "A String", # The name of the service endpoint.
+        "port": 42, # The port of the service endpoint.
+      },
+    ],
+    "creationTimestamp": "A String", # The creation time of the resource view.
+    "id": "A String", # [Output Only] The ID of the resource view.
+    "resources": [ # A list of all resources in the resource view.
+      "A String",
+    ],
+    "name": "A String", # The name of the resource view.
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # An operation resource, used to manage asynchronous API requests.
+    "targetId": "A String", # [Output Only] Unique target ID which identifies a particular incarnation of the target.
+    "clientOperationId": "A String", # [Output only] An optional identifier specified by the client when the mutation was initiated. Must be unique for all operation resources in the project.
+    "creationTimestamp": "A String", # [Output Only] The time that this operation was requested, in RFC3339 text format.
+    "id": "A String", # [Output Only] Unique identifier for the resource, generated by the server.
+    "zone": "A String", # [Output Only] URL of the zone where the operation resides. Only available when performing per-zone operations.
+    "operationType": "A String", # [Output only] Type of the operation. Operations include insert, update, and delete.
+    "httpErrorMessage": "A String", # [Output only] If operation fails, the HTTP error message returned.
+    "progress": 42, # [Output only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the operation will be complete. This number should be monotonically increasing as the operation progresses.
+    "httpErrorStatusCode": 42, # [Output only] If operation fails, the HTTP error status code returned.
+    "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the operation.
+    "status": "A String", # [Output Only] Status of the operation.
+    "insertTime": "A String", # [Output Only] The time that this operation was requested, in RFC3339 text format.
+    "warnings": [ # [Output Only] If there are issues with this operation, a warning is returned.
+      {
+        "message": "A String", # [Output only] Optional human-readable details for this warning.
+        "code": "A String", # [Output only] The warning type identifier for this warning.
+        "data": [ # [Output only] Metadata for this warning in key:value format.
+          {
+            "value": "A String", # [Output Only] Metadata value for this warning.
+            "key": "A String", # [Output Only] Metadata key for this warning.
+          },
+        ],
+      },
+    ],
+    "user": "A String", # [Output Only] User who requested the operation, for example: user@example.com.
+    "startTime": "A String", # [Output Only] The time that this operation was started by the server, in RFC3339 text format.
+    "kind": "resourceviews#operation", # [Output only] Type of the resource.
+    "name": "A String", # [Output Only] Name of the resource.
+    "region": "A String", # [Output Only] URL of the region where the operation resides. Only available when performing regional operations.
+    "error": { # [Output Only] If errors occurred during processing of this operation, this field will be populated.
+      "errors": [ # [Output Only] The array of errors encountered while processing this operation.
+        {
+          "message": "A String", # [Output Only] An optional, human-readable error message.
+          "code": "A String", # [Output Only] The error type identifier for this error.
+          "location": "A String", # [Output Only] Indicates the field in the request which caused the error. This property is optional.
+        },
+      ],
+    },
+    "endTime": "A String", # [Output Only] The time that this operation was completed, in RFC3339 text format.
+    "selfLink": "A String", # [Output Only] Server-defined fully-qualified URL for this resource.
+    "targetLink": "A String", # [Output only] URL of the resource the operation is mutating.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(project, zone, pageToken=None, maxResults=None)</code>
+  <pre>List resource views.
+
+Args:
+  project: string, The project name of the resource view. (required)
+  zone: string, The zone name of the resource view. (required)
+  pageToken: string, Specifies a nextPageToken returned by a previous list request. This token can be used to request the next page of results from a previous list request.
+  maxResults: integer, Maximum count of results to be returned. Acceptable values are 0 to 5000, inclusive. (Default: 5000)
+
+Returns:
+  An object of the form:
+
+    { # The response to a list request.
+    "nextPageToken": "A String", # A token used for pagination.
+    "items": [ # The result that contains all resource views that meet the criteria.
+      { # The resource view object.
+          "size": 42, # The total number of resources in the resource view.
+          "kind": "resourceviews#resourceView", # Type of the resource.
+          "description": "A String", # The detailed description of the resource view.
+          "labels": [ # The labels for events.
+            { # The Label to be applied to the resource views.
+              "value": "A String", # Value of the label.
+              "key": "A String", # Key of the label.
+            },
+          ],
+          "network": "A String", # The URL of a Compute Engine network to which the resources in the view belong.
+          "selfLink": "A String", # [Output Only] A self-link to the resource view.
+          "fingerprint": "A String", # The fingerprint of the service endpoint information.
+          "endpoints": [ # Services endpoint information.
+            { # The service endpoint that may be started in a VM.
+              "name": "A String", # The name of the service endpoint.
+              "port": 42, # The port of the service endpoint.
+            },
+          ],
+          "creationTimestamp": "A String", # The creation time of the resource view.
+          "id": "A String", # [Output Only] The ID of the resource view.
+          "resources": [ # A list of all resources in the resource view.
+            "A String",
+          ],
+          "name": "A String", # The name of the resource view.
+        },
+    ],
+    "kind": "resourceviews#zoneViewsList", # Type of resource.
+    "selfLink": "A String", # Server defined URL for this resource (output only).
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="listResources">listResources(project, zone, resourceView, listState=None, format=None, maxResults=None, pageToken=None, serviceName=None)</code>
+  <pre>List the resources of the resource view.
+
+Args:
+  project: string, The project name of the resource view. (required)
+  zone: string, The zone name of the resource view. (required)
+  resourceView: string, The name of the resource view. (required)
+  listState: string, The state of the instance to list. By default, it lists all instances.
+    Allowed values
+      ALL - 
+      RUNNING - 
+  format: string, The requested format of the return value. It can be URL or URL_PORT. A JSON object will be included in the response based on the format. The default format is NONE, which results in no JSON in the response.
+    Allowed values
+      NONE - 
+      URL - 
+      URL_PORT - 
+  maxResults: integer, Maximum count of results to be returned. Acceptable values are 0 to 5000, inclusive. (Default: 5000)
+  pageToken: string, Specifies a nextPageToken returned by a previous list request. This token can be used to request the next page of results from a previous list request.
+  serviceName: string, The service name to return in the response. It is optional and if it is not set, all the service end points will be returned.
+
+Returns:
+  An object of the form:
+
+    { # The response to a list resource request.
+    "nextPageToken": "A String", # A token used for pagination.
+    "items": [ # The formatted JSON that is requested by the user.
+      { # The list response item that contains the resource and end points information.
+        "endpoints": { # The list of service end points on the resource.
+          "a_key": [ # The name of the service end point.
+            42,
+          ],
+        },
+        "resource": "A String", # The full URL of the resource.
+      },
+    ],
+    "network": "A String", # The URL of a Compute Engine network to which the resources in the view belong.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="listResources_next">listResources_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="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="removeResources">removeResources(project, zone, resourceView, body)</code>
+  <pre>Remove resources from the view.
+
+Args:
+  project: string, The project name of the resource view. (required)
+  zone: string, The zone name of the resource view. (required)
+  resourceView: string, The name of the resource view. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # The request to remove resources from the resource view.
+    "resources": [ # The list of resources to be removed.
+      "A String",
+    ],
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # An operation resource, used to manage asynchronous API requests.
+    "targetId": "A String", # [Output Only] Unique target ID which identifies a particular incarnation of the target.
+    "clientOperationId": "A String", # [Output only] An optional identifier specified by the client when the mutation was initiated. Must be unique for all operation resources in the project.
+    "creationTimestamp": "A String", # [Output Only] The time that this operation was requested, in RFC3339 text format.
+    "id": "A String", # [Output Only] Unique identifier for the resource, generated by the server.
+    "zone": "A String", # [Output Only] URL of the zone where the operation resides. Only available when performing per-zone operations.
+    "operationType": "A String", # [Output only] Type of the operation. Operations include insert, update, and delete.
+    "httpErrorMessage": "A String", # [Output only] If operation fails, the HTTP error message returned.
+    "progress": 42, # [Output only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the operation will be complete. This number should be monotonically increasing as the operation progresses.
+    "httpErrorStatusCode": 42, # [Output only] If operation fails, the HTTP error status code returned.
+    "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the operation.
+    "status": "A String", # [Output Only] Status of the operation.
+    "insertTime": "A String", # [Output Only] The time that this operation was requested, in RFC3339 text format.
+    "warnings": [ # [Output Only] If there are issues with this operation, a warning is returned.
+      {
+        "message": "A String", # [Output only] Optional human-readable details for this warning.
+        "code": "A String", # [Output only] The warning type identifier for this warning.
+        "data": [ # [Output only] Metadata for this warning in key:value format.
+          {
+            "value": "A String", # [Output Only] Metadata value for this warning.
+            "key": "A String", # [Output Only] Metadata key for this warning.
+          },
+        ],
+      },
+    ],
+    "user": "A String", # [Output Only] User who requested the operation, for example: user@example.com.
+    "startTime": "A String", # [Output Only] The time that this operation was started by the server, in RFC3339 text format.
+    "kind": "resourceviews#operation", # [Output only] Type of the resource.
+    "name": "A String", # [Output Only] Name of the resource.
+    "region": "A String", # [Output Only] URL of the region where the operation resides. Only available when performing regional operations.
+    "error": { # [Output Only] If errors occurred during processing of this operation, this field will be populated.
+      "errors": [ # [Output Only] The array of errors encountered while processing this operation.
+        {
+          "message": "A String", # [Output Only] An optional, human-readable error message.
+          "code": "A String", # [Output Only] The error type identifier for this error.
+          "location": "A String", # [Output Only] Indicates the field in the request which caused the error. This property is optional.
+        },
+      ],
+    },
+    "endTime": "A String", # [Output Only] The time that this operation was completed, in RFC3339 text format.
+    "selfLink": "A String", # [Output Only] Server-defined fully-qualified URL for this resource.
+    "targetLink": "A String", # [Output only] URL of the resource the operation is mutating.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="setService">setService(project, zone, resourceView, body)</code>
+  <pre>Update the service information of a resource view or a resource.
+
+Args:
+  project: string, The project name of the resource view. (required)
+  zone: string, The zone name of the resource view. (required)
+  resourceView: string, The name of the resource view. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{
+    "resourceName": "A String", # The name of the resource if user wants to update the service information of the resource.
+    "endpoints": [ # The service information to be updated.
+      { # The service endpoint that may be started in a VM.
+        "name": "A String", # The name of the service endpoint.
+        "port": 42, # The port of the service endpoint.
+      },
+    ],
+    "fingerprint": "A String", # Fingerprint of the service information; a hash of the contents. This field is used for optimistic locking when updating the service entries.
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # An operation resource, used to manage asynchronous API requests.
+    "targetId": "A String", # [Output Only] Unique target ID which identifies a particular incarnation of the target.
+    "clientOperationId": "A String", # [Output only] An optional identifier specified by the client when the mutation was initiated. Must be unique for all operation resources in the project.
+    "creationTimestamp": "A String", # [Output Only] The time that this operation was requested, in RFC3339 text format.
+    "id": "A String", # [Output Only] Unique identifier for the resource, generated by the server.
+    "zone": "A String", # [Output Only] URL of the zone where the operation resides. Only available when performing per-zone operations.
+    "operationType": "A String", # [Output only] Type of the operation. Operations include insert, update, and delete.
+    "httpErrorMessage": "A String", # [Output only] If operation fails, the HTTP error message returned.
+    "progress": 42, # [Output only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess at when the operation will be complete. This number should be monotonically increasing as the operation progresses.
+    "httpErrorStatusCode": 42, # [Output only] If operation fails, the HTTP error status code returned.
+    "statusMessage": "A String", # [Output Only] An optional textual description of the current status of the operation.
+    "status": "A String", # [Output Only] Status of the operation.
+    "insertTime": "A String", # [Output Only] The time that this operation was requested, in RFC3339 text format.
+    "warnings": [ # [Output Only] If there are issues with this operation, a warning is returned.
+      {
+        "message": "A String", # [Output only] Optional human-readable details for this warning.
+        "code": "A String", # [Output only] The warning type identifier for this warning.
+        "data": [ # [Output only] Metadata for this warning in key:value format.
+          {
+            "value": "A String", # [Output Only] Metadata value for this warning.
+            "key": "A String", # [Output Only] Metadata key for this warning.
+          },
+        ],
+      },
+    ],
+    "user": "A String", # [Output Only] User who requested the operation, for example: user@example.com.
+    "startTime": "A String", # [Output Only] The time that this operation was started by the server, in RFC3339 text format.
+    "kind": "resourceviews#operation", # [Output only] Type of the resource.
+    "name": "A String", # [Output Only] Name of the resource.
+    "region": "A String", # [Output Only] URL of the region where the operation resides. Only available when performing regional operations.
+    "error": { # [Output Only] If errors occurred during processing of this operation, this field will be populated.
+      "errors": [ # [Output Only] The array of errors encountered while processing this operation.
+        {
+          "message": "A String", # [Output Only] An optional, human-readable error message.
+          "code": "A String", # [Output Only] The error type identifier for this error.
+          "location": "A String", # [Output Only] Indicates the field in the request which caused the error. This property is optional.
+        },
+      ],
+    },
+    "endTime": "A String", # [Output Only] The time that this operation was completed, in RFC3339 text format.
+    "selfLink": "A String", # [Output Only] Server-defined fully-qualified URL for this resource.
+    "targetLink": "A String", # [Output only] URL of the resource the operation is mutating.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/sqladmin_v1beta3.backupRuns.html b/docs/dyn/sqladmin_v1beta3.backupRuns.html
index 19f1276..093479f 100644
--- a/docs/dyn/sqladmin_v1beta3.backupRuns.html
+++ b/docs/dyn/sqladmin_v1beta3.backupRuns.html
@@ -76,17 +76,17 @@
 <h2>Instance Methods</h2>
 <p class="toc_element">
   <code><a href="#get">get(project, instance, backupConfiguration, dueTime)</a></code></p>
-<p class="firstline">Retrieves a resource containing information about a backup run.</p>
+<p class="firstline">Retrieves information about a specified backup run for a Cloud SQL instance.</p>
 <p class="toc_element">
   <code><a href="#list">list(project, instance, backupConfiguration, maxResults=None, pageToken=None)</a></code></p>
-<p class="firstline">Lists all backup runs associated with a given instance and configuration in the reverse chronological order of the enqueued time.</p>
+<p class="firstline">Lists all backup runs associated with a Cloud SQL instance.</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(project, instance, backupConfiguration, dueTime)</code>
-  <pre>Retrieves a resource containing information about a backup run.
+  <pre>Retrieves information about a specified backup run for a Cloud SQL instance.
 
 Args:
   project: string, Project ID of the project that contains the instance. (required)
@@ -115,7 +115,7 @@
 
 <div class="method">
     <code class="details" id="list">list(project, instance, backupConfiguration, maxResults=None, pageToken=None)</code>
-  <pre>Lists all backup runs associated with a given instance and configuration in the reverse chronological order of the enqueued time.
+  <pre>Lists all backup runs associated with a Cloud SQL instance.
 
 Args:
   project: string, Project ID of the project that contains the instance. (required)
diff --git a/docs/dyn/sqladmin_v1beta3.flags.html b/docs/dyn/sqladmin_v1beta3.flags.html
index fdaedc4..a70bfad 100644
--- a/docs/dyn/sqladmin_v1beta3.flags.html
+++ b/docs/dyn/sqladmin_v1beta3.flags.html
@@ -76,11 +76,11 @@
 <h2>Instance Methods</h2>
 <p class="toc_element">
   <code><a href="#list">list()</a></code></p>
-<p class="firstline">List all available database flags for Google Cloud SQL instances.</p>
+<p class="firstline">Lists all database flags that can be set for Google Cloud SQL instances.</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="list">list()</code>
-  <pre>List all available database flags for Google Cloud SQL instances.
+  <pre>Lists all database flags that can be set for Google Cloud SQL instances.
 
 Args:
 
diff --git a/docs/dyn/sqladmin_v1beta3.instances.html b/docs/dyn/sqladmin_v1beta3.instances.html
index 90bcb6e..b69db8f 100644
--- a/docs/dyn/sqladmin_v1beta3.instances.html
+++ b/docs/dyn/sqladmin_v1beta3.instances.html
@@ -76,7 +76,7 @@
 <h2>Instance Methods</h2>
 <p class="toc_element">
   <code><a href="#clone">clone(project, body)</a></code></p>
-<p class="firstline">Creates a Cloud SQL instance as a clone of the source instance.</p>
+<p class="firstline">Creates a Cloud SQL instance as a clone of a source instance.</p>
 <p class="toc_element">
   <code><a href="#delete">delete(project, instance)</a></code></p>
 <p class="firstline">Deletes a Cloud SQL instance.</p>
@@ -85,25 +85,28 @@
 <p class="firstline">Exports data from a Cloud SQL instance to a Google Cloud Storage bucket as a MySQL dump file.</p>
 <p class="toc_element">
   <code><a href="#get">get(project, instance)</a></code></p>
-<p class="firstline">Retrieves a resource containing information about a Cloud SQL instance.</p>
+<p class="firstline">Retrieves information about a Cloud SQL instance.</p>
 <p class="toc_element">
   <code><a href="#import_">import_(project, instance, body)</a></code></p>
-<p class="firstline">Imports data into a Cloud SQL instance from a MySQL dump file in Google Cloud Storage.</p>
+<p class="firstline">Imports data into a Cloud SQL instance from a MySQL dump file stored in a Google Cloud Storage bucket.</p>
 <p class="toc_element">
   <code><a href="#insert">insert(project, body)</a></code></p>
 <p class="firstline">Creates a new Cloud SQL instance.</p>
 <p class="toc_element">
   <code><a href="#list">list(project, pageToken=None, maxResults=None)</a></code></p>
-<p class="firstline">Lists instances under a given project in the alphabetical order of the instance name.</p>
+<p class="firstline">Lists instances for a given project, in alphabetical order by instance name.</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(project, instance, body)</a></code></p>
-<p class="firstline">Updates settings of a Cloud SQL instance. Caution: This is not a partial update, so you must include values for all the settings that you want to retain. For partial updates, use patch.. This method supports patch semantics.</p>
+<p class="firstline">Updates the settings of a Cloud SQL instance. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#promoteReplica">promoteReplica(project, instance)</a></code></p>
+<p class="firstline">Promotes the read replica instance to be a stand-alone Cloud SQL instance.</p>
 <p class="toc_element">
   <code><a href="#resetSslConfig">resetSslConfig(project, instance)</a></code></p>
-<p class="firstline">Deletes all client certificates and generates a new server SSL certificate for the instance. The changes will not take effect until the instance is restarted. Existing instances without a server certificate will need to call this once to set a server certificate.</p>
+<p class="firstline">Deletes all client certificates and generates a new server SSL certificate for a Cloud SQL instance.</p>
 <p class="toc_element">
   <code><a href="#restart">restart(project, instance)</a></code></p>
 <p class="firstline">Restarts a Cloud SQL instance.</p>
@@ -112,14 +115,14 @@
 <p class="firstline">Restores a backup of a Cloud SQL instance.</p>
 <p class="toc_element">
   <code><a href="#setRootPassword">setRootPassword(project, instance, body)</a></code></p>
-<p class="firstline">Sets the password for the root user.</p>
+<p class="firstline">Sets the password for the root user of the specified Cloud SQL instance.</p>
 <p class="toc_element">
   <code><a href="#update">update(project, instance, body)</a></code></p>
-<p class="firstline">Updates settings of a Cloud SQL instance. Caution: This is not a partial update, so you must include values for all the settings that you want to retain. For partial updates, use patch.</p>
+<p class="firstline">Updates the settings of a Cloud SQL instance.</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="clone">clone(project, body)</code>
-  <pre>Creates a Cloud SQL instance as a clone of the source instance.
+  <pre>Creates a Cloud SQL instance as a clone of a source instance.
 
 Args:
   project: string, Project ID of the source as well as the clone Cloud SQL instance. (required)
@@ -129,7 +132,7 @@
 { # Database instance clone request.
     "cloneContext": { # Database instance clone context. # Contains details about the clone operation.
       "sourceInstanceName": "A String", # Name of the Cloud SQL instance to be cloned.
-      "binLogCoordinates": { # Binary log coordinates. # Binary log coordinates, if specified, indentify the the position up to which the source instance should be cloned. If not specified, the source instance is cloned up to the most recent binary log coordintes.
+      "binLogCoordinates": { # Binary log coordinates. # Binary log coordinates, if specified, indentify the position up to which the source instance should be cloned. If not specified, the source instance is cloned up to the most recent binary log coordinates.
         "binLogPosition": "A String", # Position (offset) within the binary log file.
         "kind": "sql#binLogCoordinates", # This is always sql#binLogCoordinates.
         "binLogFileName": "A String", # Name of the binary log file for a Cloud SQL instance.
@@ -201,7 +204,7 @@
 
 <div class="method">
     <code class="details" id="get">get(project, instance)</code>
-  <pre>Retrieves a resource containing information about a Cloud SQL instance.
+  <pre>Retrieves information about a Cloud SQL instance.
 
 Args:
   project: string, Project ID of the project that contains the instance. (required)
@@ -224,16 +227,19 @@
         "expirationTime": "A String", # Time when the certificate expires.
         "createTime": "A String", # Time when the certificate was created.
       },
+      "replicaNames": [ # The replicas of the instance.
+        "A String",
+      ],
       "region": "A String", # The geographical region. Can be us-east1, us-central, asia-east1 or europe-west1. Defaults to us-central. The region can not be changed after instance creation.
       "settings": { # Database instance settings. # The user settings.
         "databaseFlags": [ # The database flags passed to the instance at startup.
           { # MySQL flags for Cloud SQL instances.
-            "name": "A String", # The name of the flag. These flags are passed at instance startup, so include both MySQL server options and MySQL system variables. Flags should be specified with underscores, not hyphens. Refer to the official MySQL documentation on server options and system variables for descriptions of what these flags do. Acceptable values are:  event_scheduler on or off (Note: The event scheduler will only work reliably if the instance activationPolicy is set to ALWAYS.) general_log on or off group_concat_max_len 4..17179869184 innodb_flush_log_at_trx_commit 0..2 innodb_lock_wait_timeout 1..1073741824 log_bin_trust_function_creators on or off log_output Can be either TABLE or NONE, FILE is not supported. log_queries_not_using_indexes on or off long_query_time 0..30000000 lower_case_table_names 0..2 max_allowed_packet 16384..1073741824 read_only on or off skip_show_database on or off slow_query_log on or off wait_timeout 1..31536000
+            "name": "A String", # The name of the flag. These flags are passed at instance startup, so include both MySQL server options and MySQL system variables. Flags should be specified with underscores, not hyphens. Refer to the official MySQL documentation on server options and system variables for descriptions of what these flags do. Acceptable values are:  character_set_server utf8 or utf8mb4 event_scheduler on or off (Note: The event scheduler will only work reliably if the instance activationPolicy is set to ALWAYS) general_log on or off group_concat_max_len 4..17179869184 innodb_flush_log_at_trx_commit 0..2 innodb_lock_wait_timeout 1..1073741824 log_bin_trust_function_creators on or off log_output Can be either TABLE or NONE, FILE is not supported log_queries_not_using_indexes on or off long_query_time 0..30000000 lower_case_table_names 0..2 max_allowed_packet 16384..1073741824 read_only on or off skip_show_database on or off slow_query_log on or off. If set to on, you must also set the log_output flag to TABLE to receive logs. wait_timeout 1..31536000
             "value": "A String", # The value of the flag. Booleans should be set using 1 for true, and 0 for false. This field must be omitted if the flag doesn't take a value.
           },
         ],
         "kind": "sql#settings", # This is always sql#settings.
-        "authorizedGaeApplications": [ # The AppEngine app ids that can access this instance.
+        "authorizedGaeApplications": [ # The App Engine app IDs that can access this instance.
           "A String",
         ],
         "activationPolicy": "A String", # The activation policy for this instance. This specifies when the instance should be activated and is applicable only when the instance state is RUNNABLE. This can be one of the following.
@@ -256,16 +262,18 @@
             "A String",
           ],
         },
-        "pricingPlan": "A String", # The pricing plan for this instance. This can be either PER_USE or PACKAGE.
+        "databaseReplicationEnabled": True or False, # Configuration specific to read replica instance. Indicates whether replication is enabled or not.
         "replicationType": "A String", # The type of replication this instance uses. This can be either ASYNCHRONOUS or SYNCHRONOUS.
         "tier": "A String", # The tier of service for this instance, for example D1, D2. For more information, see pricing.
+        "pricingPlan": "A String", # The pricing plan for this instance. This can be either PER_USE or PACKAGE.
         "settingsVersion": "A String", # The version of instance settings. This is a required field for update method to make sure concurrent updates are handled properly. During update, use the most recent settingsVersion value for this instance and do not try to update this value.
-        "locationPreference": { # Preferred location. This specifies where a Cloud SQL instance should preferably be located, either in a specific Compute Engine zone, or co-located with an App Engine application. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified. # The location preference settings. This allows the instance to be located as near as possible to either an AppEngine app or GCE zone for better perfomance.
+        "locationPreference": { # Preferred location. This specifies where a Cloud SQL instance should preferably be located, either in a specific Compute Engine zone, or co-located with an App Engine application. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified. # The location preference settings. This allows the instance to be located as near as possible to either an App Engine app or GCE zone for better performance.
           "kind": "sql#locationPreference", # This is always sql#locationPreference.
           "zone": "A String", # The preferred Compute Engine zone (e.g. us-centra1-a, us-central1-b, etc.).
-          "followGaeApplication": "A String", # The AppEngine application to follow, it must be in the same region as the Cloud SQL instance.
+          "followGaeApplication": "A String", # The App Engine application to follow, it must be in the same region as the Cloud SQL instance.
         },
       },
+      "masterInstanceName": "A String", # The name of the instance which will act as master in the replication setup.
       "currentDiskSize": "A String", # The current disk usage of the instance in bytes.
       "instance": "A String", # Name of the Cloud SQL instance. This does not include the project ID.
       "state": "A String", # The current serving state of the Cloud SQL instance. This can be one of the following.
@@ -281,13 +289,16 @@
           "ipAddress": "A String", # The IP address assigned.
         },
       ],
-      "databaseVersion": "A String", # The database engine type and version. Can be MYSQL_5_5 or MYSQL_5_6. Defaults to MYSQL_5_5. The databaseVersion can not be changed after instance creation.
+      "databaseVersion": "A String", # The database engine type and version. Can be MYSQL_5_5 or MYSQL_5_6. Defaults to MYSQL_5_5. The databaseVersion cannot be changed after instance creation.
+      "instanceType": "A String", # The instance type. This can be one of the following.
+          # CLOUD_SQL_INSTANCE: Regular Cloud SQL instance.
+          # READ_REPLICA_INSTANCE: Cloud SQL instance acting as a read-replica.
     }</pre>
 </div>
 
 <div class="method">
     <code class="details" id="import_">import_(project, instance, body)</code>
-  <pre>Imports data into a Cloud SQL instance from a MySQL dump file in Google Cloud Storage.
+  <pre>Imports data into a Cloud SQL instance from a MySQL dump file stored in a Google Cloud Storage bucket.
 
 Args:
   project: string, Project ID of the project that contains the instance. (required)
@@ -338,16 +349,19 @@
       "expirationTime": "A String", # Time when the certificate expires.
       "createTime": "A String", # Time when the certificate was created.
     },
+    "replicaNames": [ # The replicas of the instance.
+      "A String",
+    ],
     "region": "A String", # The geographical region. Can be us-east1, us-central, asia-east1 or europe-west1. Defaults to us-central. The region can not be changed after instance creation.
     "settings": { # Database instance settings. # The user settings.
       "databaseFlags": [ # The database flags passed to the instance at startup.
         { # MySQL flags for Cloud SQL instances.
-          "name": "A String", # The name of the flag. These flags are passed at instance startup, so include both MySQL server options and MySQL system variables. Flags should be specified with underscores, not hyphens. Refer to the official MySQL documentation on server options and system variables for descriptions of what these flags do. Acceptable values are:  event_scheduler on or off (Note: The event scheduler will only work reliably if the instance activationPolicy is set to ALWAYS.) general_log on or off group_concat_max_len 4..17179869184 innodb_flush_log_at_trx_commit 0..2 innodb_lock_wait_timeout 1..1073741824 log_bin_trust_function_creators on or off log_output Can be either TABLE or NONE, FILE is not supported. log_queries_not_using_indexes on or off long_query_time 0..30000000 lower_case_table_names 0..2 max_allowed_packet 16384..1073741824 read_only on or off skip_show_database on or off slow_query_log on or off wait_timeout 1..31536000
+          "name": "A String", # The name of the flag. These flags are passed at instance startup, so include both MySQL server options and MySQL system variables. Flags should be specified with underscores, not hyphens. Refer to the official MySQL documentation on server options and system variables for descriptions of what these flags do. Acceptable values are:  character_set_server utf8 or utf8mb4 event_scheduler on or off (Note: The event scheduler will only work reliably if the instance activationPolicy is set to ALWAYS) general_log on or off group_concat_max_len 4..17179869184 innodb_flush_log_at_trx_commit 0..2 innodb_lock_wait_timeout 1..1073741824 log_bin_trust_function_creators on or off log_output Can be either TABLE or NONE, FILE is not supported log_queries_not_using_indexes on or off long_query_time 0..30000000 lower_case_table_names 0..2 max_allowed_packet 16384..1073741824 read_only on or off skip_show_database on or off slow_query_log on or off. If set to on, you must also set the log_output flag to TABLE to receive logs. wait_timeout 1..31536000
           "value": "A String", # The value of the flag. Booleans should be set using 1 for true, and 0 for false. This field must be omitted if the flag doesn't take a value.
         },
       ],
       "kind": "sql#settings", # This is always sql#settings.
-      "authorizedGaeApplications": [ # The AppEngine app ids that can access this instance.
+      "authorizedGaeApplications": [ # The App Engine app IDs that can access this instance.
         "A String",
       ],
       "activationPolicy": "A String", # The activation policy for this instance. This specifies when the instance should be activated and is applicable only when the instance state is RUNNABLE. This can be one of the following.
@@ -370,16 +384,18 @@
           "A String",
         ],
       },
-      "pricingPlan": "A String", # The pricing plan for this instance. This can be either PER_USE or PACKAGE.
+      "databaseReplicationEnabled": True or False, # Configuration specific to read replica instance. Indicates whether replication is enabled or not.
       "replicationType": "A String", # The type of replication this instance uses. This can be either ASYNCHRONOUS or SYNCHRONOUS.
       "tier": "A String", # The tier of service for this instance, for example D1, D2. For more information, see pricing.
+      "pricingPlan": "A String", # The pricing plan for this instance. This can be either PER_USE or PACKAGE.
       "settingsVersion": "A String", # The version of instance settings. This is a required field for update method to make sure concurrent updates are handled properly. During update, use the most recent settingsVersion value for this instance and do not try to update this value.
-      "locationPreference": { # Preferred location. This specifies where a Cloud SQL instance should preferably be located, either in a specific Compute Engine zone, or co-located with an App Engine application. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified. # The location preference settings. This allows the instance to be located as near as possible to either an AppEngine app or GCE zone for better perfomance.
+      "locationPreference": { # Preferred location. This specifies where a Cloud SQL instance should preferably be located, either in a specific Compute Engine zone, or co-located with an App Engine application. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified. # The location preference settings. This allows the instance to be located as near as possible to either an App Engine app or GCE zone for better performance.
         "kind": "sql#locationPreference", # This is always sql#locationPreference.
         "zone": "A String", # The preferred Compute Engine zone (e.g. us-centra1-a, us-central1-b, etc.).
-        "followGaeApplication": "A String", # The AppEngine application to follow, it must be in the same region as the Cloud SQL instance.
+        "followGaeApplication": "A String", # The App Engine application to follow, it must be in the same region as the Cloud SQL instance.
       },
     },
+    "masterInstanceName": "A String", # The name of the instance which will act as master in the replication setup.
     "currentDiskSize": "A String", # The current disk usage of the instance in bytes.
     "instance": "A String", # Name of the Cloud SQL instance. This does not include the project ID.
     "state": "A String", # The current serving state of the Cloud SQL instance. This can be one of the following.
@@ -395,7 +411,10 @@
         "ipAddress": "A String", # The IP address assigned.
       },
     ],
-    "databaseVersion": "A String", # The database engine type and version. Can be MYSQL_5_5 or MYSQL_5_6. Defaults to MYSQL_5_5. The databaseVersion can not be changed after instance creation.
+    "databaseVersion": "A String", # The database engine type and version. Can be MYSQL_5_5 or MYSQL_5_6. Defaults to MYSQL_5_5. The databaseVersion cannot be changed after instance creation.
+    "instanceType": "A String", # The instance type. This can be one of the following.
+        # CLOUD_SQL_INSTANCE: Regular Cloud SQL instance.
+        # READ_REPLICA_INSTANCE: Cloud SQL instance acting as a read-replica.
   }
 
 
@@ -410,7 +429,7 @@
 
 <div class="method">
     <code class="details" id="list">list(project, pageToken=None, maxResults=None)</code>
-  <pre>Lists instances under a given project in the alphabetical order of the instance name.
+  <pre>Lists instances for a given project, in alphabetical order by instance name.
 
 Args:
   project: string, Project ID of the project for which to list Cloud SQL instances. (required)
@@ -437,16 +456,19 @@
             "expirationTime": "A String", # Time when the certificate expires.
             "createTime": "A String", # Time when the certificate was created.
           },
+          "replicaNames": [ # The replicas of the instance.
+            "A String",
+          ],
           "region": "A String", # The geographical region. Can be us-east1, us-central, asia-east1 or europe-west1. Defaults to us-central. The region can not be changed after instance creation.
           "settings": { # Database instance settings. # The user settings.
             "databaseFlags": [ # The database flags passed to the instance at startup.
               { # MySQL flags for Cloud SQL instances.
-                "name": "A String", # The name of the flag. These flags are passed at instance startup, so include both MySQL server options and MySQL system variables. Flags should be specified with underscores, not hyphens. Refer to the official MySQL documentation on server options and system variables for descriptions of what these flags do. Acceptable values are:  event_scheduler on or off (Note: The event scheduler will only work reliably if the instance activationPolicy is set to ALWAYS.) general_log on or off group_concat_max_len 4..17179869184 innodb_flush_log_at_trx_commit 0..2 innodb_lock_wait_timeout 1..1073741824 log_bin_trust_function_creators on or off log_output Can be either TABLE or NONE, FILE is not supported. log_queries_not_using_indexes on or off long_query_time 0..30000000 lower_case_table_names 0..2 max_allowed_packet 16384..1073741824 read_only on or off skip_show_database on or off slow_query_log on or off wait_timeout 1..31536000
+                "name": "A String", # The name of the flag. These flags are passed at instance startup, so include both MySQL server options and MySQL system variables. Flags should be specified with underscores, not hyphens. Refer to the official MySQL documentation on server options and system variables for descriptions of what these flags do. Acceptable values are:  character_set_server utf8 or utf8mb4 event_scheduler on or off (Note: The event scheduler will only work reliably if the instance activationPolicy is set to ALWAYS) general_log on or off group_concat_max_len 4..17179869184 innodb_flush_log_at_trx_commit 0..2 innodb_lock_wait_timeout 1..1073741824 log_bin_trust_function_creators on or off log_output Can be either TABLE or NONE, FILE is not supported log_queries_not_using_indexes on or off long_query_time 0..30000000 lower_case_table_names 0..2 max_allowed_packet 16384..1073741824 read_only on or off skip_show_database on or off slow_query_log on or off. If set to on, you must also set the log_output flag to TABLE to receive logs. wait_timeout 1..31536000
                 "value": "A String", # The value of the flag. Booleans should be set using 1 for true, and 0 for false. This field must be omitted if the flag doesn't take a value.
               },
             ],
             "kind": "sql#settings", # This is always sql#settings.
-            "authorizedGaeApplications": [ # The AppEngine app ids that can access this instance.
+            "authorizedGaeApplications": [ # The App Engine app IDs that can access this instance.
               "A String",
             ],
             "activationPolicy": "A String", # The activation policy for this instance. This specifies when the instance should be activated and is applicable only when the instance state is RUNNABLE. This can be one of the following.
@@ -469,16 +491,18 @@
                 "A String",
               ],
             },
-            "pricingPlan": "A String", # The pricing plan for this instance. This can be either PER_USE or PACKAGE.
+            "databaseReplicationEnabled": True or False, # Configuration specific to read replica instance. Indicates whether replication is enabled or not.
             "replicationType": "A String", # The type of replication this instance uses. This can be either ASYNCHRONOUS or SYNCHRONOUS.
             "tier": "A String", # The tier of service for this instance, for example D1, D2. For more information, see pricing.
+            "pricingPlan": "A String", # The pricing plan for this instance. This can be either PER_USE or PACKAGE.
             "settingsVersion": "A String", # The version of instance settings. This is a required field for update method to make sure concurrent updates are handled properly. During update, use the most recent settingsVersion value for this instance and do not try to update this value.
-            "locationPreference": { # Preferred location. This specifies where a Cloud SQL instance should preferably be located, either in a specific Compute Engine zone, or co-located with an App Engine application. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified. # The location preference settings. This allows the instance to be located as near as possible to either an AppEngine app or GCE zone for better perfomance.
+            "locationPreference": { # Preferred location. This specifies where a Cloud SQL instance should preferably be located, either in a specific Compute Engine zone, or co-located with an App Engine application. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified. # The location preference settings. This allows the instance to be located as near as possible to either an App Engine app or GCE zone for better performance.
               "kind": "sql#locationPreference", # This is always sql#locationPreference.
               "zone": "A String", # The preferred Compute Engine zone (e.g. us-centra1-a, us-central1-b, etc.).
-              "followGaeApplication": "A String", # The AppEngine application to follow, it must be in the same region as the Cloud SQL instance.
+              "followGaeApplication": "A String", # The App Engine application to follow, it must be in the same region as the Cloud SQL instance.
             },
           },
+          "masterInstanceName": "A String", # The name of the instance which will act as master in the replication setup.
           "currentDiskSize": "A String", # The current disk usage of the instance in bytes.
           "instance": "A String", # Name of the Cloud SQL instance. This does not include the project ID.
           "state": "A String", # The current serving state of the Cloud SQL instance. This can be one of the following.
@@ -494,7 +518,10 @@
               "ipAddress": "A String", # The IP address assigned.
             },
           ],
-          "databaseVersion": "A String", # The database engine type and version. Can be MYSQL_5_5 or MYSQL_5_6. Defaults to MYSQL_5_5. The databaseVersion can not be changed after instance creation.
+          "databaseVersion": "A String", # The database engine type and version. Can be MYSQL_5_5 or MYSQL_5_6. Defaults to MYSQL_5_5. The databaseVersion cannot be changed after instance creation.
+          "instanceType": "A String", # The instance type. This can be one of the following.
+              # CLOUD_SQL_INSTANCE: Regular Cloud SQL instance.
+              # READ_REPLICA_INSTANCE: Cloud SQL instance acting as a read-replica.
         },
     ],
     "kind": "sql#instancesList", # This is always sql#instancesList.
@@ -517,7 +544,7 @@
 
 <div class="method">
     <code class="details" id="patch">patch(project, instance, body)</code>
-  <pre>Updates settings of a Cloud SQL instance. Caution: This is not a partial update, so you must include values for all the settings that you want to retain. For partial updates, use patch.. This method supports patch semantics.
+  <pre>Updates the settings of a Cloud SQL instance. This method supports patch semantics.
 
 Args:
   project: string, Project ID of the project that contains the instance. (required)
@@ -539,16 +566,19 @@
       "expirationTime": "A String", # Time when the certificate expires.
       "createTime": "A String", # Time when the certificate was created.
     },
+    "replicaNames": [ # The replicas of the instance.
+      "A String",
+    ],
     "region": "A String", # The geographical region. Can be us-east1, us-central, asia-east1 or europe-west1. Defaults to us-central. The region can not be changed after instance creation.
     "settings": { # Database instance settings. # The user settings.
       "databaseFlags": [ # The database flags passed to the instance at startup.
         { # MySQL flags for Cloud SQL instances.
-          "name": "A String", # The name of the flag. These flags are passed at instance startup, so include both MySQL server options and MySQL system variables. Flags should be specified with underscores, not hyphens. Refer to the official MySQL documentation on server options and system variables for descriptions of what these flags do. Acceptable values are:  event_scheduler on or off (Note: The event scheduler will only work reliably if the instance activationPolicy is set to ALWAYS.) general_log on or off group_concat_max_len 4..17179869184 innodb_flush_log_at_trx_commit 0..2 innodb_lock_wait_timeout 1..1073741824 log_bin_trust_function_creators on or off log_output Can be either TABLE or NONE, FILE is not supported. log_queries_not_using_indexes on or off long_query_time 0..30000000 lower_case_table_names 0..2 max_allowed_packet 16384..1073741824 read_only on or off skip_show_database on or off slow_query_log on or off wait_timeout 1..31536000
+          "name": "A String", # The name of the flag. These flags are passed at instance startup, so include both MySQL server options and MySQL system variables. Flags should be specified with underscores, not hyphens. Refer to the official MySQL documentation on server options and system variables for descriptions of what these flags do. Acceptable values are:  character_set_server utf8 or utf8mb4 event_scheduler on or off (Note: The event scheduler will only work reliably if the instance activationPolicy is set to ALWAYS) general_log on or off group_concat_max_len 4..17179869184 innodb_flush_log_at_trx_commit 0..2 innodb_lock_wait_timeout 1..1073741824 log_bin_trust_function_creators on or off log_output Can be either TABLE or NONE, FILE is not supported log_queries_not_using_indexes on or off long_query_time 0..30000000 lower_case_table_names 0..2 max_allowed_packet 16384..1073741824 read_only on or off skip_show_database on or off slow_query_log on or off. If set to on, you must also set the log_output flag to TABLE to receive logs. wait_timeout 1..31536000
           "value": "A String", # The value of the flag. Booleans should be set using 1 for true, and 0 for false. This field must be omitted if the flag doesn't take a value.
         },
       ],
       "kind": "sql#settings", # This is always sql#settings.
-      "authorizedGaeApplications": [ # The AppEngine app ids that can access this instance.
+      "authorizedGaeApplications": [ # The App Engine app IDs that can access this instance.
         "A String",
       ],
       "activationPolicy": "A String", # The activation policy for this instance. This specifies when the instance should be activated and is applicable only when the instance state is RUNNABLE. This can be one of the following.
@@ -571,16 +601,18 @@
           "A String",
         ],
       },
-      "pricingPlan": "A String", # The pricing plan for this instance. This can be either PER_USE or PACKAGE.
+      "databaseReplicationEnabled": True or False, # Configuration specific to read replica instance. Indicates whether replication is enabled or not.
       "replicationType": "A String", # The type of replication this instance uses. This can be either ASYNCHRONOUS or SYNCHRONOUS.
       "tier": "A String", # The tier of service for this instance, for example D1, D2. For more information, see pricing.
+      "pricingPlan": "A String", # The pricing plan for this instance. This can be either PER_USE or PACKAGE.
       "settingsVersion": "A String", # The version of instance settings. This is a required field for update method to make sure concurrent updates are handled properly. During update, use the most recent settingsVersion value for this instance and do not try to update this value.
-      "locationPreference": { # Preferred location. This specifies where a Cloud SQL instance should preferably be located, either in a specific Compute Engine zone, or co-located with an App Engine application. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified. # The location preference settings. This allows the instance to be located as near as possible to either an AppEngine app or GCE zone for better perfomance.
+      "locationPreference": { # Preferred location. This specifies where a Cloud SQL instance should preferably be located, either in a specific Compute Engine zone, or co-located with an App Engine application. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified. # The location preference settings. This allows the instance to be located as near as possible to either an App Engine app or GCE zone for better performance.
         "kind": "sql#locationPreference", # This is always sql#locationPreference.
         "zone": "A String", # The preferred Compute Engine zone (e.g. us-centra1-a, us-central1-b, etc.).
-        "followGaeApplication": "A String", # The AppEngine application to follow, it must be in the same region as the Cloud SQL instance.
+        "followGaeApplication": "A String", # The App Engine application to follow, it must be in the same region as the Cloud SQL instance.
       },
     },
+    "masterInstanceName": "A String", # The name of the instance which will act as master in the replication setup.
     "currentDiskSize": "A String", # The current disk usage of the instance in bytes.
     "instance": "A String", # Name of the Cloud SQL instance. This does not include the project ID.
     "state": "A String", # The current serving state of the Cloud SQL instance. This can be one of the following.
@@ -596,7 +628,10 @@
         "ipAddress": "A String", # The IP address assigned.
       },
     ],
-    "databaseVersion": "A String", # The database engine type and version. Can be MYSQL_5_5 or MYSQL_5_6. Defaults to MYSQL_5_5. The databaseVersion can not be changed after instance creation.
+    "databaseVersion": "A String", # The database engine type and version. Can be MYSQL_5_5 or MYSQL_5_6. Defaults to MYSQL_5_5. The databaseVersion cannot be changed after instance creation.
+    "instanceType": "A String", # The instance type. This can be one of the following.
+        # CLOUD_SQL_INSTANCE: Regular Cloud SQL instance.
+        # READ_REPLICA_INSTANCE: Cloud SQL instance acting as a read-replica.
   }
 
 
@@ -610,8 +645,25 @@
 </div>
 
 <div class="method">
+    <code class="details" id="promoteReplica">promoteReplica(project, instance)</code>
+  <pre>Promotes the read replica instance to be a stand-alone Cloud SQL instance.
+
+Args:
+  project: string, ID of the project that contains the read replica. (required)
+  instance: string, Cloud SQL read replica instance name. (required)
+
+Returns:
+  An object of the form:
+
+    { # Database promote read replica response.
+    "kind": "sql#instancesPromoteReplica", # This is always sql#instancesPromoteReplica.
+    "operation": "A String", # An identifier that uniquely identifies the operation. You can use this identifier to retrieve the Operations resource that has information about the operation.
+  }</pre>
+</div>
+
+<div class="method">
     <code class="details" id="resetSslConfig">resetSslConfig(project, instance)</code>
-  <pre>Deletes all client certificates and generates a new server SSL certificate for the instance. The changes will not take effect until the instance is restarted. Existing instances without a server certificate will need to call this once to set a server certificate.
+  <pre>Deletes all client certificates and generates a new server SSL certificate for a Cloud SQL instance.
 
 Args:
   project: string, Project ID of the project that contains the instance. (required)
@@ -664,7 +716,7 @@
 
 <div class="method">
     <code class="details" id="setRootPassword">setRootPassword(project, instance, body)</code>
-  <pre>Sets the password for the root user.
+  <pre>Sets the password for the root user of the specified Cloud SQL instance.
 
 Args:
   project: string, Project ID of the project that contains the instance. (required)
@@ -691,7 +743,7 @@
 
 <div class="method">
     <code class="details" id="update">update(project, instance, body)</code>
-  <pre>Updates settings of a Cloud SQL instance. Caution: This is not a partial update, so you must include values for all the settings that you want to retain. For partial updates, use patch.
+  <pre>Updates the settings of a Cloud SQL instance.
 
 Args:
   project: string, Project ID of the project that contains the instance. (required)
@@ -713,16 +765,19 @@
       "expirationTime": "A String", # Time when the certificate expires.
       "createTime": "A String", # Time when the certificate was created.
     },
+    "replicaNames": [ # The replicas of the instance.
+      "A String",
+    ],
     "region": "A String", # The geographical region. Can be us-east1, us-central, asia-east1 or europe-west1. Defaults to us-central. The region can not be changed after instance creation.
     "settings": { # Database instance settings. # The user settings.
       "databaseFlags": [ # The database flags passed to the instance at startup.
         { # MySQL flags for Cloud SQL instances.
-          "name": "A String", # The name of the flag. These flags are passed at instance startup, so include both MySQL server options and MySQL system variables. Flags should be specified with underscores, not hyphens. Refer to the official MySQL documentation on server options and system variables for descriptions of what these flags do. Acceptable values are:  event_scheduler on or off (Note: The event scheduler will only work reliably if the instance activationPolicy is set to ALWAYS.) general_log on or off group_concat_max_len 4..17179869184 innodb_flush_log_at_trx_commit 0..2 innodb_lock_wait_timeout 1..1073741824 log_bin_trust_function_creators on or off log_output Can be either TABLE or NONE, FILE is not supported. log_queries_not_using_indexes on or off long_query_time 0..30000000 lower_case_table_names 0..2 max_allowed_packet 16384..1073741824 read_only on or off skip_show_database on or off slow_query_log on or off wait_timeout 1..31536000
+          "name": "A String", # The name of the flag. These flags are passed at instance startup, so include both MySQL server options and MySQL system variables. Flags should be specified with underscores, not hyphens. Refer to the official MySQL documentation on server options and system variables for descriptions of what these flags do. Acceptable values are:  character_set_server utf8 or utf8mb4 event_scheduler on or off (Note: The event scheduler will only work reliably if the instance activationPolicy is set to ALWAYS) general_log on or off group_concat_max_len 4..17179869184 innodb_flush_log_at_trx_commit 0..2 innodb_lock_wait_timeout 1..1073741824 log_bin_trust_function_creators on or off log_output Can be either TABLE or NONE, FILE is not supported log_queries_not_using_indexes on or off long_query_time 0..30000000 lower_case_table_names 0..2 max_allowed_packet 16384..1073741824 read_only on or off skip_show_database on or off slow_query_log on or off. If set to on, you must also set the log_output flag to TABLE to receive logs. wait_timeout 1..31536000
           "value": "A String", # The value of the flag. Booleans should be set using 1 for true, and 0 for false. This field must be omitted if the flag doesn't take a value.
         },
       ],
       "kind": "sql#settings", # This is always sql#settings.
-      "authorizedGaeApplications": [ # The AppEngine app ids that can access this instance.
+      "authorizedGaeApplications": [ # The App Engine app IDs that can access this instance.
         "A String",
       ],
       "activationPolicy": "A String", # The activation policy for this instance. This specifies when the instance should be activated and is applicable only when the instance state is RUNNABLE. This can be one of the following.
@@ -745,16 +800,18 @@
           "A String",
         ],
       },
-      "pricingPlan": "A String", # The pricing plan for this instance. This can be either PER_USE or PACKAGE.
+      "databaseReplicationEnabled": True or False, # Configuration specific to read replica instance. Indicates whether replication is enabled or not.
       "replicationType": "A String", # The type of replication this instance uses. This can be either ASYNCHRONOUS or SYNCHRONOUS.
       "tier": "A String", # The tier of service for this instance, for example D1, D2. For more information, see pricing.
+      "pricingPlan": "A String", # The pricing plan for this instance. This can be either PER_USE or PACKAGE.
       "settingsVersion": "A String", # The version of instance settings. This is a required field for update method to make sure concurrent updates are handled properly. During update, use the most recent settingsVersion value for this instance and do not try to update this value.
-      "locationPreference": { # Preferred location. This specifies where a Cloud SQL instance should preferably be located, either in a specific Compute Engine zone, or co-located with an App Engine application. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified. # The location preference settings. This allows the instance to be located as near as possible to either an AppEngine app or GCE zone for better perfomance.
+      "locationPreference": { # Preferred location. This specifies where a Cloud SQL instance should preferably be located, either in a specific Compute Engine zone, or co-located with an App Engine application. Note that if the preferred location is not available, the instance will be located as close as possible within the region. Only one location may be specified. # The location preference settings. This allows the instance to be located as near as possible to either an App Engine app or GCE zone for better performance.
         "kind": "sql#locationPreference", # This is always sql#locationPreference.
         "zone": "A String", # The preferred Compute Engine zone (e.g. us-centra1-a, us-central1-b, etc.).
-        "followGaeApplication": "A String", # The AppEngine application to follow, it must be in the same region as the Cloud SQL instance.
+        "followGaeApplication": "A String", # The App Engine application to follow, it must be in the same region as the Cloud SQL instance.
       },
     },
+    "masterInstanceName": "A String", # The name of the instance which will act as master in the replication setup.
     "currentDiskSize": "A String", # The current disk usage of the instance in bytes.
     "instance": "A String", # Name of the Cloud SQL instance. This does not include the project ID.
     "state": "A String", # The current serving state of the Cloud SQL instance. This can be one of the following.
@@ -770,7 +827,10 @@
         "ipAddress": "A String", # The IP address assigned.
       },
     ],
-    "databaseVersion": "A String", # The database engine type and version. Can be MYSQL_5_5 or MYSQL_5_6. Defaults to MYSQL_5_5. The databaseVersion can not be changed after instance creation.
+    "databaseVersion": "A String", # The database engine type and version. Can be MYSQL_5_5 or MYSQL_5_6. Defaults to MYSQL_5_5. The databaseVersion cannot be changed after instance creation.
+    "instanceType": "A String", # The instance type. This can be one of the following.
+        # CLOUD_SQL_INSTANCE: Regular Cloud SQL instance.
+        # READ_REPLICA_INSTANCE: Cloud SQL instance acting as a read-replica.
   }
 
 
diff --git a/docs/dyn/sqladmin_v1beta3.operations.html b/docs/dyn/sqladmin_v1beta3.operations.html
index e5e528f..b73ae9d 100644
--- a/docs/dyn/sqladmin_v1beta3.operations.html
+++ b/docs/dyn/sqladmin_v1beta3.operations.html
@@ -76,17 +76,17 @@
 <h2>Instance Methods</h2>
 <p class="toc_element">
   <code><a href="#get">get(project, instance, operation)</a></code></p>
-<p class="firstline">Retrieves an instance operation that has been performed on an instance.</p>
+<p class="firstline">Retrieves information about a specific operation that was performed on a Cloud SQL instance.</p>
 <p class="toc_element">
   <code><a href="#list">list(project, instance, maxResults=None, pageToken=None)</a></code></p>
-<p class="firstline">Lists all instance operations that have been performed on the given Cloud SQL instance in the reverse chronological order of the start time.</p>
+<p class="firstline">Lists all operations that have been performed on a Cloud SQL instance.</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(project, instance, operation)</code>
-  <pre>Retrieves an instance operation that has been performed on an instance.
+  <pre>Retrieves information about a specific operation that was performed on a Cloud SQL instance.
 
 Args:
   project: string, Project ID of the project that contains the instance. (required)
@@ -134,7 +134,7 @@
 
 <div class="method">
     <code class="details" id="list">list(project, instance, maxResults=None, pageToken=None)</code>
-  <pre>Lists all instance operations that have been performed on the given Cloud SQL instance in the reverse chronological order of the start time.
+  <pre>Lists all operations that have been performed on a Cloud SQL instance.
 
 Args:
   project: string, Project ID of the project that contains the instance. (required)
diff --git a/docs/dyn/sqladmin_v1beta3.sslCerts.html b/docs/dyn/sqladmin_v1beta3.sslCerts.html
index 939ed82..7e88b2b 100644
--- a/docs/dyn/sqladmin_v1beta3.sslCerts.html
+++ b/docs/dyn/sqladmin_v1beta3.sslCerts.html
@@ -76,20 +76,20 @@
 <h2>Instance Methods</h2>
 <p class="toc_element">
   <code><a href="#delete">delete(project, instance, sha1Fingerprint)</a></code></p>
-<p class="firstline">Deletes the SSL certificate. The change will not take effect until the instance is restarted.</p>
+<p class="firstline">Deletes an SSL certificate from a Cloud SQL instance.</p>
 <p class="toc_element">
   <code><a href="#get">get(project, instance, sha1Fingerprint)</a></code></p>
-<p class="firstline">Retrieves a particular SSL certificate. Does not include the private key (required for usage). The private key must be saved from the response to initial creation.</p>
+<p class="firstline">Retrieves an SSL certificate as specified by its SHA-1 fingerprint.</p>
 <p class="toc_element">
   <code><a href="#insert">insert(project, instance, body)</a></code></p>
-<p class="firstline">Creates an SSL certificate and returns it along with the private key and server certificate authority. The new certificate will not be usable until the instance is restarted.</p>
+<p class="firstline">Creates an SSL certificate and returns the certificate, the associated private key, and the server certificate authority.</p>
 <p class="toc_element">
   <code><a href="#list">list(project, instance)</a></code></p>
-<p class="firstline">Lists all of the current SSL certificates for the instance.</p>
+<p class="firstline">Lists all of the current SSL certificates defined for a Cloud SQL instance.</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="delete">delete(project, instance, sha1Fingerprint)</code>
-  <pre>Deletes the SSL certificate. The change will not take effect until the instance is restarted.
+  <pre>Deletes an SSL certificate from a Cloud SQL instance.
 
 Args:
   project: string, Project ID of the project that contains the instance to be deleted. (required)
@@ -107,7 +107,7 @@
 
 <div class="method">
     <code class="details" id="get">get(project, instance, sha1Fingerprint)</code>
-  <pre>Retrieves a particular SSL certificate. Does not include the private key (required for usage). The private key must be saved from the response to initial creation.
+  <pre>Retrieves an SSL certificate as specified by its SHA-1 fingerprint.
 
 Args:
   project: string, Project ID of the project that contains the instance. (required)
@@ -131,7 +131,7 @@
 
 <div class="method">
     <code class="details" id="insert">insert(project, instance, body)</code>
-  <pre>Creates an SSL certificate and returns it along with the private key and server certificate authority. The new certificate will not be usable until the instance is restarted.
+  <pre>Creates an SSL certificate and returns the certificate, the associated private key, and the server certificate authority.
 
 Args:
   project: string, Project ID of the project to which the newly created Cloud SQL instances should belong. (required)
@@ -177,7 +177,7 @@
 
 <div class="method">
     <code class="details" id="list">list(project, instance)</code>
-  <pre>Lists all of the current SSL certificates for the instance.
+  <pre>Lists all of the current SSL certificates defined for a Cloud SQL instance.
 
 Args:
   project: string, Project ID of the project for which to list Cloud SQL instances. (required)
diff --git a/docs/dyn/sqladmin_v1beta3.tiers.html b/docs/dyn/sqladmin_v1beta3.tiers.html
index b232569..d58123b 100644
--- a/docs/dyn/sqladmin_v1beta3.tiers.html
+++ b/docs/dyn/sqladmin_v1beta3.tiers.html
@@ -76,11 +76,11 @@
 <h2>Instance Methods</h2>
 <p class="toc_element">
   <code><a href="#list">list(project)</a></code></p>
-<p class="firstline">Lists all available service tiers for Google Cloud SQL, for example D1, D2. For related information, see Pricing.</p>
+<p class="firstline">Lists service tiers that can be used to create Google Cloud SQL instances.</p>
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="list">list(project)</code>
-  <pre>Lists all available service tiers for Google Cloud SQL, for example D1, D2. For related information, see Pricing.
+  <pre>Lists service tiers that can be used to create Google Cloud SQL instances.
 
 Args:
   project: string, Project ID of the project for which to list tiers. (required)
diff --git a/docs/dyn/storage_v1.objects.html b/docs/dyn/storage_v1.objects.html
index b3a01ee..6cf71f2 100644
--- a/docs/dyn/storage_v1.objects.html
+++ b/docs/dyn/storage_v1.objects.html
@@ -91,10 +91,10 @@
 <p class="firstline">Deletes an object and its metadata. Deletions are permanent if versioning is not enabled for the bucket, or if the generation parameter is used.</p>
 <p class="toc_element">
   <code><a href="#get">get(bucket, object, ifGenerationNotMatch=None, generation=None, ifMetagenerationMatch=None, ifGenerationMatch=None, ifMetagenerationNotMatch=None, projection=None)</a></code></p>
-<p class="firstline">Retrieves objects or their metadata.</p>
+<p class="firstline">Retrieves an object or its metadata.</p>
 <p class="toc_element">
   <code><a href="#get_media">get_media(bucket, object, ifGenerationNotMatch=None, generation=None, ifMetagenerationMatch=None, ifGenerationMatch=None, ifMetagenerationNotMatch=None, projection=None)</a></code></p>
-<p class="firstline">Retrieves objects or their metadata.</p>
+<p class="firstline">Retrieves an object or its metadata.</p>
 <p class="toc_element">
   <code><a href="#insert">insert(bucket, body=None, projection=None, media_body=None, predefinedAcl=None, ifGenerationMatch=None, ifGenerationNotMatch=None, name=None, ifMetagenerationMatch=None, contentEncoding=None, ifMetagenerationNotMatch=None)</a></code></p>
 <p class="firstline">Stores a new object and metadata.</p>
@@ -174,14 +174,14 @@
         ],
         "id": "A String", # The ID of the object.
         "size": "A String", # Content-Length of the data in bytes.
-        "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+        "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
         "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
         "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
         "etag": "A String", # HTTP 1.1 Entity tag for the object.
         "metadata": { # User-provided metadata, in key/value pairs.
           "a_key": "A String", # An individual metadata entry.
         },
-        "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+        "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
         "contentType": "A String", # Content-Type of the object data.
         "contentDisposition": "A String", # Content-Disposition of the object data.
         "contentLanguage": "A String", # Content-Language of the object data.
@@ -260,14 +260,14 @@
       ],
       "id": "A String", # The ID of the object.
       "size": "A String", # Content-Length of the data in bytes.
-      "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+      "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
       "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
       "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
       "etag": "A String", # HTTP 1.1 Entity tag for the object.
       "metadata": { # User-provided metadata, in key/value pairs.
         "a_key": "A String", # An individual metadata entry.
       },
-      "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+      "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
       "contentType": "A String", # Content-Type of the object data.
       "contentDisposition": "A String", # Content-Disposition of the object data.
       "contentLanguage": "A String", # Content-Language of the object data.
@@ -335,14 +335,14 @@
         ],
         "id": "A String", # The ID of the object.
         "size": "A String", # Content-Length of the data in bytes.
-        "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+        "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
         "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
         "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
         "etag": "A String", # HTTP 1.1 Entity tag for the object.
         "metadata": { # User-provided metadata, in key/value pairs.
           "a_key": "A String", # An individual metadata entry.
         },
-        "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+        "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
         "contentType": "A String", # Content-Type of the object data.
         "contentDisposition": "A String", # Content-Disposition of the object data.
         "contentLanguage": "A String", # Content-Language of the object data.
@@ -436,14 +436,14 @@
     ],
     "id": "A String", # The ID of the object.
     "size": "A String", # Content-Length of the data in bytes.
-    "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+    "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
     "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
     "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
     "etag": "A String", # HTTP 1.1 Entity tag for the object.
     "metadata": { # User-provided metadata, in key/value pairs.
       "a_key": "A String", # An individual metadata entry.
     },
-    "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+    "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
     "contentType": "A String", # Content-Type of the object data.
     "contentDisposition": "A String", # Content-Disposition of the object data.
     "contentLanguage": "A String", # Content-Language of the object data.
@@ -523,14 +523,14 @@
       ],
       "id": "A String", # The ID of the object.
       "size": "A String", # Content-Length of the data in bytes.
-      "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+      "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
       "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
       "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
       "etag": "A String", # HTTP 1.1 Entity tag for the object.
       "metadata": { # User-provided metadata, in key/value pairs.
         "a_key": "A String", # An individual metadata entry.
       },
-      "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+      "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
       "contentType": "A String", # Content-Type of the object data.
       "contentDisposition": "A String", # Content-Disposition of the object data.
       "contentLanguage": "A String", # Content-Language of the object data.
@@ -598,14 +598,14 @@
     ],
     "id": "A String", # The ID of the object.
     "size": "A String", # Content-Length of the data in bytes.
-    "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+    "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
     "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
     "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
     "etag": "A String", # HTTP 1.1 Entity tag for the object.
     "metadata": { # User-provided metadata, in key/value pairs.
       "a_key": "A String", # An individual metadata entry.
     },
-    "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+    "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
     "contentType": "A String", # Content-Type of the object data.
     "contentDisposition": "A String", # Content-Disposition of the object data.
     "contentLanguage": "A String", # Content-Language of the object data.
@@ -663,7 +663,7 @@
 
 <div class="method">
     <code class="details" id="get">get(bucket, object, ifGenerationNotMatch=None, generation=None, ifMetagenerationMatch=None, ifGenerationMatch=None, ifMetagenerationNotMatch=None, projection=None)</code>
-  <pre>Retrieves objects or their metadata.
+  <pre>Retrieves an object or its metadata.
 
 Args:
   bucket: string, Name of the bucket in which the object resides. (required)
@@ -723,14 +723,14 @@
       ],
       "id": "A String", # The ID of the object.
       "size": "A String", # Content-Length of the data in bytes.
-      "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+      "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
       "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
       "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
       "etag": "A String", # HTTP 1.1 Entity tag for the object.
       "metadata": { # User-provided metadata, in key/value pairs.
         "a_key": "A String", # An individual metadata entry.
       },
-      "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+      "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
       "contentType": "A String", # Content-Type of the object data.
       "contentDisposition": "A String", # Content-Disposition of the object data.
       "contentLanguage": "A String", # Content-Language of the object data.
@@ -746,7 +746,7 @@
 
 <div class="method">
     <code class="details" id="get_media">get_media(bucket, object, ifGenerationNotMatch=None, generation=None, ifMetagenerationMatch=None, ifGenerationMatch=None, ifMetagenerationNotMatch=None, projection=None)</code>
-  <pre>Retrieves objects or their metadata.
+  <pre>Retrieves an object or its metadata.
 
 Args:
   bucket: string, Name of the bucket in which the object resides. (required)
@@ -818,14 +818,14 @@
     ],
     "id": "A String", # The ID of the object.
     "size": "A String", # Content-Length of the data in bytes.
-    "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+    "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
     "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
     "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
     "etag": "A String", # HTTP 1.1 Entity tag for the object.
     "metadata": { # User-provided metadata, in key/value pairs.
       "a_key": "A String", # An individual metadata entry.
     },
-    "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+    "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
     "contentType": "A String", # Content-Type of the object data.
     "contentDisposition": "A String", # Content-Disposition of the object data.
     "contentLanguage": "A String", # Content-Language of the object data.
@@ -903,14 +903,14 @@
       ],
       "id": "A String", # The ID of the object.
       "size": "A String", # Content-Length of the data in bytes.
-      "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+      "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
       "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
       "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
       "etag": "A String", # HTTP 1.1 Entity tag for the object.
       "metadata": { # User-provided metadata, in key/value pairs.
         "a_key": "A String", # An individual metadata entry.
       },
-      "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+      "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
       "contentType": "A String", # Content-Type of the object data.
       "contentDisposition": "A String", # Content-Disposition of the object data.
       "contentLanguage": "A String", # Content-Language of the object data.
@@ -975,14 +975,14 @@
     ],
     "id": "A String", # The ID of the object.
     "size": "A String", # Content-Length of the data in bytes.
-    "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+    "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
     "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
     "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
     "etag": "A String", # HTTP 1.1 Entity tag for the object.
     "metadata": { # User-provided metadata, in key/value pairs.
       "a_key": "A String", # An individual metadata entry.
     },
-    "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+    "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
     "contentType": "A String", # Content-Type of the object data.
     "contentDisposition": "A String", # Content-Disposition of the object data.
     "contentLanguage": "A String", # Content-Language of the object data.
@@ -1085,14 +1085,14 @@
           ],
           "id": "A String", # The ID of the object.
           "size": "A String", # Content-Length of the data in bytes.
-          "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+          "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
           "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
           "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
           "etag": "A String", # HTTP 1.1 Entity tag for the object.
           "metadata": { # User-provided metadata, in key/value pairs.
             "a_key": "A String", # An individual metadata entry.
           },
-          "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+          "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
           "contentType": "A String", # Content-Type of the object data.
           "contentDisposition": "A String", # Content-Disposition of the object data.
           "contentLanguage": "A String", # Content-Language of the object data.
@@ -1178,14 +1178,14 @@
     ],
     "id": "A String", # The ID of the object.
     "size": "A String", # Content-Length of the data in bytes.
-    "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+    "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
     "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
     "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
     "etag": "A String", # HTTP 1.1 Entity tag for the object.
     "metadata": { # User-provided metadata, in key/value pairs.
       "a_key": "A String", # An individual metadata entry.
     },
-    "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+    "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
     "contentType": "A String", # Content-Type of the object data.
     "contentDisposition": "A String", # Content-Disposition of the object data.
     "contentLanguage": "A String", # Content-Language of the object data.
@@ -1261,14 +1261,14 @@
       ],
       "id": "A String", # The ID of the object.
       "size": "A String", # Content-Length of the data in bytes.
-      "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+      "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
       "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
       "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
       "etag": "A String", # HTTP 1.1 Entity tag for the object.
       "metadata": { # User-provided metadata, in key/value pairs.
         "a_key": "A String", # An individual metadata entry.
       },
-      "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+      "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
       "contentType": "A String", # Content-Type of the object data.
       "contentDisposition": "A String", # Content-Disposition of the object data.
       "contentLanguage": "A String", # Content-Language of the object data.
@@ -1334,14 +1334,14 @@
     ],
     "id": "A String", # The ID of the object.
     "size": "A String", # Content-Length of the data in bytes.
-    "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+    "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
     "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
     "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
     "etag": "A String", # HTTP 1.1 Entity tag for the object.
     "metadata": { # User-provided metadata, in key/value pairs.
       "a_key": "A String", # An individual metadata entry.
     },
-    "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+    "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
     "contentType": "A String", # Content-Type of the object data.
     "contentDisposition": "A String", # Content-Disposition of the object data.
     "contentLanguage": "A String", # Content-Language of the object data.
@@ -1417,14 +1417,14 @@
       ],
       "id": "A String", # The ID of the object.
       "size": "A String", # Content-Length of the data in bytes.
-      "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+      "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
       "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
       "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
       "etag": "A String", # HTTP 1.1 Entity tag for the object.
       "metadata": { # User-provided metadata, in key/value pairs.
         "a_key": "A String", # An individual metadata entry.
       },
-      "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+      "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
       "contentType": "A String", # Content-Type of the object data.
       "contentDisposition": "A String", # Content-Disposition of the object data.
       "contentLanguage": "A String", # Content-Language of the object data.
@@ -1490,14 +1490,14 @@
     ],
     "id": "A String", # The ID of the object.
     "size": "A String", # Content-Length of the data in bytes.
-    "timeDeleted": "A String", # Deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
+    "timeDeleted": "A String", # The deletion time of the object in RFC 3339 format. Will be returned if and only if this version of the object has been deleted.
     "md5Hash": "A String", # MD5 hash of the data; encoded using base64.
     "crc32c": "A String", # CRC32c checksum, as described in RFC 4960, Appendix B; encoded using base64.
     "etag": "A String", # HTTP 1.1 Entity tag for the object.
     "metadata": { # User-provided metadata, in key/value pairs.
       "a_key": "A String", # An individual metadata entry.
     },
-    "updated": "A String", # Modification time of the object metadata in RFC 3339 format.
+    "updated": "A String", # The creation or modification time of the object in RFC 3339 format. For buckets with versioning enabled, changing an object's metadata does not change this property.
     "contentType": "A String", # Content-Type of the object data.
     "contentDisposition": "A String", # Content-Disposition of the object data.
     "contentLanguage": "A String", # Content-Language of the object data.
diff --git a/docs/dyn/tagmanager_v1.accounts.containers.html b/docs/dyn/tagmanager_v1.accounts.containers.html
new file mode 100644
index 0000000..5fa4f97
--- /dev/null
+++ b/docs/dyn/tagmanager_v1.accounts.containers.html
@@ -0,0 +1,345 @@
+<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="tagmanager_v1.html">Tag Manager API</a> . <a href="tagmanager_v1.accounts.html">accounts</a> . <a href="tagmanager_v1.accounts.containers.html">containers</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="tagmanager_v1.accounts.containers.macros.html">macros()</a></code>
+</p>
+<p class="firstline">Returns the macros Resource.</p>
+
+<p class="toc_element">
+  <code><a href="tagmanager_v1.accounts.containers.rules.html">rules()</a></code>
+</p>
+<p class="firstline">Returns the rules Resource.</p>
+
+<p class="toc_element">
+  <code><a href="tagmanager_v1.accounts.containers.tags.html">tags()</a></code>
+</p>
+<p class="firstline">Returns the tags Resource.</p>
+
+<p class="toc_element">
+  <code><a href="tagmanager_v1.accounts.containers.triggers.html">triggers()</a></code>
+</p>
+<p class="firstline">Returns the triggers Resource.</p>
+
+<p class="toc_element">
+  <code><a href="tagmanager_v1.accounts.containers.variables.html">variables()</a></code>
+</p>
+<p class="firstline">Returns the variables Resource.</p>
+
+<p class="toc_element">
+  <code><a href="tagmanager_v1.accounts.containers.versions.html">versions()</a></code>
+</p>
+<p class="firstline">Returns the versions Resource.</p>
+
+<p class="toc_element">
+  <code><a href="#create">create(accountId, body)</a></code></p>
+<p class="firstline">Creates a Container.</p>
+<p class="toc_element">
+  <code><a href="#delete">delete(accountId, containerId)</a></code></p>
+<p class="firstline">Deletes a Container.</p>
+<p class="toc_element">
+  <code><a href="#get">get(accountId, containerId)</a></code></p>
+<p class="firstline">Gets a Container.</p>
+<p class="toc_element">
+  <code><a href="#list">list(accountId)</a></code></p>
+<p class="firstline">Lists all Containers that belongs to a GTM Account.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(accountId, containerId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a Container. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#update">update(accountId, containerId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a Container.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="create">create(accountId, body)</code>
+  <pre>Creates a Container.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Container.
+  "timeZoneId": "A String", # Container Time Zone ID.
+  "timeZoneCountryId": "A String", # Container Country ID.
+  "publicId": "A String", # Container Public ID.
+  "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+  "domainName": [ # Optional list of domain names associated with the Container.
+    "A String",
+  ],
+  "notes": "A String", # Container Notes.
+  "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+    "A String",
+  ],
+  "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+  "accountId": "A String", # GTM Account ID.
+  "name": "A String", # Container display name.
+}
+
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Container.
+    "timeZoneId": "A String", # Container Time Zone ID.
+    "timeZoneCountryId": "A String", # Container Country ID.
+    "publicId": "A String", # Container Public ID.
+    "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+    "domainName": [ # Optional list of domain names associated with the Container.
+      "A String",
+    ],
+    "notes": "A String", # Container Notes.
+    "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+      "A String",
+    ],
+    "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+    "accountId": "A String", # GTM Account ID.
+    "name": "A String", # Container display name.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="delete">delete(accountId, containerId)</code>
+  <pre>Deletes a Container.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(accountId, containerId)</code>
+  <pre>Gets a Container.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Container.
+    "timeZoneId": "A String", # Container Time Zone ID.
+    "timeZoneCountryId": "A String", # Container Country ID.
+    "publicId": "A String", # Container Public ID.
+    "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+    "domainName": [ # Optional list of domain names associated with the Container.
+      "A String",
+    ],
+    "notes": "A String", # Container Notes.
+    "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+      "A String",
+    ],
+    "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+    "accountId": "A String", # GTM Account ID.
+    "name": "A String", # Container display name.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(accountId)</code>
+  <pre>Lists all Containers that belongs to a GTM Account.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # List Containers Response.
+    "containers": [ # All Containers of a GTM Account.
+      { # Represents a Google Tag Manager Container.
+        "timeZoneId": "A String", # Container Time Zone ID.
+        "timeZoneCountryId": "A String", # Container Country ID.
+        "publicId": "A String", # Container Public ID.
+        "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+        "domainName": [ # Optional list of domain names associated with the Container.
+          "A String",
+        ],
+        "notes": "A String", # Container Notes.
+        "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+          "A String",
+        ],
+        "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+        "accountId": "A String", # GTM Account ID.
+        "name": "A String", # Container display name.
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(accountId, containerId, body, fingerprint=None)</code>
+  <pre>Updates a Container. This method supports patch semantics.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Container.
+  "timeZoneId": "A String", # Container Time Zone ID.
+  "timeZoneCountryId": "A String", # Container Country ID.
+  "publicId": "A String", # Container Public ID.
+  "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+  "domainName": [ # Optional list of domain names associated with the Container.
+    "A String",
+  ],
+  "notes": "A String", # Container Notes.
+  "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+    "A String",
+  ],
+  "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+  "accountId": "A String", # GTM Account ID.
+  "name": "A String", # Container display name.
+}
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the container in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Container.
+    "timeZoneId": "A String", # Container Time Zone ID.
+    "timeZoneCountryId": "A String", # Container Country ID.
+    "publicId": "A String", # Container Public ID.
+    "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+    "domainName": [ # Optional list of domain names associated with the Container.
+      "A String",
+    ],
+    "notes": "A String", # Container Notes.
+    "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+      "A String",
+    ],
+    "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+    "accountId": "A String", # GTM Account ID.
+    "name": "A String", # Container display name.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(accountId, containerId, body, fingerprint=None)</code>
+  <pre>Updates a Container.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Container.
+  "timeZoneId": "A String", # Container Time Zone ID.
+  "timeZoneCountryId": "A String", # Container Country ID.
+  "publicId": "A String", # Container Public ID.
+  "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+  "domainName": [ # Optional list of domain names associated with the Container.
+    "A String",
+  ],
+  "notes": "A String", # Container Notes.
+  "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+    "A String",
+  ],
+  "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+  "accountId": "A String", # GTM Account ID.
+  "name": "A String", # Container display name.
+}
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the container in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Container.
+    "timeZoneId": "A String", # Container Time Zone ID.
+    "timeZoneCountryId": "A String", # Container Country ID.
+    "publicId": "A String", # Container Public ID.
+    "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+    "domainName": [ # Optional list of domain names associated with the Container.
+      "A String",
+    ],
+    "notes": "A String", # Container Notes.
+    "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+      "A String",
+    ],
+    "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+    "accountId": "A String", # GTM Account ID.
+    "name": "A String", # Container display name.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/tagmanager_v1.accounts.containers.macros.html b/docs/dyn/tagmanager_v1.accounts.containers.macros.html
new file mode 100644
index 0000000..40e83ef
--- /dev/null
+++ b/docs/dyn/tagmanager_v1.accounts.containers.macros.html
@@ -0,0 +1,473 @@
+<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="tagmanager_v1.html">Tag Manager API</a> . <a href="tagmanager_v1.accounts.html">accounts</a> . <a href="tagmanager_v1.accounts.containers.html">containers</a> . <a href="tagmanager_v1.accounts.containers.macros.html">macros</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#create">create(accountId, containerId, body)</a></code></p>
+<p class="firstline">Creates a GTM Macro.</p>
+<p class="toc_element">
+  <code><a href="#delete">delete(accountId, containerId, macroId)</a></code></p>
+<p class="firstline">Deletes a GTM Macro.</p>
+<p class="toc_element">
+  <code><a href="#get">get(accountId, containerId, macroId)</a></code></p>
+<p class="firstline">Gets a GTM Macro.</p>
+<p class="toc_element">
+  <code><a href="#list">list(accountId, containerId)</a></code></p>
+<p class="firstline">Lists all GTM Macros of a Container.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(accountId, containerId, macroId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a GTM Macro. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#update">update(accountId, containerId, macroId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a GTM Macro.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="create">create(accountId, containerId, body)</code>
+  <pre>Creates a GTM Macro.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Macro.
+  "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+  "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+  "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+  "containerId": "A String", # GTM Container ID.
+  "type": "A String", # GTM Macro Type.
+  "notes": "A String", # User notes on how to apply this macro in the container.
+  "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+    "A String",
+  ],
+  "name": "A String", # Macro display name.
+  "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+    "A String",
+  ],
+  "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+  "parameter": [ # The macro's parameters.
+    { # Represents a Google Tag Manager Parameter.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+  ],
+  "accountId": "A String", # GTM Account ID.
+}
+
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Macro.
+    "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+    "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+    "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+    "containerId": "A String", # GTM Container ID.
+    "type": "A String", # GTM Macro Type.
+    "notes": "A String", # User notes on how to apply this macro in the container.
+    "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+      "A String",
+    ],
+    "name": "A String", # Macro display name.
+    "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+      "A String",
+    ],
+    "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+    "parameter": [ # The macro's parameters.
+      { # Represents a Google Tag Manager Parameter.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+    ],
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="delete">delete(accountId, containerId, macroId)</code>
+  <pre>Deletes a GTM Macro.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  macroId: string, The GTM Macro ID. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(accountId, containerId, macroId)</code>
+  <pre>Gets a GTM Macro.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  macroId: string, The GTM Macro ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Macro.
+    "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+    "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+    "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+    "containerId": "A String", # GTM Container ID.
+    "type": "A String", # GTM Macro Type.
+    "notes": "A String", # User notes on how to apply this macro in the container.
+    "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+      "A String",
+    ],
+    "name": "A String", # Macro display name.
+    "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+      "A String",
+    ],
+    "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+    "parameter": [ # The macro's parameters.
+      { # Represents a Google Tag Manager Parameter.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+    ],
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(accountId, containerId)</code>
+  <pre>Lists all GTM Macros of a Container.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # List Macros Response.
+    "macros": [ # All GTM Macros of a GTM Container.
+      { # Represents a Google Tag Manager Macro.
+        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+        "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+        "containerId": "A String", # GTM Container ID.
+        "type": "A String", # GTM Macro Type.
+        "notes": "A String", # User notes on how to apply this macro in the container.
+        "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+          "A String",
+        ],
+        "name": "A String", # Macro display name.
+        "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+          "A String",
+        ],
+        "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+        "parameter": [ # The macro's parameters.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(accountId, containerId, macroId, body, fingerprint=None)</code>
+  <pre>Updates a GTM Macro. This method supports patch semantics.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  macroId: string, The GTM Macro ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Macro.
+  "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+  "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+  "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+  "containerId": "A String", # GTM Container ID.
+  "type": "A String", # GTM Macro Type.
+  "notes": "A String", # User notes on how to apply this macro in the container.
+  "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+    "A String",
+  ],
+  "name": "A String", # Macro display name.
+  "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+    "A String",
+  ],
+  "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+  "parameter": [ # The macro's parameters.
+    { # Represents a Google Tag Manager Parameter.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+  ],
+  "accountId": "A String", # GTM Account ID.
+}
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the macro in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Macro.
+    "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+    "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+    "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+    "containerId": "A String", # GTM Container ID.
+    "type": "A String", # GTM Macro Type.
+    "notes": "A String", # User notes on how to apply this macro in the container.
+    "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+      "A String",
+    ],
+    "name": "A String", # Macro display name.
+    "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+      "A String",
+    ],
+    "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+    "parameter": [ # The macro's parameters.
+      { # Represents a Google Tag Manager Parameter.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+    ],
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(accountId, containerId, macroId, body, fingerprint=None)</code>
+  <pre>Updates a GTM Macro.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  macroId: string, The GTM Macro ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Macro.
+  "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+  "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+  "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+  "containerId": "A String", # GTM Container ID.
+  "type": "A String", # GTM Macro Type.
+  "notes": "A String", # User notes on how to apply this macro in the container.
+  "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+    "A String",
+  ],
+  "name": "A String", # Macro display name.
+  "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+    "A String",
+  ],
+  "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+  "parameter": [ # The macro's parameters.
+    { # Represents a Google Tag Manager Parameter.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+  ],
+  "accountId": "A String", # GTM Account ID.
+}
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the macro in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Macro.
+    "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+    "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+    "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+    "containerId": "A String", # GTM Container ID.
+    "type": "A String", # GTM Macro Type.
+    "notes": "A String", # User notes on how to apply this macro in the container.
+    "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+      "A String",
+    ],
+    "name": "A String", # Macro display name.
+    "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+      "A String",
+    ],
+    "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+    "parameter": [ # The macro's parameters.
+      { # Represents a Google Tag Manager Parameter.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+    ],
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/tagmanager_v1.accounts.containers.rules.html b/docs/dyn/tagmanager_v1.accounts.containers.rules.html
new file mode 100644
index 0000000..26be6d8
--- /dev/null
+++ b/docs/dyn/tagmanager_v1.accounts.containers.rules.html
@@ -0,0 +1,473 @@
+<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="tagmanager_v1.html">Tag Manager API</a> . <a href="tagmanager_v1.accounts.html">accounts</a> . <a href="tagmanager_v1.accounts.containers.html">containers</a> . <a href="tagmanager_v1.accounts.containers.rules.html">rules</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#create">create(accountId, containerId, body)</a></code></p>
+<p class="firstline">Creates a GTM Rule.</p>
+<p class="toc_element">
+  <code><a href="#delete">delete(accountId, containerId, ruleId)</a></code></p>
+<p class="firstline">Deletes a GTM Rule.</p>
+<p class="toc_element">
+  <code><a href="#get">get(accountId, containerId, ruleId)</a></code></p>
+<p class="firstline">Gets a GTM Rule.</p>
+<p class="toc_element">
+  <code><a href="#list">list(accountId, containerId)</a></code></p>
+<p class="firstline">Lists all GTM Rules of a Container.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(accountId, containerId, ruleId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a GTM Rule. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#update">update(accountId, containerId, ruleId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a GTM Rule.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="create">create(accountId, containerId, body)</code>
+  <pre>Creates a GTM Rule.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Rule.
+  "name": "A String", # Rule display name.
+  "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+  "notes": "A String", # User notes on how to apply this rule in the container.
+  "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+  "accountId": "A String", # GTM Account ID.
+  "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+    { # Represents a predicate.
+      "type": "A String", # The type of operator for this condition.
+      "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+          # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+          # - At this time, the left operand (arg0) must be a reference to a macro.
+          # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+          # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+    },
+  ],
+  "containerId": "A String", # GTM Container ID.
+}
+
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Rule.
+    "name": "A String", # Rule display name.
+    "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+    "notes": "A String", # User notes on how to apply this rule in the container.
+    "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+    "accountId": "A String", # GTM Account ID.
+    "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "containerId": "A String", # GTM Container ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="delete">delete(accountId, containerId, ruleId)</code>
+  <pre>Deletes a GTM Rule.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  ruleId: string, The GTM Rule ID. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(accountId, containerId, ruleId)</code>
+  <pre>Gets a GTM Rule.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  ruleId: string, The GTM Rule ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Rule.
+    "name": "A String", # Rule display name.
+    "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+    "notes": "A String", # User notes on how to apply this rule in the container.
+    "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+    "accountId": "A String", # GTM Account ID.
+    "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "containerId": "A String", # GTM Container ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(accountId, containerId)</code>
+  <pre>Lists all GTM Rules of a Container.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # List Rules Response.
+    "rules": [ # All GTM Rules of a GTM Container.
+      { # Represents a Google Tag Manager Rule.
+        "name": "A String", # Rule display name.
+        "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+        "notes": "A String", # User notes on how to apply this rule in the container.
+        "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+        "accountId": "A String", # GTM Account ID.
+        "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "containerId": "A String", # GTM Container ID.
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(accountId, containerId, ruleId, body, fingerprint=None)</code>
+  <pre>Updates a GTM Rule. This method supports patch semantics.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  ruleId: string, The GTM Rule ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Rule.
+  "name": "A String", # Rule display name.
+  "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+  "notes": "A String", # User notes on how to apply this rule in the container.
+  "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+  "accountId": "A String", # GTM Account ID.
+  "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+    { # Represents a predicate.
+      "type": "A String", # The type of operator for this condition.
+      "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+          # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+          # - At this time, the left operand (arg0) must be a reference to a macro.
+          # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+          # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+    },
+  ],
+  "containerId": "A String", # GTM Container ID.
+}
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the rule in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Rule.
+    "name": "A String", # Rule display name.
+    "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+    "notes": "A String", # User notes on how to apply this rule in the container.
+    "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+    "accountId": "A String", # GTM Account ID.
+    "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "containerId": "A String", # GTM Container ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(accountId, containerId, ruleId, body, fingerprint=None)</code>
+  <pre>Updates a GTM Rule.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  ruleId: string, The GTM Rule ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Rule.
+  "name": "A String", # Rule display name.
+  "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+  "notes": "A String", # User notes on how to apply this rule in the container.
+  "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+  "accountId": "A String", # GTM Account ID.
+  "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+    { # Represents a predicate.
+      "type": "A String", # The type of operator for this condition.
+      "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+          # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+          # - At this time, the left operand (arg0) must be a reference to a macro.
+          # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+          # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+    },
+  ],
+  "containerId": "A String", # GTM Container ID.
+}
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the rule in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Rule.
+    "name": "A String", # Rule display name.
+    "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+    "notes": "A String", # User notes on how to apply this rule in the container.
+    "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+    "accountId": "A String", # GTM Account ID.
+    "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "containerId": "A String", # GTM Container ID.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/tagmanager_v1.accounts.containers.tags.html b/docs/dyn/tagmanager_v1.accounts.containers.tags.html
new file mode 100644
index 0000000..4eec73b
--- /dev/null
+++ b/docs/dyn/tagmanager_v1.accounts.containers.tags.html
@@ -0,0 +1,785 @@
+<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="tagmanager_v1.html">Tag Manager API</a> . <a href="tagmanager_v1.accounts.html">accounts</a> . <a href="tagmanager_v1.accounts.containers.html">containers</a> . <a href="tagmanager_v1.accounts.containers.tags.html">tags</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#create">create(accountId, containerId, body)</a></code></p>
+<p class="firstline">Creates a GTM Tag.</p>
+<p class="toc_element">
+  <code><a href="#delete">delete(accountId, containerId, tagId)</a></code></p>
+<p class="firstline">Deletes a GTM Tag.</p>
+<p class="toc_element">
+  <code><a href="#get">get(accountId, containerId, tagId)</a></code></p>
+<p class="firstline">Gets a GTM Tag.</p>
+<p class="toc_element">
+  <code><a href="#list">list(accountId, containerId)</a></code></p>
+<p class="firstline">Lists all GTM Tags of a Container.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(accountId, containerId, tagId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a GTM Tag. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#update">update(accountId, containerId, tagId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a GTM Tag.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="create">create(accountId, containerId, body)</code>
+  <pre>Creates a GTM Tag.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Tag.
+  "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+  "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+  "containerId": "A String", # GTM Container ID.
+  "type": "A String", # GTM Tag Type.
+  "notes": "A String", # User notes on how to apply this tag in the container.
+  "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+  "name": "A String", # Tag display name.
+  "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+    "A String",
+  ],
+  "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+  "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+  "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+    "A String",
+  ],
+  "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+    "A String",
+  ],
+  "parameter": [ # The tag's parameters.
+    { # Represents a Google Tag Manager Parameter.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+  ],
+  "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+    "A String",
+  ],
+  "accountId": "A String", # GTM Account ID.
+}
+
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Tag.
+    "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+    "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+    "containerId": "A String", # GTM Container ID.
+    "type": "A String", # GTM Tag Type.
+    "notes": "A String", # User notes on how to apply this tag in the container.
+    "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+    "name": "A String", # Tag display name.
+    "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+      "A String",
+    ],
+    "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+    "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+    "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+      "A String",
+    ],
+    "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+      "A String",
+    ],
+    "parameter": [ # The tag's parameters.
+      { # Represents a Google Tag Manager Parameter.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+    ],
+    "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+      "A String",
+    ],
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="delete">delete(accountId, containerId, tagId)</code>
+  <pre>Deletes a GTM Tag.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  tagId: string, The GTM Tag ID. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(accountId, containerId, tagId)</code>
+  <pre>Gets a GTM Tag.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  tagId: string, The GTM Tag ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Tag.
+    "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+    "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+    "containerId": "A String", # GTM Container ID.
+    "type": "A String", # GTM Tag Type.
+    "notes": "A String", # User notes on how to apply this tag in the container.
+    "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+    "name": "A String", # Tag display name.
+    "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+      "A String",
+    ],
+    "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+    "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+    "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+      "A String",
+    ],
+    "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+      "A String",
+    ],
+    "parameter": [ # The tag's parameters.
+      { # Represents a Google Tag Manager Parameter.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+    ],
+    "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+      "A String",
+    ],
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(accountId, containerId)</code>
+  <pre>Lists all GTM Tags of a Container.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # List Tags Response.
+    "tags": [ # All GTM Tags of a GTM Container.
+      { # Represents a Google Tag Manager Tag.
+        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+        "containerId": "A String", # GTM Container ID.
+        "type": "A String", # GTM Tag Type.
+        "notes": "A String", # User notes on how to apply this tag in the container.
+        "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+        "name": "A String", # Tag display name.
+        "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+          "A String",
+        ],
+        "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+        "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+        "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+          "A String",
+        ],
+        "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+          "A String",
+        ],
+        "parameter": [ # The tag's parameters.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+        "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+          "A String",
+        ],
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(accountId, containerId, tagId, body, fingerprint=None)</code>
+  <pre>Updates a GTM Tag. This method supports patch semantics.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  tagId: string, The GTM Tag ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Tag.
+  "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+  "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+  "containerId": "A String", # GTM Container ID.
+  "type": "A String", # GTM Tag Type.
+  "notes": "A String", # User notes on how to apply this tag in the container.
+  "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+  "name": "A String", # Tag display name.
+  "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+    "A String",
+  ],
+  "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+  "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+  "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+    "A String",
+  ],
+  "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+    "A String",
+  ],
+  "parameter": [ # The tag's parameters.
+    { # Represents a Google Tag Manager Parameter.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+  ],
+  "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+    "A String",
+  ],
+  "accountId": "A String", # GTM Account ID.
+}
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the tag in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Tag.
+    "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+    "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+    "containerId": "A String", # GTM Container ID.
+    "type": "A String", # GTM Tag Type.
+    "notes": "A String", # User notes on how to apply this tag in the container.
+    "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+    "name": "A String", # Tag display name.
+    "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+      "A String",
+    ],
+    "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+    "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+    "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+      "A String",
+    ],
+    "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+      "A String",
+    ],
+    "parameter": [ # The tag's parameters.
+      { # Represents a Google Tag Manager Parameter.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+    ],
+    "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+      "A String",
+    ],
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(accountId, containerId, tagId, body, fingerprint=None)</code>
+  <pre>Updates a GTM Tag.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  tagId: string, The GTM Tag ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Tag.
+  "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+  "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+  "containerId": "A String", # GTM Container ID.
+  "type": "A String", # GTM Tag Type.
+  "notes": "A String", # User notes on how to apply this tag in the container.
+  "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+  "name": "A String", # Tag display name.
+  "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+    "A String",
+  ],
+  "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+  "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+  "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+    "A String",
+  ],
+  "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+    "A String",
+  ],
+  "parameter": [ # The tag's parameters.
+    { # Represents a Google Tag Manager Parameter.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+  ],
+  "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+    "A String",
+  ],
+  "accountId": "A String", # GTM Account ID.
+}
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the tag in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Tag.
+    "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+    "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+    "containerId": "A String", # GTM Container ID.
+    "type": "A String", # GTM Tag Type.
+    "notes": "A String", # User notes on how to apply this tag in the container.
+    "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+    "name": "A String", # Tag display name.
+    "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+      "A String",
+    ],
+    "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+    "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+    "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+      "A String",
+    ],
+    "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+      "A String",
+    ],
+    "parameter": [ # The tag's parameters.
+      { # Represents a Google Tag Manager Parameter.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+    ],
+    "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+      "A String",
+    ],
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/tagmanager_v1.accounts.containers.triggers.html b/docs/dyn/tagmanager_v1.accounts.containers.triggers.html
new file mode 100644
index 0000000..29921fe
--- /dev/null
+++ b/docs/dyn/tagmanager_v1.accounts.containers.triggers.html
@@ -0,0 +1,2057 @@
+<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="tagmanager_v1.html">Tag Manager API</a> . <a href="tagmanager_v1.accounts.html">accounts</a> . <a href="tagmanager_v1.accounts.containers.html">containers</a> . <a href="tagmanager_v1.accounts.containers.triggers.html">triggers</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#create">create(accountId, containerId, body)</a></code></p>
+<p class="firstline">Creates a GTM Trigger.</p>
+<p class="toc_element">
+  <code><a href="#delete">delete(accountId, containerId, triggerId)</a></code></p>
+<p class="firstline">Deletes a GTM Trigger.</p>
+<p class="toc_element">
+  <code><a href="#get">get(accountId, containerId, triggerId)</a></code></p>
+<p class="firstline">Gets a GTM Trigger.</p>
+<p class="toc_element">
+  <code><a href="#list">list(accountId, containerId)</a></code></p>
+<p class="firstline">Lists all GTM Triggers of a Container.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(accountId, containerId, triggerId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a GTM Trigger. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#update">update(accountId, containerId, triggerId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a GTM Trigger.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="create">create(accountId, containerId, body)</code>
+  <pre>Creates a GTM Trigger.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Trigger
+  "filter": [ # The trigger will only fire iff all Conditions are true.
+    { # Represents a predicate.
+      "type": "A String", # The type of operator for this condition.
+      "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+          # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+          # - At this time, the left operand (arg0) must be a reference to a macro.
+          # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+          # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+    },
+  ],
+  "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "containerId": "A String", # GTM Container ID.
+  "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+  "name": "A String", # Trigger display name.
+  "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "autoEventFilter": [ # Used in the case of auto event tracking.
+    { # Represents a predicate.
+      "type": "A String", # The type of operator for this condition.
+      "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+          # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+          # - At this time, the left operand (arg0) must be a reference to a macro.
+          # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+          # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+    },
+  ],
+  "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+  "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+    { # Represents a predicate.
+      "type": "A String", # The type of operator for this condition.
+      "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+          # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+          # - At this time, the left operand (arg0) must be a reference to a macro.
+          # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+          # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+    },
+  ],
+  "type": "A String", # Defines the data layer event that causes this trigger.
+  "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "accountId": "A String", # GTM Account ID.
+}
+
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Trigger
+    "filter": [ # The trigger will only fire iff all Conditions are true.
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "containerId": "A String", # GTM Container ID.
+    "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+    "name": "A String", # Trigger display name.
+    "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "autoEventFilter": [ # Used in the case of auto event tracking.
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+    "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "type": "A String", # Defines the data layer event that causes this trigger.
+    "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="delete">delete(accountId, containerId, triggerId)</code>
+  <pre>Deletes a GTM Trigger.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  triggerId: string, The GTM Trigger ID. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(accountId, containerId, triggerId)</code>
+  <pre>Gets a GTM Trigger.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  triggerId: string, The GTM Trigger ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Trigger
+    "filter": [ # The trigger will only fire iff all Conditions are true.
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "containerId": "A String", # GTM Container ID.
+    "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+    "name": "A String", # Trigger display name.
+    "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "autoEventFilter": [ # Used in the case of auto event tracking.
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+    "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "type": "A String", # Defines the data layer event that causes this trigger.
+    "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(accountId, containerId)</code>
+  <pre>Lists all GTM Triggers of a Container.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # List triggers response.
+    "triggers": [ # All GTM Triggers of a GTM Container.
+      { # Represents a Google Tag Manager Trigger
+        "filter": [ # The trigger will only fire iff all Conditions are true.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "containerId": "A String", # GTM Container ID.
+        "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+        "name": "A String", # Trigger display name.
+        "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "autoEventFilter": [ # Used in the case of auto event tracking.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+        "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "type": "A String", # Defines the data layer event that causes this trigger.
+        "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(accountId, containerId, triggerId, body, fingerprint=None)</code>
+  <pre>Updates a GTM Trigger. This method supports patch semantics.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  triggerId: string, The GTM Trigger ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Trigger
+  "filter": [ # The trigger will only fire iff all Conditions are true.
+    { # Represents a predicate.
+      "type": "A String", # The type of operator for this condition.
+      "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+          # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+          # - At this time, the left operand (arg0) must be a reference to a macro.
+          # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+          # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+    },
+  ],
+  "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "containerId": "A String", # GTM Container ID.
+  "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+  "name": "A String", # Trigger display name.
+  "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "autoEventFilter": [ # Used in the case of auto event tracking.
+    { # Represents a predicate.
+      "type": "A String", # The type of operator for this condition.
+      "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+          # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+          # - At this time, the left operand (arg0) must be a reference to a macro.
+          # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+          # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+    },
+  ],
+  "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+  "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+    { # Represents a predicate.
+      "type": "A String", # The type of operator for this condition.
+      "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+          # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+          # - At this time, the left operand (arg0) must be a reference to a macro.
+          # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+          # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+    },
+  ],
+  "type": "A String", # Defines the data layer event that causes this trigger.
+  "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "accountId": "A String", # GTM Account ID.
+}
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the trigger in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Trigger
+    "filter": [ # The trigger will only fire iff all Conditions are true.
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "containerId": "A String", # GTM Container ID.
+    "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+    "name": "A String", # Trigger display name.
+    "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "autoEventFilter": [ # Used in the case of auto event tracking.
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+    "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "type": "A String", # Defines the data layer event that causes this trigger.
+    "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(accountId, containerId, triggerId, body, fingerprint=None)</code>
+  <pre>Updates a GTM Trigger.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  triggerId: string, The GTM Trigger ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Trigger
+  "filter": [ # The trigger will only fire iff all Conditions are true.
+    { # Represents a predicate.
+      "type": "A String", # The type of operator for this condition.
+      "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+          # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+          # - At this time, the left operand (arg0) must be a reference to a macro.
+          # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+          # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+    },
+  ],
+  "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "containerId": "A String", # GTM Container ID.
+  "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+  "name": "A String", # Trigger display name.
+  "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "autoEventFilter": [ # Used in the case of auto event tracking.
+    { # Represents a predicate.
+      "type": "A String", # The type of operator for this condition.
+      "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+          # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+          # - At this time, the left operand (arg0) must be a reference to a macro.
+          # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+          # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+    },
+  ],
+  "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+  "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+    { # Represents a predicate.
+      "type": "A String", # The type of operator for this condition.
+      "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+          # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+          # - At this time, the left operand (arg0) must be a reference to a macro.
+          # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+          # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+    },
+  ],
+  "type": "A String", # Defines the data layer event that causes this trigger.
+  "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+      # Object with schema name: Parameter
+    ],
+    "list": [ # This list parameter's parameters (keys will be ignored).
+      # Object with schema name: Parameter
+    ],
+    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+    "type": "A String", # The parameter type. Valid values are:
+        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+        # - integer: The value represents a 64-bit signed integer value, in base 10
+        # - list: A list of parameters should be specified
+        # - map: A map of parameters should be specified
+        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+  },
+  "accountId": "A String", # GTM Account ID.
+}
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the trigger in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Trigger
+    "filter": [ # The trigger will only fire iff all Conditions are true.
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "containerId": "A String", # GTM Container ID.
+    "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+    "name": "A String", # Trigger display name.
+    "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "autoEventFilter": [ # Used in the case of auto event tracking.
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+    "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+      { # Represents a predicate.
+        "type": "A String", # The type of operator for this condition.
+        "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+            # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+            # - At this time, the left operand (arg0) must be a reference to a macro.
+            # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+            # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+      },
+    ],
+    "type": "A String", # Defines the data layer event that causes this trigger.
+    "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/tagmanager_v1.accounts.containers.variables.html b/docs/dyn/tagmanager_v1.accounts.containers.variables.html
new file mode 100644
index 0000000..cc00cc4
--- /dev/null
+++ b/docs/dyn/tagmanager_v1.accounts.containers.variables.html
@@ -0,0 +1,473 @@
+<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="tagmanager_v1.html">Tag Manager API</a> . <a href="tagmanager_v1.accounts.html">accounts</a> . <a href="tagmanager_v1.accounts.containers.html">containers</a> . <a href="tagmanager_v1.accounts.containers.variables.html">variables</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#create">create(accountId, containerId, body)</a></code></p>
+<p class="firstline">Creates a GTM Variable.</p>
+<p class="toc_element">
+  <code><a href="#delete">delete(accountId, containerId, variableId)</a></code></p>
+<p class="firstline">Deletes a GTM Variable.</p>
+<p class="toc_element">
+  <code><a href="#get">get(accountId, containerId, variableId)</a></code></p>
+<p class="firstline">Gets a GTM Variable.</p>
+<p class="toc_element">
+  <code><a href="#list">list(accountId, containerId)</a></code></p>
+<p class="firstline">Lists all GTM Variables of a Container.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(accountId, containerId, variableId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a GTM Variable. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#update">update(accountId, containerId, variableId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a GTM Variable.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="create">create(accountId, containerId, body)</code>
+  <pre>Creates a GTM Variable.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Variable.
+  "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a variable.
+  "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a variable.
+  "name": "A String", # Variable display name.
+  "variableId": "A String", # The Variable ID uniquely identifies the GTM Variable.
+  "type": "A String", # GTM Variable Type.
+  "notes": "A String", # User notes on how to apply this variable in the container.
+  "enablingTriggerId": [ # For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.
+    "A String",
+  ],
+  "fingerprint": "A String", # The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.
+  "accountId": "A String", # GTM Account ID.
+  "parameter": [ # The variable's parameters.
+    { # Represents a Google Tag Manager Parameter.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+  ],
+  "disablingTriggerId": [ # For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.
+    "A String",
+  ],
+  "containerId": "A String", # GTM Container ID.
+}
+
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Variable.
+    "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a variable.
+    "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a variable.
+    "name": "A String", # Variable display name.
+    "variableId": "A String", # The Variable ID uniquely identifies the GTM Variable.
+    "type": "A String", # GTM Variable Type.
+    "notes": "A String", # User notes on how to apply this variable in the container.
+    "enablingTriggerId": [ # For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.
+      "A String",
+    ],
+    "fingerprint": "A String", # The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.
+    "accountId": "A String", # GTM Account ID.
+    "parameter": [ # The variable's parameters.
+      { # Represents a Google Tag Manager Parameter.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+    ],
+    "disablingTriggerId": [ # For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.
+      "A String",
+    ],
+    "containerId": "A String", # GTM Container ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="delete">delete(accountId, containerId, variableId)</code>
+  <pre>Deletes a GTM Variable.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  variableId: string, The GTM Variable ID. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(accountId, containerId, variableId)</code>
+  <pre>Gets a GTM Variable.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  variableId: string, The GTM Variable ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Variable.
+    "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a variable.
+    "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a variable.
+    "name": "A String", # Variable display name.
+    "variableId": "A String", # The Variable ID uniquely identifies the GTM Variable.
+    "type": "A String", # GTM Variable Type.
+    "notes": "A String", # User notes on how to apply this variable in the container.
+    "enablingTriggerId": [ # For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.
+      "A String",
+    ],
+    "fingerprint": "A String", # The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.
+    "accountId": "A String", # GTM Account ID.
+    "parameter": [ # The variable's parameters.
+      { # Represents a Google Tag Manager Parameter.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+    ],
+    "disablingTriggerId": [ # For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.
+      "A String",
+    ],
+    "containerId": "A String", # GTM Container ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(accountId, containerId)</code>
+  <pre>Lists all GTM Variables of a Container.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # List Variables Response.
+    "variables": [ # All GTM Variables of a GTM Container.
+      { # Represents a Google Tag Manager Variable.
+        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a variable.
+        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a variable.
+        "name": "A String", # Variable display name.
+        "variableId": "A String", # The Variable ID uniquely identifies the GTM Variable.
+        "type": "A String", # GTM Variable Type.
+        "notes": "A String", # User notes on how to apply this variable in the container.
+        "enablingTriggerId": [ # For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.
+          "A String",
+        ],
+        "fingerprint": "A String", # The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.
+        "accountId": "A String", # GTM Account ID.
+        "parameter": [ # The variable's parameters.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+        "disablingTriggerId": [ # For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.
+          "A String",
+        ],
+        "containerId": "A String", # GTM Container ID.
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(accountId, containerId, variableId, body, fingerprint=None)</code>
+  <pre>Updates a GTM Variable. This method supports patch semantics.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  variableId: string, The GTM Variable ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Variable.
+  "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a variable.
+  "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a variable.
+  "name": "A String", # Variable display name.
+  "variableId": "A String", # The Variable ID uniquely identifies the GTM Variable.
+  "type": "A String", # GTM Variable Type.
+  "notes": "A String", # User notes on how to apply this variable in the container.
+  "enablingTriggerId": [ # For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.
+    "A String",
+  ],
+  "fingerprint": "A String", # The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.
+  "accountId": "A String", # GTM Account ID.
+  "parameter": [ # The variable's parameters.
+    { # Represents a Google Tag Manager Parameter.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+  ],
+  "disablingTriggerId": [ # For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.
+    "A String",
+  ],
+  "containerId": "A String", # GTM Container ID.
+}
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the variable in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Variable.
+    "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a variable.
+    "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a variable.
+    "name": "A String", # Variable display name.
+    "variableId": "A String", # The Variable ID uniquely identifies the GTM Variable.
+    "type": "A String", # GTM Variable Type.
+    "notes": "A String", # User notes on how to apply this variable in the container.
+    "enablingTriggerId": [ # For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.
+      "A String",
+    ],
+    "fingerprint": "A String", # The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.
+    "accountId": "A String", # GTM Account ID.
+    "parameter": [ # The variable's parameters.
+      { # Represents a Google Tag Manager Parameter.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+    ],
+    "disablingTriggerId": [ # For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.
+      "A String",
+    ],
+    "containerId": "A String", # GTM Container ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(accountId, containerId, variableId, body, fingerprint=None)</code>
+  <pre>Updates a GTM Variable.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  variableId: string, The GTM Variable ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Variable.
+  "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a variable.
+  "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a variable.
+  "name": "A String", # Variable display name.
+  "variableId": "A String", # The Variable ID uniquely identifies the GTM Variable.
+  "type": "A String", # GTM Variable Type.
+  "notes": "A String", # User notes on how to apply this variable in the container.
+  "enablingTriggerId": [ # For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.
+    "A String",
+  ],
+  "fingerprint": "A String", # The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.
+  "accountId": "A String", # GTM Account ID.
+  "parameter": [ # The variable's parameters.
+    { # Represents a Google Tag Manager Parameter.
+      "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+        # Object with schema name: Parameter
+      ],
+      "list": [ # This list parameter's parameters (keys will be ignored).
+        # Object with schema name: Parameter
+      ],
+      "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+      "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+      "type": "A String", # The parameter type. Valid values are:
+          # - boolean: The value represents a boolean, represented as 'true' or 'false'
+          # - integer: The value represents a 64-bit signed integer value, in base 10
+          # - list: A list of parameters should be specified
+          # - map: A map of parameters should be specified
+          # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+    },
+  ],
+  "disablingTriggerId": [ # For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.
+    "A String",
+  ],
+  "containerId": "A String", # GTM Container ID.
+}
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the variable in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Variable.
+    "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a variable.
+    "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a variable.
+    "name": "A String", # Variable display name.
+    "variableId": "A String", # The Variable ID uniquely identifies the GTM Variable.
+    "type": "A String", # GTM Variable Type.
+    "notes": "A String", # User notes on how to apply this variable in the container.
+    "enablingTriggerId": [ # For mobile containers only: A list of trigger IDs for enabling conditional variables; the variable is enabled if one of the enabling triggers is true while all the disabling triggers are false. Treated as an unordered set.
+      "A String",
+    ],
+    "fingerprint": "A String", # The fingerprint of the GTM Variable as computed at storage time. This value is recomputed whenever the variable is modified.
+    "accountId": "A String", # GTM Account ID.
+    "parameter": [ # The variable's parameters.
+      { # Represents a Google Tag Manager Parameter.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+    ],
+    "disablingTriggerId": [ # For mobile containers only: A list of trigger IDs for disabling conditional variables; the variable is enabled if one of the enabling trigger is true while all the disabling trigger are false. Treated as an unordered set.
+      "A String",
+    ],
+    "containerId": "A String", # GTM Container ID.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/tagmanager_v1.accounts.containers.versions.html b/docs/dyn/tagmanager_v1.accounts.containers.versions.html
new file mode 100644
index 0000000..9393ee0
--- /dev/null
+++ b/docs/dyn/tagmanager_v1.accounts.containers.versions.html
@@ -0,0 +1,4370 @@
+<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="tagmanager_v1.html">Tag Manager API</a> . <a href="tagmanager_v1.accounts.html">accounts</a> . <a href="tagmanager_v1.accounts.containers.html">containers</a> . <a href="tagmanager_v1.accounts.containers.versions.html">versions</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#create">create(accountId, containerId, body)</a></code></p>
+<p class="firstline">Creates a Container Version.</p>
+<p class="toc_element">
+  <code><a href="#delete">delete(accountId, containerId, containerVersionId)</a></code></p>
+<p class="firstline">Deletes a Container Version.</p>
+<p class="toc_element">
+  <code><a href="#get">get(accountId, containerId, containerVersionId)</a></code></p>
+<p class="firstline">Gets a Container Version.</p>
+<p class="toc_element">
+  <code><a href="#list">list(accountId, containerId, headers=None)</a></code></p>
+<p class="firstline">Lists all Container Versions of a GTM Container.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(accountId, containerId, containerVersionId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a Container Version. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#publish">publish(accountId, containerId, containerVersionId, fingerprint=None)</a></code></p>
+<p class="firstline">Publishes a Container Version.</p>
+<p class="toc_element">
+  <code><a href="#restore">restore(accountId, containerId, containerVersionId)</a></code></p>
+<p class="firstline">Restores a Container Version. This will overwrite the container's current configuration (including its macros, rules and tags). The operation will not have any effect on the version that is being served (i.e. the published version).</p>
+<p class="toc_element">
+  <code><a href="#undelete">undelete(accountId, containerId, containerVersionId)</a></code></p>
+<p class="firstline">Undeletes a Container Version.</p>
+<p class="toc_element">
+  <code><a href="#update">update(accountId, containerId, containerVersionId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a Container Version.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="create">create(accountId, containerId, body)</code>
+  <pre>Creates a Container Version.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Options for new container versions.
+    "notes": "A String", # The notes of the container version to be created.
+    "name": "A String", # The name of the container version to be created.
+    "quickPreview": True or False, # The creation of this version may be for quick preview and shouldn't be saved.
+  }
+
+
+Returns:
+  An object of the form:
+
+    { # Create container versions response.
+    "containerVersion": { # Represents a Google Tag Manager Container Version. # The container version created.
+      "container": { # Represents a Google Tag Manager Container. # The container that this version was taken from.
+        "timeZoneId": "A String", # Container Time Zone ID.
+        "timeZoneCountryId": "A String", # Container Country ID.
+        "publicId": "A String", # Container Public ID.
+        "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+        "domainName": [ # Optional list of domain names associated with the Container.
+          "A String",
+        ],
+        "notes": "A String", # Container Notes.
+        "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+          "A String",
+        ],
+        "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+        "accountId": "A String", # GTM Account ID.
+        "name": "A String", # Container display name.
+      },
+      "containerId": "A String", # GTM Container ID.
+      "deleted": True or False, # A value of true indicates this container version has been deleted.
+      "macro": [ # The macros in the container that this version was taken from.
+        { # Represents a Google Tag Manager Macro.
+          "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+          "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+          "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+          "containerId": "A String", # GTM Container ID.
+          "type": "A String", # GTM Macro Type.
+          "notes": "A String", # User notes on how to apply this macro in the container.
+          "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+            "A String",
+          ],
+          "name": "A String", # Macro display name.
+          "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+            "A String",
+          ],
+          "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+          "parameter": [ # The macro's parameters.
+            { # Represents a Google Tag Manager Parameter.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+          ],
+          "accountId": "A String", # GTM Account ID.
+        },
+      ],
+      "notes": "A String", # User notes on how to apply this container version in the container.
+      "rule": [ # The rules in the container that this version was taken from.
+        { # Represents a Google Tag Manager Rule.
+          "name": "A String", # Rule display name.
+          "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+          "notes": "A String", # User notes on how to apply this rule in the container.
+          "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+          "accountId": "A String", # GTM Account ID.
+          "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+            { # Represents a predicate.
+              "type": "A String", # The type of operator for this condition.
+              "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                  # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                  # - At this time, the left operand (arg0) must be a reference to a macro.
+                  # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                  # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+                { # Represents a Google Tag Manager Parameter.
+                  "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                    # Object with schema name: Parameter
+                  ],
+                  "list": [ # This list parameter's parameters (keys will be ignored).
+                    # Object with schema name: Parameter
+                  ],
+                  "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                  "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                  "type": "A String", # The parameter type. Valid values are:
+                      # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                      # - integer: The value represents a 64-bit signed integer value, in base 10
+                      # - list: A list of parameters should be specified
+                      # - map: A map of parameters should be specified
+                      # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+                },
+              ],
+            },
+          ],
+          "containerId": "A String", # GTM Container ID.
+        },
+      ],
+      "name": "A String", # Container version display name.
+      "tag": [ # The tags in the container that this version was taken from.
+        { # Represents a Google Tag Manager Tag.
+          "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+          "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+          "containerId": "A String", # GTM Container ID.
+          "type": "A String", # GTM Tag Type.
+          "notes": "A String", # User notes on how to apply this tag in the container.
+          "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+          "name": "A String", # Tag display name.
+          "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+            "A String",
+          ],
+          "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+          "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+          "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+            "A String",
+          ],
+          "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+            "A String",
+          ],
+          "parameter": [ # The tag's parameters.
+            { # Represents a Google Tag Manager Parameter.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+          ],
+          "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+            "A String",
+          ],
+          "accountId": "A String", # GTM Account ID.
+        },
+      ],
+      "containerVersionId": "A String", # The Container Version ID uniquely identifies the GTM Container Version.
+      "fingerprint": "A String", # The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified.
+      "trigger": [ # The triggers in the container that this version was taken from.
+        { # Represents a Google Tag Manager Trigger
+          "filter": [ # The trigger will only fire iff all Conditions are true.
+            { # Represents a predicate.
+              "type": "A String", # The type of operator for this condition.
+              "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                  # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                  # - At this time, the left operand (arg0) must be a reference to a macro.
+                  # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                  # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+                { # Represents a Google Tag Manager Parameter.
+                  "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                    # Object with schema name: Parameter
+                  ],
+                  "list": [ # This list parameter's parameters (keys will be ignored).
+                    # Object with schema name: Parameter
+                  ],
+                  "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                  "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                  "type": "A String", # The parameter type. Valid values are:
+                      # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                      # - integer: The value represents a 64-bit signed integer value, in base 10
+                      # - list: A list of parameters should be specified
+                      # - map: A map of parameters should be specified
+                      # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+                },
+              ],
+            },
+          ],
+          "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "containerId": "A String", # GTM Container ID.
+          "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+          "name": "A String", # Trigger display name.
+          "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "autoEventFilter": [ # Used in the case of auto event tracking.
+            { # Represents a predicate.
+              "type": "A String", # The type of operator for this condition.
+              "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                  # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                  # - At this time, the left operand (arg0) must be a reference to a macro.
+                  # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                  # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+                { # Represents a Google Tag Manager Parameter.
+                  "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                    # Object with schema name: Parameter
+                  ],
+                  "list": [ # This list parameter's parameters (keys will be ignored).
+                    # Object with schema name: Parameter
+                  ],
+                  "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                  "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                  "type": "A String", # The parameter type. Valid values are:
+                      # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                      # - integer: The value represents a 64-bit signed integer value, in base 10
+                      # - list: A list of parameters should be specified
+                      # - map: A map of parameters should be specified
+                      # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+                },
+              ],
+            },
+          ],
+          "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+          "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+            { # Represents a predicate.
+              "type": "A String", # The type of operator for this condition.
+              "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                  # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                  # - At this time, the left operand (arg0) must be a reference to a macro.
+                  # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                  # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+                { # Represents a Google Tag Manager Parameter.
+                  "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                    # Object with schema name: Parameter
+                  ],
+                  "list": [ # This list parameter's parameters (keys will be ignored).
+                    # Object with schema name: Parameter
+                  ],
+                  "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                  "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                  "type": "A String", # The parameter type. Valid values are:
+                      # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                      # - integer: The value represents a 64-bit signed integer value, in base 10
+                      # - list: A list of parameters should be specified
+                      # - map: A map of parameters should be specified
+                      # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+                },
+              ],
+            },
+          ],
+          "type": "A String", # Defines the data layer event that causes this trigger.
+          "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "accountId": "A String", # GTM Account ID.
+        },
+      ],
+      "accountId": "A String", # GTM Account ID.
+    },
+    "compilerError": True or False, # Compiler errors or not.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="delete">delete(accountId, containerId, containerVersionId)</code>
+  <pre>Deletes a Container Version.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  containerVersionId: string, The GTM Container Version ID. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(accountId, containerId, containerVersionId)</code>
+  <pre>Gets a Container Version.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  containerVersionId: string, The GTM Container Version ID. Specify published to retrieve the currently published version. (required)
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Container Version.
+    "container": { # Represents a Google Tag Manager Container. # The container that this version was taken from.
+      "timeZoneId": "A String", # Container Time Zone ID.
+      "timeZoneCountryId": "A String", # Container Country ID.
+      "publicId": "A String", # Container Public ID.
+      "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+      "domainName": [ # Optional list of domain names associated with the Container.
+        "A String",
+      ],
+      "notes": "A String", # Container Notes.
+      "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+        "A String",
+      ],
+      "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+      "accountId": "A String", # GTM Account ID.
+      "name": "A String", # Container display name.
+    },
+    "containerId": "A String", # GTM Container ID.
+    "deleted": True or False, # A value of true indicates this container version has been deleted.
+    "macro": [ # The macros in the container that this version was taken from.
+      { # Represents a Google Tag Manager Macro.
+        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+        "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+        "containerId": "A String", # GTM Container ID.
+        "type": "A String", # GTM Macro Type.
+        "notes": "A String", # User notes on how to apply this macro in the container.
+        "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+          "A String",
+        ],
+        "name": "A String", # Macro display name.
+        "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+          "A String",
+        ],
+        "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+        "parameter": [ # The macro's parameters.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "notes": "A String", # User notes on how to apply this container version in the container.
+    "rule": [ # The rules in the container that this version was taken from.
+      { # Represents a Google Tag Manager Rule.
+        "name": "A String", # Rule display name.
+        "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+        "notes": "A String", # User notes on how to apply this rule in the container.
+        "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+        "accountId": "A String", # GTM Account ID.
+        "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "containerId": "A String", # GTM Container ID.
+      },
+    ],
+    "name": "A String", # Container version display name.
+    "tag": [ # The tags in the container that this version was taken from.
+      { # Represents a Google Tag Manager Tag.
+        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+        "containerId": "A String", # GTM Container ID.
+        "type": "A String", # GTM Tag Type.
+        "notes": "A String", # User notes on how to apply this tag in the container.
+        "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+        "name": "A String", # Tag display name.
+        "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+          "A String",
+        ],
+        "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+        "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+        "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+          "A String",
+        ],
+        "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+          "A String",
+        ],
+        "parameter": [ # The tag's parameters.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+        "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+          "A String",
+        ],
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "containerVersionId": "A String", # The Container Version ID uniquely identifies the GTM Container Version.
+    "fingerprint": "A String", # The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified.
+    "trigger": [ # The triggers in the container that this version was taken from.
+      { # Represents a Google Tag Manager Trigger
+        "filter": [ # The trigger will only fire iff all Conditions are true.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "containerId": "A String", # GTM Container ID.
+        "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+        "name": "A String", # Trigger display name.
+        "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "autoEventFilter": [ # Used in the case of auto event tracking.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+        "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "type": "A String", # Defines the data layer event that causes this trigger.
+        "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(accountId, containerId, headers=None)</code>
+  <pre>Lists all Container Versions of a GTM Container.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  headers: boolean, Retrieve headers only when true.
+
+Returns:
+  An object of the form:
+
+    { # List container versions response.
+    "containerVersionHeader": [ # All container version headers of a GTM Container.
+      { # Represents a Google Tag Manager Container Version Header.
+        "name": "A String", # Container version display name.
+        "deleted": True or False, # A value of true indicates this container version has been deleted.
+        "numMacros": "A String", # Number of macros in the container version.
+        "numTags": "A String", # Number of tags in the container version.
+        "numRules": "A String", # Number of rules in the container version.
+        "containerVersionId": "A String", # The Container Version ID uniquely identifies the GTM Container Version.
+        "numTriggers": "A String", # Number of triggers in the container version.
+        "accountId": "A String", # GTM Account ID.
+        "containerId": "A String", # GTM Container ID.
+      },
+    ],
+    "containerVersion": [ # All versions of a GTM Container.
+      { # Represents a Google Tag Manager Container Version.
+        "container": { # Represents a Google Tag Manager Container. # The container that this version was taken from.
+          "timeZoneId": "A String", # Container Time Zone ID.
+          "timeZoneCountryId": "A String", # Container Country ID.
+          "publicId": "A String", # Container Public ID.
+          "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+          "domainName": [ # Optional list of domain names associated with the Container.
+            "A String",
+          ],
+          "notes": "A String", # Container Notes.
+          "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+            "A String",
+          ],
+          "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+          "accountId": "A String", # GTM Account ID.
+          "name": "A String", # Container display name.
+        },
+        "containerId": "A String", # GTM Container ID.
+        "deleted": True or False, # A value of true indicates this container version has been deleted.
+        "macro": [ # The macros in the container that this version was taken from.
+          { # Represents a Google Tag Manager Macro.
+            "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+            "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+            "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+            "containerId": "A String", # GTM Container ID.
+            "type": "A String", # GTM Macro Type.
+            "notes": "A String", # User notes on how to apply this macro in the container.
+            "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+              "A String",
+            ],
+            "name": "A String", # Macro display name.
+            "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+              "A String",
+            ],
+            "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+            "parameter": [ # The macro's parameters.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+            "accountId": "A String", # GTM Account ID.
+          },
+        ],
+        "notes": "A String", # User notes on how to apply this container version in the container.
+        "rule": [ # The rules in the container that this version was taken from.
+          { # Represents a Google Tag Manager Rule.
+            "name": "A String", # Rule display name.
+            "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+            "notes": "A String", # User notes on how to apply this rule in the container.
+            "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+            "accountId": "A String", # GTM Account ID.
+            "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+              { # Represents a predicate.
+                "type": "A String", # The type of operator for this condition.
+                "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                    # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                    # - At this time, the left operand (arg0) must be a reference to a macro.
+                    # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                    # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+                  { # Represents a Google Tag Manager Parameter.
+                    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                      # Object with schema name: Parameter
+                    ],
+                    "list": [ # This list parameter's parameters (keys will be ignored).
+                      # Object with schema name: Parameter
+                    ],
+                    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                    "type": "A String", # The parameter type. Valid values are:
+                        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                        # - integer: The value represents a 64-bit signed integer value, in base 10
+                        # - list: A list of parameters should be specified
+                        # - map: A map of parameters should be specified
+                        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+                  },
+                ],
+              },
+            ],
+            "containerId": "A String", # GTM Container ID.
+          },
+        ],
+        "name": "A String", # Container version display name.
+        "tag": [ # The tags in the container that this version was taken from.
+          { # Represents a Google Tag Manager Tag.
+            "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+            "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+            "containerId": "A String", # GTM Container ID.
+            "type": "A String", # GTM Tag Type.
+            "notes": "A String", # User notes on how to apply this tag in the container.
+            "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+            "name": "A String", # Tag display name.
+            "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+            "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+              "A String",
+            ],
+            "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+            "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+            "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+            "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+              "A String",
+            ],
+            "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+              "A String",
+            ],
+            "parameter": [ # The tag's parameters.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+            "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+              "A String",
+            ],
+            "accountId": "A String", # GTM Account ID.
+          },
+        ],
+        "containerVersionId": "A String", # The Container Version ID uniquely identifies the GTM Container Version.
+        "fingerprint": "A String", # The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified.
+        "trigger": [ # The triggers in the container that this version was taken from.
+          { # Represents a Google Tag Manager Trigger
+            "filter": [ # The trigger will only fire iff all Conditions are true.
+              { # Represents a predicate.
+                "type": "A String", # The type of operator for this condition.
+                "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                    # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                    # - At this time, the left operand (arg0) must be a reference to a macro.
+                    # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                    # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+                  { # Represents a Google Tag Manager Parameter.
+                    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                      # Object with schema name: Parameter
+                    ],
+                    "list": [ # This list parameter's parameters (keys will be ignored).
+                      # Object with schema name: Parameter
+                    ],
+                    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                    "type": "A String", # The parameter type. Valid values are:
+                        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                        # - integer: The value represents a 64-bit signed integer value, in base 10
+                        # - list: A list of parameters should be specified
+                        # - map: A map of parameters should be specified
+                        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+                  },
+                ],
+              },
+            ],
+            "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+            "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+            "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+            "containerId": "A String", # GTM Container ID.
+            "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+            "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+            "name": "A String", # Trigger display name.
+            "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+            "autoEventFilter": [ # Used in the case of auto event tracking.
+              { # Represents a predicate.
+                "type": "A String", # The type of operator for this condition.
+                "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                    # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                    # - At this time, the left operand (arg0) must be a reference to a macro.
+                    # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                    # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+                  { # Represents a Google Tag Manager Parameter.
+                    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                      # Object with schema name: Parameter
+                    ],
+                    "list": [ # This list parameter's parameters (keys will be ignored).
+                      # Object with schema name: Parameter
+                    ],
+                    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                    "type": "A String", # The parameter type. Valid values are:
+                        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                        # - integer: The value represents a 64-bit signed integer value, in base 10
+                        # - list: A list of parameters should be specified
+                        # - map: A map of parameters should be specified
+                        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+                  },
+                ],
+              },
+            ],
+            "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+            "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+            "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+            "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+            "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+              { # Represents a predicate.
+                "type": "A String", # The type of operator for this condition.
+                "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                    # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                    # - At this time, the left operand (arg0) must be a reference to a macro.
+                    # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                    # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+                  { # Represents a Google Tag Manager Parameter.
+                    "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                      # Object with schema name: Parameter
+                    ],
+                    "list": [ # This list parameter's parameters (keys will be ignored).
+                      # Object with schema name: Parameter
+                    ],
+                    "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                    "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                    "type": "A String", # The parameter type. Valid values are:
+                        # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                        # - integer: The value represents a 64-bit signed integer value, in base 10
+                        # - list: A list of parameters should be specified
+                        # - map: A map of parameters should be specified
+                        # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+                  },
+                ],
+              },
+            ],
+            "type": "A String", # Defines the data layer event that causes this trigger.
+            "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+            "accountId": "A String", # GTM Account ID.
+          },
+        ],
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(accountId, containerId, containerVersionId, body, fingerprint=None)</code>
+  <pre>Updates a Container Version. This method supports patch semantics.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  containerVersionId: string, The GTM Container Version ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Container Version.
+  "container": { # Represents a Google Tag Manager Container. # The container that this version was taken from.
+    "timeZoneId": "A String", # Container Time Zone ID.
+    "timeZoneCountryId": "A String", # Container Country ID.
+    "publicId": "A String", # Container Public ID.
+    "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+    "domainName": [ # Optional list of domain names associated with the Container.
+      "A String",
+    ],
+    "notes": "A String", # Container Notes.
+    "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+      "A String",
+    ],
+    "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+    "accountId": "A String", # GTM Account ID.
+    "name": "A String", # Container display name.
+  },
+  "containerId": "A String", # GTM Container ID.
+  "deleted": True or False, # A value of true indicates this container version has been deleted.
+  "macro": [ # The macros in the container that this version was taken from.
+    { # Represents a Google Tag Manager Macro.
+      "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+      "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+      "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+      "containerId": "A String", # GTM Container ID.
+      "type": "A String", # GTM Macro Type.
+      "notes": "A String", # User notes on how to apply this macro in the container.
+      "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+        "A String",
+      ],
+      "name": "A String", # Macro display name.
+      "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+        "A String",
+      ],
+      "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+      "parameter": [ # The macro's parameters.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+      "accountId": "A String", # GTM Account ID.
+    },
+  ],
+  "notes": "A String", # User notes on how to apply this container version in the container.
+  "rule": [ # The rules in the container that this version was taken from.
+    { # Represents a Google Tag Manager Rule.
+      "name": "A String", # Rule display name.
+      "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+      "notes": "A String", # User notes on how to apply this rule in the container.
+      "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+      "accountId": "A String", # GTM Account ID.
+      "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+        { # Represents a predicate.
+          "type": "A String", # The type of operator for this condition.
+          "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+              # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+              # - At this time, the left operand (arg0) must be a reference to a macro.
+              # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+              # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+            { # Represents a Google Tag Manager Parameter.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+          ],
+        },
+      ],
+      "containerId": "A String", # GTM Container ID.
+    },
+  ],
+  "name": "A String", # Container version display name.
+  "tag": [ # The tags in the container that this version was taken from.
+    { # Represents a Google Tag Manager Tag.
+      "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+      "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+      "containerId": "A String", # GTM Container ID.
+      "type": "A String", # GTM Tag Type.
+      "notes": "A String", # User notes on how to apply this tag in the container.
+      "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+      "name": "A String", # Tag display name.
+      "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+        "A String",
+      ],
+      "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+      "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+      "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+        "A String",
+      ],
+      "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+        "A String",
+      ],
+      "parameter": [ # The tag's parameters.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+      "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+        "A String",
+      ],
+      "accountId": "A String", # GTM Account ID.
+    },
+  ],
+  "containerVersionId": "A String", # The Container Version ID uniquely identifies the GTM Container Version.
+  "fingerprint": "A String", # The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified.
+  "trigger": [ # The triggers in the container that this version was taken from.
+    { # Represents a Google Tag Manager Trigger
+      "filter": [ # The trigger will only fire iff all Conditions are true.
+        { # Represents a predicate.
+          "type": "A String", # The type of operator for this condition.
+          "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+              # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+              # - At this time, the left operand (arg0) must be a reference to a macro.
+              # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+              # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+            { # Represents a Google Tag Manager Parameter.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+          ],
+        },
+      ],
+      "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "containerId": "A String", # GTM Container ID.
+      "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+      "name": "A String", # Trigger display name.
+      "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "autoEventFilter": [ # Used in the case of auto event tracking.
+        { # Represents a predicate.
+          "type": "A String", # The type of operator for this condition.
+          "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+              # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+              # - At this time, the left operand (arg0) must be a reference to a macro.
+              # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+              # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+            { # Represents a Google Tag Manager Parameter.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+          ],
+        },
+      ],
+      "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+      "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+        { # Represents a predicate.
+          "type": "A String", # The type of operator for this condition.
+          "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+              # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+              # - At this time, the left operand (arg0) must be a reference to a macro.
+              # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+              # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+            { # Represents a Google Tag Manager Parameter.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+          ],
+        },
+      ],
+      "type": "A String", # Defines the data layer event that causes this trigger.
+      "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "accountId": "A String", # GTM Account ID.
+    },
+  ],
+  "accountId": "A String", # GTM Account ID.
+}
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the container version in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Container Version.
+    "container": { # Represents a Google Tag Manager Container. # The container that this version was taken from.
+      "timeZoneId": "A String", # Container Time Zone ID.
+      "timeZoneCountryId": "A String", # Container Country ID.
+      "publicId": "A String", # Container Public ID.
+      "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+      "domainName": [ # Optional list of domain names associated with the Container.
+        "A String",
+      ],
+      "notes": "A String", # Container Notes.
+      "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+        "A String",
+      ],
+      "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+      "accountId": "A String", # GTM Account ID.
+      "name": "A String", # Container display name.
+    },
+    "containerId": "A String", # GTM Container ID.
+    "deleted": True or False, # A value of true indicates this container version has been deleted.
+    "macro": [ # The macros in the container that this version was taken from.
+      { # Represents a Google Tag Manager Macro.
+        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+        "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+        "containerId": "A String", # GTM Container ID.
+        "type": "A String", # GTM Macro Type.
+        "notes": "A String", # User notes on how to apply this macro in the container.
+        "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+          "A String",
+        ],
+        "name": "A String", # Macro display name.
+        "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+          "A String",
+        ],
+        "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+        "parameter": [ # The macro's parameters.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "notes": "A String", # User notes on how to apply this container version in the container.
+    "rule": [ # The rules in the container that this version was taken from.
+      { # Represents a Google Tag Manager Rule.
+        "name": "A String", # Rule display name.
+        "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+        "notes": "A String", # User notes on how to apply this rule in the container.
+        "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+        "accountId": "A String", # GTM Account ID.
+        "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "containerId": "A String", # GTM Container ID.
+      },
+    ],
+    "name": "A String", # Container version display name.
+    "tag": [ # The tags in the container that this version was taken from.
+      { # Represents a Google Tag Manager Tag.
+        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+        "containerId": "A String", # GTM Container ID.
+        "type": "A String", # GTM Tag Type.
+        "notes": "A String", # User notes on how to apply this tag in the container.
+        "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+        "name": "A String", # Tag display name.
+        "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+          "A String",
+        ],
+        "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+        "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+        "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+          "A String",
+        ],
+        "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+          "A String",
+        ],
+        "parameter": [ # The tag's parameters.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+        "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+          "A String",
+        ],
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "containerVersionId": "A String", # The Container Version ID uniquely identifies the GTM Container Version.
+    "fingerprint": "A String", # The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified.
+    "trigger": [ # The triggers in the container that this version was taken from.
+      { # Represents a Google Tag Manager Trigger
+        "filter": [ # The trigger will only fire iff all Conditions are true.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "containerId": "A String", # GTM Container ID.
+        "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+        "name": "A String", # Trigger display name.
+        "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "autoEventFilter": [ # Used in the case of auto event tracking.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+        "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "type": "A String", # Defines the data layer event that causes this trigger.
+        "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="publish">publish(accountId, containerId, containerVersionId, fingerprint=None)</code>
+  <pre>Publishes a Container Version.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  containerVersionId: string, The GTM Container Version ID. (required)
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the container version in storage.
+
+Returns:
+  An object of the form:
+
+    { # Publish container version response.
+    "containerVersion": { # Represents a Google Tag Manager Container Version. # The container version created.
+      "container": { # Represents a Google Tag Manager Container. # The container that this version was taken from.
+        "timeZoneId": "A String", # Container Time Zone ID.
+        "timeZoneCountryId": "A String", # Container Country ID.
+        "publicId": "A String", # Container Public ID.
+        "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+        "domainName": [ # Optional list of domain names associated with the Container.
+          "A String",
+        ],
+        "notes": "A String", # Container Notes.
+        "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+          "A String",
+        ],
+        "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+        "accountId": "A String", # GTM Account ID.
+        "name": "A String", # Container display name.
+      },
+      "containerId": "A String", # GTM Container ID.
+      "deleted": True or False, # A value of true indicates this container version has been deleted.
+      "macro": [ # The macros in the container that this version was taken from.
+        { # Represents a Google Tag Manager Macro.
+          "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+          "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+          "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+          "containerId": "A String", # GTM Container ID.
+          "type": "A String", # GTM Macro Type.
+          "notes": "A String", # User notes on how to apply this macro in the container.
+          "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+            "A String",
+          ],
+          "name": "A String", # Macro display name.
+          "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+            "A String",
+          ],
+          "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+          "parameter": [ # The macro's parameters.
+            { # Represents a Google Tag Manager Parameter.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+          ],
+          "accountId": "A String", # GTM Account ID.
+        },
+      ],
+      "notes": "A String", # User notes on how to apply this container version in the container.
+      "rule": [ # The rules in the container that this version was taken from.
+        { # Represents a Google Tag Manager Rule.
+          "name": "A String", # Rule display name.
+          "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+          "notes": "A String", # User notes on how to apply this rule in the container.
+          "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+          "accountId": "A String", # GTM Account ID.
+          "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+            { # Represents a predicate.
+              "type": "A String", # The type of operator for this condition.
+              "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                  # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                  # - At this time, the left operand (arg0) must be a reference to a macro.
+                  # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                  # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+                { # Represents a Google Tag Manager Parameter.
+                  "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                    # Object with schema name: Parameter
+                  ],
+                  "list": [ # This list parameter's parameters (keys will be ignored).
+                    # Object with schema name: Parameter
+                  ],
+                  "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                  "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                  "type": "A String", # The parameter type. Valid values are:
+                      # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                      # - integer: The value represents a 64-bit signed integer value, in base 10
+                      # - list: A list of parameters should be specified
+                      # - map: A map of parameters should be specified
+                      # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+                },
+              ],
+            },
+          ],
+          "containerId": "A String", # GTM Container ID.
+        },
+      ],
+      "name": "A String", # Container version display name.
+      "tag": [ # The tags in the container that this version was taken from.
+        { # Represents a Google Tag Manager Tag.
+          "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+          "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+          "containerId": "A String", # GTM Container ID.
+          "type": "A String", # GTM Tag Type.
+          "notes": "A String", # User notes on how to apply this tag in the container.
+          "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+          "name": "A String", # Tag display name.
+          "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+            "A String",
+          ],
+          "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+          "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+          "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+            "A String",
+          ],
+          "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+            "A String",
+          ],
+          "parameter": [ # The tag's parameters.
+            { # Represents a Google Tag Manager Parameter.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+          ],
+          "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+            "A String",
+          ],
+          "accountId": "A String", # GTM Account ID.
+        },
+      ],
+      "containerVersionId": "A String", # The Container Version ID uniquely identifies the GTM Container Version.
+      "fingerprint": "A String", # The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified.
+      "trigger": [ # The triggers in the container that this version was taken from.
+        { # Represents a Google Tag Manager Trigger
+          "filter": [ # The trigger will only fire iff all Conditions are true.
+            { # Represents a predicate.
+              "type": "A String", # The type of operator for this condition.
+              "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                  # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                  # - At this time, the left operand (arg0) must be a reference to a macro.
+                  # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                  # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+                { # Represents a Google Tag Manager Parameter.
+                  "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                    # Object with schema name: Parameter
+                  ],
+                  "list": [ # This list parameter's parameters (keys will be ignored).
+                    # Object with schema name: Parameter
+                  ],
+                  "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                  "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                  "type": "A String", # The parameter type. Valid values are:
+                      # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                      # - integer: The value represents a 64-bit signed integer value, in base 10
+                      # - list: A list of parameters should be specified
+                      # - map: A map of parameters should be specified
+                      # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+                },
+              ],
+            },
+          ],
+          "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "containerId": "A String", # GTM Container ID.
+          "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+          "name": "A String", # Trigger display name.
+          "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "autoEventFilter": [ # Used in the case of auto event tracking.
+            { # Represents a predicate.
+              "type": "A String", # The type of operator for this condition.
+              "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                  # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                  # - At this time, the left operand (arg0) must be a reference to a macro.
+                  # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                  # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+                { # Represents a Google Tag Manager Parameter.
+                  "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                    # Object with schema name: Parameter
+                  ],
+                  "list": [ # This list parameter's parameters (keys will be ignored).
+                    # Object with schema name: Parameter
+                  ],
+                  "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                  "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                  "type": "A String", # The parameter type. Valid values are:
+                      # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                      # - integer: The value represents a 64-bit signed integer value, in base 10
+                      # - list: A list of parameters should be specified
+                      # - map: A map of parameters should be specified
+                      # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+                },
+              ],
+            },
+          ],
+          "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+          "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+            { # Represents a predicate.
+              "type": "A String", # The type of operator for this condition.
+              "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                  # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                  # - At this time, the left operand (arg0) must be a reference to a macro.
+                  # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                  # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+                { # Represents a Google Tag Manager Parameter.
+                  "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                    # Object with schema name: Parameter
+                  ],
+                  "list": [ # This list parameter's parameters (keys will be ignored).
+                    # Object with schema name: Parameter
+                  ],
+                  "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                  "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                  "type": "A String", # The parameter type. Valid values are:
+                      # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                      # - integer: The value represents a 64-bit signed integer value, in base 10
+                      # - list: A list of parameters should be specified
+                      # - map: A map of parameters should be specified
+                      # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+                },
+              ],
+            },
+          ],
+          "type": "A String", # Defines the data layer event that causes this trigger.
+          "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+          "accountId": "A String", # GTM Account ID.
+        },
+      ],
+      "accountId": "A String", # GTM Account ID.
+    },
+    "compilerError": True or False, # Compiler errors or not.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="restore">restore(accountId, containerId, containerVersionId)</code>
+  <pre>Restores a Container Version. This will overwrite the container's current configuration (including its macros, rules and tags). The operation will not have any effect on the version that is being served (i.e. the published version).
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  containerVersionId: string, The GTM Container Version ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Container Version.
+    "container": { # Represents a Google Tag Manager Container. # The container that this version was taken from.
+      "timeZoneId": "A String", # Container Time Zone ID.
+      "timeZoneCountryId": "A String", # Container Country ID.
+      "publicId": "A String", # Container Public ID.
+      "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+      "domainName": [ # Optional list of domain names associated with the Container.
+        "A String",
+      ],
+      "notes": "A String", # Container Notes.
+      "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+        "A String",
+      ],
+      "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+      "accountId": "A String", # GTM Account ID.
+      "name": "A String", # Container display name.
+    },
+    "containerId": "A String", # GTM Container ID.
+    "deleted": True or False, # A value of true indicates this container version has been deleted.
+    "macro": [ # The macros in the container that this version was taken from.
+      { # Represents a Google Tag Manager Macro.
+        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+        "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+        "containerId": "A String", # GTM Container ID.
+        "type": "A String", # GTM Macro Type.
+        "notes": "A String", # User notes on how to apply this macro in the container.
+        "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+          "A String",
+        ],
+        "name": "A String", # Macro display name.
+        "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+          "A String",
+        ],
+        "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+        "parameter": [ # The macro's parameters.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "notes": "A String", # User notes on how to apply this container version in the container.
+    "rule": [ # The rules in the container that this version was taken from.
+      { # Represents a Google Tag Manager Rule.
+        "name": "A String", # Rule display name.
+        "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+        "notes": "A String", # User notes on how to apply this rule in the container.
+        "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+        "accountId": "A String", # GTM Account ID.
+        "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "containerId": "A String", # GTM Container ID.
+      },
+    ],
+    "name": "A String", # Container version display name.
+    "tag": [ # The tags in the container that this version was taken from.
+      { # Represents a Google Tag Manager Tag.
+        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+        "containerId": "A String", # GTM Container ID.
+        "type": "A String", # GTM Tag Type.
+        "notes": "A String", # User notes on how to apply this tag in the container.
+        "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+        "name": "A String", # Tag display name.
+        "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+          "A String",
+        ],
+        "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+        "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+        "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+          "A String",
+        ],
+        "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+          "A String",
+        ],
+        "parameter": [ # The tag's parameters.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+        "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+          "A String",
+        ],
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "containerVersionId": "A String", # The Container Version ID uniquely identifies the GTM Container Version.
+    "fingerprint": "A String", # The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified.
+    "trigger": [ # The triggers in the container that this version was taken from.
+      { # Represents a Google Tag Manager Trigger
+        "filter": [ # The trigger will only fire iff all Conditions are true.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "containerId": "A String", # GTM Container ID.
+        "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+        "name": "A String", # Trigger display name.
+        "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "autoEventFilter": [ # Used in the case of auto event tracking.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+        "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "type": "A String", # Defines the data layer event that causes this trigger.
+        "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="undelete">undelete(accountId, containerId, containerVersionId)</code>
+  <pre>Undeletes a Container Version.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  containerVersionId: string, The GTM Container Version ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Container Version.
+    "container": { # Represents a Google Tag Manager Container. # The container that this version was taken from.
+      "timeZoneId": "A String", # Container Time Zone ID.
+      "timeZoneCountryId": "A String", # Container Country ID.
+      "publicId": "A String", # Container Public ID.
+      "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+      "domainName": [ # Optional list of domain names associated with the Container.
+        "A String",
+      ],
+      "notes": "A String", # Container Notes.
+      "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+        "A String",
+      ],
+      "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+      "accountId": "A String", # GTM Account ID.
+      "name": "A String", # Container display name.
+    },
+    "containerId": "A String", # GTM Container ID.
+    "deleted": True or False, # A value of true indicates this container version has been deleted.
+    "macro": [ # The macros in the container that this version was taken from.
+      { # Represents a Google Tag Manager Macro.
+        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+        "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+        "containerId": "A String", # GTM Container ID.
+        "type": "A String", # GTM Macro Type.
+        "notes": "A String", # User notes on how to apply this macro in the container.
+        "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+          "A String",
+        ],
+        "name": "A String", # Macro display name.
+        "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+          "A String",
+        ],
+        "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+        "parameter": [ # The macro's parameters.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "notes": "A String", # User notes on how to apply this container version in the container.
+    "rule": [ # The rules in the container that this version was taken from.
+      { # Represents a Google Tag Manager Rule.
+        "name": "A String", # Rule display name.
+        "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+        "notes": "A String", # User notes on how to apply this rule in the container.
+        "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+        "accountId": "A String", # GTM Account ID.
+        "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "containerId": "A String", # GTM Container ID.
+      },
+    ],
+    "name": "A String", # Container version display name.
+    "tag": [ # The tags in the container that this version was taken from.
+      { # Represents a Google Tag Manager Tag.
+        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+        "containerId": "A String", # GTM Container ID.
+        "type": "A String", # GTM Tag Type.
+        "notes": "A String", # User notes on how to apply this tag in the container.
+        "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+        "name": "A String", # Tag display name.
+        "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+          "A String",
+        ],
+        "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+        "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+        "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+          "A String",
+        ],
+        "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+          "A String",
+        ],
+        "parameter": [ # The tag's parameters.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+        "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+          "A String",
+        ],
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "containerVersionId": "A String", # The Container Version ID uniquely identifies the GTM Container Version.
+    "fingerprint": "A String", # The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified.
+    "trigger": [ # The triggers in the container that this version was taken from.
+      { # Represents a Google Tag Manager Trigger
+        "filter": [ # The trigger will only fire iff all Conditions are true.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "containerId": "A String", # GTM Container ID.
+        "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+        "name": "A String", # Trigger display name.
+        "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "autoEventFilter": [ # Used in the case of auto event tracking.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+        "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "type": "A String", # Defines the data layer event that causes this trigger.
+        "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(accountId, containerId, containerVersionId, body, fingerprint=None)</code>
+  <pre>Updates a Container Version.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  containerId: string, The GTM Container ID. (required)
+  containerVersionId: string, The GTM Container Version ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Container Version.
+  "container": { # Represents a Google Tag Manager Container. # The container that this version was taken from.
+    "timeZoneId": "A String", # Container Time Zone ID.
+    "timeZoneCountryId": "A String", # Container Country ID.
+    "publicId": "A String", # Container Public ID.
+    "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+    "domainName": [ # Optional list of domain names associated with the Container.
+      "A String",
+    ],
+    "notes": "A String", # Container Notes.
+    "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+      "A String",
+    ],
+    "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+    "accountId": "A String", # GTM Account ID.
+    "name": "A String", # Container display name.
+  },
+  "containerId": "A String", # GTM Container ID.
+  "deleted": True or False, # A value of true indicates this container version has been deleted.
+  "macro": [ # The macros in the container that this version was taken from.
+    { # Represents a Google Tag Manager Macro.
+      "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+      "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+      "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+      "containerId": "A String", # GTM Container ID.
+      "type": "A String", # GTM Macro Type.
+      "notes": "A String", # User notes on how to apply this macro in the container.
+      "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+        "A String",
+      ],
+      "name": "A String", # Macro display name.
+      "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+        "A String",
+      ],
+      "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+      "parameter": [ # The macro's parameters.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+      "accountId": "A String", # GTM Account ID.
+    },
+  ],
+  "notes": "A String", # User notes on how to apply this container version in the container.
+  "rule": [ # The rules in the container that this version was taken from.
+    { # Represents a Google Tag Manager Rule.
+      "name": "A String", # Rule display name.
+      "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+      "notes": "A String", # User notes on how to apply this rule in the container.
+      "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+      "accountId": "A String", # GTM Account ID.
+      "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+        { # Represents a predicate.
+          "type": "A String", # The type of operator for this condition.
+          "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+              # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+              # - At this time, the left operand (arg0) must be a reference to a macro.
+              # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+              # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+            { # Represents a Google Tag Manager Parameter.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+          ],
+        },
+      ],
+      "containerId": "A String", # GTM Container ID.
+    },
+  ],
+  "name": "A String", # Container version display name.
+  "tag": [ # The tags in the container that this version was taken from.
+    { # Represents a Google Tag Manager Tag.
+      "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+      "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+      "containerId": "A String", # GTM Container ID.
+      "type": "A String", # GTM Tag Type.
+      "notes": "A String", # User notes on how to apply this tag in the container.
+      "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+      "name": "A String", # Tag display name.
+      "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+        "A String",
+      ],
+      "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+      "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+      "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+        "A String",
+      ],
+      "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+        "A String",
+      ],
+      "parameter": [ # The tag's parameters.
+        { # Represents a Google Tag Manager Parameter.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+      ],
+      "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+        "A String",
+      ],
+      "accountId": "A String", # GTM Account ID.
+    },
+  ],
+  "containerVersionId": "A String", # The Container Version ID uniquely identifies the GTM Container Version.
+  "fingerprint": "A String", # The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified.
+  "trigger": [ # The triggers in the container that this version was taken from.
+    { # Represents a Google Tag Manager Trigger
+      "filter": [ # The trigger will only fire iff all Conditions are true.
+        { # Represents a predicate.
+          "type": "A String", # The type of operator for this condition.
+          "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+              # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+              # - At this time, the left operand (arg0) must be a reference to a macro.
+              # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+              # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+            { # Represents a Google Tag Manager Parameter.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+          ],
+        },
+      ],
+      "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "containerId": "A String", # GTM Container ID.
+      "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+      "name": "A String", # Trigger display name.
+      "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "autoEventFilter": [ # Used in the case of auto event tracking.
+        { # Represents a predicate.
+          "type": "A String", # The type of operator for this condition.
+          "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+              # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+              # - At this time, the left operand (arg0) must be a reference to a macro.
+              # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+              # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+            { # Represents a Google Tag Manager Parameter.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+          ],
+        },
+      ],
+      "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+      "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+        { # Represents a predicate.
+          "type": "A String", # The type of operator for this condition.
+          "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+              # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+              # - At this time, the left operand (arg0) must be a reference to a macro.
+              # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+              # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+            { # Represents a Google Tag Manager Parameter.
+              "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                # Object with schema name: Parameter
+              ],
+              "list": [ # This list parameter's parameters (keys will be ignored).
+                # Object with schema name: Parameter
+              ],
+              "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+              "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+              "type": "A String", # The parameter type. Valid values are:
+                  # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                  # - integer: The value represents a 64-bit signed integer value, in base 10
+                  # - list: A list of parameters should be specified
+                  # - map: A map of parameters should be specified
+                  # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+            },
+          ],
+        },
+      ],
+      "type": "A String", # Defines the data layer event that causes this trigger.
+      "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+        "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+          # Object with schema name: Parameter
+        ],
+        "list": [ # This list parameter's parameters (keys will be ignored).
+          # Object with schema name: Parameter
+        ],
+        "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+        "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+        "type": "A String", # The parameter type. Valid values are:
+            # - boolean: The value represents a boolean, represented as 'true' or 'false'
+            # - integer: The value represents a 64-bit signed integer value, in base 10
+            # - list: A list of parameters should be specified
+            # - map: A map of parameters should be specified
+            # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+      },
+      "accountId": "A String", # GTM Account ID.
+    },
+  ],
+  "accountId": "A String", # GTM Account ID.
+}
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the container version in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Container Version.
+    "container": { # Represents a Google Tag Manager Container. # The container that this version was taken from.
+      "timeZoneId": "A String", # Container Time Zone ID.
+      "timeZoneCountryId": "A String", # Container Country ID.
+      "publicId": "A String", # Container Public ID.
+      "containerId": "A String", # The Container ID uniquely identifies the GTM Container.
+      "domainName": [ # Optional list of domain names associated with the Container.
+        "A String",
+      ],
+      "notes": "A String", # Container Notes.
+      "usageContext": [ # List of Usage Contexts for the Container. Valid values include: web, android, ios.
+        "A String",
+      ],
+      "fingerprint": "A String", # The fingerprint of the GTM Container as computed at storage time. This value is recomputed whenever the account is modified.
+      "accountId": "A String", # GTM Account ID.
+      "name": "A String", # Container display name.
+    },
+    "containerId": "A String", # GTM Container ID.
+    "deleted": True or False, # A value of true indicates this container version has been deleted.
+    "macro": [ # The macros in the container that this version was taken from.
+      { # Represents a Google Tag Manager Macro.
+        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a macro.
+        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a macro.
+        "macroId": "A String", # The Macro ID uniquely identifies the GTM Macro.
+        "containerId": "A String", # GTM Container ID.
+        "type": "A String", # GTM Macro Type.
+        "notes": "A String", # User notes on how to apply this macro in the container.
+        "enablingRuleId": [ # For mobile containers only: A list of rule IDs for enabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+          "A String",
+        ],
+        "name": "A String", # Macro display name.
+        "disablingRuleId": [ # For mobile containers only: A list of rule IDs for disabling conditional macros; the macro is enabled if one of the enabling rules is true while all the disabling rules are false. Treated as an unordered set.
+          "A String",
+        ],
+        "fingerprint": "A String", # The fingerprint of the GTM Macro as computed at storage time. This value is recomputed whenever the macro is modified.
+        "parameter": [ # The macro's parameters.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "notes": "A String", # User notes on how to apply this container version in the container.
+    "rule": [ # The rules in the container that this version was taken from.
+      { # Represents a Google Tag Manager Rule.
+        "name": "A String", # Rule display name.
+        "ruleId": "A String", # The Rule ID uniquely identifies the GTM Rule.
+        "notes": "A String", # User notes on how to apply this rule in the container.
+        "fingerprint": "A String", # The fingerprint of the GTM Rule as computed at storage time. This value is recomputed whenever the rule is modified.
+        "accountId": "A String", # GTM Account ID.
+        "condition": [ # The list of conditions that make up this rule (implicit AND between them).
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "containerId": "A String", # GTM Container ID.
+      },
+    ],
+    "name": "A String", # Container version display name.
+    "tag": [ # The tags in the container that this version was taken from.
+      { # Represents a Google Tag Manager Tag.
+        "scheduleStartMs": "A String", # The start timestamp in milliseconds to schedule a tag.
+        "scheduleEndMs": "A String", # The end timestamp in milliseconds to schedule a tag.
+        "containerId": "A String", # GTM Container ID.
+        "type": "A String", # GTM Tag Type.
+        "notes": "A String", # User notes on how to apply this tag in the container.
+        "tagId": "A String", # The Tag ID uniquely identifies the GTM Tag.
+        "name": "A String", # Tag display name.
+        "priority": { # Represents a Google Tag Manager Parameter. # User defined numeric priority of the tag. Tags are fired asynchronously in order of priority. Tags with higher numeric value fire first. A tag's priority can be a positive or negative value. The default value is 0.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "blockingRuleId": [ # Blocking rule IDs. If any of the listed rules evaluate to true, the tag will not fire.
+          "A String",
+        ],
+        "dependencies": { # Represents a Google Tag Manager Parameter. # An optional list of tag names that this tag depends on to fire. Execution of this tag will be prevented until the tags with the given names complete their execution.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "liveOnly": True or False, # If set to true, this tag will only fire in the live environment (e.g. not in preview or debug mode).
+        "fingerprint": "A String", # The fingerprint of the GTM Tag as computed at storage time. This value is recomputed whenever the tag is modified.
+        "firingRuleId": [ # Firing rule IDs. A tag will fire when any of the listed rules are true and all of its blockingRuleIds (if any specified) are false.
+          "A String",
+        ],
+        "firingTriggerId": [ # Firing trigger IDs. A tag will fire when any of the listed triggers are true and all of its blockingTriggerIds (if any specified) are false.
+          "A String",
+        ],
+        "parameter": [ # The tag's parameters.
+          { # Represents a Google Tag Manager Parameter.
+            "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+              # Object with schema name: Parameter
+            ],
+            "list": [ # This list parameter's parameters (keys will be ignored).
+              # Object with schema name: Parameter
+            ],
+            "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+            "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+            "type": "A String", # The parameter type. Valid values are:
+                # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                # - integer: The value represents a 64-bit signed integer value, in base 10
+                # - list: A list of parameters should be specified
+                # - map: A map of parameters should be specified
+                # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+          },
+        ],
+        "blockingTriggerId": [ # Blocking trigger IDs. If any of the listed triggers evaluate to true, the tag will not fire.
+          "A String",
+        ],
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "containerVersionId": "A String", # The Container Version ID uniquely identifies the GTM Container Version.
+    "fingerprint": "A String", # The fingerprint of the GTM Container Version as computed at storage time. This value is recomputed whenever the container version is modified.
+    "trigger": [ # The triggers in the container that this version was taken from.
+      { # Represents a Google Tag Manager Trigger
+        "filter": [ # The trigger will only fire iff all Conditions are true.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "videoPercentageList": { # Represents a Google Tag Manager Parameter. # List of integer percentage values. The trigger will fire as each percentage is reached in any instrumented videos. Only valid for YouTube triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "uniqueTriggerId": { # Represents a Google Tag Manager Parameter. # Globally unique id of the trigger that auto-generates this Form Submit or Link Click listeners if any. Used to make incompatible auto-events work together with trigger filtering based on trigger ids. This value is populated during output generation since the tags implied by triggers don't exist until then. Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "waitForTags": { # Represents a Google Tag Manager Parameter. # Whether or not we should delay the form submissions or link opening until all of the tags have fired (by preventing the default action and later simulating the default action). Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "containerId": "A String", # GTM Container ID.
+        "interval": { # Represents a Google Tag Manager Parameter. # Time between triggering recurring Timer Events (in milliseconds). Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "triggerId": "A String", # The Trigger ID uniquely identifies the GTM Trigger.
+        "name": "A String", # Trigger display name.
+        "eventName": { # Represents a Google Tag Manager Parameter. # Name of the GTM event that is fired. Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "autoEventFilter": [ # Used in the case of auto event tracking.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "limit": { # Represents a Google Tag Manager Parameter. # Limit of the number of GTM events this Timer Trigger will fire. If no limit is set, we will continue to fire GTM events until the user leaves the page. Only valid for Timer triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "waitForTagsTimeout": { # Represents a Google Tag Manager Parameter. # How long to wait (in milliseconds) for tags to fire when 'waits_for_tags' above evaluates to true. Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "checkValidation": { # Represents a Google Tag Manager Parameter. # Whether or not we should only fire tags if the form submit or link click event is not cancelled by some other event handler (e.g. because of validation). Only valid for Form Submission and Link Click triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "fingerprint": "A String", # The fingerprint of the GTM Trigger as computed at storage time. This value is recomputed whenever the trigger is modified.
+        "customEventFilter": [ # Used in the case of custom event, which is fired iff all Conditions are true.
+          { # Represents a predicate.
+            "type": "A String", # The type of operator for this condition.
+            "parameter": [ # A list of named parameters (key/value), depending on the condition's type. Notes:
+                # - For binary operators, include parameters named arg0 and arg1 for specifying the left and right operands, respectively.
+                # - At this time, the left operand (arg0) must be a reference to a macro.
+                # - For case-insensitive Regex matching, include a boolean parameter named ignore_case that is set to true. If not specified or set to any other value, the matching will be case sensitive.
+                # - To negate an operator, include a boolean parameter named negate boolean parameter that is set to true.
+              { # Represents a Google Tag Manager Parameter.
+                "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+                  # Object with schema name: Parameter
+                ],
+                "list": [ # This list parameter's parameters (keys will be ignored).
+                  # Object with schema name: Parameter
+                ],
+                "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+                "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+                "type": "A String", # The parameter type. Valid values are:
+                    # - boolean: The value represents a boolean, represented as 'true' or 'false'
+                    # - integer: The value represents a 64-bit signed integer value, in base 10
+                    # - list: A list of parameters should be specified
+                    # - map: A map of parameters should be specified
+                    # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+              },
+            ],
+          },
+        ],
+        "type": "A String", # Defines the data layer event that causes this trigger.
+        "enableAllVideos": { # Represents a Google Tag Manager Parameter. # Reloads the videos in the page that don't already have the YT API enabled. If false, only capture events from videos that already have the API enabled. Only valid for YouTube triggers.
+          "map": [ # This map parameter's parameters (must have keys; keys must be unique).
+            # Object with schema name: Parameter
+          ],
+          "list": [ # This list parameter's parameters (keys will be ignored).
+            # Object with schema name: Parameter
+          ],
+          "value": "A String", # A parameter's value (may contain macro references such as "{{myMacro}}") as appropriate to the specified type.
+          "key": "A String", # The named key that uniquely identifies a parameter. Required for top-level parameters, as well as map values. Ignored for list values.
+          "type": "A String", # The parameter type. Valid values are:
+              # - boolean: The value represents a boolean, represented as 'true' or 'false'
+              # - integer: The value represents a 64-bit signed integer value, in base 10
+              # - list: A list of parameters should be specified
+              # - map: A map of parameters should be specified
+              # - template: The value represents any text; this can include macro references (even macro references that might return non-string types)
+        },
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/tagmanager_v1.accounts.html b/docs/dyn/tagmanager_v1.accounts.html
new file mode 100644
index 0000000..36f82c2
--- /dev/null
+++ b/docs/dyn/tagmanager_v1.accounts.html
@@ -0,0 +1,197 @@
+<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="tagmanager_v1.html">Tag Manager API</a> . <a href="tagmanager_v1.accounts.html">accounts</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="tagmanager_v1.accounts.containers.html">containers()</a></code>
+</p>
+<p class="firstline">Returns the containers Resource.</p>
+
+<p class="toc_element">
+  <code><a href="tagmanager_v1.accounts.permissions.html">permissions()</a></code>
+</p>
+<p class="firstline">Returns the permissions Resource.</p>
+
+<p class="toc_element">
+  <code><a href="#get">get(accountId)</a></code></p>
+<p class="firstline">Gets a GTM Account.</p>
+<p class="toc_element">
+  <code><a href="#list">list()</a></code></p>
+<p class="firstline">Lists all GTM Accounts that a user has access to.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(accountId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a GTM Account. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#update">update(accountId, body, fingerprint=None)</a></code></p>
+<p class="firstline">Updates a GTM Account.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="get">get(accountId)</code>
+  <pre>Gets a GTM Account.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Account.
+      "shareData": True or False, # Whether the account shares data anonymously with Google and others.
+      "fingerprint": "A String", # The fingerprint of the GTM Account as computed at storage time. This value is recomputed whenever the account is modified.
+      "name": "A String", # Account display name.
+      "accountId": "A String", # The Account ID uniquely identifies the GTM Account.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list()</code>
+  <pre>Lists all GTM Accounts that a user has access to.
+
+Args:
+
+Returns:
+  An object of the form:
+
+    { # List Accounts Response.
+    "accounts": [ # List of GTM Accounts that a user has access to.
+      { # Represents a Google Tag Manager Account.
+          "shareData": True or False, # Whether the account shares data anonymously with Google and others.
+          "fingerprint": "A String", # The fingerprint of the GTM Account as computed at storage time. This value is recomputed whenever the account is modified.
+          "name": "A String", # Account display name.
+          "accountId": "A String", # The Account ID uniquely identifies the GTM Account.
+        },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(accountId, body, fingerprint=None)</code>
+  <pre>Updates a GTM Account. This method supports patch semantics.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Account.
+    "shareData": True or False, # Whether the account shares data anonymously with Google and others.
+    "fingerprint": "A String", # The fingerprint of the GTM Account as computed at storage time. This value is recomputed whenever the account is modified.
+    "name": "A String", # Account display name.
+    "accountId": "A String", # The Account ID uniquely identifies the GTM Account.
+  }
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the account in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Account.
+      "shareData": True or False, # Whether the account shares data anonymously with Google and others.
+      "fingerprint": "A String", # The fingerprint of the GTM Account as computed at storage time. This value is recomputed whenever the account is modified.
+      "name": "A String", # Account display name.
+      "accountId": "A String", # The Account ID uniquely identifies the GTM Account.
+    }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(accountId, body, fingerprint=None)</code>
+  <pre>Updates a GTM Account.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a Google Tag Manager Account.
+    "shareData": True or False, # Whether the account shares data anonymously with Google and others.
+    "fingerprint": "A String", # The fingerprint of the GTM Account as computed at storage time. This value is recomputed whenever the account is modified.
+    "name": "A String", # Account display name.
+    "accountId": "A String", # The Account ID uniquely identifies the GTM Account.
+  }
+
+  fingerprint: string, When provided, this fingerprint must match the fingerprint of the account in storage.
+
+Returns:
+  An object of the form:
+
+    { # Represents a Google Tag Manager Account.
+      "shareData": True or False, # Whether the account shares data anonymously with Google and others.
+      "fingerprint": "A String", # The fingerprint of the GTM Account as computed at storage time. This value is recomputed whenever the account is modified.
+      "name": "A String", # Account display name.
+      "accountId": "A String", # The Account ID uniquely identifies the GTM Account.
+    }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/tagmanager_v1.accounts.permissions.html b/docs/dyn/tagmanager_v1.accounts.permissions.html
new file mode 100644
index 0000000..29d8894
--- /dev/null
+++ b/docs/dyn/tagmanager_v1.accounts.permissions.html
@@ -0,0 +1,329 @@
+<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="tagmanager_v1.html">Tag Manager API</a> . <a href="tagmanager_v1.accounts.html">accounts</a> . <a href="tagmanager_v1.accounts.permissions.html">permissions</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#create">create(accountId, body)</a></code></p>
+<p class="firstline">Creates a user's Account & Container Permissions.</p>
+<p class="toc_element">
+  <code><a href="#delete">delete(accountId, permissionId)</a></code></p>
+<p class="firstline">Removes a user from the account, revoking access to it and all of its containers.</p>
+<p class="toc_element">
+  <code><a href="#get">get(accountId, permissionId)</a></code></p>
+<p class="firstline">Gets a user's Account & Container Permissions.</p>
+<p class="toc_element">
+  <code><a href="#list">list(accountId)</a></code></p>
+<p class="firstline">List all users that have access to the account along with Account and Container Permissions granted to each of them.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(accountId, permissionId, body)</a></code></p>
+<p class="firstline">Updates a user's Account & Container Permissions. This method supports patch semantics.</p>
+<p class="toc_element">
+  <code><a href="#update">update(accountId, permissionId, body)</a></code></p>
+<p class="firstline">Updates a user's Account & Container Permissions.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="create">create(accountId, body)</code>
+  <pre>Creates a user's Account & Container Permissions.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a user's permissions to an account and its container.
+  "containerAccess": [ # GTM Container access permissions.
+    { # Defines the Google Tag Manager Container access permissions.
+      "containerId": "A String", # GTM Container ID.
+      "permission": [ # List of Container permissions. Valid container permissions are: read, edit, delete, publish.
+        "A String",
+      ],
+    },
+  ],
+  "accountAccess": { # Defines the Google Tag Manager Account access permissions. # GTM Account access permissions.
+    "permission": [ # List of Account permissions. Valid account permissions are read and manage.
+      "A String",
+    ],
+  },
+  "emailAddress": "A String", # User's email address.
+  "permissionId": "A String", # Account Permission ID.
+  "accountId": "A String", # GTM Account ID.
+}
+
+
+Returns:
+  An object of the form:
+
+    { # Represents a user's permissions to an account and its container.
+    "containerAccess": [ # GTM Container access permissions.
+      { # Defines the Google Tag Manager Container access permissions.
+        "containerId": "A String", # GTM Container ID.
+        "permission": [ # List of Container permissions. Valid container permissions are: read, edit, delete, publish.
+          "A String",
+        ],
+      },
+    ],
+    "accountAccess": { # Defines the Google Tag Manager Account access permissions. # GTM Account access permissions.
+      "permission": [ # List of Account permissions. Valid account permissions are read and manage.
+        "A String",
+      ],
+    },
+    "emailAddress": "A String", # User's email address.
+    "permissionId": "A String", # Account Permission ID.
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="delete">delete(accountId, permissionId)</code>
+  <pre>Removes a user from the account, revoking access to it and all of its containers.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  permissionId: string, The GTM User ID. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(accountId, permissionId)</code>
+  <pre>Gets a user's Account & Container Permissions.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  permissionId: string, The GTM User ID. (required)
+
+Returns:
+  An object of the form:
+
+    { # Represents a user's permissions to an account and its container.
+    "containerAccess": [ # GTM Container access permissions.
+      { # Defines the Google Tag Manager Container access permissions.
+        "containerId": "A String", # GTM Container ID.
+        "permission": [ # List of Container permissions. Valid container permissions are: read, edit, delete, publish.
+          "A String",
+        ],
+      },
+    ],
+    "accountAccess": { # Defines the Google Tag Manager Account access permissions. # GTM Account access permissions.
+      "permission": [ # List of Account permissions. Valid account permissions are read and manage.
+        "A String",
+      ],
+    },
+    "emailAddress": "A String", # User's email address.
+    "permissionId": "A String", # Account Permission ID.
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(accountId)</code>
+  <pre>List all users that have access to the account along with Account and Container Permissions granted to each of them.
+
+Args:
+  accountId: string, The GTM Account ID. @required tagmanager.accounts.permissions.list (required)
+
+Returns:
+  An object of the form:
+
+    { # List AccountUsers Response.
+    "userAccess": [ # All GTM AccountUsers of a GTM Account.
+      { # Represents a user's permissions to an account and its container.
+        "containerAccess": [ # GTM Container access permissions.
+          { # Defines the Google Tag Manager Container access permissions.
+            "containerId": "A String", # GTM Container ID.
+            "permission": [ # List of Container permissions. Valid container permissions are: read, edit, delete, publish.
+              "A String",
+            ],
+          },
+        ],
+        "accountAccess": { # Defines the Google Tag Manager Account access permissions. # GTM Account access permissions.
+          "permission": [ # List of Account permissions. Valid account permissions are read and manage.
+            "A String",
+          ],
+        },
+        "emailAddress": "A String", # User's email address.
+        "permissionId": "A String", # Account Permission ID.
+        "accountId": "A String", # GTM Account ID.
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(accountId, permissionId, body)</code>
+  <pre>Updates a user's Account & Container Permissions. This method supports patch semantics.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  permissionId: string, The GTM User ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a user's permissions to an account and its container.
+  "containerAccess": [ # GTM Container access permissions.
+    { # Defines the Google Tag Manager Container access permissions.
+      "containerId": "A String", # GTM Container ID.
+      "permission": [ # List of Container permissions. Valid container permissions are: read, edit, delete, publish.
+        "A String",
+      ],
+    },
+  ],
+  "accountAccess": { # Defines the Google Tag Manager Account access permissions. # GTM Account access permissions.
+    "permission": [ # List of Account permissions. Valid account permissions are read and manage.
+      "A String",
+    ],
+  },
+  "emailAddress": "A String", # User's email address.
+  "permissionId": "A String", # Account Permission ID.
+  "accountId": "A String", # GTM Account ID.
+}
+
+
+Returns:
+  An object of the form:
+
+    { # Represents a user's permissions to an account and its container.
+    "containerAccess": [ # GTM Container access permissions.
+      { # Defines the Google Tag Manager Container access permissions.
+        "containerId": "A String", # GTM Container ID.
+        "permission": [ # List of Container permissions. Valid container permissions are: read, edit, delete, publish.
+          "A String",
+        ],
+      },
+    ],
+    "accountAccess": { # Defines the Google Tag Manager Account access permissions. # GTM Account access permissions.
+      "permission": [ # List of Account permissions. Valid account permissions are read and manage.
+        "A String",
+      ],
+    },
+    "emailAddress": "A String", # User's email address.
+    "permissionId": "A String", # Account Permission ID.
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="update">update(accountId, permissionId, body)</code>
+  <pre>Updates a user's Account & Container Permissions.
+
+Args:
+  accountId: string, The GTM Account ID. (required)
+  permissionId: string, The GTM User ID. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # Represents a user's permissions to an account and its container.
+  "containerAccess": [ # GTM Container access permissions.
+    { # Defines the Google Tag Manager Container access permissions.
+      "containerId": "A String", # GTM Container ID.
+      "permission": [ # List of Container permissions. Valid container permissions are: read, edit, delete, publish.
+        "A String",
+      ],
+    },
+  ],
+  "accountAccess": { # Defines the Google Tag Manager Account access permissions. # GTM Account access permissions.
+    "permission": [ # List of Account permissions. Valid account permissions are read and manage.
+      "A String",
+    ],
+  },
+  "emailAddress": "A String", # User's email address.
+  "permissionId": "A String", # Account Permission ID.
+  "accountId": "A String", # GTM Account ID.
+}
+
+
+Returns:
+  An object of the form:
+
+    { # Represents a user's permissions to an account and its container.
+    "containerAccess": [ # GTM Container access permissions.
+      { # Defines the Google Tag Manager Container access permissions.
+        "containerId": "A String", # GTM Container ID.
+        "permission": [ # List of Container permissions. Valid container permissions are: read, edit, delete, publish.
+          "A String",
+        ],
+      },
+    ],
+    "accountAccess": { # Defines the Google Tag Manager Account access permissions. # GTM Account access permissions.
+      "permission": [ # List of Account permissions. Valid account permissions are read and manage.
+        "A String",
+      ],
+    },
+    "emailAddress": "A String", # User's email address.
+    "permissionId": "A String", # Account Permission ID.
+    "accountId": "A String", # GTM Account ID.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/tagmanager_v1.html b/docs/dyn/tagmanager_v1.html
new file mode 100644
index 0000000..53d3777
--- /dev/null
+++ b/docs/dyn/tagmanager_v1.html
@@ -0,0 +1,82 @@
+<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="tagmanager_v1.html">Tag Manager API</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="tagmanager_v1.accounts.html">accounts()</a></code>
+</p>
+<p class="firstline">Returns the accounts Resource.</p>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/webmasters_v3.html b/docs/dyn/webmasters_v3.html
new file mode 100644
index 0000000..5c2768a
--- /dev/null
+++ b/docs/dyn/webmasters_v3.html
@@ -0,0 +1,97 @@
+<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="webmasters_v3.html">Webmaster Tools API</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="webmasters_v3.sitemaps.html">sitemaps()</a></code>
+</p>
+<p class="firstline">Returns the sitemaps Resource.</p>
+
+<p class="toc_element">
+  <code><a href="webmasters_v3.sites.html">sites()</a></code>
+</p>
+<p class="firstline">Returns the sites Resource.</p>
+
+<p class="toc_element">
+  <code><a href="webmasters_v3.urlcrawlerrorscounts.html">urlcrawlerrorscounts()</a></code>
+</p>
+<p class="firstline">Returns the urlcrawlerrorscounts Resource.</p>
+
+<p class="toc_element">
+  <code><a href="webmasters_v3.urlcrawlerrorssamples.html">urlcrawlerrorssamples()</a></code>
+</p>
+<p class="firstline">Returns the urlcrawlerrorssamples Resource.</p>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/webmasters_v3.sitemaps.html b/docs/dyn/webmasters_v3.sitemaps.html
new file mode 100644
index 0000000..ddcd805
--- /dev/null
+++ b/docs/dyn/webmasters_v3.sitemaps.html
@@ -0,0 +1,174 @@
+<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="webmasters_v3.html">Webmaster Tools API</a> . <a href="webmasters_v3.sitemaps.html">sitemaps</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#delete">delete(siteUrl, feedpath)</a></code></p>
+<p class="firstline">Deletes a sitemap from this site.</p>
+<p class="toc_element">
+  <code><a href="#get">get(siteUrl, feedpath)</a></code></p>
+<p class="firstline">Retrieves information about a specific sitemap.</p>
+<p class="toc_element">
+  <code><a href="#list">list(siteUrl, sitemapIndex=None)</a></code></p>
+<p class="firstline">Lists sitemaps uploaded to the site.</p>
+<p class="toc_element">
+  <code><a href="#submit">submit(siteUrl, feedpath)</a></code></p>
+<p class="firstline">Submits a sitemap for a site.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="delete">delete(siteUrl, feedpath)</code>
+  <pre>Deletes a sitemap from this site.
+
+Args:
+  siteUrl: string, The site's URL, including protocol, for example 'http://www.example.com/' (required)
+  feedpath: string, The URL of the actual sitemap (for example http://www.example.com/sitemap.xml). (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(siteUrl, feedpath)</code>
+  <pre>Retrieves information about a specific sitemap.
+
+Args:
+  siteUrl: string, The site's URL, including protocol, for example 'http://www.example.com/' (required)
+  feedpath: string, The URL of the actual sitemap (for example http://www.example.com/sitemap.xml). (required)
+
+Returns:
+  An object of the form:
+
+    {
+    "errors": "A String", # Number of errors in the sitemap - issues with the sitemap itself, that needs to be fixed before it can be processed correctly.
+    "warnings": "A String", # Number of warnings for the sitemap - issues with URLs in the sitemaps.
+    "isPending": True or False, # If true, the sitemap has not been processed.
+    "lastSubmitted": "A String", # Date & time in which this sitemap was submitted. Date format is in RFC 3339 format (yyyy-mm-dd).
+    "isSitemapsIndex": True or False, # If true, the sitemap is a collection of sitemaps.
+    "lastDownloaded": "A String", # Date & time in which this sitemap was last downloaded. Date format is in RFC 3339 format (yyyy-mm-dd).
+    "path": "A String", # The url of the sitemap.
+    "type": "A String", # The type of the sitemap (for example "sitemap").
+    "contents": [ # The various content types in the sitemap.
+      { # Information about the various content types in the sitemap.
+        "indexed": "A String", # The number of URLs from the sitemap that were indexed (of the content type).
+        "type": "A String", # The specific type of content in this sitemap (for example "web", "images").
+        "submitted": "A String", # The number of URLs in the sitemap (of the content type).
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(siteUrl, sitemapIndex=None)</code>
+  <pre>Lists sitemaps uploaded to the site.
+
+Args:
+  siteUrl: string, The site's URL, including protocol, for example 'http://www.example.com/' (required)
+  sitemapIndex: string, A URL of a site's sitemap index.
+
+Returns:
+  An object of the form:
+
+    { # List of sitemaps.
+    "sitemap": [ # Information about a sitemap entry.
+      {
+        "errors": "A String", # Number of errors in the sitemap - issues with the sitemap itself, that needs to be fixed before it can be processed correctly.
+        "warnings": "A String", # Number of warnings for the sitemap - issues with URLs in the sitemaps.
+        "isPending": True or False, # If true, the sitemap has not been processed.
+        "lastSubmitted": "A String", # Date & time in which this sitemap was submitted. Date format is in RFC 3339 format (yyyy-mm-dd).
+        "isSitemapsIndex": True or False, # If true, the sitemap is a collection of sitemaps.
+        "lastDownloaded": "A String", # Date & time in which this sitemap was last downloaded. Date format is in RFC 3339 format (yyyy-mm-dd).
+        "path": "A String", # The url of the sitemap.
+        "type": "A String", # The type of the sitemap (for example "sitemap").
+        "contents": [ # The various content types in the sitemap.
+          { # Information about the various content types in the sitemap.
+            "indexed": "A String", # The number of URLs from the sitemap that were indexed (of the content type).
+            "type": "A String", # The specific type of content in this sitemap (for example "web", "images").
+            "submitted": "A String", # The number of URLs in the sitemap (of the content type).
+          },
+        ],
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="submit">submit(siteUrl, feedpath)</code>
+  <pre>Submits a sitemap for a site.
+
+Args:
+  siteUrl: string, The site's URL, including protocol, for example 'http://www.example.com/' (required)
+  feedpath: string, The URL of the sitemap to add. (required)
+</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/webmasters_v3.sites.html b/docs/dyn/webmasters_v3.sites.html
new file mode 100644
index 0000000..20192ba
--- /dev/null
+++ b/docs/dyn/webmasters_v3.sites.html
@@ -0,0 +1,143 @@
+<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="webmasters_v3.html">Webmaster Tools API</a> . <a href="webmasters_v3.sites.html">sites</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#add">add(siteUrl)</a></code></p>
+<p class="firstline">Adds a site to the set of the user's sites in Webmaster Tools.</p>
+<p class="toc_element">
+  <code><a href="#delete">delete(siteUrl)</a></code></p>
+<p class="firstline">Removes a site from the set of the user's Webmaster Tools sites.</p>
+<p class="toc_element">
+  <code><a href="#get">get(siteUrl)</a></code></p>
+<p class="firstline">Retrieves information about specific site.</p>
+<p class="toc_element">
+  <code><a href="#list">list()</a></code></p>
+<p class="firstline">Lists your Webmaster Tools sites.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="add">add(siteUrl)</code>
+  <pre>Adds a site to the set of the user's sites in Webmaster Tools.
+
+Args:
+  siteUrl: string, The URL of the site to add. (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="delete">delete(siteUrl)</code>
+  <pre>Removes a site from the set of the user's Webmaster Tools sites.
+
+Args:
+  siteUrl: string, The site's URL, including protocol, for example 'http://www.example.com/' (required)
+</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="get">get(siteUrl)</code>
+  <pre>Retrieves information about specific site.
+
+Args:
+  siteUrl: string, The site's URL, including protocol, for example 'http://www.example.com/' (required)
+
+Returns:
+  An object of the form:
+
+    { # Access level information for a Webmaster Tools site.
+    "permissionLevel": "A String", # The user's permission level for the site.
+    "siteUrl": "A String", # The URL of the site.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list()</code>
+  <pre>Lists your Webmaster Tools sites.
+
+Args:
+
+Returns:
+  An object of the form:
+
+    { # List of sites with access level information.
+    "siteEntry": [ # Access level information for a Webmaster Tools site.
+      { # Access level information for a Webmaster Tools site.
+        "permissionLevel": "A String", # The user's permission level for the site.
+        "siteUrl": "A String", # The URL of the site.
+      },
+    ],
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/webmasters_v3.urlcrawlerrorscounts.html b/docs/dyn/webmasters_v3.urlcrawlerrorscounts.html
new file mode 100644
index 0000000..606dd4c
--- /dev/null
+++ b/docs/dyn/webmasters_v3.urlcrawlerrorscounts.html
@@ -0,0 +1,123 @@
+<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="webmasters_v3.html">Webmaster Tools API</a> . <a href="webmasters_v3.urlcrawlerrorscounts.html">urlcrawlerrorscounts</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#query">query(siteUrl, category=None, platform=None, latestCountsOnly=None)</a></code></p>
+<p class="firstline">Retrieves a time series of the number of URL crawl errors per error category and platform.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="query">query(siteUrl, category=None, platform=None, latestCountsOnly=None)</code>
+  <pre>Retrieves a time series of the number of URL crawl errors per error category and platform.
+
+Args:
+  siteUrl: string, The site's URL, including protocol, for example 'http://www.example.com/' (required)
+  category: string, The crawl error category, for example 'serverError'. If not specified, we return results for all categories.
+    Allowed values
+      authPermissions - 
+      manyToOneRedirect - 
+      notFollowed - 
+      notFound - 
+      other - 
+      roboted - 
+      serverError - 
+      soft404 - 
+  platform: string, The user agent type (platform) that made the request, for example 'web'. If not specified, we return results for all platforms.
+    Allowed values
+      mobile - 
+      smartphoneOnly - 
+      web - 
+  latestCountsOnly: boolean, If true, returns only the latest crawl error counts.
+
+Returns:
+  An object of the form:
+
+    { # A time series of the number of URL crawl errors per error category and platform.
+    "countPerTypes": [ # The time series of the number of URL crawl errors for per error category and platform.
+      { # Number of errors per day for a specific error type (defined by platform and category).
+        "category": "A String", # The crawl error type.
+        "platform": "A String", # Corresponding to the user agent that made the request.
+        "entries": [ # The error count entries time series.
+          { # An entry in a URL crawl errors time series.
+            "count": "A String", # The error count at the given timestamp.
+            "timestamp": "A String", # The time (well, date) when errors were detected, in RFC 3339 format.
+          },
+        ],
+      },
+    ],
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file
diff --git a/docs/dyn/webmasters_v3.urlcrawlerrorssamples.html b/docs/dyn/webmasters_v3.urlcrawlerrorssamples.html
new file mode 100644
index 0000000..066a3f2
--- /dev/null
+++ b/docs/dyn/webmasters_v3.urlcrawlerrorssamples.html
@@ -0,0 +1,199 @@
+<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="webmasters_v3.html">Webmaster Tools API</a> . <a href="webmasters_v3.urlcrawlerrorssamples.html">urlcrawlerrorssamples</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="#get">get(siteUrl, url, category, platform)</a></code></p>
+<p class="firstline">Retrieves details about crawl errors for a site's sample URL.</p>
+<p class="toc_element">
+  <code><a href="#list">list(siteUrl, category, platform)</a></code></p>
+<p class="firstline">Lists a site's sample URLs for the specified crawl error category and platform.</p>
+<p class="toc_element">
+  <code><a href="#markAsFixed">markAsFixed(siteUrl, url, category, platform)</a></code></p>
+<p class="firstline">Marks the provided site's sample URL as fixed, and removes it from the samples list.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="get">get(siteUrl, url, category, platform)</code>
+  <pre>Retrieves details about crawl errors for a site's sample URL.
+
+Args:
+  siteUrl: string, The site's URL, including protocol, for example 'http://www.example.com/' (required)
+  url: string, The relative path (without the site) of the sample URL; must be one of the URLs returned by list (required)
+  category: string, The crawl error category, for example 'authPermissions' (required)
+    Allowed values
+      authPermissions - 
+      manyToOneRedirect - 
+      notFollowed - 
+      notFound - 
+      other - 
+      roboted - 
+      serverError - 
+      soft404 - 
+  platform: string, The user agent type (platform) that made the request, for example 'web' (required)
+    Allowed values
+      mobile - 
+      smartphoneOnly - 
+      web - 
+
+Returns:
+  An object of the form:
+
+    {
+    "urlDetails": { # Additional details about the URL, set only when calling get(). # Additional details about the URL, set only when calling get().
+      "containingSitemaps": [ # List of sitemaps pointing at this URL.
+        "A String",
+      ],
+      "linkedFromUrls": [ # A sample set of URLs linking to this URL.
+        "A String",
+      ],
+    },
+    "first_detected": "A String", # The time the error was first detected, in RFC 3339 format.
+    "pageUrl": "A String", # The URL of an error, relative to the site.
+    "responseCode": 42, # The HTTP response code, if any.
+    "last_crawled": "A String", # The time when the URL was last crawled, in RFC 3339 format.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="list">list(siteUrl, category, platform)</code>
+  <pre>Lists a site's sample URLs for the specified crawl error category and platform.
+
+Args:
+  siteUrl: string, The site's URL, including protocol, for example 'http://www.example.com/' (required)
+  category: string, The crawl error category, for example 'authPermissions' (required)
+    Allowed values
+      authPermissions - 
+      manyToOneRedirect - 
+      notFollowed - 
+      notFound - 
+      other - 
+      roboted - 
+      serverError - 
+      soft404 - 
+  platform: string, The user agent type (platform) that made the request, for example 'web' (required)
+    Allowed values
+      mobile - 
+      smartphoneOnly - 
+      web - 
+
+Returns:
+  An object of the form:
+
+    { # List of crawl error samples.
+    "urlCrawlErrorSample": [ # Information about the sample URL and its crawl error.
+      {
+        "urlDetails": { # Additional details about the URL, set only when calling get(). # Additional details about the URL, set only when calling get().
+          "containingSitemaps": [ # List of sitemaps pointing at this URL.
+            "A String",
+          ],
+          "linkedFromUrls": [ # A sample set of URLs linking to this URL.
+            "A String",
+          ],
+        },
+        "first_detected": "A String", # The time the error was first detected, in RFC 3339 format.
+        "pageUrl": "A String", # The URL of an error, relative to the site.
+        "responseCode": 42, # The HTTP response code, if any.
+        "last_crawled": "A String", # The time when the URL was last crawled, in RFC 3339 format.
+      },
+    ],
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="markAsFixed">markAsFixed(siteUrl, url, category, platform)</code>
+  <pre>Marks the provided site's sample URL as fixed, and removes it from the samples list.
+
+Args:
+  siteUrl: string, The site's URL, including protocol, for example 'http://www.example.com/' (required)
+  url: string, The relative path (without the site) of the sample URL; must be one of the URLs returned by list (required)
+  category: string, The crawl error category, for example 'authPermissions' (required)
+    Allowed values
+      authPermissions - 
+      manyToOneRedirect - 
+      notFollowed - 
+      notFound - 
+      other - 
+      roboted - 
+      serverError - 
+      soft404 - 
+  platform: string, The user agent type (platform) that made the request, for example 'web' (required)
+    Allowed values
+      mobile - 
+      smartphoneOnly - 
+      web - 
+</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
index 5797fcc..54303b7 100644
--- a/docs/dyn/youtube_v3.channels.html
+++ b/docs/dyn/youtube_v3.channels.html
@@ -115,6 +115,7 @@
         "status": { # JSON template for the status part of a channel. # The status object encapsulates information about the privacy status of the channel.
           "privacyStatus": "A String", # Privacy status of the channel.
           "isLinked": True or False, # If true, then the user is linked to either a YouTube username or G+ account. Otherwise, the user doesn't have a public YouTube identity.
+          "longUploadsStatus": "A String", # The long uploads status of this channel. See
         },
         "invideoPromotion": { # Describes an invideo promotion campaign consisting of multiple promoted items. A campaign belongs to a single channel_id. # The invideoPromotion object encapsulates information about promotion campaign associated with the channel.
           "defaultTiming": { # Describes a temporal position of a visual widget inside a video. # The default temporal position within the video where the promoted item will be displayed. Can be overriden by more specific timing in the item.
@@ -139,6 +140,7 @@
               },
             },
           ],
+          "useSmartTiming": True or False, # Indicates whether the channel's promotional campaign uses "smart timing." This feature attempts to show promotions at a point in the video when they are more likely to be clicked and less likely to disrupt the viewing experience. This feature also picks up a single promotion to show on each video.
           "position": { # Describes the spatial position of a visual widget inside a video. It is a union of various position types, out of which only will be set one. # The spatial position within the video where the promoted item will be displayed.
             "cornerPosition": "A String", # Describes in which corner of the video the visual widget will appear.
             "type": "A String", # Defines the position type.
@@ -356,6 +358,7 @@
   "status": { # JSON template for the status part of a channel. # The status object encapsulates information about the privacy status of the channel.
     "privacyStatus": "A String", # Privacy status of the channel.
     "isLinked": True or False, # If true, then the user is linked to either a YouTube username or G+ account. Otherwise, the user doesn't have a public YouTube identity.
+    "longUploadsStatus": "A String", # The long uploads status of this channel. See
   },
   "invideoPromotion": { # Describes an invideo promotion campaign consisting of multiple promoted items. A campaign belongs to a single channel_id. # The invideoPromotion object encapsulates information about promotion campaign associated with the channel.
     "defaultTiming": { # Describes a temporal position of a visual widget inside a video. # The default temporal position within the video where the promoted item will be displayed. Can be overriden by more specific timing in the item.
@@ -380,6 +383,7 @@
         },
       },
     ],
+    "useSmartTiming": True or False, # Indicates whether the channel's promotional campaign uses "smart timing." This feature attempts to show promotions at a point in the video when they are more likely to be clicked and less likely to disrupt the viewing experience. This feature also picks up a single promotion to show on each video.
     "position": { # Describes the spatial position of a visual widget inside a video. It is a union of various position types, out of which only will be set one. # The spatial position within the video where the promoted item will be displayed.
       "cornerPosition": "A String", # Describes in which corner of the video the visual widget will appear.
       "type": "A String", # Defines the position type.
@@ -564,6 +568,7 @@
     "status": { # JSON template for the status part of a channel. # The status object encapsulates information about the privacy status of the channel.
       "privacyStatus": "A String", # Privacy status of the channel.
       "isLinked": True or False, # If true, then the user is linked to either a YouTube username or G+ account. Otherwise, the user doesn't have a public YouTube identity.
+      "longUploadsStatus": "A String", # The long uploads status of this channel. See
     },
     "invideoPromotion": { # Describes an invideo promotion campaign consisting of multiple promoted items. A campaign belongs to a single channel_id. # The invideoPromotion object encapsulates information about promotion campaign associated with the channel.
       "defaultTiming": { # Describes a temporal position of a visual widget inside a video. # The default temporal position within the video where the promoted item will be displayed. Can be overriden by more specific timing in the item.
@@ -588,6 +593,7 @@
           },
         },
       ],
+      "useSmartTiming": True or False, # Indicates whether the channel's promotional campaign uses "smart timing." This feature attempts to show promotions at a point in the video when they are more likely to be clicked and less likely to disrupt the viewing experience. This feature also picks up a single promotion to show on each video.
       "position": { # Describes the spatial position of a visual widget inside a video. It is a union of various position types, out of which only will be set one. # The spatial position within the video where the promoted item will be displayed.
         "cornerPosition": "A String", # Describes in which corner of the video the visual widget will appear.
         "type": "A String", # Defines the position type.
diff --git a/docs/dyn/youtube_v3.liveBroadcasts.html b/docs/dyn/youtube_v3.liveBroadcasts.html
index 9a5b629..1c25a12 100644
--- a/docs/dyn/youtube_v3.liveBroadcasts.html
+++ b/docs/dyn/youtube_v3.liveBroadcasts.html
@@ -216,7 +216,7 @@
 If you do not specify a value for this parameter, then YouTube performs the action as soon as possible. See the Getting started guide for more details.
 
 Important: You should only specify a value for this parameter if your broadcast stream is delayed.
-  walltime: string, The walltime parameter specifies the wall clock time at which the specified slate change will occur. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.
+  walltime: string, The walltime parameter specifies the wall clock time at which the specified slate change will occur. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sssZ) format.
 
 Returns:
   An object of the form:
diff --git a/docs/dyn/youtube_v3.liveStreams.html b/docs/dyn/youtube_v3.liveStreams.html
index faeb3fd..23b9597 100644
--- a/docs/dyn/youtube_v3.liveStreams.html
+++ b/docs/dyn/youtube_v3.liveStreams.html
@@ -124,6 +124,12 @@
     },
     "kind": "youtube#liveStream", # Identifies what kind of resource this is. Value: the fixed string "youtube#liveStream".
     "contentDetails": { # Detailed settings of a stream. # The content_details object contains information about the stream, including the closed captions ingestion URL.
+      "isReusable": True or False, # Indicates whether the stream is reusable, which means that it can be bound to multiple broadcasts. It is common for broadcasters to reuse the same stream for many different broadcasts if those broadcasts occur at different times.
+          #
+          # If you set this value to false, then the stream will not be reusable, which means that it can only be bound to one broadcast. Non-reusable streams differ from reusable streams in the following ways:
+          # - A non-reusable stream can only be bound to one broadcast.
+          # - A non-reusable stream might be deleted by an automated process after the broadcast ends.
+          # - The  liveStreams.list method does not list non-reusable streams if you call the method and set the mine parameter to true. The only way to use that method to retrieve the resource for a non-reusable stream is to use the id parameter to identify the stream.
       "closedCaptionsIngestionUrl": "A String", # The ingestion URL where the closed captions of this stream are sent.
     },
     "cdn": { # Brief description of the live stream cdn settings. # The cdn object defines the live stream's content delivery network (CDN) settings. These settings provide details about the manner in which you stream your content to YouTube.
@@ -167,6 +173,12 @@
       },
       "kind": "youtube#liveStream", # Identifies what kind of resource this is. Value: the fixed string "youtube#liveStream".
       "contentDetails": { # Detailed settings of a stream. # The content_details object contains information about the stream, including the closed captions ingestion URL.
+        "isReusable": True or False, # Indicates whether the stream is reusable, which means that it can be bound to multiple broadcasts. It is common for broadcasters to reuse the same stream for many different broadcasts if those broadcasts occur at different times.
+            #
+            # If you set this value to false, then the stream will not be reusable, which means that it can only be bound to one broadcast. Non-reusable streams differ from reusable streams in the following ways:
+            # - A non-reusable stream can only be bound to one broadcast.
+            # - A non-reusable stream might be deleted by an automated process after the broadcast ends.
+            # - The  liveStreams.list method does not list non-reusable streams if you call the method and set the mine parameter to true. The only way to use that method to retrieve the resource for a non-reusable stream is to use the id parameter to identify the stream.
         "closedCaptionsIngestionUrl": "A String", # The ingestion URL where the closed captions of this stream are sent.
       },
       "cdn": { # Brief description of the live stream cdn settings. # The cdn object defines the live stream's content delivery network (CDN) settings. These settings provide details about the manner in which you stream your content to YouTube.
@@ -227,6 +239,12 @@
           },
           "kind": "youtube#liveStream", # Identifies what kind of resource this is. Value: the fixed string "youtube#liveStream".
           "contentDetails": { # Detailed settings of a stream. # The content_details object contains information about the stream, including the closed captions ingestion URL.
+            "isReusable": True or False, # Indicates whether the stream is reusable, which means that it can be bound to multiple broadcasts. It is common for broadcasters to reuse the same stream for many different broadcasts if those broadcasts occur at different times.
+                #
+                # If you set this value to false, then the stream will not be reusable, which means that it can only be bound to one broadcast. Non-reusable streams differ from reusable streams in the following ways:
+                # - A non-reusable stream can only be bound to one broadcast.
+                # - A non-reusable stream might be deleted by an automated process after the broadcast ends.
+                # - The  liveStreams.list method does not list non-reusable streams if you call the method and set the mine parameter to true. The only way to use that method to retrieve the resource for a non-reusable stream is to use the id parameter to identify the stream.
             "closedCaptionsIngestionUrl": "A String", # The ingestion URL where the closed captions of this stream are sent.
           },
           "cdn": { # Brief description of the live stream cdn settings. # The cdn object defines the live stream's content delivery network (CDN) settings. These settings provide details about the manner in which you stream your content to YouTube.
@@ -296,6 +314,12 @@
     },
     "kind": "youtube#liveStream", # Identifies what kind of resource this is. Value: the fixed string "youtube#liveStream".
     "contentDetails": { # Detailed settings of a stream. # The content_details object contains information about the stream, including the closed captions ingestion URL.
+      "isReusable": True or False, # Indicates whether the stream is reusable, which means that it can be bound to multiple broadcasts. It is common for broadcasters to reuse the same stream for many different broadcasts if those broadcasts occur at different times.
+          #
+          # If you set this value to false, then the stream will not be reusable, which means that it can only be bound to one broadcast. Non-reusable streams differ from reusable streams in the following ways:
+          # - A non-reusable stream can only be bound to one broadcast.
+          # - A non-reusable stream might be deleted by an automated process after the broadcast ends.
+          # - The  liveStreams.list method does not list non-reusable streams if you call the method and set the mine parameter to true. The only way to use that method to retrieve the resource for a non-reusable stream is to use the id parameter to identify the stream.
       "closedCaptionsIngestionUrl": "A String", # The ingestion URL where the closed captions of this stream are sent.
     },
     "cdn": { # Brief description of the live stream cdn settings. # The cdn object defines the live stream's content delivery network (CDN) settings. These settings provide details about the manner in which you stream your content to YouTube.
@@ -339,6 +363,12 @@
       },
       "kind": "youtube#liveStream", # Identifies what kind of resource this is. Value: the fixed string "youtube#liveStream".
       "contentDetails": { # Detailed settings of a stream. # The content_details object contains information about the stream, including the closed captions ingestion URL.
+        "isReusable": True or False, # Indicates whether the stream is reusable, which means that it can be bound to multiple broadcasts. It is common for broadcasters to reuse the same stream for many different broadcasts if those broadcasts occur at different times.
+            #
+            # If you set this value to false, then the stream will not be reusable, which means that it can only be bound to one broadcast. Non-reusable streams differ from reusable streams in the following ways:
+            # - A non-reusable stream can only be bound to one broadcast.
+            # - A non-reusable stream might be deleted by an automated process after the broadcast ends.
+            # - The  liveStreams.list method does not list non-reusable streams if you call the method and set the mine parameter to true. The only way to use that method to retrieve the resource for a non-reusable stream is to use the id parameter to identify the stream.
         "closedCaptionsIngestionUrl": "A String", # The ingestion URL where the closed captions of this stream are sent.
       },
       "cdn": { # Brief description of the live stream cdn settings. # The cdn object defines the live stream's content delivery network (CDN) settings. These settings provide details about the manner in which you stream your content to YouTube.
diff --git a/docs/epy/class-tree.html b/docs/epy/class-tree.html
index 7e8a3d6..cc7419f 100644
--- a/docs/epy/class-tree.html
+++ b/docs/epy/class-tree.html
@@ -154,7 +154,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient-module.html b/docs/epy/googleapiclient-module.html
index a7ff827..5e8e636 100644
--- a/docs/epy/googleapiclient-module.html
+++ b/docs/epy/googleapiclient-module.html
@@ -57,7 +57,7 @@
 <h1 class="epydoc">Package googleapiclient</h1><p class="nomargin-top"><span class="codelink"><a href="googleapiclient-pysrc.html">source&nbsp;code</a></span></p>
 <hr />
 <div class="fields">      <p><strong>Version:</strong>
-        1.2
+        1.3
       </p>
 </div><!-- ==================== SUBMODULES ==================== -->
 <a name="section-Submodules"></a>
@@ -116,7 +116,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient-pysrc.html b/docs/epy/googleapiclient-pysrc.html
index d1af023..a331d26 100644
--- a/docs/epy/googleapiclient-pysrc.html
+++ b/docs/epy/googleapiclient-pysrc.html
@@ -55,7 +55,7 @@
 </table>
 <h1 class="epydoc">Source Code for <a href="googleapiclient-module.html">Package googleapiclient</a></h1>
 <pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt>  <tt class="py-line"><tt class="py-comment"># Copyright 2014 Google Inc. All Rights Reserved.
+<a name="L1"></a><tt class="py-lineno"> 1</tt>  <tt class="py-line"><tt class="py-comment"># Copyright 2014 Google Inc. All Rights Reserved.</tt> </tt>
 <a name="L2"></a><tt class="py-lineno"> 2</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
 <a name="L3"></a><tt class="py-lineno"> 3</tt>  <tt class="py-line"><tt class="py-comment"># Licensed under the Apache License, Version 2.0 (the "License");</tt> </tt>
 <a name="L4"></a><tt class="py-lineno"> 4</tt>  <tt class="py-line"><tt class="py-comment"># you may not use this file except in compliance with the License.</tt> </tt>
@@ -69,7 +69,7 @@
 <a name="L12"></a><tt class="py-lineno">12</tt>  <tt class="py-line"><tt class="py-comment"># See the License for the specific language governing permissions and</tt> </tt>
 <a name="L13"></a><tt class="py-lineno">13</tt>  <tt class="py-line"><tt class="py-comment"># limitations under the License.</tt> </tt>
 <a name="L14"></a><tt class="py-lineno">14</tt>  <tt class="py-line"> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt>  <tt class="py-line"><tt class="py-name">__version__</tt> <tt class="py-op">=</tt> <tt class="py-docstring">"1.2"</tt> </tt>
+<a name="L15"></a><tt class="py-lineno">15</tt>  <tt class="py-line"><tt class="py-name">__version__</tt> <tt class="py-op">=</tt> <tt class="py-docstring">"1.3"</tt> </tt>
 <a name="L16"></a><tt class="py-lineno">16</tt>  <tt class="py-line"> </tt><script type="text/javascript">
 <!--
 expandto(location.href);
@@ -103,7 +103,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.channel-module.html b/docs/epy/googleapiclient.channel-module.html
index 4433c0a..6077d1c 100644
--- a/docs/epy/googleapiclient.channel-module.html
+++ b/docs/epy/googleapiclient.channel-module.html
@@ -455,7 +455,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.channel-pysrc.html b/docs/epy/googleapiclient.channel-pysrc.html
index 16ea6b7..fd7722f 100644
--- a/docs/epy/googleapiclient.channel-pysrc.html
+++ b/docs/epy/googleapiclient.channel-pysrc.html
@@ -373,7 +373,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.channel.Channel-class.html b/docs/epy/googleapiclient.channel.Channel-class.html
index d960a81..bcbc279 100644
--- a/docs/epy/googleapiclient.channel.Channel-class.html
+++ b/docs/epy/googleapiclient.channel.Channel-class.html
@@ -376,7 +376,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.channel.Notification-class.html b/docs/epy/googleapiclient.channel.Notification-class.html
index 05ceef7..48dfeb6 100644
--- a/docs/epy/googleapiclient.channel.Notification-class.html
+++ b/docs/epy/googleapiclient.channel.Notification-class.html
@@ -249,7 +249,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.discovery-module.html b/docs/epy/googleapiclient.discovery-module.html
index 55b4b29..b81fb31 100644
--- a/docs/epy/googleapiclient.discovery-module.html
+++ b/docs/epy/googleapiclient.discovery-module.html
@@ -1081,7 +1081,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.discovery-pysrc.html b/docs/epy/googleapiclient.discovery-pysrc.html
index 9831f77..4a200b6 100644
--- a/docs/epy/googleapiclient.discovery-pysrc.html
+++ b/docs/epy/googleapiclient.discovery-pysrc.html
@@ -56,7 +56,7 @@
 </table>
 <h1 class="epydoc">Source Code for <a href="googleapiclient.discovery-module.html">Module googleapiclient.discovery</a></h1>
 <pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">  1</tt>  <tt class="py-line"><tt class="py-comment"># Copyright 2014 Google Inc. All Rights Reserved.
+<a name="L1"></a><tt class="py-lineno">  1</tt>  <tt class="py-line"><tt class="py-comment"># Copyright 2014 Google Inc. All Rights Reserved.</tt> </tt>
 <a name="L2"></a><tt class="py-lineno">  2</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
 <a name="L3"></a><tt class="py-lineno">  3</tt>  <tt class="py-line"><tt class="py-comment"># Licensed under the Apache License, Version 2.0 (the "License");</tt> </tt>
 <a name="L4"></a><tt class="py-lineno">  4</tt>  <tt class="py-line"><tt class="py-comment"># you may not use this file except in compliance with the License.</tt> </tt>
@@ -90,39 +90,39 @@
 <a name="L32"></a><tt class="py-lineno"> 32</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">email</tt><tt class="py-op">.</tt><tt class="py-name">generator</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Generator</tt> </tt>
 <a name="L33"></a><tt class="py-lineno"> 33</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">email</tt><tt class="py-op">.</tt><tt class="py-name">mime</tt><tt class="py-op">.</tt><tt class="py-name">multipart</tt> <tt class="py-keyword">import</tt> <tt class="py-name">MIMEMultipart</tt> </tt>
 <a name="L34"></a><tt class="py-lineno"> 34</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">email</tt><tt class="py-op">.</tt><tt class="py-name">mime</tt><tt class="py-op">.</tt><tt class="py-name">nonmultipart</tt> <tt class="py-keyword">import</tt> <tt class="py-name">MIMENonMultipart</tt> </tt>
-<a name="L35"></a><tt class="py-lineno"> 35</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">keyword</tt> </tt>
-<a name="L36"></a><tt class="py-lineno"> 36</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">logging</tt> </tt>
-<a name="L37"></a><tt class="py-lineno"> 37</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">mimetypes</tt> </tt>
-<a name="L38"></a><tt class="py-lineno"> 38</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L39"></a><tt class="py-lineno"> 39</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
-<a name="L40"></a><tt class="py-lineno"> 40</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">urllib</tt> </tt>
-<a name="L41"></a><tt class="py-lineno"> 41</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">urlparse</tt> </tt>
-<a name="L42"></a><tt class="py-lineno"> 42</tt>  <tt class="py-line"> </tt>
-<a name="L43"></a><tt class="py-lineno"> 43</tt>  <tt class="py-line"><tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L44"></a><tt class="py-lineno"> 44</tt>  <tt class="py-line">  <tt class="py-keyword">from</tt> <tt class="py-name">urlparse</tt> <tt class="py-keyword">import</tt> <tt class="py-name">parse_qsl</tt> </tt>
-<a name="L45"></a><tt class="py-lineno"> 45</tt>  <tt class="py-line"><tt class="py-keyword">except</tt> <tt class="py-name">ImportError</tt><tt class="py-op">:</tt> </tt>
-<a name="L46"></a><tt class="py-lineno"> 46</tt>  <tt class="py-line">  <tt class="py-keyword">from</tt> <tt class="py-name">cgi</tt> <tt class="py-keyword">import</tt> <tt class="py-name">parse_qsl</tt> </tt>
-<a name="L47"></a><tt class="py-lineno"> 47</tt>  <tt class="py-line"> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt>  <tt class="py-line"><tt class="py-comment"># Third-party imports</tt> </tt>
-<a name="L49"></a><tt class="py-lineno"> 49</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">httplib2</tt> </tt>
-<a name="L50"></a><tt class="py-lineno"> 50</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-0" class="py-name" targets="Module googleapiclient.mimeparse=googleapiclient.mimeparse-module.html"><a title="googleapiclient.mimeparse" class="py-name" href="#" onclick="return doclink('link-0', 'mimeparse', 'link-0');">mimeparse</a></tt> </tt>
-<a name="L51"></a><tt class="py-lineno"> 51</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">uritemplate</tt> </tt>
-<a name="L52"></a><tt class="py-lineno"> 52</tt>  <tt class="py-line"> </tt>
-<a name="L53"></a><tt class="py-lineno"> 53</tt>  <tt class="py-line"><tt class="py-comment"># Local imports</tt> </tt>
-<a name="L54"></a><tt class="py-lineno"> 54</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-1" class="py-name" targets="Package googleapiclient=googleapiclient-module.html"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-1', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module googleapiclient.errors=googleapiclient.errors-module.html"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-2', 'errors', 'link-2');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Class googleapiclient.errors.HttpError=googleapiclient.errors.HttpError-class.html"><a title="googleapiclient.errors.HttpError" class="py-name" href="#" onclick="return doclink('link-3', 'HttpError', 'link-3');">HttpError</a></tt> </tt>
-<a name="L55"></a><tt class="py-lineno"> 55</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-4', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-5', 'errors', 'link-2');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class googleapiclient.errors.InvalidJsonError=googleapiclient.errors.InvalidJsonError-class.html"><a title="googleapiclient.errors.InvalidJsonError" class="py-name" href="#" onclick="return doclink('link-6', 'InvalidJsonError', 'link-6');">InvalidJsonError</a></tt> </tt>
-<a name="L56"></a><tt class="py-lineno"> 56</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-7', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-8', 'errors', 'link-2');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-9" class="py-name" targets="Class googleapiclient.errors.MediaUploadSizeError=googleapiclient.errors.MediaUploadSizeError-class.html"><a title="googleapiclient.errors.MediaUploadSizeError" class="py-name" href="#" onclick="return doclink('link-9', 'MediaUploadSizeError', 'link-9');">MediaUploadSizeError</a></tt> </tt>
-<a name="L57"></a><tt class="py-lineno"> 57</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-10" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-10', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-11', 'errors', 'link-2');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-12" class="py-name" targets="Class googleapiclient.errors.UnacceptableMimeTypeError=googleapiclient.errors.UnacceptableMimeTypeError-class.html"><a title="googleapiclient.errors.UnacceptableMimeTypeError" class="py-name" href="#" onclick="return doclink('link-12', 'UnacceptableMimeTypeError', 'link-12');">UnacceptableMimeTypeError</a></tt> </tt>
-<a name="L58"></a><tt class="py-lineno"> 58</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-13" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-13', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-14', 'errors', 'link-2');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-15" class="py-name" targets="Class googleapiclient.errors.UnknownApiNameOrVersion=googleapiclient.errors.UnknownApiNameOrVersion-class.html"><a title="googleapiclient.errors.UnknownApiNameOrVersion" class="py-name" href="#" onclick="return doclink('link-15', 'UnknownApiNameOrVersion', 'link-15');">UnknownApiNameOrVersion</a></tt> </tt>
-<a name="L59"></a><tt class="py-lineno"> 59</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-16" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-16', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-17', 'errors', 'link-2');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-18" class="py-name" targets="Class googleapiclient.errors.UnknownFileType=googleapiclient.errors.UnknownFileType-class.html"><a title="googleapiclient.errors.UnknownFileType" class="py-name" href="#" onclick="return doclink('link-18', 'UnknownFileType', 'link-18');">UnknownFileType</a></tt> </tt>
-<a name="L60"></a><tt class="py-lineno"> 60</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-19" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-19', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Module googleapiclient.http=googleapiclient.http-module.html"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-20', 'http', 'link-20');">http</a></tt> <tt class="py-keyword">import</tt> <tt id="link-21" class="py-name" targets="Class googleapiclient.http.HttpRequest=googleapiclient.http.HttpRequest-class.html"><a title="googleapiclient.http.HttpRequest" class="py-name" href="#" onclick="return doclink('link-21', 'HttpRequest', 'link-21');">HttpRequest</a></tt> </tt>
-<a name="L61"></a><tt class="py-lineno"> 61</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-22" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-22', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-23', 'http', 'link-20');">http</a></tt> <tt class="py-keyword">import</tt> <tt id="link-24" class="py-name" targets="Class googleapiclient.http.MediaFileUpload=googleapiclient.http.MediaFileUpload-class.html"><a title="googleapiclient.http.MediaFileUpload" class="py-name" href="#" onclick="return doclink('link-24', 'MediaFileUpload', 'link-24');">MediaFileUpload</a></tt> </tt>
-<a name="L62"></a><tt class="py-lineno"> 62</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-25" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-25', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-26', 'http', 'link-20');">http</a></tt> <tt class="py-keyword">import</tt> <tt id="link-27" class="py-name" targets="Class googleapiclient.http.MediaUpload=googleapiclient.http.MediaUpload-class.html"><a title="googleapiclient.http.MediaUpload" class="py-name" href="#" onclick="return doclink('link-27', 'MediaUpload', 'link-27');">MediaUpload</a></tt> </tt>
-<a name="L63"></a><tt class="py-lineno"> 63</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-28" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-28', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Module googleapiclient.model=googleapiclient.model-module.html"><a title="googleapiclient.model" class="py-name" href="#" onclick="return doclink('link-29', 'model', 'link-29');">model</a></tt> <tt class="py-keyword">import</tt> <tt id="link-30" class="py-name" targets="Class googleapiclient.model.JsonModel=googleapiclient.model.JsonModel-class.html"><a title="googleapiclient.model.JsonModel" class="py-name" href="#" onclick="return doclink('link-30', 'JsonModel', 'link-30');">JsonModel</a></tt> </tt>
-<a name="L64"></a><tt class="py-lineno"> 64</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-31" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-31', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="googleapiclient.model" class="py-name" href="#" onclick="return doclink('link-32', 'model', 'link-29');">model</a></tt> <tt class="py-keyword">import</tt> <tt id="link-33" class="py-name" targets="Class googleapiclient.model.MediaModel=googleapiclient.model.MediaModel-class.html"><a title="googleapiclient.model.MediaModel" class="py-name" href="#" onclick="return doclink('link-33', 'MediaModel', 'link-33');">MediaModel</a></tt> </tt>
-<a name="L65"></a><tt class="py-lineno"> 65</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-34" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-34', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="googleapiclient.model" class="py-name" href="#" onclick="return doclink('link-35', 'model', 'link-29');">model</a></tt> <tt class="py-keyword">import</tt> <tt id="link-36" class="py-name" targets="Class googleapiclient.model.RawModel=googleapiclient.model.RawModel-class.html"><a title="googleapiclient.model.RawModel" class="py-name" href="#" onclick="return doclink('link-36', 'RawModel', 'link-36');">RawModel</a></tt> </tt>
-<a name="L66"></a><tt class="py-lineno"> 66</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-37" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-37', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Module googleapiclient.schema=googleapiclient.schema-module.html"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-38', 'schema', 'link-38');">schema</a></tt> <tt class="py-keyword">import</tt> <tt id="link-39" class="py-name" targets="Class googleapiclient.schema.Schemas=googleapiclient.schema.Schemas-class.html"><a title="googleapiclient.schema.Schemas" class="py-name" href="#" onclick="return doclink('link-39', 'Schemas', 'link-39');">Schemas</a></tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt><tt class="py-op">.</tt><tt class="py-name">anyjson</tt> <tt class="py-keyword">import</tt> <tt class="py-name">simplejson</tt> </tt>
+<a name="L35"></a><tt class="py-lineno"> 35</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
+<a name="L36"></a><tt class="py-lineno"> 36</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">keyword</tt> </tt>
+<a name="L37"></a><tt class="py-lineno"> 37</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">logging</tt> </tt>
+<a name="L38"></a><tt class="py-lineno"> 38</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">mimetypes</tt> </tt>
+<a name="L39"></a><tt class="py-lineno"> 39</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
+<a name="L40"></a><tt class="py-lineno"> 40</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">re</tt> </tt>
+<a name="L41"></a><tt class="py-lineno"> 41</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">urllib</tt> </tt>
+<a name="L42"></a><tt class="py-lineno"> 42</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">urlparse</tt> </tt>
+<a name="L43"></a><tt class="py-lineno"> 43</tt>  <tt class="py-line"> </tt>
+<a name="L44"></a><tt class="py-lineno"> 44</tt>  <tt class="py-line"><tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
+<a name="L45"></a><tt class="py-lineno"> 45</tt>  <tt class="py-line">  <tt class="py-keyword">from</tt> <tt class="py-name">urlparse</tt> <tt class="py-keyword">import</tt> <tt class="py-name">parse_qsl</tt> </tt>
+<a name="L46"></a><tt class="py-lineno"> 46</tt>  <tt class="py-line"><tt class="py-keyword">except</tt> <tt class="py-name">ImportError</tt><tt class="py-op">:</tt> </tt>
+<a name="L47"></a><tt class="py-lineno"> 47</tt>  <tt class="py-line">  <tt class="py-keyword">from</tt> <tt class="py-name">cgi</tt> <tt class="py-keyword">import</tt> <tt class="py-name">parse_qsl</tt> </tt>
+<a name="L48"></a><tt class="py-lineno"> 48</tt>  <tt class="py-line"> </tt>
+<a name="L49"></a><tt class="py-lineno"> 49</tt>  <tt class="py-line"><tt class="py-comment"># Third-party imports</tt> </tt>
+<a name="L50"></a><tt class="py-lineno"> 50</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">httplib2</tt> </tt>
+<a name="L51"></a><tt class="py-lineno"> 51</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-0" class="py-name" targets="Module googleapiclient.mimeparse=googleapiclient.mimeparse-module.html"><a title="googleapiclient.mimeparse" class="py-name" href="#" onclick="return doclink('link-0', 'mimeparse', 'link-0');">mimeparse</a></tt> </tt>
+<a name="L52"></a><tt class="py-lineno"> 52</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">uritemplate</tt> </tt>
+<a name="L53"></a><tt class="py-lineno"> 53</tt>  <tt class="py-line"> </tt>
+<a name="L54"></a><tt class="py-lineno"> 54</tt>  <tt class="py-line"><tt class="py-comment"># Local imports</tt> </tt>
+<a name="L55"></a><tt class="py-lineno"> 55</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-1" class="py-name" targets="Package googleapiclient=googleapiclient-module.html"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-1', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Module googleapiclient.errors=googleapiclient.errors-module.html"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-2', 'errors', 'link-2');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-3" class="py-name" targets="Class googleapiclient.errors.HttpError=googleapiclient.errors.HttpError-class.html"><a title="googleapiclient.errors.HttpError" class="py-name" href="#" onclick="return doclink('link-3', 'HttpError', 'link-3');">HttpError</a></tt> </tt>
+<a name="L56"></a><tt class="py-lineno"> 56</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-4" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-4', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-5', 'errors', 'link-2');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class googleapiclient.errors.InvalidJsonError=googleapiclient.errors.InvalidJsonError-class.html"><a title="googleapiclient.errors.InvalidJsonError" class="py-name" href="#" onclick="return doclink('link-6', 'InvalidJsonError', 'link-6');">InvalidJsonError</a></tt> </tt>
+<a name="L57"></a><tt class="py-lineno"> 57</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-7', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-8', 'errors', 'link-2');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-9" class="py-name" targets="Class googleapiclient.errors.MediaUploadSizeError=googleapiclient.errors.MediaUploadSizeError-class.html"><a title="googleapiclient.errors.MediaUploadSizeError" class="py-name" href="#" onclick="return doclink('link-9', 'MediaUploadSizeError', 'link-9');">MediaUploadSizeError</a></tt> </tt>
+<a name="L58"></a><tt class="py-lineno"> 58</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-10" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-10', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-11" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-11', 'errors', 'link-2');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-12" class="py-name" targets="Class googleapiclient.errors.UnacceptableMimeTypeError=googleapiclient.errors.UnacceptableMimeTypeError-class.html"><a title="googleapiclient.errors.UnacceptableMimeTypeError" class="py-name" href="#" onclick="return doclink('link-12', 'UnacceptableMimeTypeError', 'link-12');">UnacceptableMimeTypeError</a></tt> </tt>
+<a name="L59"></a><tt class="py-lineno"> 59</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-13" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-13', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-14" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-14', 'errors', 'link-2');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-15" class="py-name" targets="Class googleapiclient.errors.UnknownApiNameOrVersion=googleapiclient.errors.UnknownApiNameOrVersion-class.html"><a title="googleapiclient.errors.UnknownApiNameOrVersion" class="py-name" href="#" onclick="return doclink('link-15', 'UnknownApiNameOrVersion', 'link-15');">UnknownApiNameOrVersion</a></tt> </tt>
+<a name="L60"></a><tt class="py-lineno"> 60</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-16" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-16', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-17" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-17', 'errors', 'link-2');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-18" class="py-name" targets="Class googleapiclient.errors.UnknownFileType=googleapiclient.errors.UnknownFileType-class.html"><a title="googleapiclient.errors.UnknownFileType" class="py-name" href="#" onclick="return doclink('link-18', 'UnknownFileType', 'link-18');">UnknownFileType</a></tt> </tt>
+<a name="L61"></a><tt class="py-lineno"> 61</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-19" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-19', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-20" class="py-name" targets="Module googleapiclient.http=googleapiclient.http-module.html"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-20', 'http', 'link-20');">http</a></tt> <tt class="py-keyword">import</tt> <tt id="link-21" class="py-name" targets="Class googleapiclient.http.HttpRequest=googleapiclient.http.HttpRequest-class.html"><a title="googleapiclient.http.HttpRequest" class="py-name" href="#" onclick="return doclink('link-21', 'HttpRequest', 'link-21');">HttpRequest</a></tt> </tt>
+<a name="L62"></a><tt class="py-lineno"> 62</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-22" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-22', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-23" class="py-name"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-23', 'http', 'link-20');">http</a></tt> <tt class="py-keyword">import</tt> <tt id="link-24" class="py-name" targets="Class googleapiclient.http.MediaFileUpload=googleapiclient.http.MediaFileUpload-class.html"><a title="googleapiclient.http.MediaFileUpload" class="py-name" href="#" onclick="return doclink('link-24', 'MediaFileUpload', 'link-24');">MediaFileUpload</a></tt> </tt>
+<a name="L63"></a><tt class="py-lineno"> 63</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-25" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-25', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-26', 'http', 'link-20');">http</a></tt> <tt class="py-keyword">import</tt> <tt id="link-27" class="py-name" targets="Class googleapiclient.http.MediaUpload=googleapiclient.http.MediaUpload-class.html"><a title="googleapiclient.http.MediaUpload" class="py-name" href="#" onclick="return doclink('link-27', 'MediaUpload', 'link-27');">MediaUpload</a></tt> </tt>
+<a name="L64"></a><tt class="py-lineno"> 64</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-28" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-28', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Module googleapiclient.model=googleapiclient.model-module.html"><a title="googleapiclient.model" class="py-name" href="#" onclick="return doclink('link-29', 'model', 'link-29');">model</a></tt> <tt class="py-keyword">import</tt> <tt id="link-30" class="py-name" targets="Class googleapiclient.model.JsonModel=googleapiclient.model.JsonModel-class.html"><a title="googleapiclient.model.JsonModel" class="py-name" href="#" onclick="return doclink('link-30', 'JsonModel', 'link-30');">JsonModel</a></tt> </tt>
+<a name="L65"></a><tt class="py-lineno"> 65</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-31" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-31', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-32" class="py-name"><a title="googleapiclient.model" class="py-name" href="#" onclick="return doclink('link-32', 'model', 'link-29');">model</a></tt> <tt class="py-keyword">import</tt> <tt id="link-33" class="py-name" targets="Class googleapiclient.model.MediaModel=googleapiclient.model.MediaModel-class.html"><a title="googleapiclient.model.MediaModel" class="py-name" href="#" onclick="return doclink('link-33', 'MediaModel', 'link-33');">MediaModel</a></tt> </tt>
+<a name="L66"></a><tt class="py-lineno"> 66</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-34" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-34', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="googleapiclient.model" class="py-name" href="#" onclick="return doclink('link-35', 'model', 'link-29');">model</a></tt> <tt class="py-keyword">import</tt> <tt id="link-36" class="py-name" targets="Class googleapiclient.model.RawModel=googleapiclient.model.RawModel-class.html"><a title="googleapiclient.model.RawModel" class="py-name" href="#" onclick="return doclink('link-36', 'RawModel', 'link-36');">RawModel</a></tt> </tt>
+<a name="L67"></a><tt class="py-lineno"> 67</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-37" class="py-name"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-37', 'googleapiclient', 'link-1');">googleapiclient</a></tt><tt class="py-op">.</tt><tt id="link-38" class="py-name" targets="Module googleapiclient.schema=googleapiclient.schema-module.html"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-38', 'schema', 'link-38');">schema</a></tt> <tt class="py-keyword">import</tt> <tt id="link-39" class="py-name" targets="Class googleapiclient.schema.Schemas=googleapiclient.schema.Schemas-class.html"><a title="googleapiclient.schema.Schemas" class="py-name" href="#" onclick="return doclink('link-39', 'Schemas', 'link-39');">Schemas</a></tt> </tt>
 <a name="L68"></a><tt class="py-lineno"> 68</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt><tt class="py-op">.</tt><tt class="py-name">client</tt> <tt class="py-keyword">import</tt> <tt class="py-name">GoogleCredentials</tt> </tt>
 <a name="L69"></a><tt class="py-lineno"> 69</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt><tt class="py-op">.</tt><tt class="py-name">util</tt> <tt class="py-keyword">import</tt> <tt class="py-name">_add_query_parameter</tt> </tt>
 <a name="L70"></a><tt class="py-lineno"> 70</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt><tt class="py-op">.</tt><tt class="py-name">util</tt> <tt class="py-keyword">import</tt> <tt class="py-name">positional</tt> </tt>
@@ -265,7 +265,7 @@
 <a name="L204"></a><tt class="py-lineno">204</tt>  <tt class="py-line">    <tt class="py-keyword">raise</tt> <tt id="link-61" class="py-name"><a title="googleapiclient.errors.HttpError" class="py-name" href="#" onclick="return doclink('link-61', 'HttpError', 'link-3');">HttpError</a></tt><tt class="py-op">(</tt><tt class="py-name">resp</tt><tt class="py-op">,</tt> <tt class="py-name">content</tt><tt class="py-op">,</tt> <tt class="py-name">uri</tt><tt class="py-op">=</tt><tt class="py-name">requested_url</tt><tt class="py-op">)</tt> </tt>
 <a name="L205"></a><tt class="py-lineno">205</tt>  <tt class="py-line"> </tt>
 <a name="L206"></a><tt class="py-lineno">206</tt>  <tt class="py-line">  <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L207"></a><tt class="py-lineno">207</tt>  <tt class="py-line">    <tt class="py-name">service</tt> <tt class="py-op">=</tt> <tt class="py-name">simplejson</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">content</tt><tt class="py-op">)</tt> </tt>
+<a name="L207"></a><tt class="py-lineno">207</tt>  <tt class="py-line">    <tt class="py-name">service</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">content</tt><tt class="py-op">)</tt> </tt>
 <a name="L208"></a><tt class="py-lineno">208</tt>  <tt class="py-line">  <tt class="py-keyword">except</tt> <tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">e</tt><tt class="py-op">:</tt> </tt>
 <a name="L209"></a><tt class="py-lineno">209</tt>  <tt class="py-line">    <tt id="link-62" class="py-name"><a title="googleapiclient.discovery.logger" class="py-name" href="#" onclick="return doclink('link-62', 'logger', 'link-40');">logger</a></tt><tt class="py-op">.</tt><tt class="py-name">error</tt><tt class="py-op">(</tt><tt class="py-string">'Failed to parse as JSON: '</tt> <tt class="py-op">+</tt> <tt class="py-name">content</tt><tt class="py-op">)</tt> </tt>
 <a name="L210"></a><tt class="py-lineno">210</tt>  <tt class="py-line">    <tt class="py-keyword">raise</tt> <tt id="link-63" class="py-name"><a title="googleapiclient.errors.InvalidJsonError" class="py-name" href="#" onclick="return doclink('link-63', 'InvalidJsonError', 'link-6');">InvalidJsonError</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
@@ -315,7 +315,7 @@
 <a name="L254"></a><tt class="py-lineno">254</tt>  <tt class="py-line">  <tt class="py-name">future</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
 <a name="L255"></a><tt class="py-lineno">255</tt>  <tt class="py-line"> </tt>
 <a name="L256"></a><tt class="py-lineno">256</tt>  <tt class="py-line">  <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">service</tt><tt class="py-op">,</tt> <tt class="py-name">basestring</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt>  <tt class="py-line">    <tt class="py-name">service</tt> <tt class="py-op">=</tt> <tt class="py-name">simplejson</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">service</tt><tt class="py-op">)</tt> </tt>
+<a name="L257"></a><tt class="py-lineno">257</tt>  <tt class="py-line">    <tt class="py-name">service</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">service</tt><tt class="py-op">)</tt> </tt>
 <a name="L258"></a><tt class="py-lineno">258</tt>  <tt class="py-line">  <tt class="py-name">base</tt> <tt class="py-op">=</tt> <tt class="py-name">urlparse</tt><tt class="py-op">.</tt><tt class="py-name">urljoin</tt><tt class="py-op">(</tt><tt class="py-name">service</tt><tt class="py-op">[</tt><tt class="py-string">'rootUrl'</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">service</tt><tt class="py-op">[</tt><tt class="py-string">'servicePath'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
 <a name="L259"></a><tt class="py-lineno">259</tt>  <tt class="py-line">  <tt id="link-70" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-70', 'schema', 'link-38');">schema</a></tt> <tt class="py-op">=</tt> <tt id="link-71" class="py-name"><a title="googleapiclient.schema.Schemas" class="py-name" href="#" onclick="return doclink('link-71', 'Schemas', 'link-39');">Schemas</a></tt><tt class="py-op">(</tt><tt class="py-name">service</tt><tt class="py-op">)</tt> </tt>
 <a name="L260"></a><tt class="py-lineno">260</tt>  <tt class="py-line"> </tt>
@@ -1141,7 +1141,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.discovery.Resource-class.html b/docs/epy/googleapiclient.discovery.Resource-class.html
index a44483b..36bfef7 100644
--- a/docs/epy/googleapiclient.discovery.Resource-class.html
+++ b/docs/epy/googleapiclient.discovery.Resource-class.html
@@ -458,7 +458,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.discovery.ResourceMethodParameters-class.html b/docs/epy/googleapiclient.discovery.ResourceMethodParameters-class.html
index 48dcba0..9a88c10 100644
--- a/docs/epy/googleapiclient.discovery.ResourceMethodParameters-class.html
+++ b/docs/epy/googleapiclient.discovery.ResourceMethodParameters-class.html
@@ -300,7 +300,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors-module.html b/docs/epy/googleapiclient.errors-module.html
index fc40c8b..0a50ab9 100644
--- a/docs/epy/googleapiclient.errors-module.html
+++ b/docs/epy/googleapiclient.errors-module.html
@@ -224,7 +224,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors-pysrc.html b/docs/epy/googleapiclient.errors-pysrc.html
index 086dbb8..e62ca0c 100644
--- a/docs/epy/googleapiclient.errors-pysrc.html
+++ b/docs/epy/googleapiclient.errors-pysrc.html
@@ -58,7 +58,7 @@
 <pre class="py-src">
 <a name="L1"></a><tt class="py-lineno">  1</tt>  <tt class="py-line"><tt class="py-comment">#!/usr/bin/python2.4</tt> </tt>
 <a name="L2"></a><tt class="py-lineno">  2</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno">  3</tt>  <tt class="py-line"><tt class="py-comment"># Copyright 2014 Google Inc. All Rights Reserved.
+<a name="L3"></a><tt class="py-lineno">  3</tt>  <tt class="py-line"><tt class="py-comment"># Copyright 2014 Google Inc. All Rights Reserved.</tt> </tt>
 <a name="L4"></a><tt class="py-lineno">  4</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
 <a name="L5"></a><tt class="py-lineno">  5</tt>  <tt class="py-line"><tt class="py-comment"># Licensed under the Apache License, Version 2.0 (the "License");</tt> </tt>
 <a name="L6"></a><tt class="py-lineno">  6</tt>  <tt class="py-line"><tt class="py-comment"># you may not use this file except in compliance with the License.</tt> </tt>
@@ -80,9 +80,9 @@
 <a name="L22"></a><tt class="py-lineno"> 22</tt>  <tt class="py-line"> </tt>
 <a name="L23"></a><tt class="py-lineno"> 23</tt>  <tt class="py-line"><tt class="py-name">__author__</tt> <tt class="py-op">=</tt> <tt class="py-string">'jcgregorio@google.com (Joe Gregorio)'</tt> </tt>
 <a name="L24"></a><tt class="py-lineno"> 24</tt>  <tt class="py-line"> </tt>
-<a name="L25"></a><tt class="py-lineno"> 25</tt>  <tt class="py-line"> </tt>
-<a name="L26"></a><tt class="py-lineno"> 26</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt> <tt class="py-keyword">import</tt> <tt class="py-name">util</tt> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt><tt class="py-op">.</tt><tt class="py-name">anyjson</tt> <tt class="py-keyword">import</tt> <tt class="py-name">simplejson</tt> </tt>
+<a name="L25"></a><tt class="py-lineno"> 25</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
+<a name="L26"></a><tt class="py-lineno"> 26</tt>  <tt class="py-line"> </tt>
+<a name="L27"></a><tt class="py-lineno"> 27</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt> <tt class="py-keyword">import</tt> <tt class="py-name">util</tt> </tt>
 <a name="Error"></a><div id="Error-def"><a name="L28"></a><tt class="py-lineno"> 28</tt>  <tt class="py-line"> </tt>
 <a name="L29"></a><tt class="py-lineno"> 29</tt>  <tt class="py-line"> </tt>
 <a name="L30"></a><tt class="py-lineno"> 30</tt> <a class="py-toggle" href="#" id="Error-toggle" onclick="return toggle('Error');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="googleapiclient.errors.Error-class.html">Error</a><tt class="py-op">(</tt><tt class="py-base-class">Exception</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
@@ -103,7 +103,7 @@
 </div><div id="HttpError._get_reason-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="HttpError._get_reason-expanded"><a name="L45"></a><tt class="py-lineno"> 45</tt>  <tt class="py-line">    <tt class="py-docstring">"""Calculate the reason for the error from the response content."""</tt> </tt>
 <a name="L46"></a><tt class="py-lineno"> 46</tt>  <tt class="py-line">    <tt class="py-name">reason</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">resp</tt><tt class="py-op">.</tt><tt class="py-name">reason</tt> </tt>
 <a name="L47"></a><tt class="py-lineno"> 47</tt>  <tt class="py-line">    <tt class="py-keyword">try</tt><tt class="py-op">:</tt> </tt>
-<a name="L48"></a><tt class="py-lineno"> 48</tt>  <tt class="py-line">      <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">simplejson</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt><tt class="py-op">)</tt> </tt>
+<a name="L48"></a><tt class="py-lineno"> 48</tt>  <tt class="py-line">      <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">content</tt><tt class="py-op">)</tt> </tt>
 <a name="L49"></a><tt class="py-lineno"> 49</tt>  <tt class="py-line">      <tt class="py-name">reason</tt> <tt class="py-op">=</tt> <tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-string">'error'</tt><tt class="py-op">]</tt><tt class="py-op">[</tt><tt class="py-string">'message'</tt><tt class="py-op">]</tt> </tt>
 <a name="L50"></a><tt class="py-lineno"> 50</tt>  <tt class="py-line">    <tt class="py-keyword">except</tt> <tt class="py-op">(</tt><tt class="py-name">ValueError</tt><tt class="py-op">,</tt> <tt class="py-name">KeyError</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
 <a name="L51"></a><tt class="py-lineno"> 51</tt>  <tt class="py-line">      <tt class="py-keyword">pass</tt> </tt>
@@ -279,7 +279,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors.BatchError-class.html b/docs/epy/googleapiclient.errors.BatchError-class.html
index 5f97909..6391830 100644
--- a/docs/epy/googleapiclient.errors.BatchError-class.html
+++ b/docs/epy/googleapiclient.errors.BatchError-class.html
@@ -64,20 +64,20 @@
 <area shape="rect" id="node1_16" href="googleapiclient.errors.BatchError-class.html#__str__" title="str(x)" alt="" coords="17,508,311,527"/>
 <area shape="rect" id="node1" href="googleapiclient.errors.BatchError-class.html" title="Error occured during batch operations." alt="" coords="5,440,323,533"/>
 <area shape="rect" id="node2" href="googleapiclient.errors.HttpError-class.html" title="HTTP data was invalid or unexpected." alt="" coords="125,379,203,421"/>
-<area shape="rect" id="node3_17" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="101,273,227,292"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="89,243,239,299"/>
-<area shape="rect" id="node5" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="137,317,191,360"/>
-<area shape="rect" id="node4_18" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="85,28,241,47"/>
-<area shape="rect" id="node4_19" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="85,47,241,65"/>
-<area shape="rect" id="node4_20" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="85,68,241,87"/>
-<area shape="rect" id="node4_21" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="85,87,241,105"/>
-<area shape="rect" id="node4_22" href="javascript:void(0);" title="x[y]" alt="" coords="85,105,241,124"/>
-<area shape="rect" id="node4_23" href="javascript:void(0);" title="x[i:j]" alt="" coords="85,124,241,143"/>
-<area shape="rect" id="node4_24" href="javascript:void(0);" title="helper for pickle" alt="" coords="85,143,241,161"/>
-<area shape="rect" id="node4_25" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="85,161,241,180"/>
-<area shape="rect" id="node4_26" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="85,180,241,199"/>
-<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="85,199,241,217"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="73,5,253,224"/>
+<area shape="rect" id="node3_17" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="85,28,241,47"/>
+<area shape="rect" id="node3_18" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="85,47,241,65"/>
+<area shape="rect" id="node3_19" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="85,68,241,87"/>
+<area shape="rect" id="node3_20" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="85,87,241,105"/>
+<area shape="rect" id="node3_21" href="javascript:void(0);" title="x[y]" alt="" coords="85,105,241,124"/>
+<area shape="rect" id="node3_22" href="javascript:void(0);" title="x[i:j]" alt="" coords="85,124,241,143"/>
+<area shape="rect" id="node3_23" href="javascript:void(0);" title="helper for pickle" alt="" coords="85,143,241,161"/>
+<area shape="rect" id="node3_24" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="85,161,241,180"/>
+<area shape="rect" id="node3_25" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="85,180,241,199"/>
+<area shape="rect" id="node3_26" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="85,199,241,217"/>
+<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="73,5,253,224"/>
+<area shape="rect" id="node5_27" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="101,273,227,292"/>
+<area shape="rect" id="node5" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="89,243,239,299"/>
+<area shape="rect" id="node4" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="137,317,191,360"/>
 </map>
   <img src="uml_class_diagram_for_googleap_5.gif" alt='' usemap="#uml_class_diagram_for_googleap_5" ismap="ismap" class="graph-without-title" />
 </center>
@@ -349,7 +349,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Fri Aug 15 01:40:58 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors.Error-class.html b/docs/epy/googleapiclient.errors.Error-class.html
index c158831..134c268 100644
--- a/docs/epy/googleapiclient.errors.Error-class.html
+++ b/docs/epy/googleapiclient.errors.Error-class.html
@@ -186,7 +186,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors.HttpError-class.html b/docs/epy/googleapiclient.errors.HttpError-class.html
index e69143c..b1139c3 100644
--- a/docs/epy/googleapiclient.errors.HttpError-class.html
+++ b/docs/epy/googleapiclient.errors.HttpError-class.html
@@ -64,19 +64,19 @@
 <area shape="rect" id="node1_16" href="googleapiclient.errors.HttpError-class.html#__str__" title="str(x)" alt="" coords="18,447,246,465"/>
 <area shape="rect" id="node1" href="googleapiclient.errors.HttpError-class.html" title="HTTP data was invalid or unexpected." alt="" coords="5,379,257,472"/>
 <area shape="rect" id="node2" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="106,317,159,360"/>
-<area shape="rect" id="node3_17" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="70,273,195,292"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="58,243,207,299"/>
-<area shape="rect" id="node4_18" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="54,28,210,47"/>
-<area shape="rect" id="node4_19" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="54,47,210,65"/>
-<area shape="rect" id="node4_20" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="54,68,210,87"/>
-<area shape="rect" id="node4_21" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="54,87,210,105"/>
-<area shape="rect" id="node4_22" href="javascript:void(0);" title="x[y]" alt="" coords="54,105,210,124"/>
-<area shape="rect" id="node4_23" href="javascript:void(0);" title="x[i:j]" alt="" coords="54,124,210,143"/>
-<area shape="rect" id="node4_24" href="javascript:void(0);" title="helper for pickle" alt="" coords="54,143,210,161"/>
-<area shape="rect" id="node4_25" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="54,161,210,180"/>
-<area shape="rect" id="node4_26" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="54,180,210,199"/>
-<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="54,199,210,217"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="41,5,221,224"/>
+<area shape="rect" id="node3_17" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="54,28,210,47"/>
+<area shape="rect" id="node3_18" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="54,47,210,65"/>
+<area shape="rect" id="node3_19" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="54,68,210,87"/>
+<area shape="rect" id="node3_20" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="54,87,210,105"/>
+<area shape="rect" id="node3_21" href="javascript:void(0);" title="x[y]" alt="" coords="54,105,210,124"/>
+<area shape="rect" id="node3_22" href="javascript:void(0);" title="x[i:j]" alt="" coords="54,124,210,143"/>
+<area shape="rect" id="node3_23" href="javascript:void(0);" title="helper for pickle" alt="" coords="54,143,210,161"/>
+<area shape="rect" id="node3_24" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="54,161,210,180"/>
+<area shape="rect" id="node3_25" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="54,180,210,199"/>
+<area shape="rect" id="node3_26" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="54,199,210,217"/>
+<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="41,5,221,224"/>
+<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="70,273,195,292"/>
+<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="58,243,207,299"/>
 </map>
   <img src="uml_class_diagram_for_googleap_7.gif" alt='' usemap="#uml_class_diagram_for_googleap_7" ismap="ismap" class="graph-without-title" />
 </center>
@@ -362,7 +362,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors.InvalidChunkSizeError-class.html b/docs/epy/googleapiclient.errors.InvalidChunkSizeError-class.html
index b1ead0b..e49acc6 100644
--- a/docs/epy/googleapiclient.errors.InvalidChunkSizeError-class.html
+++ b/docs/epy/googleapiclient.errors.InvalidChunkSizeError-class.html
@@ -61,22 +61,22 @@
 <center>  <map id="uml_class_diagram_for_googleap_8" name="uml_class_diagram_for_googleap_8">
 <area shape="rect" id="node1" href="googleapiclient.errors.InvalidChunkSizeError-class.html" title="The given chunksize is not valid." alt="" coords="17,435,173,477"/>
 <area shape="rect" id="node2" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="70,373,123,416"/>
-<area shape="rect" id="node3_14" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="34,311,159,329"/>
-<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="34,329,159,348"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="22,280,171,355"/>
-<area shape="rect" id="node4_16" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="18,28,174,47"/>
-<area shape="rect" id="node4_17" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="18,47,174,65"/>
-<area shape="rect" id="node4_18" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="18,68,174,87"/>
-<area shape="rect" id="node4_19" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="18,87,174,105"/>
-<area shape="rect" id="node4_20" href="javascript:void(0);" title="x[y]" alt="" coords="18,105,174,124"/>
-<area shape="rect" id="node4_21" href="javascript:void(0);" title="x[i:j]" alt="" coords="18,124,174,143"/>
-<area shape="rect" id="node4_22" href="javascript:void(0);" title="helper for pickle" alt="" coords="18,143,174,161"/>
-<area shape="rect" id="node4_23" href="javascript:void(0);" title="repr(x)" alt="" coords="18,161,174,180"/>
-<area shape="rect" id="node4_24" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="18,180,174,199"/>
-<area shape="rect" id="node4_25" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="18,199,174,217"/>
-<area shape="rect" id="node4_26" href="javascript:void(0);" title="str(x)" alt="" coords="18,217,174,236"/>
-<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="18,236,174,255"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="5,5,185,261"/>
+<area shape="rect" id="node3_14" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="18,28,174,47"/>
+<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="18,47,174,65"/>
+<area shape="rect" id="node3_16" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="18,68,174,87"/>
+<area shape="rect" id="node3_17" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="18,87,174,105"/>
+<area shape="rect" id="node3_18" href="javascript:void(0);" title="x[y]" alt="" coords="18,105,174,124"/>
+<area shape="rect" id="node3_19" href="javascript:void(0);" title="x[i:j]" alt="" coords="18,124,174,143"/>
+<area shape="rect" id="node3_20" href="javascript:void(0);" title="helper for pickle" alt="" coords="18,143,174,161"/>
+<area shape="rect" id="node3_21" href="javascript:void(0);" title="repr(x)" alt="" coords="18,161,174,180"/>
+<area shape="rect" id="node3_22" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="18,180,174,199"/>
+<area shape="rect" id="node3_23" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="18,199,174,217"/>
+<area shape="rect" id="node3_24" href="javascript:void(0);" title="str(x)" alt="" coords="18,217,174,236"/>
+<area shape="rect" id="node3_25" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="18,236,174,255"/>
+<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="5,5,185,261"/>
+<area shape="rect" id="node4_26" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="34,311,159,329"/>
+<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="34,329,159,348"/>
+<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="22,280,171,355"/>
 </map>
   <img src="uml_class_diagram_for_googleap_8.gif" alt='' usemap="#uml_class_diagram_for_googleap_8" ismap="ismap" class="graph-without-title" />
 </center>
@@ -187,7 +187,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors.InvalidJsonError-class.html b/docs/epy/googleapiclient.errors.InvalidJsonError-class.html
index 8a393b1..3305908 100644
--- a/docs/epy/googleapiclient.errors.InvalidJsonError-class.html
+++ b/docs/epy/googleapiclient.errors.InvalidJsonError-class.html
@@ -61,22 +61,22 @@
 <center>  <map id="uml_class_diagram_for_googleap_9" name="uml_class_diagram_for_googleap_9">
 <area shape="rect" id="node1" href="googleapiclient.errors.InvalidJsonError-class.html" title="The JSON returned could not be parsed." alt="" coords="37,435,157,477"/>
 <area shape="rect" id="node2" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="70,373,123,416"/>
-<area shape="rect" id="node3_14" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="34,311,159,329"/>
-<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="34,329,159,348"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="22,280,171,355"/>
-<area shape="rect" id="node4_16" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="18,28,174,47"/>
-<area shape="rect" id="node4_17" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="18,47,174,65"/>
-<area shape="rect" id="node4_18" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="18,68,174,87"/>
-<area shape="rect" id="node4_19" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="18,87,174,105"/>
-<area shape="rect" id="node4_20" href="javascript:void(0);" title="x[y]" alt="" coords="18,105,174,124"/>
-<area shape="rect" id="node4_21" href="javascript:void(0);" title="x[i:j]" alt="" coords="18,124,174,143"/>
-<area shape="rect" id="node4_22" href="javascript:void(0);" title="helper for pickle" alt="" coords="18,143,174,161"/>
-<area shape="rect" id="node4_23" href="javascript:void(0);" title="repr(x)" alt="" coords="18,161,174,180"/>
-<area shape="rect" id="node4_24" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="18,180,174,199"/>
-<area shape="rect" id="node4_25" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="18,199,174,217"/>
-<area shape="rect" id="node4_26" href="javascript:void(0);" title="str(x)" alt="" coords="18,217,174,236"/>
-<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="18,236,174,255"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="5,5,185,261"/>
+<area shape="rect" id="node3_14" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="18,28,174,47"/>
+<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="18,47,174,65"/>
+<area shape="rect" id="node3_16" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="18,68,174,87"/>
+<area shape="rect" id="node3_17" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="18,87,174,105"/>
+<area shape="rect" id="node3_18" href="javascript:void(0);" title="x[y]" alt="" coords="18,105,174,124"/>
+<area shape="rect" id="node3_19" href="javascript:void(0);" title="x[i:j]" alt="" coords="18,124,174,143"/>
+<area shape="rect" id="node3_20" href="javascript:void(0);" title="helper for pickle" alt="" coords="18,143,174,161"/>
+<area shape="rect" id="node3_21" href="javascript:void(0);" title="repr(x)" alt="" coords="18,161,174,180"/>
+<area shape="rect" id="node3_22" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="18,180,174,199"/>
+<area shape="rect" id="node3_23" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="18,199,174,217"/>
+<area shape="rect" id="node3_24" href="javascript:void(0);" title="str(x)" alt="" coords="18,217,174,236"/>
+<area shape="rect" id="node3_25" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="18,236,174,255"/>
+<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="5,5,185,261"/>
+<area shape="rect" id="node4_26" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="34,311,159,329"/>
+<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="34,329,159,348"/>
+<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="22,280,171,355"/>
 </map>
   <img src="uml_class_diagram_for_googleap_9.gif" alt='' usemap="#uml_class_diagram_for_googleap_9" ismap="ismap" class="graph-without-title" />
 </center>
@@ -187,7 +187,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors.InvalidNotificationError-class.html b/docs/epy/googleapiclient.errors.InvalidNotificationError-class.html
index 26cfc04..f6e1620 100644
--- a/docs/epy/googleapiclient.errors.InvalidNotificationError-class.html
+++ b/docs/epy/googleapiclient.errors.InvalidNotificationError-class.html
@@ -61,22 +61,22 @@
 <center>  <map id="uml_class_diagram_for_googleap_10" name="uml_class_diagram_for_googleap_10">
 <area shape="rect" id="node1" href="googleapiclient.errors.InvalidNotificationError-class.html" title="The channel Notification is invalid." alt="" coords="18,435,175,477"/>
 <area shape="rect" id="node2" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="70,373,123,416"/>
-<area shape="rect" id="node3_14" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="34,311,159,329"/>
-<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="34,329,159,348"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="22,280,171,355"/>
-<area shape="rect" id="node4_16" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="18,28,174,47"/>
-<area shape="rect" id="node4_17" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="18,47,174,65"/>
-<area shape="rect" id="node4_18" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="18,68,174,87"/>
-<area shape="rect" id="node4_19" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="18,87,174,105"/>
-<area shape="rect" id="node4_20" href="javascript:void(0);" title="x[y]" alt="" coords="18,105,174,124"/>
-<area shape="rect" id="node4_21" href="javascript:void(0);" title="x[i:j]" alt="" coords="18,124,174,143"/>
-<area shape="rect" id="node4_22" href="javascript:void(0);" title="helper for pickle" alt="" coords="18,143,174,161"/>
-<area shape="rect" id="node4_23" href="javascript:void(0);" title="repr(x)" alt="" coords="18,161,174,180"/>
-<area shape="rect" id="node4_24" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="18,180,174,199"/>
-<area shape="rect" id="node4_25" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="18,199,174,217"/>
-<area shape="rect" id="node4_26" href="javascript:void(0);" title="str(x)" alt="" coords="18,217,174,236"/>
-<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="18,236,174,255"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="5,5,185,261"/>
+<area shape="rect" id="node3_14" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="18,28,174,47"/>
+<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="18,47,174,65"/>
+<area shape="rect" id="node3_16" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="18,68,174,87"/>
+<area shape="rect" id="node3_17" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="18,87,174,105"/>
+<area shape="rect" id="node3_18" href="javascript:void(0);" title="x[y]" alt="" coords="18,105,174,124"/>
+<area shape="rect" id="node3_19" href="javascript:void(0);" title="x[i:j]" alt="" coords="18,124,174,143"/>
+<area shape="rect" id="node3_20" href="javascript:void(0);" title="helper for pickle" alt="" coords="18,143,174,161"/>
+<area shape="rect" id="node3_21" href="javascript:void(0);" title="repr(x)" alt="" coords="18,161,174,180"/>
+<area shape="rect" id="node3_22" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="18,180,174,199"/>
+<area shape="rect" id="node3_23" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="18,199,174,217"/>
+<area shape="rect" id="node3_24" href="javascript:void(0);" title="str(x)" alt="" coords="18,217,174,236"/>
+<area shape="rect" id="node3_25" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="18,236,174,255"/>
+<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="5,5,185,261"/>
+<area shape="rect" id="node4_26" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="34,311,159,329"/>
+<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="34,329,159,348"/>
+<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="22,280,171,355"/>
 </map>
   <img src="uml_class_diagram_for_googleap_10.gif" alt='' usemap="#uml_class_diagram_for_googleap_10" ismap="ismap" class="graph-without-title" />
 </center>
@@ -187,7 +187,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors.MediaUploadSizeError-class.html b/docs/epy/googleapiclient.errors.MediaUploadSizeError-class.html
index a0d26cf..fceece5 100644
--- a/docs/epy/googleapiclient.errors.MediaUploadSizeError-class.html
+++ b/docs/epy/googleapiclient.errors.MediaUploadSizeError-class.html
@@ -61,22 +61,22 @@
 <center>  <map id="uml_class_diagram_for_googleap_11" name="uml_class_diagram_for_googleap_11">
 <area shape="rect" id="node1" href="googleapiclient.errors.MediaUploadSizeError-class.html" title="Media is larger than the method can accept." alt="" coords="18,435,175,477"/>
 <area shape="rect" id="node2" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="70,373,123,416"/>
-<area shape="rect" id="node3_14" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="34,311,159,329"/>
-<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="34,329,159,348"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="22,280,171,355"/>
-<area shape="rect" id="node4_16" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="18,28,174,47"/>
-<area shape="rect" id="node4_17" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="18,47,174,65"/>
-<area shape="rect" id="node4_18" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="18,68,174,87"/>
-<area shape="rect" id="node4_19" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="18,87,174,105"/>
-<area shape="rect" id="node4_20" href="javascript:void(0);" title="x[y]" alt="" coords="18,105,174,124"/>
-<area shape="rect" id="node4_21" href="javascript:void(0);" title="x[i:j]" alt="" coords="18,124,174,143"/>
-<area shape="rect" id="node4_22" href="javascript:void(0);" title="helper for pickle" alt="" coords="18,143,174,161"/>
-<area shape="rect" id="node4_23" href="javascript:void(0);" title="repr(x)" alt="" coords="18,161,174,180"/>
-<area shape="rect" id="node4_24" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="18,180,174,199"/>
-<area shape="rect" id="node4_25" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="18,199,174,217"/>
-<area shape="rect" id="node4_26" href="javascript:void(0);" title="str(x)" alt="" coords="18,217,174,236"/>
-<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="18,236,174,255"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="5,5,185,261"/>
+<area shape="rect" id="node3_14" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="18,28,174,47"/>
+<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="18,47,174,65"/>
+<area shape="rect" id="node3_16" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="18,68,174,87"/>
+<area shape="rect" id="node3_17" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="18,87,174,105"/>
+<area shape="rect" id="node3_18" href="javascript:void(0);" title="x[y]" alt="" coords="18,105,174,124"/>
+<area shape="rect" id="node3_19" href="javascript:void(0);" title="x[i:j]" alt="" coords="18,124,174,143"/>
+<area shape="rect" id="node3_20" href="javascript:void(0);" title="helper for pickle" alt="" coords="18,143,174,161"/>
+<area shape="rect" id="node3_21" href="javascript:void(0);" title="repr(x)" alt="" coords="18,161,174,180"/>
+<area shape="rect" id="node3_22" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="18,180,174,199"/>
+<area shape="rect" id="node3_23" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="18,199,174,217"/>
+<area shape="rect" id="node3_24" href="javascript:void(0);" title="str(x)" alt="" coords="18,217,174,236"/>
+<area shape="rect" id="node3_25" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="18,236,174,255"/>
+<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="5,5,185,261"/>
+<area shape="rect" id="node4_26" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="34,311,159,329"/>
+<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="34,329,159,348"/>
+<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="22,280,171,355"/>
 </map>
   <img src="uml_class_diagram_for_googleap_11.gif" alt='' usemap="#uml_class_diagram_for_googleap_11" ismap="ismap" class="graph-without-title" />
 </center>
@@ -187,7 +187,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors.ResumableUploadError-class.html b/docs/epy/googleapiclient.errors.ResumableUploadError-class.html
index a434fc3..f1053cb 100644
--- a/docs/epy/googleapiclient.errors.ResumableUploadError-class.html
+++ b/docs/epy/googleapiclient.errors.ResumableUploadError-class.html
@@ -64,20 +64,20 @@
 <area shape="rect" id="node2_15" href="googleapiclient.errors.HttpError-class.html#__repr__" title="str(x)" alt="" coords="18,428,246,447"/>
 <area shape="rect" id="node2_16" href="googleapiclient.errors.HttpError-class.html#__str__" title="str(x)" alt="" coords="18,447,246,465"/>
 <area shape="rect" id="node2" href="googleapiclient.errors.HttpError-class.html" title="HTTP data was invalid or unexpected." alt="" coords="5,379,257,472"/>
-<area shape="rect" id="node3_17" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="70,273,195,292"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="58,243,207,299"/>
-<area shape="rect" id="node5" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="106,317,159,360"/>
-<area shape="rect" id="node4_18" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="54,28,210,47"/>
-<area shape="rect" id="node4_19" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="54,47,210,65"/>
-<area shape="rect" id="node4_20" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="54,68,210,87"/>
-<area shape="rect" id="node4_21" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="54,87,210,105"/>
-<area shape="rect" id="node4_22" href="javascript:void(0);" title="x[y]" alt="" coords="54,105,210,124"/>
-<area shape="rect" id="node4_23" href="javascript:void(0);" title="x[i:j]" alt="" coords="54,124,210,143"/>
-<area shape="rect" id="node4_24" href="javascript:void(0);" title="helper for pickle" alt="" coords="54,143,210,161"/>
-<area shape="rect" id="node4_25" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="54,161,210,180"/>
-<area shape="rect" id="node4_26" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="54,180,210,199"/>
-<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="54,199,210,217"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="41,5,221,224"/>
+<area shape="rect" id="node3_17" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="54,28,210,47"/>
+<area shape="rect" id="node3_18" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="54,47,210,65"/>
+<area shape="rect" id="node3_19" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="54,68,210,87"/>
+<area shape="rect" id="node3_20" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="54,87,210,105"/>
+<area shape="rect" id="node3_21" href="javascript:void(0);" title="x[y]" alt="" coords="54,105,210,124"/>
+<area shape="rect" id="node3_22" href="javascript:void(0);" title="x[i:j]" alt="" coords="54,124,210,143"/>
+<area shape="rect" id="node3_23" href="javascript:void(0);" title="helper for pickle" alt="" coords="54,143,210,161"/>
+<area shape="rect" id="node3_24" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="54,161,210,180"/>
+<area shape="rect" id="node3_25" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="54,180,210,199"/>
+<area shape="rect" id="node3_26" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="54,199,210,217"/>
+<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="41,5,221,224"/>
+<area shape="rect" id="node5_27" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="70,273,195,292"/>
+<area shape="rect" id="node5" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="58,243,207,299"/>
+<area shape="rect" id="node4" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="106,317,159,360"/>
 </map>
   <img src="uml_class_diagram_for_googleap_12.gif" alt='' usemap="#uml_class_diagram_for_googleap_12" ismap="ismap" class="graph-without-title" />
 </center>
@@ -193,7 +193,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Fri Aug 15 01:40:58 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors.UnacceptableMimeTypeError-class.html b/docs/epy/googleapiclient.errors.UnacceptableMimeTypeError-class.html
index 24c0574..e0f77a2 100644
--- a/docs/epy/googleapiclient.errors.UnacceptableMimeTypeError-class.html
+++ b/docs/epy/googleapiclient.errors.UnacceptableMimeTypeError-class.html
@@ -61,22 +61,22 @@
 <center>  <map id="uml_class_diagram_for_googleap_13" name="uml_class_diagram_for_googleap_13">
 <area shape="rect" id="node1" href="googleapiclient.errors.UnacceptableMimeTypeError-class.html" title="That is an unacceptable mimetype for this operation." alt="" coords="5,435,201,477"/>
 <area shape="rect" id="node2" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="78,373,131,416"/>
-<area shape="rect" id="node3_14" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="42,311,167,329"/>
-<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="42,329,167,348"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="30,280,179,355"/>
-<area shape="rect" id="node4_16" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="26,28,182,47"/>
-<area shape="rect" id="node4_17" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="26,47,182,65"/>
-<area shape="rect" id="node4_18" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="26,68,182,87"/>
-<area shape="rect" id="node4_19" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="26,87,182,105"/>
-<area shape="rect" id="node4_20" href="javascript:void(0);" title="x[y]" alt="" coords="26,105,182,124"/>
-<area shape="rect" id="node4_21" href="javascript:void(0);" title="x[i:j]" alt="" coords="26,124,182,143"/>
-<area shape="rect" id="node4_22" href="javascript:void(0);" title="helper for pickle" alt="" coords="26,143,182,161"/>
-<area shape="rect" id="node4_23" href="javascript:void(0);" title="repr(x)" alt="" coords="26,161,182,180"/>
-<area shape="rect" id="node4_24" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="26,180,182,199"/>
-<area shape="rect" id="node4_25" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="26,199,182,217"/>
-<area shape="rect" id="node4_26" href="javascript:void(0);" title="str(x)" alt="" coords="26,217,182,236"/>
-<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="26,236,182,255"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="13,5,193,261"/>
+<area shape="rect" id="node3_14" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="26,28,182,47"/>
+<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="26,47,182,65"/>
+<area shape="rect" id="node3_16" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="26,68,182,87"/>
+<area shape="rect" id="node3_17" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="26,87,182,105"/>
+<area shape="rect" id="node3_18" href="javascript:void(0);" title="x[y]" alt="" coords="26,105,182,124"/>
+<area shape="rect" id="node3_19" href="javascript:void(0);" title="x[i:j]" alt="" coords="26,124,182,143"/>
+<area shape="rect" id="node3_20" href="javascript:void(0);" title="helper for pickle" alt="" coords="26,143,182,161"/>
+<area shape="rect" id="node3_21" href="javascript:void(0);" title="repr(x)" alt="" coords="26,161,182,180"/>
+<area shape="rect" id="node3_22" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="26,180,182,199"/>
+<area shape="rect" id="node3_23" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="26,199,182,217"/>
+<area shape="rect" id="node3_24" href="javascript:void(0);" title="str(x)" alt="" coords="26,217,182,236"/>
+<area shape="rect" id="node3_25" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="26,236,182,255"/>
+<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="13,5,193,261"/>
+<area shape="rect" id="node4_26" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="42,311,167,329"/>
+<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="42,329,167,348"/>
+<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="30,280,179,355"/>
 </map>
   <img src="uml_class_diagram_for_googleap_13.gif" alt='' usemap="#uml_class_diagram_for_googleap_13" ismap="ismap" class="graph-without-title" />
 </center>
@@ -187,7 +187,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors.UnexpectedBodyError-class.html b/docs/epy/googleapiclient.errors.UnexpectedBodyError-class.html
index 784647f..9aae6f1 100644
--- a/docs/epy/googleapiclient.errors.UnexpectedBodyError-class.html
+++ b/docs/epy/googleapiclient.errors.UnexpectedBodyError-class.html
@@ -62,21 +62,21 @@
 <area shape="rect" id="node1_14" href="googleapiclient.errors.UnexpectedBodyError-class.html#__init__" title="Constructor for an UnexpectedMethodError." alt="" coords="18,447,219,465"/>
 <area shape="rect" id="node1" href="googleapiclient.errors.UnexpectedBodyError-class.html" title="Exception raised by RequestMockBuilder on unexpected bodies." alt="" coords="5,416,231,472"/>
 <area shape="rect" id="node2" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="93,355,146,397"/>
-<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="57,311,182,329"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="45,280,194,336"/>
-<area shape="rect" id="node4_16" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="41,28,197,47"/>
-<area shape="rect" id="node4_17" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="41,47,197,65"/>
-<area shape="rect" id="node4_18" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="41,68,197,87"/>
-<area shape="rect" id="node4_19" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="41,87,197,105"/>
-<area shape="rect" id="node4_20" href="javascript:void(0);" title="x[y]" alt="" coords="41,105,197,124"/>
-<area shape="rect" id="node4_21" href="javascript:void(0);" title="x[i:j]" alt="" coords="41,124,197,143"/>
-<area shape="rect" id="node4_22" href="javascript:void(0);" title="helper for pickle" alt="" coords="41,143,197,161"/>
-<area shape="rect" id="node4_23" href="javascript:void(0);" title="repr(x)" alt="" coords="41,161,197,180"/>
-<area shape="rect" id="node4_24" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="41,180,197,199"/>
-<area shape="rect" id="node4_25" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="41,199,197,217"/>
-<area shape="rect" id="node4_26" href="javascript:void(0);" title="str(x)" alt="" coords="41,217,197,236"/>
-<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="41,236,197,255"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="28,5,208,261"/>
+<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="41,28,197,47"/>
+<area shape="rect" id="node3_16" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="41,47,197,65"/>
+<area shape="rect" id="node3_17" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="41,68,197,87"/>
+<area shape="rect" id="node3_18" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="41,87,197,105"/>
+<area shape="rect" id="node3_19" href="javascript:void(0);" title="x[y]" alt="" coords="41,105,197,124"/>
+<area shape="rect" id="node3_20" href="javascript:void(0);" title="x[i:j]" alt="" coords="41,124,197,143"/>
+<area shape="rect" id="node3_21" href="javascript:void(0);" title="helper for pickle" alt="" coords="41,143,197,161"/>
+<area shape="rect" id="node3_22" href="javascript:void(0);" title="repr(x)" alt="" coords="41,161,197,180"/>
+<area shape="rect" id="node3_23" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="41,180,197,199"/>
+<area shape="rect" id="node3_24" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="41,199,197,217"/>
+<area shape="rect" id="node3_25" href="javascript:void(0);" title="str(x)" alt="" coords="41,217,197,236"/>
+<area shape="rect" id="node3_26" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="41,236,197,255"/>
+<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="28,5,208,261"/>
+<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="57,311,182,329"/>
+<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="45,280,194,336"/>
 </map>
   <img src="uml_class_diagram_for_googleap_14.gif" alt='' usemap="#uml_class_diagram_for_googleap_14" ismap="ismap" class="graph-without-title" />
 </center>
@@ -252,7 +252,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors.UnexpectedMethodError-class.html b/docs/epy/googleapiclient.errors.UnexpectedMethodError-class.html
index bfce879..d03baac 100644
--- a/docs/epy/googleapiclient.errors.UnexpectedMethodError-class.html
+++ b/docs/epy/googleapiclient.errors.UnexpectedMethodError-class.html
@@ -62,21 +62,21 @@
 <area shape="rect" id="node1_14" href="googleapiclient.errors.UnexpectedMethodError-class.html#__init__" title="Constructor for an UnexpectedMethodError." alt="" coords="17,447,201,465"/>
 <area shape="rect" id="node1" href="googleapiclient.errors.UnexpectedMethodError-class.html" title="Exception raised by RequestMockBuilder on unexpected calls." alt="" coords="5,416,213,472"/>
 <area shape="rect" id="node2" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="83,355,136,397"/>
-<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="47,311,172,329"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="35,280,184,336"/>
-<area shape="rect" id="node4_16" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="31,28,187,47"/>
-<area shape="rect" id="node4_17" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="31,47,187,65"/>
-<area shape="rect" id="node4_18" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="31,68,187,87"/>
-<area shape="rect" id="node4_19" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="31,87,187,105"/>
-<area shape="rect" id="node4_20" href="javascript:void(0);" title="x[y]" alt="" coords="31,105,187,124"/>
-<area shape="rect" id="node4_21" href="javascript:void(0);" title="x[i:j]" alt="" coords="31,124,187,143"/>
-<area shape="rect" id="node4_22" href="javascript:void(0);" title="helper for pickle" alt="" coords="31,143,187,161"/>
-<area shape="rect" id="node4_23" href="javascript:void(0);" title="repr(x)" alt="" coords="31,161,187,180"/>
-<area shape="rect" id="node4_24" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="31,180,187,199"/>
-<area shape="rect" id="node4_25" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="31,199,187,217"/>
-<area shape="rect" id="node4_26" href="javascript:void(0);" title="str(x)" alt="" coords="31,217,187,236"/>
-<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="31,236,187,255"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="18,5,198,261"/>
+<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="31,28,187,47"/>
+<area shape="rect" id="node3_16" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="31,47,187,65"/>
+<area shape="rect" id="node3_17" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="31,68,187,87"/>
+<area shape="rect" id="node3_18" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="31,87,187,105"/>
+<area shape="rect" id="node3_19" href="javascript:void(0);" title="x[y]" alt="" coords="31,105,187,124"/>
+<area shape="rect" id="node3_20" href="javascript:void(0);" title="x[i:j]" alt="" coords="31,124,187,143"/>
+<area shape="rect" id="node3_21" href="javascript:void(0);" title="helper for pickle" alt="" coords="31,143,187,161"/>
+<area shape="rect" id="node3_22" href="javascript:void(0);" title="repr(x)" alt="" coords="31,161,187,180"/>
+<area shape="rect" id="node3_23" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="31,180,187,199"/>
+<area shape="rect" id="node3_24" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="31,199,187,217"/>
+<area shape="rect" id="node3_25" href="javascript:void(0);" title="str(x)" alt="" coords="31,217,187,236"/>
+<area shape="rect" id="node3_26" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="31,236,187,255"/>
+<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="18,5,198,261"/>
+<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="47,311,172,329"/>
+<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="35,280,184,336"/>
 </map>
   <img src="uml_class_diagram_for_googleap_15.gif" alt='' usemap="#uml_class_diagram_for_googleap_15" ismap="ismap" class="graph-without-title" />
 </center>
@@ -254,7 +254,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors.UnknownApiNameOrVersion-class.html b/docs/epy/googleapiclient.errors.UnknownApiNameOrVersion-class.html
index 65d339d..4cafbf8 100644
--- a/docs/epy/googleapiclient.errors.UnknownApiNameOrVersion-class.html
+++ b/docs/epy/googleapiclient.errors.UnknownApiNameOrVersion-class.html
@@ -61,22 +61,22 @@
 <center>  <map id="uml_class_diagram_for_googleap_16" name="uml_class_diagram_for_googleap_16">
 <area shape="rect" id="node1" href="googleapiclient.errors.UnknownApiNameOrVersion-class.html" title="No API with that name and version exists." alt="" coords="5,435,199,477"/>
 <area shape="rect" id="node2" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="77,373,130,416"/>
-<area shape="rect" id="node3_14" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="41,311,166,329"/>
-<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="41,329,166,348"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="29,280,178,355"/>
-<area shape="rect" id="node4_16" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="25,28,181,47"/>
-<area shape="rect" id="node4_17" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="25,47,181,65"/>
-<area shape="rect" id="node4_18" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="25,68,181,87"/>
-<area shape="rect" id="node4_19" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="25,87,181,105"/>
-<area shape="rect" id="node4_20" href="javascript:void(0);" title="x[y]" alt="" coords="25,105,181,124"/>
-<area shape="rect" id="node4_21" href="javascript:void(0);" title="x[i:j]" alt="" coords="25,124,181,143"/>
-<area shape="rect" id="node4_22" href="javascript:void(0);" title="helper for pickle" alt="" coords="25,143,181,161"/>
-<area shape="rect" id="node4_23" href="javascript:void(0);" title="repr(x)" alt="" coords="25,161,181,180"/>
-<area shape="rect" id="node4_24" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="25,180,181,199"/>
-<area shape="rect" id="node4_25" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="25,199,181,217"/>
-<area shape="rect" id="node4_26" href="javascript:void(0);" title="str(x)" alt="" coords="25,217,181,236"/>
-<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="25,236,181,255"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="12,5,192,261"/>
+<area shape="rect" id="node3_14" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="25,28,181,47"/>
+<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="25,47,181,65"/>
+<area shape="rect" id="node3_16" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="25,68,181,87"/>
+<area shape="rect" id="node3_17" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="25,87,181,105"/>
+<area shape="rect" id="node3_18" href="javascript:void(0);" title="x[y]" alt="" coords="25,105,181,124"/>
+<area shape="rect" id="node3_19" href="javascript:void(0);" title="x[i:j]" alt="" coords="25,124,181,143"/>
+<area shape="rect" id="node3_20" href="javascript:void(0);" title="helper for pickle" alt="" coords="25,143,181,161"/>
+<area shape="rect" id="node3_21" href="javascript:void(0);" title="repr(x)" alt="" coords="25,161,181,180"/>
+<area shape="rect" id="node3_22" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="25,180,181,199"/>
+<area shape="rect" id="node3_23" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="25,199,181,217"/>
+<area shape="rect" id="node3_24" href="javascript:void(0);" title="str(x)" alt="" coords="25,217,181,236"/>
+<area shape="rect" id="node3_25" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="25,236,181,255"/>
+<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="12,5,192,261"/>
+<area shape="rect" id="node4_26" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="41,311,166,329"/>
+<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="41,329,166,348"/>
+<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="29,280,178,355"/>
 </map>
   <img src="uml_class_diagram_for_googleap_16.gif" alt='' usemap="#uml_class_diagram_for_googleap_16" ismap="ismap" class="graph-without-title" />
 </center>
@@ -187,7 +187,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors.UnknownFileType-class.html b/docs/epy/googleapiclient.errors.UnknownFileType-class.html
index ed1bc26..5a4b952 100644
--- a/docs/epy/googleapiclient.errors.UnknownFileType-class.html
+++ b/docs/epy/googleapiclient.errors.UnknownFileType-class.html
@@ -61,22 +61,22 @@
 <center>  <map id="uml_class_diagram_for_googleap_17" name="uml_class_diagram_for_googleap_17">
 <area shape="rect" id="node1" href="googleapiclient.errors.UnknownFileType-class.html" title="File type unknown or unexpected." alt="" coords="31,435,160,477"/>
 <area shape="rect" id="node2" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="70,373,123,416"/>
-<area shape="rect" id="node3_14" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="34,311,159,329"/>
-<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="34,329,159,348"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="22,280,171,355"/>
-<area shape="rect" id="node4_16" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="18,28,174,47"/>
-<area shape="rect" id="node4_17" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="18,47,174,65"/>
-<area shape="rect" id="node4_18" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="18,68,174,87"/>
-<area shape="rect" id="node4_19" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="18,87,174,105"/>
-<area shape="rect" id="node4_20" href="javascript:void(0);" title="x[y]" alt="" coords="18,105,174,124"/>
-<area shape="rect" id="node4_21" href="javascript:void(0);" title="x[i:j]" alt="" coords="18,124,174,143"/>
-<area shape="rect" id="node4_22" href="javascript:void(0);" title="helper for pickle" alt="" coords="18,143,174,161"/>
-<area shape="rect" id="node4_23" href="javascript:void(0);" title="repr(x)" alt="" coords="18,161,174,180"/>
-<area shape="rect" id="node4_24" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="18,180,174,199"/>
-<area shape="rect" id="node4_25" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="18,199,174,217"/>
-<area shape="rect" id="node4_26" href="javascript:void(0);" title="str(x)" alt="" coords="18,217,174,236"/>
-<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="18,236,174,255"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="5,5,185,261"/>
+<area shape="rect" id="node3_14" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="18,28,174,47"/>
+<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="18,47,174,65"/>
+<area shape="rect" id="node3_16" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="18,68,174,87"/>
+<area shape="rect" id="node3_17" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="18,87,174,105"/>
+<area shape="rect" id="node3_18" href="javascript:void(0);" title="x[y]" alt="" coords="18,105,174,124"/>
+<area shape="rect" id="node3_19" href="javascript:void(0);" title="x[i:j]" alt="" coords="18,124,174,143"/>
+<area shape="rect" id="node3_20" href="javascript:void(0);" title="helper for pickle" alt="" coords="18,143,174,161"/>
+<area shape="rect" id="node3_21" href="javascript:void(0);" title="repr(x)" alt="" coords="18,161,174,180"/>
+<area shape="rect" id="node3_22" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="18,180,174,199"/>
+<area shape="rect" id="node3_23" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="18,199,174,217"/>
+<area shape="rect" id="node3_24" href="javascript:void(0);" title="str(x)" alt="" coords="18,217,174,236"/>
+<area shape="rect" id="node3_25" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="18,236,174,255"/>
+<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="5,5,185,261"/>
+<area shape="rect" id="node4_26" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="34,311,159,329"/>
+<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="34,329,159,348"/>
+<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="22,280,171,355"/>
 </map>
   <img src="uml_class_diagram_for_googleap_17.gif" alt='' usemap="#uml_class_diagram_for_googleap_17" ismap="ismap" class="graph-without-title" />
 </center>
@@ -187,7 +187,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.errors.UnknownLinkType-class.html b/docs/epy/googleapiclient.errors.UnknownLinkType-class.html
index ab1ead5..6d65f5c 100644
--- a/docs/epy/googleapiclient.errors.UnknownLinkType-class.html
+++ b/docs/epy/googleapiclient.errors.UnknownLinkType-class.html
@@ -61,22 +61,22 @@
 <center>  <map id="uml_class_diagram_for_googleap_18" name="uml_class_diagram_for_googleap_18">
 <area shape="rect" id="node1" href="googleapiclient.errors.UnknownLinkType-class.html" title="Link type unknown or unexpected." alt="" coords="29,435,161,477"/>
 <area shape="rect" id="node2" href="googleapiclient.errors.Error-class.html" title="Base error for this module." alt="" coords="70,373,123,416"/>
-<area shape="rect" id="node3_14" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="34,311,159,329"/>
-<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="34,329,159,348"/>
-<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="22,280,171,355"/>
-<area shape="rect" id="node4_16" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="18,28,174,47"/>
-<area shape="rect" id="node4_17" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="18,47,174,65"/>
-<area shape="rect" id="node4_18" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="18,68,174,87"/>
-<area shape="rect" id="node4_19" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="18,87,174,105"/>
-<area shape="rect" id="node4_20" href="javascript:void(0);" title="x[y]" alt="" coords="18,105,174,124"/>
-<area shape="rect" id="node4_21" href="javascript:void(0);" title="x[i:j]" alt="" coords="18,124,174,143"/>
-<area shape="rect" id="node4_22" href="javascript:void(0);" title="helper for pickle" alt="" coords="18,143,174,161"/>
-<area shape="rect" id="node4_23" href="javascript:void(0);" title="repr(x)" alt="" coords="18,161,174,180"/>
-<area shape="rect" id="node4_24" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="18,180,174,199"/>
-<area shape="rect" id="node4_25" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="18,199,174,217"/>
-<area shape="rect" id="node4_26" href="javascript:void(0);" title="str(x)" alt="" coords="18,217,174,236"/>
-<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="18,236,174,255"/>
-<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="5,5,185,261"/>
+<area shape="rect" id="node3_14" href="javascript:void(0);" title="exceptions.BaseException.args" alt="" coords="18,28,174,47"/>
+<area shape="rect" id="node3_15" href="javascript:void(0);" title="exceptions.BaseException.message" alt="" coords="18,47,174,65"/>
+<area shape="rect" id="node3_16" href="javascript:void(0);" title="x.__delattr__(&#39;name&#39;) &lt;==&gt; del x.name" alt="" coords="18,68,174,87"/>
+<area shape="rect" id="node3_17" href="javascript:void(0);" title="x.__getattribute__(&#39;name&#39;) &lt;==&gt; x.name" alt="" coords="18,87,174,105"/>
+<area shape="rect" id="node3_18" href="javascript:void(0);" title="x[y]" alt="" coords="18,105,174,124"/>
+<area shape="rect" id="node3_19" href="javascript:void(0);" title="x[i:j]" alt="" coords="18,124,174,143"/>
+<area shape="rect" id="node3_20" href="javascript:void(0);" title="helper for pickle" alt="" coords="18,143,174,161"/>
+<area shape="rect" id="node3_21" href="javascript:void(0);" title="repr(x)" alt="" coords="18,161,174,180"/>
+<area shape="rect" id="node3_22" href="javascript:void(0);" title="x.__setattr__(&#39;name&#39;, value) &lt;==&gt; x.name = value" alt="" coords="18,180,174,199"/>
+<area shape="rect" id="node3_23" href="javascript:void(0);" title="exceptions.BaseException.__setstate__" alt="" coords="18,199,174,217"/>
+<area shape="rect" id="node3_24" href="javascript:void(0);" title="str(x)" alt="" coords="18,217,174,236"/>
+<area shape="rect" id="node3_25" href="javascript:void(0);" title="exceptions.BaseException.__unicode__" alt="" coords="18,236,174,255"/>
+<area shape="rect" id="node3" href="javascript:void(0);" title="Common base class for all exceptions" alt="" coords="5,5,185,261"/>
+<area shape="rect" id="node4_26" href="javascript:void(0);" title="x.__init__(...) initializes x; see help(type(x)) for signature" alt="" coords="34,311,159,329"/>
+<area shape="rect" id="node4_27" href="javascript:void(0);" title="exceptions.Exception.__new__" alt="" coords="34,329,159,348"/>
+<area shape="rect" id="node4" href="javascript:void(0);" title="Common base class for all non&#45;exit exceptions." alt="" coords="22,280,171,355"/>
 </map>
   <img src="uml_class_diagram_for_googleap_18.gif" alt='' usemap="#uml_class_diagram_for_googleap_18" ismap="ismap" class="graph-without-title" />
 </center>
@@ -187,7 +187,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http-module.html b/docs/epy/googleapiclient.http-module.html
index 14cd5e6..d1dd6e2 100644
--- a/docs/epy/googleapiclient.http-module.html
+++ b/docs/epy/googleapiclient.http-module.html
@@ -405,7 +405,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http-pysrc.html b/docs/epy/googleapiclient.http-pysrc.html
index 676afc5..2ee89fd 100644
--- a/docs/epy/googleapiclient.http-pysrc.html
+++ b/docs/epy/googleapiclient.http-pysrc.html
@@ -56,7 +56,7 @@
 </table>
 <h1 class="epydoc">Source Code for <a href="googleapiclient.http-module.html">Module googleapiclient.http</a></h1>
 <pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">   1</tt>  <tt class="py-line"><tt class="py-comment"># Copyright 2014 Google Inc. All Rights Reserved.
+<a name="L1"></a><tt class="py-lineno">   1</tt>  <tt class="py-line"><tt class="py-comment"># Copyright 2014 Google Inc. All Rights Reserved.</tt> </tt>
 <a name="L2"></a><tt class="py-lineno">   2</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
 <a name="L3"></a><tt class="py-lineno">   3</tt>  <tt class="py-line"><tt class="py-comment"># Licensed under the Apache License, Version 2.0 (the "License");</tt> </tt>
 <a name="L4"></a><tt class="py-lineno">   4</tt>  <tt class="py-line"><tt class="py-comment"># you may not use this file except in compliance with the License.</tt> </tt>
@@ -84,30 +84,30 @@
 <a name="L26"></a><tt class="py-lineno">  26</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
 <a name="L27"></a><tt class="py-lineno">  27</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">gzip</tt> </tt>
 <a name="L28"></a><tt class="py-lineno">  28</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">httplib2</tt> </tt>
-<a name="L29"></a><tt class="py-lineno">  29</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">logging</tt> </tt>
-<a name="L30"></a><tt class="py-lineno">  30</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-0" class="py-name" targets="Module googleapiclient.mimeparse=googleapiclient.mimeparse-module.html"><a title="googleapiclient.mimeparse" class="py-name" href="#" onclick="return doclink('link-0', 'mimeparse', 'link-0');">mimeparse</a></tt> </tt>
-<a name="L31"></a><tt class="py-lineno">  31</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">mimetypes</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">  32</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L33"></a><tt class="py-lineno">  33</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">random</tt> </tt>
-<a name="L34"></a><tt class="py-lineno">  34</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
-<a name="L35"></a><tt class="py-lineno">  35</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">  36</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">urllib</tt> </tt>
-<a name="L37"></a><tt class="py-lineno">  37</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">urlparse</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">  38</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">uuid</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">  39</tt>  <tt class="py-line"> </tt>
-<a name="L40"></a><tt class="py-lineno">  40</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">email</tt><tt class="py-op">.</tt><tt class="py-name">generator</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Generator</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">  41</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">email</tt><tt class="py-op">.</tt><tt class="py-name">mime</tt><tt class="py-op">.</tt><tt class="py-name">multipart</tt> <tt class="py-keyword">import</tt> <tt class="py-name">MIMEMultipart</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">  42</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">email</tt><tt class="py-op">.</tt><tt class="py-name">mime</tt><tt class="py-op">.</tt><tt class="py-name">nonmultipart</tt> <tt class="py-keyword">import</tt> <tt class="py-name">MIMENonMultipart</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">  43</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">email</tt><tt class="py-op">.</tt><tt class="py-name">parser</tt> <tt class="py-keyword">import</tt> <tt class="py-name">FeedParser</tt> </tt>
-<a name="L44"></a><tt class="py-lineno">  44</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-1" class="py-name" targets="Module googleapiclient.errors=googleapiclient.errors-module.html"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-1', 'errors', 'link-1');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-2" class="py-name" targets="Class googleapiclient.errors.BatchError=googleapiclient.errors.BatchError-class.html"><a title="googleapiclient.errors.BatchError" class="py-name" href="#" onclick="return doclink('link-2', 'BatchError', 'link-2');">BatchError</a></tt> </tt>
-<a name="L45"></a><tt class="py-lineno">  45</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-3" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-3', 'errors', 'link-1');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class googleapiclient.errors.HttpError=googleapiclient.errors.HttpError-class.html"><a title="googleapiclient.errors.HttpError" class="py-name" href="#" onclick="return doclink('link-4', 'HttpError', 'link-4');">HttpError</a></tt> </tt>
-<a name="L46"></a><tt class="py-lineno">  46</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-5" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-5', 'errors', 'link-1');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class googleapiclient.errors.InvalidChunkSizeError=googleapiclient.errors.InvalidChunkSizeError-class.html"><a title="googleapiclient.errors.InvalidChunkSizeError" class="py-name" href="#" onclick="return doclink('link-6', 'InvalidChunkSizeError', 'link-6');">InvalidChunkSizeError</a></tt> </tt>
-<a name="L47"></a><tt class="py-lineno">  47</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-7', 'errors', 'link-1');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-8" class="py-name" targets="Class googleapiclient.errors.ResumableUploadError=googleapiclient.errors.ResumableUploadError-class.html"><a title="googleapiclient.errors.ResumableUploadError" class="py-name" href="#" onclick="return doclink('link-8', 'ResumableUploadError', 'link-8');">ResumableUploadError</a></tt> </tt>
-<a name="L48"></a><tt class="py-lineno">  48</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-9" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-9', 'errors', 'link-1');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-10" class="py-name" targets="Class googleapiclient.errors.UnexpectedBodyError=googleapiclient.errors.UnexpectedBodyError-class.html"><a title="googleapiclient.errors.UnexpectedBodyError" class="py-name" href="#" onclick="return doclink('link-10', 'UnexpectedBodyError', 'link-10');">UnexpectedBodyError</a></tt> </tt>
-<a name="L49"></a><tt class="py-lineno">  49</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-11" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-11', 'errors', 'link-1');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-12" class="py-name" targets="Class googleapiclient.errors.UnexpectedMethodError=googleapiclient.errors.UnexpectedMethodError-class.html"><a title="googleapiclient.errors.UnexpectedMethodError" class="py-name" href="#" onclick="return doclink('link-12', 'UnexpectedMethodError', 'link-12');">UnexpectedMethodError</a></tt> </tt>
-<a name="L50"></a><tt class="py-lineno">  50</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-13" class="py-name" targets="Module googleapiclient.model=googleapiclient.model-module.html"><a title="googleapiclient.model" class="py-name" href="#" onclick="return doclink('link-13', 'model', 'link-13');">model</a></tt> <tt class="py-keyword">import</tt> <tt id="link-14" class="py-name" targets="Class googleapiclient.model.JsonModel=googleapiclient.model.JsonModel-class.html"><a title="googleapiclient.model.JsonModel" class="py-name" href="#" onclick="return doclink('link-14', 'JsonModel', 'link-14');">JsonModel</a></tt> </tt>
-<a name="L51"></a><tt class="py-lineno">  51</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt> <tt class="py-keyword">import</tt> <tt class="py-name">util</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">  52</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt><tt class="py-op">.</tt><tt class="py-name">anyjson</tt> <tt class="py-keyword">import</tt> <tt class="py-name">simplejson</tt> </tt>
+<a name="L29"></a><tt class="py-lineno">  29</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
+<a name="L30"></a><tt class="py-lineno">  30</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">logging</tt> </tt>
+<a name="L31"></a><tt class="py-lineno">  31</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt id="link-0" class="py-name" targets="Module googleapiclient.mimeparse=googleapiclient.mimeparse-module.html"><a title="googleapiclient.mimeparse" class="py-name" href="#" onclick="return doclink('link-0', 'mimeparse', 'link-0');">mimeparse</a></tt> </tt>
+<a name="L32"></a><tt class="py-lineno">  32</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">mimetypes</tt> </tt>
+<a name="L33"></a><tt class="py-lineno">  33</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
+<a name="L34"></a><tt class="py-lineno">  34</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">random</tt> </tt>
+<a name="L35"></a><tt class="py-lineno">  35</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">sys</tt> </tt>
+<a name="L36"></a><tt class="py-lineno">  36</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">time</tt> </tt>
+<a name="L37"></a><tt class="py-lineno">  37</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">urllib</tt> </tt>
+<a name="L38"></a><tt class="py-lineno">  38</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">urlparse</tt> </tt>
+<a name="L39"></a><tt class="py-lineno">  39</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">uuid</tt> </tt>
+<a name="L40"></a><tt class="py-lineno">  40</tt>  <tt class="py-line"> </tt>
+<a name="L41"></a><tt class="py-lineno">  41</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">email</tt><tt class="py-op">.</tt><tt class="py-name">generator</tt> <tt class="py-keyword">import</tt> <tt class="py-name">Generator</tt> </tt>
+<a name="L42"></a><tt class="py-lineno">  42</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">email</tt><tt class="py-op">.</tt><tt class="py-name">mime</tt><tt class="py-op">.</tt><tt class="py-name">multipart</tt> <tt class="py-keyword">import</tt> <tt class="py-name">MIMEMultipart</tt> </tt>
+<a name="L43"></a><tt class="py-lineno">  43</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">email</tt><tt class="py-op">.</tt><tt class="py-name">mime</tt><tt class="py-op">.</tt><tt class="py-name">nonmultipart</tt> <tt class="py-keyword">import</tt> <tt class="py-name">MIMENonMultipart</tt> </tt>
+<a name="L44"></a><tt class="py-lineno">  44</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">email</tt><tt class="py-op">.</tt><tt class="py-name">parser</tt> <tt class="py-keyword">import</tt> <tt class="py-name">FeedParser</tt> </tt>
+<a name="L45"></a><tt class="py-lineno">  45</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-1" class="py-name" targets="Module googleapiclient.errors=googleapiclient.errors-module.html"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-1', 'errors', 'link-1');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-2" class="py-name" targets="Class googleapiclient.errors.BatchError=googleapiclient.errors.BatchError-class.html"><a title="googleapiclient.errors.BatchError" class="py-name" href="#" onclick="return doclink('link-2', 'BatchError', 'link-2');">BatchError</a></tt> </tt>
+<a name="L46"></a><tt class="py-lineno">  46</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-3" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-3', 'errors', 'link-1');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-4" class="py-name" targets="Class googleapiclient.errors.HttpError=googleapiclient.errors.HttpError-class.html"><a title="googleapiclient.errors.HttpError" class="py-name" href="#" onclick="return doclink('link-4', 'HttpError', 'link-4');">HttpError</a></tt> </tt>
+<a name="L47"></a><tt class="py-lineno">  47</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-5" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-5', 'errors', 'link-1');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-6" class="py-name" targets="Class googleapiclient.errors.InvalidChunkSizeError=googleapiclient.errors.InvalidChunkSizeError-class.html"><a title="googleapiclient.errors.InvalidChunkSizeError" class="py-name" href="#" onclick="return doclink('link-6', 'InvalidChunkSizeError', 'link-6');">InvalidChunkSizeError</a></tt> </tt>
+<a name="L48"></a><tt class="py-lineno">  48</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-7" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-7', 'errors', 'link-1');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-8" class="py-name" targets="Class googleapiclient.errors.ResumableUploadError=googleapiclient.errors.ResumableUploadError-class.html"><a title="googleapiclient.errors.ResumableUploadError" class="py-name" href="#" onclick="return doclink('link-8', 'ResumableUploadError', 'link-8');">ResumableUploadError</a></tt> </tt>
+<a name="L49"></a><tt class="py-lineno">  49</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-9" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-9', 'errors', 'link-1');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-10" class="py-name" targets="Class googleapiclient.errors.UnexpectedBodyError=googleapiclient.errors.UnexpectedBodyError-class.html"><a title="googleapiclient.errors.UnexpectedBodyError" class="py-name" href="#" onclick="return doclink('link-10', 'UnexpectedBodyError', 'link-10');">UnexpectedBodyError</a></tt> </tt>
+<a name="L50"></a><tt class="py-lineno">  50</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-11" class="py-name"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-11', 'errors', 'link-1');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-12" class="py-name" targets="Class googleapiclient.errors.UnexpectedMethodError=googleapiclient.errors.UnexpectedMethodError-class.html"><a title="googleapiclient.errors.UnexpectedMethodError" class="py-name" href="#" onclick="return doclink('link-12', 'UnexpectedMethodError', 'link-12');">UnexpectedMethodError</a></tt> </tt>
+<a name="L51"></a><tt class="py-lineno">  51</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-13" class="py-name" targets="Module googleapiclient.model=googleapiclient.model-module.html"><a title="googleapiclient.model" class="py-name" href="#" onclick="return doclink('link-13', 'model', 'link-13');">model</a></tt> <tt class="py-keyword">import</tt> <tt id="link-14" class="py-name" targets="Class googleapiclient.model.JsonModel=googleapiclient.model.JsonModel-class.html"><a title="googleapiclient.model.JsonModel" class="py-name" href="#" onclick="return doclink('link-14', 'JsonModel', 'link-14');">JsonModel</a></tt> </tt>
+<a name="L52"></a><tt class="py-lineno">  52</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt> <tt class="py-keyword">import</tt> <tt class="py-name">util</tt> </tt>
 <a name="L53"></a><tt class="py-lineno">  53</tt>  <tt class="py-line"> </tt>
 <a name="L54"></a><tt class="py-lineno">  54</tt>  <tt class="py-line"> </tt>
 <a name="L55"></a><tt class="py-lineno">  55</tt>  <tt class="py-line"><tt id="link-15" class="py-name" targets="Variable googleapiclient.http.DEFAULT_CHUNK_SIZE=googleapiclient.http-module.html#DEFAULT_CHUNK_SIZE"><a title="googleapiclient.http.DEFAULT_CHUNK_SIZE" class="py-name" href="#" onclick="return doclink('link-15', 'DEFAULT_CHUNK_SIZE', 'link-15');">DEFAULT_CHUNK_SIZE</a></tt> <tt class="py-op">=</tt> <tt class="py-number">512</tt><tt class="py-op">*</tt><tt class="py-number">1024</tt> </tt>
@@ -279,7 +279,7 @@
 <a name="L221"></a><tt class="py-lineno"> 221</tt>  <tt class="py-line">        <tt class="py-keyword">del</tt> <tt class="py-name">d</tt><tt class="py-op">[</tt><tt class="py-name">member</tt><tt class="py-op">]</tt> </tt>
 <a name="L222"></a><tt class="py-lineno"> 222</tt>  <tt class="py-line">    <tt class="py-name">d</tt><tt class="py-op">[</tt><tt class="py-string">'_class'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">__name__</tt> </tt>
 <a name="L223"></a><tt class="py-lineno"> 223</tt>  <tt class="py-line">    <tt class="py-name">d</tt><tt class="py-op">[</tt><tt class="py-string">'_module'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt class="py-name">t</tt><tt class="py-op">.</tt><tt class="py-name">__module__</tt> </tt>
-<a name="L224"></a><tt class="py-lineno"> 224</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">simplejson</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt><tt class="py-name">d</tt><tt class="py-op">)</tt> </tt>
+<a name="L224"></a><tt class="py-lineno"> 224</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt><tt class="py-name">d</tt><tt class="py-op">)</tt> </tt>
 </div><a name="L225"></a><tt class="py-lineno"> 225</tt>  <tt class="py-line"> </tt>
 <a name="MediaUpload.to_json"></a><div id="MediaUpload.to_json-def"><a name="L226"></a><tt class="py-lineno"> 226</tt> <a class="py-toggle" href="#" id="MediaUpload.to_json-toggle" onclick="return toggle('MediaUpload.to_json');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.http.MediaUpload-class.html#to_json">to_json</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
 </div><div id="MediaUpload.to_json-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="MediaUpload.to_json-expanded"><a name="L227"></a><tt class="py-lineno"> 227</tt>  <tt class="py-line">    <tt class="py-docstring">"""Create a JSON representation of an instance of MediaUpload.</tt> </tt>
@@ -302,7 +302,7 @@
 <a name="L244"></a><tt class="py-lineno"> 244</tt>  <tt class="py-line"><tt class="py-docstring">      An instance of the subclass of MediaUpload that was serialized with</tt> </tt>
 <a name="L245"></a><tt class="py-lineno"> 245</tt>  <tt class="py-line"><tt class="py-docstring">      to_json().</tt> </tt>
 <a name="L246"></a><tt class="py-lineno"> 246</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
-<a name="L247"></a><tt class="py-lineno"> 247</tt>  <tt class="py-line">    <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">simplejson</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
+<a name="L247"></a><tt class="py-lineno"> 247</tt>  <tt class="py-line">    <tt class="py-name">data</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
 <a name="L248"></a><tt class="py-lineno"> 248</tt>  <tt class="py-line">    <tt class="py-comment"># Find and call the right classmethod from_json() to restore the object.</tt> </tt>
 <a name="L249"></a><tt class="py-lineno"> 249</tt>  <tt class="py-line">    <tt class="py-name">module</tt> <tt class="py-op">=</tt> <tt class="py-name">data</tt><tt class="py-op">[</tt><tt class="py-string">'_module'</tt><tt class="py-op">]</tt> </tt>
 <a name="L250"></a><tt class="py-lineno"> 250</tt>  <tt class="py-line">    <tt class="py-name">m</tt> <tt class="py-op">=</tt> <tt class="py-name">__import__</tt><tt class="py-op">(</tt><tt class="py-name">module</tt><tt class="py-op">,</tt> <tt class="py-name">fromlist</tt><tt class="py-op">=</tt><tt class="py-name">module</tt><tt class="py-op">.</tt><tt class="py-name">split</tt><tt class="py-op">(</tt><tt class="py-string">'.'</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">1</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
@@ -556,7 +556,7 @@
 </div><a name="L436"></a><tt class="py-lineno"> 436</tt>  <tt class="py-line"> </tt>
 <a name="L437"></a><tt class="py-lineno"> 437</tt>  <tt class="py-line">  <tt class="py-decorator">@</tt><tt class="py-decorator">staticmethod</tt> </tt>
 <a name="MediaFileUpload.from_json"></a><div id="MediaFileUpload.from_json-def"><a name="L438"></a><tt class="py-lineno"> 438</tt> <a class="py-toggle" href="#" id="MediaFileUpload.from_json-toggle" onclick="return toggle('MediaFileUpload.from_json');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.http.MediaFileUpload-class.html#from_json">from_json</a><tt class="py-op">(</tt><tt class="py-param">s</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="MediaFileUpload.from_json-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="MediaFileUpload.from_json-expanded"><a name="L439"></a><tt class="py-lineno"> 439</tt>  <tt class="py-line">    <tt class="py-name">d</tt> <tt class="py-op">=</tt> <tt class="py-name">simplejson</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
+</div><div id="MediaFileUpload.from_json-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="MediaFileUpload.from_json-expanded"><a name="L439"></a><tt class="py-lineno"> 439</tt>  <tt class="py-line">    <tt class="py-name">d</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
 <a name="L440"></a><tt class="py-lineno"> 440</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt id="link-41" class="py-name"><a title="googleapiclient.http.MediaFileUpload" class="py-name" href="#" onclick="return doclink('link-41', 'MediaFileUpload', 'link-33');">MediaFileUpload</a></tt><tt class="py-op">(</tt><tt class="py-name">d</tt><tt class="py-op">[</tt><tt class="py-string">'_filename'</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt id="link-42" class="py-name"><a title="googleapiclient.http.MediaIoBaseUpload.mimetype
 googleapiclient.http.MediaUpload.mimetype" class="py-name" href="#" onclick="return doclink('link-42', 'mimetype', 'link-23');">mimetype</a></tt><tt class="py-op">=</tt><tt class="py-name">d</tt><tt class="py-op">[</tt><tt class="py-string">'_mimetype'</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
 <a name="L441"></a><tt class="py-lineno"> 441</tt>  <tt class="py-line">                           <tt id="link-43" class="py-name"><a title="googleapiclient.http.MediaIoBaseUpload.chunksize
@@ -1132,12 +1132,12 @@
 <a name="L913"></a><tt class="py-lineno"> 913</tt>  <tt class="py-line">    <tt class="py-keyword">del</tt> <tt class="py-name">d</tt><tt class="py-op">[</tt><tt class="py-string">'_sleep'</tt><tt class="py-op">]</tt> </tt>
 <a name="L914"></a><tt class="py-lineno"> 914</tt>  <tt class="py-line">    <tt class="py-keyword">del</tt> <tt class="py-name">d</tt><tt class="py-op">[</tt><tt class="py-string">'_rand'</tt><tt class="py-op">]</tt> </tt>
 <a name="L915"></a><tt class="py-lineno"> 915</tt>  <tt class="py-line"> </tt>
-<a name="L916"></a><tt class="py-lineno"> 916</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">simplejson</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt><tt class="py-name">d</tt><tt class="py-op">)</tt> </tt>
+<a name="L916"></a><tt class="py-lineno"> 916</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt><tt class="py-name">d</tt><tt class="py-op">)</tt> </tt>
 </div><a name="L917"></a><tt class="py-lineno"> 917</tt>  <tt class="py-line"> </tt>
 <a name="L918"></a><tt class="py-lineno"> 918</tt>  <tt class="py-line">  <tt class="py-decorator">@</tt><tt class="py-decorator">staticmethod</tt> </tt>
 <a name="HttpRequest.from_json"></a><div id="HttpRequest.from_json-def"><a name="L919"></a><tt class="py-lineno"> 919</tt> <a class="py-toggle" href="#" id="HttpRequest.from_json-toggle" onclick="return toggle('HttpRequest.from_json');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.http.HttpRequest-class.html#from_json">from_json</a><tt class="py-op">(</tt><tt class="py-param">s</tt><tt class="py-op">,</tt> <tt class="py-param">http</tt><tt class="py-op">,</tt> <tt class="py-param">postproc</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
 </div><div id="HttpRequest.from_json-collapsed" style="display:none;" pad="++++" indent="++++++"></div><div id="HttpRequest.from_json-expanded"><a name="L920"></a><tt class="py-lineno"> 920</tt>  <tt class="py-line">    <tt class="py-docstring">"""Returns an HttpRequest populated with info from a JSON object."""</tt> </tt>
-<a name="L921"></a><tt class="py-lineno"> 921</tt>  <tt class="py-line">    <tt class="py-name">d</tt> <tt class="py-op">=</tt> <tt class="py-name">simplejson</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
+<a name="L921"></a><tt class="py-lineno"> 921</tt>  <tt class="py-line">    <tt class="py-name">d</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">s</tt><tt class="py-op">)</tt> </tt>
 <a name="L922"></a><tt class="py-lineno"> 922</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">d</tt><tt class="py-op">[</tt><tt class="py-string">'resumable'</tt><tt class="py-op">]</tt> <tt class="py-keyword">is</tt> <tt class="py-keyword">not</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
 <a name="L923"></a><tt class="py-lineno"> 923</tt>  <tt class="py-line">      <tt class="py-name">d</tt><tt class="py-op">[</tt><tt class="py-string">'resumable'</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-154" class="py-name" targets="Class googleapiclient.http.MediaUpload=googleapiclient.http.MediaUpload-class.html"><a title="googleapiclient.http.MediaUpload" class="py-name" href="#" onclick="return doclink('link-154', 'MediaUpload', 'link-154');">MediaUpload</a></tt><tt class="py-op">.</tt><tt id="link-155" class="py-name" targets="Class Method googleapiclient.http.MediaUpload.new_from_json()=googleapiclient.http.MediaUpload-class.html#new_from_json"><a title="googleapiclient.http.MediaUpload.new_from_json" class="py-name" href="#" onclick="return doclink('link-155', 'new_from_json', 'link-155');">new_from_json</a></tt><tt class="py-op">(</tt><tt class="py-name">d</tt><tt class="py-op">[</tt><tt class="py-string">'resumable'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
 <a name="L924"></a><tt class="py-lineno"> 924</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt id="link-156" class="py-name" targets="Class googleapiclient.http.HttpRequest=googleapiclient.http.HttpRequest-class.html"><a title="googleapiclient.http.HttpRequest" class="py-name" href="#" onclick="return doclink('link-156', 'HttpRequest', 'link-156');">HttpRequest</a></tt><tt class="py-op">(</tt> </tt>
@@ -1775,8 +1775,8 @@
 <a name="L1430"></a><tt class="py-lineno">1430</tt>  <tt class="py-line">          <tt class="py-comment"># or expecting a body and not provided one.</tt> </tt>
 <a name="L1431"></a><tt class="py-lineno">1431</tt>  <tt class="py-line">          <tt class="py-keyword">raise</tt> <tt id="link-259" class="py-name"><a title="googleapiclient.errors.UnexpectedBodyError" class="py-name" href="#" onclick="return doclink('link-259', 'UnexpectedBodyError', 'link-10');">UnexpectedBodyError</a></tt><tt class="py-op">(</tt><tt class="py-name">expected_body</tt><tt class="py-op">,</tt> <tt id="link-260" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-260', 'body', 'link-46');">body</a></tt><tt class="py-op">)</tt> </tt>
 <a name="L1432"></a><tt class="py-lineno">1432</tt>  <tt class="py-line">        <tt class="py-keyword">if</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">expected_body</tt><tt class="py-op">,</tt> <tt class="py-name">str</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L1433"></a><tt class="py-lineno">1433</tt>  <tt class="py-line">          <tt class="py-name">expected_body</tt> <tt class="py-op">=</tt> <tt class="py-name">simplejson</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">expected_body</tt><tt class="py-op">)</tt> </tt>
-<a name="L1434"></a><tt class="py-lineno">1434</tt>  <tt class="py-line">        <tt id="link-261" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-261', 'body', 'link-46');">body</a></tt> <tt class="py-op">=</tt> <tt class="py-name">simplejson</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt id="link-262" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-262', 'body', 'link-46');">body</a></tt><tt class="py-op">)</tt> </tt>
+<a name="L1433"></a><tt class="py-lineno">1433</tt>  <tt class="py-line">          <tt class="py-name">expected_body</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">expected_body</tt><tt class="py-op">)</tt> </tt>
+<a name="L1434"></a><tt class="py-lineno">1434</tt>  <tt class="py-line">        <tt id="link-261" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-261', 'body', 'link-46');">body</a></tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt id="link-262" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-262', 'body', 'link-46');">body</a></tt><tt class="py-op">)</tt> </tt>
 <a name="L1435"></a><tt class="py-lineno">1435</tt>  <tt class="py-line">        <tt class="py-keyword">if</tt> <tt id="link-263" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-263', 'body', 'link-46');">body</a></tt> <tt class="py-op">!=</tt> <tt class="py-name">expected_body</tt><tt class="py-op">:</tt> </tt>
 <a name="L1436"></a><tt class="py-lineno">1436</tt>  <tt class="py-line">          <tt class="py-keyword">raise</tt> <tt id="link-264" class="py-name"><a title="googleapiclient.errors.UnexpectedBodyError" class="py-name" href="#" onclick="return doclink('link-264', 'UnexpectedBodyError', 'link-10');">UnexpectedBodyError</a></tt><tt class="py-op">(</tt><tt class="py-name">expected_body</tt><tt class="py-op">,</tt> <tt id="link-265" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-265', 'body', 'link-46');">body</a></tt><tt class="py-op">)</tt> </tt>
 <a name="L1437"></a><tt class="py-lineno">1437</tt>  <tt class="py-line">      <tt class="py-keyword">return</tt> <tt id="link-266" class="py-name" targets="Class googleapiclient.http.HttpRequestMock=googleapiclient.http.HttpRequestMock-class.html"><a title="googleapiclient.http.HttpRequestMock" class="py-name" href="#" onclick="return doclink('link-266', 'HttpRequestMock', 'link-266');">HttpRequestMock</a></tt><tt class="py-op">(</tt><tt class="py-name">resp</tt><tt class="py-op">,</tt> <tt class="py-name">content</tt><tt class="py-op">,</tt> <tt class="py-name">postproc</tt><tt class="py-op">)</tt> </tt>
@@ -1868,7 +1868,7 @@
 <a name="L1522"></a><tt class="py-lineno">1522</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">content</tt> <tt class="py-op">==</tt> <tt class="py-string">'echo_request_headers'</tt><tt class="py-op">:</tt> </tt>
 <a name="L1523"></a><tt class="py-lineno">1523</tt>  <tt class="py-line">      <tt class="py-name">content</tt> <tt class="py-op">=</tt> <tt class="py-name">headers</tt> </tt>
 <a name="L1524"></a><tt class="py-lineno">1524</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">content</tt> <tt class="py-op">==</tt> <tt class="py-string">'echo_request_headers_as_json'</tt><tt class="py-op">:</tt> </tt>
-<a name="L1525"></a><tt class="py-lineno">1525</tt>  <tt class="py-line">      <tt class="py-name">content</tt> <tt class="py-op">=</tt> <tt class="py-name">simplejson</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt><tt class="py-name">headers</tt><tt class="py-op">)</tt> </tt>
+<a name="L1525"></a><tt class="py-lineno">1525</tt>  <tt class="py-line">      <tt class="py-name">content</tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt><tt class="py-name">headers</tt><tt class="py-op">)</tt> </tt>
 <a name="L1526"></a><tt class="py-lineno">1526</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">content</tt> <tt class="py-op">==</tt> <tt class="py-string">'echo_request_body'</tt><tt class="py-op">:</tt> </tt>
 <a name="L1527"></a><tt class="py-lineno">1527</tt>  <tt class="py-line">      <tt class="py-keyword">if</tt> <tt class="py-name">hasattr</tt><tt class="py-op">(</tt><tt id="link-277" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-277', 'body', 'link-46');">body</a></tt><tt class="py-op">,</tt> <tt class="py-string">'read'</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
 <a name="L1528"></a><tt class="py-lineno">1528</tt>  <tt class="py-line">        <tt class="py-name">content</tt> <tt class="py-op">=</tt> <tt id="link-278" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-278', 'body', 'link-46');">body</a></tt><tt class="py-op">.</tt><tt id="link-279" class="py-name"><a title="googleapiclient.http._StreamSlice.read" class="py-name" href="#" onclick="return doclink('link-279', 'read', 'link-29');">read</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
@@ -2003,7 +2003,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http.BatchHttpRequest-class.html b/docs/epy/googleapiclient.http.BatchHttpRequest-class.html
index a8dbc8c..4838265 100644
--- a/docs/epy/googleapiclient.http.BatchHttpRequest-class.html
+++ b/docs/epy/googleapiclient.http.BatchHttpRequest-class.html
@@ -740,7 +740,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http.HttpMock-class.html b/docs/epy/googleapiclient.http.HttpMock-class.html
index 5169ef3..83cf62f 100644
--- a/docs/epy/googleapiclient.http.HttpMock-class.html
+++ b/docs/epy/googleapiclient.http.HttpMock-class.html
@@ -250,7 +250,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http.HttpMockSequence-class.html b/docs/epy/googleapiclient.http.HttpMockSequence-class.html
index 66b2df7..2d87266 100644
--- a/docs/epy/googleapiclient.http.HttpMockSequence-class.html
+++ b/docs/epy/googleapiclient.http.HttpMockSequence-class.html
@@ -267,7 +267,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http.HttpRequest-class.html b/docs/epy/googleapiclient.http.HttpRequest-class.html
index c1e5f47..05617a9 100644
--- a/docs/epy/googleapiclient.http.HttpRequest-class.html
+++ b/docs/epy/googleapiclient.http.HttpRequest-class.html
@@ -561,7 +561,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http.HttpRequestMock-class.html b/docs/epy/googleapiclient.http.HttpRequestMock-class.html
index 3e8c7f2..cbc9b6d 100644
--- a/docs/epy/googleapiclient.http.HttpRequestMock-class.html
+++ b/docs/epy/googleapiclient.http.HttpRequestMock-class.html
@@ -279,7 +279,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http.MediaDownloadProgress-class.html b/docs/epy/googleapiclient.http.MediaDownloadProgress-class.html
index ce373ba..1ca2cc9 100644
--- a/docs/epy/googleapiclient.http.MediaDownloadProgress-class.html
+++ b/docs/epy/googleapiclient.http.MediaDownloadProgress-class.html
@@ -272,7 +272,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http.MediaFileUpload-class.html b/docs/epy/googleapiclient.http.MediaFileUpload-class.html
index 14072ad..b0ff2e8 100644
--- a/docs/epy/googleapiclient.http.MediaFileUpload-class.html
+++ b/docs/epy/googleapiclient.http.MediaFileUpload-class.html
@@ -392,7 +392,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http.MediaInMemoryUpload-class.html b/docs/epy/googleapiclient.http.MediaInMemoryUpload-class.html
index 072ed50..d78ba7a 100644
--- a/docs/epy/googleapiclient.http.MediaInMemoryUpload-class.html
+++ b/docs/epy/googleapiclient.http.MediaInMemoryUpload-class.html
@@ -297,7 +297,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http.MediaIoBaseDownload-class.html b/docs/epy/googleapiclient.http.MediaIoBaseDownload-class.html
index 3a0feb8..0dc64a4 100644
--- a/docs/epy/googleapiclient.http.MediaIoBaseDownload-class.html
+++ b/docs/epy/googleapiclient.http.MediaIoBaseDownload-class.html
@@ -314,7 +314,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http.MediaIoBaseUpload-class.html b/docs/epy/googleapiclient.http.MediaIoBaseUpload-class.html
index d61f603..0e654e3 100644
--- a/docs/epy/googleapiclient.http.MediaIoBaseUpload-class.html
+++ b/docs/epy/googleapiclient.http.MediaIoBaseUpload-class.html
@@ -674,7 +674,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http.MediaUpload-class.html b/docs/epy/googleapiclient.http.MediaUpload-class.html
index 52a632a..84138ac 100644
--- a/docs/epy/googleapiclient.http.MediaUpload-class.html
+++ b/docs/epy/googleapiclient.http.MediaUpload-class.html
@@ -681,7 +681,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http.MediaUploadProgress-class.html b/docs/epy/googleapiclient.http.MediaUploadProgress-class.html
index 9995432..3544d75 100644
--- a/docs/epy/googleapiclient.http.MediaUploadProgress-class.html
+++ b/docs/epy/googleapiclient.http.MediaUploadProgress-class.html
@@ -273,7 +273,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http.RequestMockBuilder-class.html b/docs/epy/googleapiclient.http.RequestMockBuilder-class.html
index 3cc008e..32312e6 100644
--- a/docs/epy/googleapiclient.http.RequestMockBuilder-class.html
+++ b/docs/epy/googleapiclient.http.RequestMockBuilder-class.html
@@ -319,7 +319,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.http._StreamSlice-class.html b/docs/epy/googleapiclient.http._StreamSlice-class.html
index 44c3eb6..24b6436 100644
--- a/docs/epy/googleapiclient.http._StreamSlice-class.html
+++ b/docs/epy/googleapiclient.http._StreamSlice-class.html
@@ -285,7 +285,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.mimeparse-module.html b/docs/epy/googleapiclient.mimeparse-module.html
index 55da8dd..8b8fbed 100644
--- a/docs/epy/googleapiclient.mimeparse-module.html
+++ b/docs/epy/googleapiclient.mimeparse-module.html
@@ -490,7 +490,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.mimeparse-pysrc.html b/docs/epy/googleapiclient.mimeparse-pysrc.html
index 0302ca3..f3e4e3a 100644
--- a/docs/epy/googleapiclient.mimeparse-pysrc.html
+++ b/docs/epy/googleapiclient.mimeparse-pysrc.html
@@ -261,7 +261,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.model-module.html b/docs/epy/googleapiclient.model-module.html
index 022c35d..f7dc1e3 100644
--- a/docs/epy/googleapiclient.model-module.html
+++ b/docs/epy/googleapiclient.model-module.html
@@ -299,7 +299,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.model-pysrc.html b/docs/epy/googleapiclient.model-pysrc.html
index fe49ba5..bf0a400 100644
--- a/docs/epy/googleapiclient.model-pysrc.html
+++ b/docs/epy/googleapiclient.model-pysrc.html
@@ -58,7 +58,7 @@
 <pre class="py-src">
 <a name="L1"></a><tt class="py-lineno">  1</tt>  <tt class="py-line"><tt class="py-comment">#!/usr/bin/python2.4</tt> </tt>
 <a name="L2"></a><tt class="py-lineno">  2</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno">  3</tt>  <tt class="py-line"><tt class="py-comment"># Copyright 2014 Google Inc. All Rights Reserved.
+<a name="L3"></a><tt class="py-lineno">  3</tt>  <tt class="py-line"><tt class="py-comment"># Copyright 2014 Google Inc. All Rights Reserved.</tt> </tt>
 <a name="L4"></a><tt class="py-lineno">  4</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
 <a name="L5"></a><tt class="py-lineno">  5</tt>  <tt class="py-line"><tt class="py-comment"># Licensed under the Apache License, Version 2.0 (the "License");</tt> </tt>
 <a name="L6"></a><tt class="py-lineno">  6</tt>  <tt class="py-line"><tt class="py-comment"># you may not use this file except in compliance with the License.</tt> </tt>
@@ -82,12 +82,12 @@
 <a name="L24"></a><tt class="py-lineno"> 24</tt>  <tt class="py-line"> </tt>
 <a name="L25"></a><tt class="py-lineno"> 25</tt>  <tt class="py-line"><tt class="py-name">__author__</tt> <tt class="py-op">=</tt> <tt class="py-string">'jcgregorio@google.com (Joe Gregorio)'</tt> </tt>
 <a name="L26"></a><tt class="py-lineno"> 26</tt>  <tt class="py-line"> </tt>
-<a name="L27"></a><tt class="py-lineno"> 27</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">logging</tt> </tt>
-<a name="L28"></a><tt class="py-lineno"> 28</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">urllib</tt> </tt>
-<a name="L29"></a><tt class="py-lineno"> 29</tt>  <tt class="py-line"> </tt>
-<a name="L30"></a><tt class="py-lineno"> 30</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package googleapiclient=googleapiclient-module.html"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-0', 'googleapiclient', 'link-0');">googleapiclient</a></tt> <tt class="py-keyword">import</tt> <tt class="py-name">__version__</tt> </tt>
-<a name="L31"></a><tt class="py-lineno"> 31</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-1" class="py-name" targets="Module googleapiclient.errors=googleapiclient.errors-module.html"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-1', 'errors', 'link-1');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-2" class="py-name" targets="Class googleapiclient.errors.HttpError=googleapiclient.errors.HttpError-class.html"><a title="googleapiclient.errors.HttpError" class="py-name" href="#" onclick="return doclink('link-2', 'HttpError', 'link-2');">HttpError</a></tt> </tt>
-<a name="L32"></a><tt class="py-lineno"> 32</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt><tt class="py-op">.</tt><tt class="py-name">anyjson</tt> <tt class="py-keyword">import</tt> <tt class="py-name">simplejson</tt> </tt>
+<a name="L27"></a><tt class="py-lineno"> 27</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">json</tt> </tt>
+<a name="L28"></a><tt class="py-lineno"> 28</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">logging</tt> </tt>
+<a name="L29"></a><tt class="py-lineno"> 29</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">urllib</tt> </tt>
+<a name="L30"></a><tt class="py-lineno"> 30</tt>  <tt class="py-line"> </tt>
+<a name="L31"></a><tt class="py-lineno"> 31</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package googleapiclient=googleapiclient-module.html"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-0', 'googleapiclient', 'link-0');">googleapiclient</a></tt> <tt class="py-keyword">import</tt> <tt class="py-name">__version__</tt> </tt>
+<a name="L32"></a><tt class="py-lineno"> 32</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-1" class="py-name" targets="Module googleapiclient.errors=googleapiclient.errors-module.html"><a title="googleapiclient.errors" class="py-name" href="#" onclick="return doclink('link-1', 'errors', 'link-1');">errors</a></tt> <tt class="py-keyword">import</tt> <tt id="link-2" class="py-name" targets="Class googleapiclient.errors.HttpError=googleapiclient.errors.HttpError-class.html"><a title="googleapiclient.errors.HttpError" class="py-name" href="#" onclick="return doclink('link-2', 'HttpError', 'link-2');">HttpError</a></tt> </tt>
 <a name="L33"></a><tt class="py-lineno"> 33</tt>  <tt class="py-line"> </tt>
 <a name="L34"></a><tt class="py-lineno"> 34</tt>  <tt class="py-line"> </tt>
 <a name="L35"></a><tt class="py-lineno"> 35</tt>  <tt class="py-line"><tt id="link-3" class="py-name" targets="Variable googleapiclient.model.dump_request_response=googleapiclient.model-module.html#dump_request_response"><a title="googleapiclient.model.dump_request_response" class="py-name" href="#" onclick="return doclink('link-3', 'dump_request_response', 'link-3');">dump_request_response</a></tt> <tt class="py-op">=</tt> <tt class="py-name">False</tt> </tt>
@@ -199,7 +199,7 @@
 <a name="L125"></a><tt class="py-lineno">125</tt>  <tt class="py-line"><tt class="py-docstring">      path_params: dict, parameters that appear in the request path</tt> </tt>
 <a name="L126"></a><tt class="py-lineno">126</tt>  <tt class="py-line"><tt class="py-docstring">      query_params: dict, parameters that appear in the query</tt> </tt>
 <a name="L127"></a><tt class="py-lineno">127</tt>  <tt class="py-line"><tt class="py-docstring">      body_value: object, the request body as a Python object, which must be</tt> </tt>
-<a name="L128"></a><tt class="py-lineno">128</tt>  <tt class="py-line"><tt class="py-docstring">                  serializable by simplejson.</tt> </tt>
+<a name="L128"></a><tt class="py-lineno">128</tt>  <tt class="py-line"><tt class="py-docstring">                  serializable by json.</tt> </tt>
 <a name="L129"></a><tt class="py-lineno">129</tt>  <tt class="py-line"><tt class="py-docstring">    Returns:</tt> </tt>
 <a name="L130"></a><tt class="py-lineno">130</tt>  <tt class="py-line"><tt class="py-docstring">      A tuple of (headers, path_params, query, body)</tt> </tt>
 <a name="L131"></a><tt class="py-lineno">131</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
@@ -366,11 +366,11 @@
 </div><div id="JsonModel.serialize-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="JsonModel.serialize-expanded"><a name="L254"></a><tt class="py-lineno">254</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-op">(</tt><tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt class="py-name">body_value</tt><tt class="py-op">,</tt> <tt class="py-name">dict</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-string">'data'</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">body_value</tt> <tt class="py-keyword">and</tt> </tt>
 <a name="L255"></a><tt class="py-lineno">255</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_data_wrapper</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
 <a name="L256"></a><tt class="py-lineno">256</tt>  <tt class="py-line">      <tt class="py-name">body_value</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-string">'data'</tt><tt class="py-op">:</tt> <tt class="py-name">body_value</tt><tt class="py-op">}</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">simplejson</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt><tt class="py-name">body_value</tt><tt class="py-op">)</tt> </tt>
+<a name="L257"></a><tt class="py-lineno">257</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">dumps</tt><tt class="py-op">(</tt><tt class="py-name">body_value</tt><tt class="py-op">)</tt> </tt>
 </div><a name="L258"></a><tt class="py-lineno">258</tt>  <tt class="py-line"> </tt>
 <a name="JsonModel.deserialize"></a><div id="JsonModel.deserialize-def"><a name="L259"></a><tt class="py-lineno">259</tt> <a class="py-toggle" href="#" id="JsonModel.deserialize-toggle" onclick="return toggle('JsonModel.deserialize');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.model.JsonModel-class.html#deserialize">deserialize</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">content</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
 </div><div id="JsonModel.deserialize-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="JsonModel.deserialize-expanded"><a name="L260"></a><tt class="py-lineno">260</tt>  <tt class="py-line">    <tt class="py-name">content</tt> <tt class="py-op">=</tt> <tt class="py-name">content</tt><tt class="py-op">.</tt><tt class="py-name">decode</tt><tt class="py-op">(</tt><tt class="py-string">'utf-8'</tt><tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt>  <tt class="py-line">    <tt id="link-30" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-30', 'body', 'link-11');">body</a></tt> <tt class="py-op">=</tt> <tt class="py-name">simplejson</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">content</tt><tt class="py-op">)</tt> </tt>
+<a name="L261"></a><tt class="py-lineno">261</tt>  <tt class="py-line">    <tt id="link-30" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-30', 'body', 'link-11');">body</a></tt> <tt class="py-op">=</tt> <tt class="py-name">json</tt><tt class="py-op">.</tt><tt class="py-name">loads</tt><tt class="py-op">(</tt><tt class="py-name">content</tt><tt class="py-op">)</tt> </tt>
 <a name="L262"></a><tt class="py-lineno">262</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">_data_wrapper</tt> <tt class="py-keyword">and</tt> <tt class="py-name">isinstance</tt><tt class="py-op">(</tt><tt id="link-31" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-31', 'body', 'link-11');">body</a></tt><tt class="py-op">,</tt> <tt class="py-name">dict</tt><tt class="py-op">)</tt> <tt class="py-keyword">and</tt> <tt class="py-string">'data'</tt> <tt class="py-keyword">in</tt> <tt id="link-32" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-32', 'body', 'link-11');">body</a></tt><tt class="py-op">:</tt> </tt>
 <a name="L263"></a><tt class="py-lineno">263</tt>  <tt class="py-line">      <tt id="link-33" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-33', 'body', 'link-11');">body</a></tt> <tt class="py-op">=</tt> <tt id="link-34" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-34', 'body', 'link-11');">body</a></tt><tt class="py-op">[</tt><tt class="py-string">'data'</tt><tt class="py-op">]</tt> </tt>
 <a name="L264"></a><tt class="py-lineno">264</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt id="link-35" class="py-name"><a title="googleapiclient.channel.Channel.body" class="py-name" href="#" onclick="return doclink('link-35', 'body', 'link-11');">body</a></tt> </tt>
@@ -562,7 +562,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.model.BaseModel-class.html b/docs/epy/googleapiclient.model.BaseModel-class.html
index 9ddde1d..6568783 100644
--- a/docs/epy/googleapiclient.model.BaseModel-class.html
+++ b/docs/epy/googleapiclient.model.BaseModel-class.html
@@ -376,7 +376,7 @@
   path_params: dict, parameters that appear in the request path
   query_params: dict, parameters that appear in the query
   body_value: object, the request body as a Python object, which must be
-              serializable by simplejson.
+              serializable by json.
 Returns:
   A tuple of (headers, path_params, query, body)
 
@@ -545,7 +545,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.model.JsonModel-class.html b/docs/epy/googleapiclient.model.JsonModel-class.html
index fdb6c8c..73c916e 100644
--- a/docs/epy/googleapiclient.model.JsonModel-class.html
+++ b/docs/epy/googleapiclient.model.JsonModel-class.html
@@ -432,7 +432,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.model.MediaModel-class.html b/docs/epy/googleapiclient.model.MediaModel-class.html
index 5da9c5c..cce26f9 100644
--- a/docs/epy/googleapiclient.model.MediaModel-class.html
+++ b/docs/epy/googleapiclient.model.MediaModel-class.html
@@ -68,10 +68,10 @@
 <area shape="rect" id="node2_14" href="googleapiclient.model.JsonModel-class.html#__init__" title="Construct a JsonModel." alt="" coords="107,191,318,209"/>
 <area shape="rect" id="node2_15" href="googleapiclient.model.JsonModel-class.html#serialize" title="Perform the actual Python object serialization." alt="" coords="107,209,318,228"/>
 <area shape="rect" id="node2" href="googleapiclient.model.JsonModel-class.html" title="Model class for JSON." alt="" coords="95,160,330,235"/>
-<area shape="rect" id="node3_16" href="googleapiclient.model.BaseModel-class.html#request" title="Updates outgoing requests with a serialized body." alt="" coords="18,97,406,116"/>
-<area shape="rect" id="node3_17" href="googleapiclient.model.BaseModel-class.html#response" title="Convert the response wire format into a Python object." alt="" coords="18,116,406,135"/>
-<area shape="rect" id="node3" href="googleapiclient.model.BaseModel-class.html" title="Base model class." alt="" coords="5,67,417,141"/>
-<area shape="rect" id="node4" href="googleapiclient.model.Model-class.html" title="Model base class." alt="" coords="181,5,241,48"/>
+<area shape="rect" id="node3" href="googleapiclient.model.Model-class.html" title="Model base class." alt="" coords="181,5,241,48"/>
+<area shape="rect" id="node4_16" href="googleapiclient.model.BaseModel-class.html#request" title="Updates outgoing requests with a serialized body." alt="" coords="18,97,406,116"/>
+<area shape="rect" id="node4_17" href="googleapiclient.model.BaseModel-class.html#response" title="Convert the response wire format into a Python object." alt="" coords="18,116,406,135"/>
+<area shape="rect" id="node4" href="googleapiclient.model.BaseModel-class.html" title="Base model class." alt="" coords="5,67,417,141"/>
 </map>
   <img src="uml_class_diagram_for_googleap_35.gif" alt='' usemap="#uml_class_diagram_for_googleap_35" ismap="ismap" class="graph-without-title" />
 </center>
@@ -339,7 +339,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.model.Model-class.html b/docs/epy/googleapiclient.model.Model-class.html
index b2dacb2..ee9df0d 100644
--- a/docs/epy/googleapiclient.model.Model-class.html
+++ b/docs/epy/googleapiclient.model.Model-class.html
@@ -297,7 +297,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.model.ProtocolBufferModel-class.html b/docs/epy/googleapiclient.model.ProtocolBufferModel-class.html
index aec6cd0..5a9ff32 100644
--- a/docs/epy/googleapiclient.model.ProtocolBufferModel-class.html
+++ b/docs/epy/googleapiclient.model.ProtocolBufferModel-class.html
@@ -436,7 +436,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.model.RawModel-class.html b/docs/epy/googleapiclient.model.RawModel-class.html
index ac237e5..697b5a1 100644
--- a/docs/epy/googleapiclient.model.RawModel-class.html
+++ b/docs/epy/googleapiclient.model.RawModel-class.html
@@ -68,10 +68,10 @@
 <area shape="rect" id="node2_14" href="googleapiclient.model.JsonModel-class.html#__init__" title="Construct a JsonModel." alt="" coords="107,191,318,209"/>
 <area shape="rect" id="node2_15" href="googleapiclient.model.JsonModel-class.html#serialize" title="Perform the actual Python object serialization." alt="" coords="107,209,318,228"/>
 <area shape="rect" id="node2" href="googleapiclient.model.JsonModel-class.html" title="Model class for JSON." alt="" coords="95,160,330,235"/>
-<area shape="rect" id="node3_16" href="googleapiclient.model.BaseModel-class.html#request" title="Updates outgoing requests with a serialized body." alt="" coords="18,97,406,116"/>
-<area shape="rect" id="node3_17" href="googleapiclient.model.BaseModel-class.html#response" title="Convert the response wire format into a Python object." alt="" coords="18,116,406,135"/>
-<area shape="rect" id="node3" href="googleapiclient.model.BaseModel-class.html" title="Base model class." alt="" coords="5,67,417,141"/>
-<area shape="rect" id="node4" href="googleapiclient.model.Model-class.html" title="Model base class." alt="" coords="181,5,241,48"/>
+<area shape="rect" id="node3" href="googleapiclient.model.Model-class.html" title="Model base class." alt="" coords="181,5,241,48"/>
+<area shape="rect" id="node4_16" href="googleapiclient.model.BaseModel-class.html#request" title="Updates outgoing requests with a serialized body." alt="" coords="18,97,406,116"/>
+<area shape="rect" id="node4_17" href="googleapiclient.model.BaseModel-class.html#response" title="Convert the response wire format into a Python object." alt="" coords="18,116,406,135"/>
+<area shape="rect" id="node4" href="googleapiclient.model.BaseModel-class.html" title="Base model class." alt="" coords="5,67,417,141"/>
 </map>
   <img src="uml_class_diagram_for_googleap_38.gif" alt='' usemap="#uml_class_diagram_for_googleap_38" ismap="ismap" class="graph-without-title" />
 </center>
@@ -339,7 +339,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.sample_tools-module.html b/docs/epy/googleapiclient.sample_tools-module.html
index 5547209..c0fe846 100644
--- a/docs/epy/googleapiclient.sample_tools-module.html
+++ b/docs/epy/googleapiclient.sample_tools-module.html
@@ -96,7 +96,8 @@
         <span class="summary-sig-arg">doc</span>,
         <span class="summary-sig-arg">filename</span>,
         <span class="summary-sig-arg">scope</span>=<span class="summary-sig-default">None</span>,
-        <span class="summary-sig-arg">parents</span>=<span class="summary-sig-default">[]</span>)</span><br />
+        <span class="summary-sig-arg">parents</span>=<span class="summary-sig-default">[]</span>,
+        <span class="summary-sig-arg">discovery_filename</span>=<span class="summary-sig-default">None</span>)</span><br />
       A common initialization routine for samples.</td>
           <td align="right" valign="top">
             <span class="codelink"><a href="googleapiclient.sample_tools-pysrc.html#init">source&nbsp;code</a></span>
@@ -139,7 +140,8 @@
         <span class="sig-arg">doc</span>,
         <span class="sig-arg">filename</span>,
         <span class="sig-arg">scope</span>=<span class="sig-default">None</span>,
-        <span class="sig-arg">parents</span>=<span class="sig-default">[]</span>)</span>
+        <span class="sig-arg">parents</span>=<span class="sig-default">[]</span>,
+        <span class="sig-arg">discovery_filename</span>=<span class="sig-default">None</span>)</span>
   </h3>
   </td><td align="right" valign="top"
     ><span class="codelink"><a href="googleapiclient.sample_tools-pysrc.html#init">source&nbsp;code</a></span>&nbsp;
@@ -164,6 +166,7 @@
   file: string, filename of the application. Usually set to __file__.
   parents: list of argparse.ArgumentParser, additional command-line flags.
   scope: string, The OAuth scope used.
+  discovery_filename: string, name of local discovery file (JSON). Use when discovery doc not available via URL.
 
 Returns:
   A tuple of (service, flags), where service is the service object and flags
@@ -201,7 +204,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.sample_tools-pysrc.html b/docs/epy/googleapiclient.sample_tools-pysrc.html
index 1d29de6..fc13acb 100644
--- a/docs/epy/googleapiclient.sample_tools-pysrc.html
+++ b/docs/epy/googleapiclient.sample_tools-pysrc.html
@@ -56,100 +56,109 @@
 </table>
 <h1 class="epydoc">Source Code for <a href="googleapiclient.sample_tools-module.html">Module googleapiclient.sample_tools</a></h1>
 <pre class="py-src">
-<a name="L1"></a><tt class="py-lineno"> 1</tt>  <tt class="py-line"><tt class="py-comment"># Copyright 2014 Google Inc. All Rights Reserved.
-<a name="L2"></a><tt class="py-lineno"> 2</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L3"></a><tt class="py-lineno"> 3</tt>  <tt class="py-line"><tt class="py-comment"># Licensed under the Apache License, Version 2.0 (the "License");</tt> </tt>
-<a name="L4"></a><tt class="py-lineno"> 4</tt>  <tt class="py-line"><tt class="py-comment"># you may not use this file except in compliance with the License.</tt> </tt>
-<a name="L5"></a><tt class="py-lineno"> 5</tt>  <tt class="py-line"><tt class="py-comment"># You may obtain a copy of the License at</tt> </tt>
-<a name="L6"></a><tt class="py-lineno"> 6</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L7"></a><tt class="py-lineno"> 7</tt>  <tt class="py-line"><tt class="py-comment">#      http://www.apache.org/licenses/LICENSE-2.0</tt> </tt>
-<a name="L8"></a><tt class="py-lineno"> 8</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
-<a name="L9"></a><tt class="py-lineno"> 9</tt>  <tt class="py-line"><tt class="py-comment"># Unless required by applicable law or agreed to in writing, software</tt> </tt>
-<a name="L10"></a><tt class="py-lineno">10</tt>  <tt class="py-line"><tt class="py-comment"># distributed under the License is distributed on an "AS IS" BASIS,</tt> </tt>
-<a name="L11"></a><tt class="py-lineno">11</tt>  <tt class="py-line"><tt class="py-comment"># WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</tt> </tt>
-<a name="L12"></a><tt class="py-lineno">12</tt>  <tt class="py-line"><tt class="py-comment"># See the License for the specific language governing permissions and</tt> </tt>
-<a name="L13"></a><tt class="py-lineno">13</tt>  <tt class="py-line"><tt class="py-comment"># limitations under the License.</tt> </tt>
-<a name="L14"></a><tt class="py-lineno">14</tt>  <tt class="py-line"> </tt>
-<a name="L15"></a><tt class="py-lineno">15</tt>  <tt class="py-line"><tt class="py-docstring">"""Utilities for making samples.</tt> </tt>
-<a name="L16"></a><tt class="py-lineno">16</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L17"></a><tt class="py-lineno">17</tt>  <tt class="py-line"><tt class="py-docstring">Consolidates a lot of code commonly repeated in sample applications.</tt> </tt>
-<a name="L18"></a><tt class="py-lineno">18</tt>  <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
-<a name="L19"></a><tt class="py-lineno">19</tt>  <tt class="py-line"> </tt>
-<a name="L20"></a><tt class="py-lineno">20</tt>  <tt class="py-line"><tt class="py-name">__author__</tt> <tt class="py-op">=</tt> <tt class="py-string">'jcgregorio@google.com (Joe Gregorio)'</tt> </tt>
-<a name="L21"></a><tt class="py-lineno">21</tt>  <tt class="py-line"><tt class="py-name">__all__</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">'init'</tt><tt class="py-op">]</tt> </tt>
-<a name="L22"></a><tt class="py-lineno">22</tt>  <tt class="py-line"> </tt>
-<a name="L23"></a><tt class="py-lineno">23</tt>  <tt class="py-line"> </tt>
-<a name="L24"></a><tt class="py-lineno">24</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">argparse</tt> </tt>
-<a name="L25"></a><tt class="py-lineno">25</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">httplib2</tt> </tt>
-<a name="L26"></a><tt class="py-lineno">26</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
-<a name="L27"></a><tt class="py-lineno">27</tt>  <tt class="py-line"> </tt>
-<a name="L28"></a><tt class="py-lineno">28</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package googleapiclient=googleapiclient-module.html"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-0', 'googleapiclient', 'link-0');">googleapiclient</a></tt> <tt class="py-keyword">import</tt> <tt id="link-1" class="py-name" targets="Module googleapiclient.discovery=googleapiclient.discovery-module.html"><a title="googleapiclient.discovery" class="py-name" href="#" onclick="return doclink('link-1', 'discovery', 'link-1');">discovery</a></tt> </tt>
-<a name="L29"></a><tt class="py-lineno">29</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt> <tt class="py-keyword">import</tt> <tt class="py-name">client</tt> </tt>
-<a name="L30"></a><tt class="py-lineno">30</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt> <tt class="py-keyword">import</tt> <tt class="py-name">file</tt> </tt>
-<a name="L31"></a><tt class="py-lineno">31</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt> <tt class="py-keyword">import</tt> <tt class="py-name">tools</tt> </tt>
-<a name="L32"></a><tt class="py-lineno">32</tt>  <tt class="py-line"> </tt>
-<a name="L33"></a><tt class="py-lineno">33</tt>  <tt class="py-line"> </tt>
-<a name="init"></a><div id="init-def"><a name="L34"></a><tt class="py-lineno">34</tt> <a class="py-toggle" href="#" id="init-toggle" onclick="return toggle('init');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.sample_tools-module.html#init">init</a><tt class="py-op">(</tt><tt class="py-param">argv</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">,</tt> <tt class="py-param">version</tt><tt class="py-op">,</tt> <tt class="py-param">doc</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">,</tt> <tt class="py-param">scope</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">parents</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="init-collapsed" style="display:none;" pad="++" indent="++++"></div><div id="init-expanded"><a name="L35"></a><tt class="py-lineno">35</tt>  <tt class="py-line">  <tt class="py-docstring">"""A common initialization routine for samples.</tt> </tt>
-<a name="L36"></a><tt class="py-lineno">36</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L37"></a><tt class="py-lineno">37</tt>  <tt class="py-line"><tt class="py-docstring">  Many of the sample applications do the same initialization, which has now</tt> </tt>
-<a name="L38"></a><tt class="py-lineno">38</tt>  <tt class="py-line"><tt class="py-docstring">  been consolidated into this function. This function uses common idioms found</tt> </tt>
-<a name="L39"></a><tt class="py-lineno">39</tt>  <tt class="py-line"><tt class="py-docstring">  in almost all the samples, i.e. for an API with name 'apiname', the</tt> </tt>
-<a name="L40"></a><tt class="py-lineno">40</tt>  <tt class="py-line"><tt class="py-docstring">  credentials are stored in a file named apiname.dat, and the</tt> </tt>
-<a name="L41"></a><tt class="py-lineno">41</tt>  <tt class="py-line"><tt class="py-docstring">  client_secrets.json file is stored in the same directory as the application</tt> </tt>
-<a name="L42"></a><tt class="py-lineno">42</tt>  <tt class="py-line"><tt class="py-docstring">  main file.</tt> </tt>
-<a name="L43"></a><tt class="py-lineno">43</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L44"></a><tt class="py-lineno">44</tt>  <tt class="py-line"><tt class="py-docstring">  Args:</tt> </tt>
-<a name="L45"></a><tt class="py-lineno">45</tt>  <tt class="py-line"><tt class="py-docstring">    argv: list of string, the command-line parameters of the application.</tt> </tt>
-<a name="L46"></a><tt class="py-lineno">46</tt>  <tt class="py-line"><tt class="py-docstring">    name: string, name of the API.</tt> </tt>
-<a name="L47"></a><tt class="py-lineno">47</tt>  <tt class="py-line"><tt class="py-docstring">    version: string, version of the API.</tt> </tt>
-<a name="L48"></a><tt class="py-lineno">48</tt>  <tt class="py-line"><tt class="py-docstring">    doc: string, description of the application. Usually set to __doc__.</tt> </tt>
-<a name="L49"></a><tt class="py-lineno">49</tt>  <tt class="py-line"><tt class="py-docstring">    file: string, filename of the application. Usually set to __file__.</tt> </tt>
-<a name="L50"></a><tt class="py-lineno">50</tt>  <tt class="py-line"><tt class="py-docstring">    parents: list of argparse.ArgumentParser, additional command-line flags.</tt> </tt>
-<a name="L51"></a><tt class="py-lineno">51</tt>  <tt class="py-line"><tt class="py-docstring">    scope: string, The OAuth scope used.</tt> </tt>
-<a name="L52"></a><tt class="py-lineno">52</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L53"></a><tt class="py-lineno">53</tt>  <tt class="py-line"><tt class="py-docstring">  Returns:</tt> </tt>
-<a name="L54"></a><tt class="py-lineno">54</tt>  <tt class="py-line"><tt class="py-docstring">    A tuple of (service, flags), where service is the service object and flags</tt> </tt>
-<a name="L55"></a><tt class="py-lineno">55</tt>  <tt class="py-line"><tt class="py-docstring">    is the parsed command-line flags.</tt> </tt>
-<a name="L56"></a><tt class="py-lineno">56</tt>  <tt class="py-line"><tt class="py-docstring">  """</tt> </tt>
-<a name="L57"></a><tt class="py-lineno">57</tt>  <tt class="py-line">  <tt class="py-keyword">if</tt> <tt class="py-name">scope</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L58"></a><tt class="py-lineno">58</tt>  <tt class="py-line">    <tt class="py-name">scope</tt> <tt class="py-op">=</tt> <tt class="py-string">'https://www.googleapis.com/auth/'</tt> <tt class="py-op">+</tt> <tt class="py-name">name</tt> </tt>
-<a name="L59"></a><tt class="py-lineno">59</tt>  <tt class="py-line"> </tt>
-<a name="L60"></a><tt class="py-lineno">60</tt>  <tt class="py-line">  <tt class="py-comment"># Parser command-line arguments.</tt> </tt>
-<a name="L61"></a><tt class="py-lineno">61</tt>  <tt class="py-line">  <tt class="py-name">parent_parsers</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">tools</tt><tt class="py-op">.</tt><tt class="py-name">argparser</tt><tt class="py-op">]</tt> </tt>
-<a name="L62"></a><tt class="py-lineno">62</tt>  <tt class="py-line">  <tt class="py-name">parent_parsers</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">parents</tt><tt class="py-op">)</tt> </tt>
-<a name="L63"></a><tt class="py-lineno">63</tt>  <tt class="py-line">  <tt class="py-name">parser</tt> <tt class="py-op">=</tt> <tt class="py-name">argparse</tt><tt class="py-op">.</tt><tt class="py-name">ArgumentParser</tt><tt class="py-op">(</tt> </tt>
-<a name="L64"></a><tt class="py-lineno">64</tt>  <tt class="py-line">      <tt class="py-name">description</tt><tt class="py-op">=</tt><tt class="py-name">doc</tt><tt class="py-op">,</tt> </tt>
-<a name="L65"></a><tt class="py-lineno">65</tt>  <tt class="py-line">      <tt class="py-name">formatter_class</tt><tt class="py-op">=</tt><tt class="py-name">argparse</tt><tt class="py-op">.</tt><tt class="py-name">RawDescriptionHelpFormatter</tt><tt class="py-op">,</tt> </tt>
-<a name="L66"></a><tt class="py-lineno">66</tt>  <tt class="py-line">      <tt class="py-name">parents</tt><tt class="py-op">=</tt><tt class="py-name">parent_parsers</tt><tt class="py-op">)</tt> </tt>
-<a name="L67"></a><tt class="py-lineno">67</tt>  <tt class="py-line">  <tt class="py-name">flags</tt> <tt class="py-op">=</tt> <tt class="py-name">parser</tt><tt class="py-op">.</tt><tt class="py-name">parse_args</tt><tt class="py-op">(</tt><tt class="py-name">argv</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L68"></a><tt class="py-lineno">68</tt>  <tt class="py-line"> </tt>
-<a name="L69"></a><tt class="py-lineno">69</tt>  <tt class="py-line">  <tt class="py-comment"># Name of a file containing the OAuth 2.0 information for this</tt> </tt>
-<a name="L70"></a><tt class="py-lineno">70</tt>  <tt class="py-line">  <tt class="py-comment"># application, including client_id and client_secret, which are found</tt> </tt>
-<a name="L71"></a><tt class="py-lineno">71</tt>  <tt class="py-line">  <tt class="py-comment"># on the API Access tab on the Google APIs</tt> </tt>
-<a name="L72"></a><tt class="py-lineno">72</tt>  <tt class="py-line">  <tt class="py-comment"># Console &lt;http://code.google.com/apis/console&gt;.</tt> </tt>
-<a name="L73"></a><tt class="py-lineno">73</tt>  <tt class="py-line">  <tt class="py-name">client_secrets</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">dirname</tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
-<a name="L74"></a><tt class="py-lineno">74</tt>  <tt class="py-line">                                <tt class="py-string">'client_secrets.json'</tt><tt class="py-op">)</tt> </tt>
-<a name="L75"></a><tt class="py-lineno">75</tt>  <tt class="py-line"> </tt>
-<a name="L76"></a><tt class="py-lineno">76</tt>  <tt class="py-line">  <tt class="py-comment"># Set up a Flow object to be used if we need to authenticate.</tt> </tt>
-<a name="L77"></a><tt class="py-lineno">77</tt>  <tt class="py-line">  <tt class="py-name">flow</tt> <tt class="py-op">=</tt> <tt class="py-name">client</tt><tt class="py-op">.</tt><tt class="py-name">flow_from_clientsecrets</tt><tt class="py-op">(</tt><tt class="py-name">client_secrets</tt><tt class="py-op">,</tt> </tt>
-<a name="L78"></a><tt class="py-lineno">78</tt>  <tt class="py-line">      <tt class="py-name">scope</tt><tt class="py-op">=</tt><tt class="py-name">scope</tt><tt class="py-op">,</tt> </tt>
-<a name="L79"></a><tt class="py-lineno">79</tt>  <tt class="py-line">      <tt class="py-name">message</tt><tt class="py-op">=</tt><tt class="py-name">tools</tt><tt class="py-op">.</tt><tt class="py-name">message_if_missing</tt><tt class="py-op">(</tt><tt class="py-name">client_secrets</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L80"></a><tt class="py-lineno">80</tt>  <tt class="py-line"> </tt>
-<a name="L81"></a><tt class="py-lineno">81</tt>  <tt class="py-line">  <tt class="py-comment"># Prepare credentials, and authorize HTTP object with them.</tt> </tt>
-<a name="L82"></a><tt class="py-lineno">82</tt>  <tt class="py-line">  <tt class="py-comment"># If the credentials don't exist or are invalid run through the native client</tt> </tt>
-<a name="L83"></a><tt class="py-lineno">83</tt>  <tt class="py-line">  <tt class="py-comment"># flow. The Storage object will ensure that if successful the good</tt> </tt>
-<a name="L84"></a><tt class="py-lineno">84</tt>  <tt class="py-line">  <tt class="py-comment"># credentials will get written back to a file.</tt> </tt>
-<a name="L85"></a><tt class="py-lineno">85</tt>  <tt class="py-line">  <tt class="py-name">storage</tt> <tt class="py-op">=</tt> <tt class="py-name">file</tt><tt class="py-op">.</tt><tt class="py-name">Storage</tt><tt class="py-op">(</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">'.dat'</tt><tt class="py-op">)</tt> </tt>
-<a name="L86"></a><tt class="py-lineno">86</tt>  <tt class="py-line">  <tt class="py-name">credentials</tt> <tt class="py-op">=</tt> <tt class="py-name">storage</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method googleapiclient.schema.Schemas.get()=googleapiclient.schema.Schemas-class.html#get"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-2', 'get', 'link-2');">get</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L87"></a><tt class="py-lineno">87</tt>  <tt class="py-line">  <tt class="py-keyword">if</tt> <tt class="py-name">credentials</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">credentials</tt><tt class="py-op">.</tt><tt class="py-name">invalid</tt><tt class="py-op">:</tt> </tt>
-<a name="L88"></a><tt class="py-lineno">88</tt>  <tt class="py-line">    <tt class="py-name">credentials</tt> <tt class="py-op">=</tt> <tt class="py-name">tools</tt><tt class="py-op">.</tt><tt class="py-name">run_flow</tt><tt class="py-op">(</tt><tt class="py-name">flow</tt><tt class="py-op">,</tt> <tt class="py-name">storage</tt><tt class="py-op">,</tt> <tt class="py-name">flags</tt><tt class="py-op">)</tt> </tt>
-<a name="L89"></a><tt class="py-lineno">89</tt>  <tt class="py-line">  <tt id="link-3" class="py-name" targets="Module googleapiclient.http=googleapiclient.http-module.html"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-3', 'http', 'link-3');">http</a></tt> <tt class="py-op">=</tt> <tt class="py-name">credentials</tt><tt class="py-op">.</tt><tt class="py-name">authorize</tt><tt class="py-op">(</tt><tt id="link-4" class="py-name"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-4', 'http', 'link-3');">http</a></tt> <tt class="py-op">=</tt> <tt class="py-name">httplib2</tt><tt class="py-op">.</tt><tt class="py-name">Http</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L90"></a><tt class="py-lineno">90</tt>  <tt class="py-line"> </tt>
-<a name="L91"></a><tt class="py-lineno">91</tt>  <tt class="py-line">  <tt class="py-comment"># Construct a service object via the discovery service.</tt> </tt>
-<a name="L92"></a><tt class="py-lineno">92</tt>  <tt class="py-line">  <tt class="py-name">service</tt> <tt class="py-op">=</tt> <tt id="link-5" class="py-name"><a title="googleapiclient.discovery" class="py-name" href="#" onclick="return doclink('link-5', 'discovery', 'link-1');">discovery</a></tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Function googleapiclient.discovery.build()=googleapiclient.discovery-module.html#build"><a title="googleapiclient.discovery.build" class="py-name" href="#" onclick="return doclink('link-6', 'build', 'link-6');">build</a></tt><tt class="py-op">(</tt><tt class="py-name">name</tt><tt class="py-op">,</tt> <tt class="py-name">version</tt><tt class="py-op">,</tt> <tt id="link-7" class="py-name"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-7', 'http', 'link-3');">http</a></tt><tt class="py-op">=</tt><tt id="link-8" class="py-name"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-8', 'http', 'link-3');">http</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L93"></a><tt class="py-lineno">93</tt>  <tt class="py-line">  <tt class="py-keyword">return</tt> <tt class="py-op">(</tt><tt class="py-name">service</tt><tt class="py-op">,</tt> <tt class="py-name">flags</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L94"></a><tt class="py-lineno">94</tt>  <tt class="py-line"> </tt><script type="text/javascript">
+<a name="L1"></a><tt class="py-lineno">  1</tt>  <tt class="py-line"><tt class="py-comment"># Copyright 2014 Google Inc. All Rights Reserved.</tt> </tt>
+<a name="L2"></a><tt class="py-lineno">  2</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
+<a name="L3"></a><tt class="py-lineno">  3</tt>  <tt class="py-line"><tt class="py-comment"># Licensed under the Apache License, Version 2.0 (the "License");</tt> </tt>
+<a name="L4"></a><tt class="py-lineno">  4</tt>  <tt class="py-line"><tt class="py-comment"># you may not use this file except in compliance with the License.</tt> </tt>
+<a name="L5"></a><tt class="py-lineno">  5</tt>  <tt class="py-line"><tt class="py-comment"># You may obtain a copy of the License at</tt> </tt>
+<a name="L6"></a><tt class="py-lineno">  6</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
+<a name="L7"></a><tt class="py-lineno">  7</tt>  <tt class="py-line"><tt class="py-comment">#      http://www.apache.org/licenses/LICENSE-2.0</tt> </tt>
+<a name="L8"></a><tt class="py-lineno">  8</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
+<a name="L9"></a><tt class="py-lineno">  9</tt>  <tt class="py-line"><tt class="py-comment"># Unless required by applicable law or agreed to in writing, software</tt> </tt>
+<a name="L10"></a><tt class="py-lineno"> 10</tt>  <tt class="py-line"><tt class="py-comment"># distributed under the License is distributed on an "AS IS" BASIS,</tt> </tt>
+<a name="L11"></a><tt class="py-lineno"> 11</tt>  <tt class="py-line"><tt class="py-comment"># WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</tt> </tt>
+<a name="L12"></a><tt class="py-lineno"> 12</tt>  <tt class="py-line"><tt class="py-comment"># See the License for the specific language governing permissions and</tt> </tt>
+<a name="L13"></a><tt class="py-lineno"> 13</tt>  <tt class="py-line"><tt class="py-comment"># limitations under the License.</tt> </tt>
+<a name="L14"></a><tt class="py-lineno"> 14</tt>  <tt class="py-line"> </tt>
+<a name="L15"></a><tt class="py-lineno"> 15</tt>  <tt class="py-line"><tt class="py-docstring">"""Utilities for making samples.</tt> </tt>
+<a name="L16"></a><tt class="py-lineno"> 16</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L17"></a><tt class="py-lineno"> 17</tt>  <tt class="py-line"><tt class="py-docstring">Consolidates a lot of code commonly repeated in sample applications.</tt> </tt>
+<a name="L18"></a><tt class="py-lineno"> 18</tt>  <tt class="py-line"><tt class="py-docstring">"""</tt> </tt>
+<a name="L19"></a><tt class="py-lineno"> 19</tt>  <tt class="py-line"> </tt>
+<a name="L20"></a><tt class="py-lineno"> 20</tt>  <tt class="py-line"><tt class="py-name">__author__</tt> <tt class="py-op">=</tt> <tt class="py-string">'jcgregorio@google.com (Joe Gregorio)'</tt> </tt>
+<a name="L21"></a><tt class="py-lineno"> 21</tt>  <tt class="py-line"><tt class="py-name">__all__</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-string">'init'</tt><tt class="py-op">]</tt> </tt>
+<a name="L22"></a><tt class="py-lineno"> 22</tt>  <tt class="py-line"> </tt>
+<a name="L23"></a><tt class="py-lineno"> 23</tt>  <tt class="py-line"> </tt>
+<a name="L24"></a><tt class="py-lineno"> 24</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">argparse</tt> </tt>
+<a name="L25"></a><tt class="py-lineno"> 25</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">httplib2</tt> </tt>
+<a name="L26"></a><tt class="py-lineno"> 26</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">os</tt> </tt>
+<a name="L27"></a><tt class="py-lineno"> 27</tt>  <tt class="py-line"> </tt>
+<a name="L28"></a><tt class="py-lineno"> 28</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt id="link-0" class="py-name" targets="Package googleapiclient=googleapiclient-module.html"><a title="googleapiclient" class="py-name" href="#" onclick="return doclink('link-0', 'googleapiclient', 'link-0');">googleapiclient</a></tt> <tt class="py-keyword">import</tt> <tt id="link-1" class="py-name" targets="Module googleapiclient.discovery=googleapiclient.discovery-module.html"><a title="googleapiclient.discovery" class="py-name" href="#" onclick="return doclink('link-1', 'discovery', 'link-1');">discovery</a></tt> </tt>
+<a name="L29"></a><tt class="py-lineno"> 29</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt> <tt class="py-keyword">import</tt> <tt class="py-name">client</tt> </tt>
+<a name="L30"></a><tt class="py-lineno"> 30</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt> <tt class="py-keyword">import</tt> <tt class="py-name">file</tt> </tt>
+<a name="L31"></a><tt class="py-lineno"> 31</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt> <tt class="py-keyword">import</tt> <tt class="py-name">tools</tt> </tt>
+<a name="L32"></a><tt class="py-lineno"> 32</tt>  <tt class="py-line"> </tt>
+<a name="L33"></a><tt class="py-lineno"> 33</tt>  <tt class="py-line"> </tt>
+<a name="init"></a><div id="init-def"><a name="L34"></a><tt class="py-lineno"> 34</tt> <a class="py-toggle" href="#" id="init-toggle" onclick="return toggle('init');">-</a><tt class="py-line"><tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.sample_tools-module.html#init">init</a><tt class="py-op">(</tt><tt class="py-param">argv</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">,</tt> <tt class="py-param">version</tt><tt class="py-op">,</tt> <tt class="py-param">doc</tt><tt class="py-op">,</tt> <tt class="py-param">filename</tt><tt class="py-op">,</tt> <tt class="py-param">scope</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">parents</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-param">discovery_filename</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="init-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="init-expanded"><a name="L35"></a><tt class="py-lineno"> 35</tt>  <tt class="py-line">  <tt class="py-docstring">"""A common initialization routine for samples.</tt> </tt>
+<a name="L36"></a><tt class="py-lineno"> 36</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L37"></a><tt class="py-lineno"> 37</tt>  <tt class="py-line"><tt class="py-docstring">  Many of the sample applications do the same initialization, which has now</tt> </tt>
+<a name="L38"></a><tt class="py-lineno"> 38</tt>  <tt class="py-line"><tt class="py-docstring">  been consolidated into this function. This function uses common idioms found</tt> </tt>
+<a name="L39"></a><tt class="py-lineno"> 39</tt>  <tt class="py-line"><tt class="py-docstring">  in almost all the samples, i.e. for an API with name 'apiname', the</tt> </tt>
+<a name="L40"></a><tt class="py-lineno"> 40</tt>  <tt class="py-line"><tt class="py-docstring">  credentials are stored in a file named apiname.dat, and the</tt> </tt>
+<a name="L41"></a><tt class="py-lineno"> 41</tt>  <tt class="py-line"><tt class="py-docstring">  client_secrets.json file is stored in the same directory as the application</tt> </tt>
+<a name="L42"></a><tt class="py-lineno"> 42</tt>  <tt class="py-line"><tt class="py-docstring">  main file.</tt> </tt>
+<a name="L43"></a><tt class="py-lineno"> 43</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L44"></a><tt class="py-lineno"> 44</tt>  <tt class="py-line"><tt class="py-docstring">  Args:</tt> </tt>
+<a name="L45"></a><tt class="py-lineno"> 45</tt>  <tt class="py-line"><tt class="py-docstring">    argv: list of string, the command-line parameters of the application.</tt> </tt>
+<a name="L46"></a><tt class="py-lineno"> 46</tt>  <tt class="py-line"><tt class="py-docstring">    name: string, name of the API.</tt> </tt>
+<a name="L47"></a><tt class="py-lineno"> 47</tt>  <tt class="py-line"><tt class="py-docstring">    version: string, version of the API.</tt> </tt>
+<a name="L48"></a><tt class="py-lineno"> 48</tt>  <tt class="py-line"><tt class="py-docstring">    doc: string, description of the application. Usually set to __doc__.</tt> </tt>
+<a name="L49"></a><tt class="py-lineno"> 49</tt>  <tt class="py-line"><tt class="py-docstring">    file: string, filename of the application. Usually set to __file__.</tt> </tt>
+<a name="L50"></a><tt class="py-lineno"> 50</tt>  <tt class="py-line"><tt class="py-docstring">    parents: list of argparse.ArgumentParser, additional command-line flags.</tt> </tt>
+<a name="L51"></a><tt class="py-lineno"> 51</tt>  <tt class="py-line"><tt class="py-docstring">    scope: string, The OAuth scope used.</tt> </tt>
+<a name="L52"></a><tt class="py-lineno"> 52</tt>  <tt class="py-line"><tt class="py-docstring">    discovery_filename: string, name of local discovery file (JSON). Use when discovery doc not available via URL.</tt> </tt>
+<a name="L53"></a><tt class="py-lineno"> 53</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L54"></a><tt class="py-lineno"> 54</tt>  <tt class="py-line"><tt class="py-docstring">  Returns:</tt> </tt>
+<a name="L55"></a><tt class="py-lineno"> 55</tt>  <tt class="py-line"><tt class="py-docstring">    A tuple of (service, flags), where service is the service object and flags</tt> </tt>
+<a name="L56"></a><tt class="py-lineno"> 56</tt>  <tt class="py-line"><tt class="py-docstring">    is the parsed command-line flags.</tt> </tt>
+<a name="L57"></a><tt class="py-lineno"> 57</tt>  <tt class="py-line"><tt class="py-docstring">  """</tt> </tt>
+<a name="L58"></a><tt class="py-lineno"> 58</tt>  <tt class="py-line">  <tt class="py-keyword">if</tt> <tt class="py-name">scope</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
+<a name="L59"></a><tt class="py-lineno"> 59</tt>  <tt class="py-line">    <tt class="py-name">scope</tt> <tt class="py-op">=</tt> <tt class="py-string">'https://www.googleapis.com/auth/'</tt> <tt class="py-op">+</tt> <tt class="py-name">name</tt> </tt>
+<a name="L60"></a><tt class="py-lineno"> 60</tt>  <tt class="py-line"> </tt>
+<a name="L61"></a><tt class="py-lineno"> 61</tt>  <tt class="py-line">  <tt class="py-comment"># Parser command-line arguments.</tt> </tt>
+<a name="L62"></a><tt class="py-lineno"> 62</tt>  <tt class="py-line">  <tt class="py-name">parent_parsers</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">tools</tt><tt class="py-op">.</tt><tt class="py-name">argparser</tt><tt class="py-op">]</tt> </tt>
+<a name="L63"></a><tt class="py-lineno"> 63</tt>  <tt class="py-line">  <tt class="py-name">parent_parsers</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-name">parents</tt><tt class="py-op">)</tt> </tt>
+<a name="L64"></a><tt class="py-lineno"> 64</tt>  <tt class="py-line">  <tt class="py-name">parser</tt> <tt class="py-op">=</tt> <tt class="py-name">argparse</tt><tt class="py-op">.</tt><tt class="py-name">ArgumentParser</tt><tt class="py-op">(</tt> </tt>
+<a name="L65"></a><tt class="py-lineno"> 65</tt>  <tt class="py-line">      <tt class="py-name">description</tt><tt class="py-op">=</tt><tt class="py-name">doc</tt><tt class="py-op">,</tt> </tt>
+<a name="L66"></a><tt class="py-lineno"> 66</tt>  <tt class="py-line">      <tt class="py-name">formatter_class</tt><tt class="py-op">=</tt><tt class="py-name">argparse</tt><tt class="py-op">.</tt><tt class="py-name">RawDescriptionHelpFormatter</tt><tt class="py-op">,</tt> </tt>
+<a name="L67"></a><tt class="py-lineno"> 67</tt>  <tt class="py-line">      <tt class="py-name">parents</tt><tt class="py-op">=</tt><tt class="py-name">parent_parsers</tt><tt class="py-op">)</tt> </tt>
+<a name="L68"></a><tt class="py-lineno"> 68</tt>  <tt class="py-line">  <tt class="py-name">flags</tt> <tt class="py-op">=</tt> <tt class="py-name">parser</tt><tt class="py-op">.</tt><tt class="py-name">parse_args</tt><tt class="py-op">(</tt><tt class="py-name">argv</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
+<a name="L69"></a><tt class="py-lineno"> 69</tt>  <tt class="py-line"> </tt>
+<a name="L70"></a><tt class="py-lineno"> 70</tt>  <tt class="py-line">  <tt class="py-comment"># Name of a file containing the OAuth 2.0 information for this</tt> </tt>
+<a name="L71"></a><tt class="py-lineno"> 71</tt>  <tt class="py-line">  <tt class="py-comment"># application, including client_id and client_secret, which are found</tt> </tt>
+<a name="L72"></a><tt class="py-lineno"> 72</tt>  <tt class="py-line">  <tt class="py-comment"># on the API Access tab on the Google APIs</tt> </tt>
+<a name="L73"></a><tt class="py-lineno"> 73</tt>  <tt class="py-line">  <tt class="py-comment"># Console &lt;http://code.google.com/apis/console&gt;.</tt> </tt>
+<a name="L74"></a><tt class="py-lineno"> 74</tt>  <tt class="py-line">  <tt class="py-name">client_secrets</tt> <tt class="py-op">=</tt> <tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">os</tt><tt class="py-op">.</tt><tt class="py-name">path</tt><tt class="py-op">.</tt><tt class="py-name">dirname</tt><tt class="py-op">(</tt><tt class="py-name">filename</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
+<a name="L75"></a><tt class="py-lineno"> 75</tt>  <tt class="py-line">                                <tt class="py-string">'client_secrets.json'</tt><tt class="py-op">)</tt> </tt>
+<a name="L76"></a><tt class="py-lineno"> 76</tt>  <tt class="py-line"> </tt>
+<a name="L77"></a><tt class="py-lineno"> 77</tt>  <tt class="py-line">  <tt class="py-comment"># Set up a Flow object to be used if we need to authenticate.</tt> </tt>
+<a name="L78"></a><tt class="py-lineno"> 78</tt>  <tt class="py-line">  <tt class="py-name">flow</tt> <tt class="py-op">=</tt> <tt class="py-name">client</tt><tt class="py-op">.</tt><tt class="py-name">flow_from_clientsecrets</tt><tt class="py-op">(</tt><tt class="py-name">client_secrets</tt><tt class="py-op">,</tt> </tt>
+<a name="L79"></a><tt class="py-lineno"> 79</tt>  <tt class="py-line">      <tt class="py-name">scope</tt><tt class="py-op">=</tt><tt class="py-name">scope</tt><tt class="py-op">,</tt> </tt>
+<a name="L80"></a><tt class="py-lineno"> 80</tt>  <tt class="py-line">      <tt class="py-name">message</tt><tt class="py-op">=</tt><tt class="py-name">tools</tt><tt class="py-op">.</tt><tt class="py-name">message_if_missing</tt><tt class="py-op">(</tt><tt class="py-name">client_secrets</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+<a name="L81"></a><tt class="py-lineno"> 81</tt>  <tt class="py-line"> </tt>
+<a name="L82"></a><tt class="py-lineno"> 82</tt>  <tt class="py-line">  <tt class="py-comment"># Prepare credentials, and authorize HTTP object with them.</tt> </tt>
+<a name="L83"></a><tt class="py-lineno"> 83</tt>  <tt class="py-line">  <tt class="py-comment"># If the credentials don't exist or are invalid run through the native client</tt> </tt>
+<a name="L84"></a><tt class="py-lineno"> 84</tt>  <tt class="py-line">  <tt class="py-comment"># flow. The Storage object will ensure that if successful the good</tt> </tt>
+<a name="L85"></a><tt class="py-lineno"> 85</tt>  <tt class="py-line">  <tt class="py-comment"># credentials will get written back to a file.</tt> </tt>
+<a name="L86"></a><tt class="py-lineno"> 86</tt>  <tt class="py-line">  <tt class="py-name">storage</tt> <tt class="py-op">=</tt> <tt class="py-name">file</tt><tt class="py-op">.</tt><tt class="py-name">Storage</tt><tt class="py-op">(</tt><tt class="py-name">name</tt> <tt class="py-op">+</tt> <tt class="py-string">'.dat'</tt><tt class="py-op">)</tt> </tt>
+<a name="L87"></a><tt class="py-lineno"> 87</tt>  <tt class="py-line">  <tt class="py-name">credentials</tt> <tt class="py-op">=</tt> <tt class="py-name">storage</tt><tt class="py-op">.</tt><tt id="link-2" class="py-name" targets="Method googleapiclient.schema.Schemas.get()=googleapiclient.schema.Schemas-class.html#get"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-2', 'get', 'link-2');">get</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
+<a name="L88"></a><tt class="py-lineno"> 88</tt>  <tt class="py-line">  <tt class="py-keyword">if</tt> <tt class="py-name">credentials</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt> <tt class="py-keyword">or</tt> <tt class="py-name">credentials</tt><tt class="py-op">.</tt><tt class="py-name">invalid</tt><tt class="py-op">:</tt> </tt>
+<a name="L89"></a><tt class="py-lineno"> 89</tt>  <tt class="py-line">    <tt class="py-name">credentials</tt> <tt class="py-op">=</tt> <tt class="py-name">tools</tt><tt class="py-op">.</tt><tt class="py-name">run_flow</tt><tt class="py-op">(</tt><tt class="py-name">flow</tt><tt class="py-op">,</tt> <tt class="py-name">storage</tt><tt class="py-op">,</tt> <tt class="py-name">flags</tt><tt class="py-op">)</tt> </tt>
+<a name="L90"></a><tt class="py-lineno"> 90</tt>  <tt class="py-line">  <tt id="link-3" class="py-name" targets="Module googleapiclient.http=googleapiclient.http-module.html"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-3', 'http', 'link-3');">http</a></tt> <tt class="py-op">=</tt> <tt class="py-name">credentials</tt><tt class="py-op">.</tt><tt class="py-name">authorize</tt><tt class="py-op">(</tt><tt id="link-4" class="py-name"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-4', 'http', 'link-3');">http</a></tt> <tt class="py-op">=</tt> <tt class="py-name">httplib2</tt><tt class="py-op">.</tt><tt class="py-name">Http</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+<a name="L91"></a><tt class="py-lineno"> 91</tt>  <tt class="py-line"> </tt>
+<a name="L92"></a><tt class="py-lineno"> 92</tt>  <tt class="py-line">  <tt class="py-keyword">if</tt> <tt class="py-name">discovery_filename</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
+<a name="L93"></a><tt class="py-lineno"> 93</tt>  <tt class="py-line">    <tt class="py-comment"># Construct a service object via the discovery service.</tt> </tt>
+<a name="L94"></a><tt class="py-lineno"> 94</tt>  <tt class="py-line">    <tt class="py-name">service</tt> <tt class="py-op">=</tt> <tt id="link-5" class="py-name"><a title="googleapiclient.discovery" class="py-name" href="#" onclick="return doclink('link-5', 'discovery', 'link-1');">discovery</a></tt><tt class="py-op">.</tt><tt id="link-6" class="py-name" targets="Function googleapiclient.discovery.build()=googleapiclient.discovery-module.html#build"><a title="googleapiclient.discovery.build" class="py-name" href="#" onclick="return doclink('link-6', 'build', 'link-6');">build</a></tt><tt class="py-op">(</tt><tt class="py-name">name</tt><tt class="py-op">,</tt> <tt class="py-name">version</tt><tt class="py-op">,</tt> <tt id="link-7" class="py-name"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-7', 'http', 'link-3');">http</a></tt><tt class="py-op">=</tt><tt id="link-8" class="py-name"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-8', 'http', 'link-3');">http</a></tt><tt class="py-op">)</tt> </tt>
+<a name="L95"></a><tt class="py-lineno"> 95</tt>  <tt class="py-line">  <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
+<a name="L96"></a><tt class="py-lineno"> 96</tt>  <tt class="py-line">    <tt class="py-comment"># Construct a service object using a local discovery document file.</tt> </tt>
+<a name="L97"></a><tt class="py-lineno"> 97</tt>  <tt class="py-line">        <tt class="py-keyword">with</tt> <tt class="py-name">open</tt><tt class="py-op">(</tt><tt class="py-name">discovery_filename</tt><tt class="py-op">)</tt> <tt class="py-keyword">as</tt> <tt class="py-name">discovery_file</tt><tt class="py-op">:</tt> </tt>
+<a name="L98"></a><tt class="py-lineno"> 98</tt>  <tt class="py-line">          <tt class="py-name">service</tt> <tt class="py-op">=</tt> <tt id="link-9" class="py-name"><a title="googleapiclient.discovery" class="py-name" href="#" onclick="return doclink('link-9', 'discovery', 'link-1');">discovery</a></tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Function googleapiclient.discovery.build_from_document()=googleapiclient.discovery-module.html#build_from_document"><a title="googleapiclient.discovery.build_from_document" class="py-name" href="#" onclick="return doclink('link-10', 'build_from_document', 'link-10');">build_from_document</a></tt><tt class="py-op">(</tt> </tt>
+<a name="L99"></a><tt class="py-lineno"> 99</tt>  <tt class="py-line">                  <tt class="py-name">discovery_file</tt><tt class="py-op">.</tt><tt id="link-11" class="py-name" targets="Method googleapiclient.http._StreamSlice.read()=googleapiclient.http._StreamSlice-class.html#read"><a title="googleapiclient.http._StreamSlice.read" class="py-name" href="#" onclick="return doclink('link-11', 'read', 'link-11');">read</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> </tt>
+<a name="L100"></a><tt class="py-lineno">100</tt>  <tt class="py-line">                  <tt class="py-name">base</tt><tt class="py-op">=</tt><tt class="py-string">'https://www.googleapis.com/'</tt><tt class="py-op">,</tt> </tt>
+<a name="L101"></a><tt class="py-lineno">101</tt>  <tt class="py-line">                  <tt id="link-12" class="py-name"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-12', 'http', 'link-3');">http</a></tt><tt class="py-op">=</tt><tt id="link-13" class="py-name"><a title="googleapiclient.http" class="py-name" href="#" onclick="return doclink('link-13', 'http', 'link-3');">http</a></tt><tt class="py-op">)</tt> </tt>
+<a name="L102"></a><tt class="py-lineno">102</tt>  <tt class="py-line">  <tt class="py-keyword">return</tt> <tt class="py-op">(</tt><tt class="py-name">service</tt><tt class="py-op">,</tt> <tt class="py-name">flags</tt><tt class="py-op">)</tt> </tt>
+</div><a name="L103"></a><tt class="py-lineno">103</tt>  <tt class="py-line"> </tt><script type="text/javascript">
 <!--
 expandto(location.href);
 // -->
@@ -182,7 +191,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.schema-module.html b/docs/epy/googleapiclient.schema-module.html
index c2bf87a..008e8de 100644
--- a/docs/epy/googleapiclient.schema-module.html
+++ b/docs/epy/googleapiclient.schema-module.html
@@ -167,7 +167,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.schema-pysrc.html b/docs/epy/googleapiclient.schema-pysrc.html
index 7b9f881..4a5cfbc 100644
--- a/docs/epy/googleapiclient.schema-pysrc.html
+++ b/docs/epy/googleapiclient.schema-pysrc.html
@@ -56,7 +56,7 @@
 </table>
 <h1 class="epydoc">Source Code for <a href="googleapiclient.schema-module.html">Module googleapiclient.schema</a></h1>
 <pre class="py-src">
-<a name="L1"></a><tt class="py-lineno">  1</tt>  <tt class="py-line"><tt class="py-comment"># Copyright 2014 Google Inc. All Rights Reserved.
+<a name="L1"></a><tt class="py-lineno">  1</tt>  <tt class="py-line"><tt class="py-comment"># Copyright 2014 Google Inc. All Rights Reserved.</tt> </tt>
 <a name="L2"></a><tt class="py-lineno">  2</tt>  <tt class="py-line"><tt class="py-comment">#</tt> </tt>
 <a name="L3"></a><tt class="py-lineno">  3</tt>  <tt class="py-line"><tt class="py-comment"># Licensed under the Apache License, Version 2.0 (the "License");</tt> </tt>
 <a name="L4"></a><tt class="py-lineno">  4</tt>  <tt class="py-line"><tt class="py-comment"># you may not use this file except in compliance with the License.</tt> </tt>
@@ -122,253 +122,252 @@
 <a name="L64"></a><tt class="py-lineno"> 64</tt>  <tt class="py-line"><tt class="py-keyword">import</tt> <tt class="py-name">copy</tt> </tt>
 <a name="L65"></a><tt class="py-lineno"> 65</tt>  <tt class="py-line"> </tt>
 <a name="L66"></a><tt class="py-lineno"> 66</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt> <tt class="py-keyword">import</tt> <tt class="py-name">util</tt> </tt>
-<a name="L67"></a><tt class="py-lineno"> 67</tt>  <tt class="py-line"><tt class="py-keyword">from</tt> <tt class="py-name">oauth2client</tt><tt class="py-op">.</tt><tt class="py-name">anyjson</tt> <tt class="py-keyword">import</tt> <tt class="py-name">simplejson</tt> </tt>
-<a name="Schemas"></a><div id="Schemas-def"><a name="L68"></a><tt class="py-lineno"> 68</tt>  <tt class="py-line"> </tt>
-<a name="L69"></a><tt class="py-lineno"> 69</tt>  <tt class="py-line"> </tt>
-<a name="L70"></a><tt class="py-lineno"> 70</tt> <a class="py-toggle" href="#" id="Schemas-toggle" onclick="return toggle('Schemas');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="googleapiclient.schema.Schemas-class.html">Schemas</a><tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Schemas-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="Schemas-expanded"><a name="L71"></a><tt class="py-lineno"> 71</tt>  <tt class="py-line">  <tt class="py-docstring">"""Schemas for an API."""</tt> </tt>
-<a name="L72"></a><tt class="py-lineno"> 72</tt>  <tt class="py-line"> </tt>
-<a name="Schemas.__init__"></a><div id="Schemas.__init__-def"><a name="L73"></a><tt class="py-lineno"> 73</tt> <a class="py-toggle" href="#" id="Schemas.__init__-toggle" onclick="return toggle('Schemas.__init__');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema.Schemas-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">discovery</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Schemas.__init__-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="Schemas.__init__-expanded"><a name="L74"></a><tt class="py-lineno"> 74</tt>  <tt class="py-line">    <tt class="py-docstring">"""Constructor.</tt> </tt>
-<a name="L75"></a><tt class="py-lineno"> 75</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L76"></a><tt class="py-lineno"> 76</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
-<a name="L77"></a><tt class="py-lineno"> 77</tt>  <tt class="py-line"><tt class="py-docstring">      discovery: object, Deserialized discovery document from which we pull</tt> </tt>
-<a name="L78"></a><tt class="py-lineno"> 78</tt>  <tt class="py-line"><tt class="py-docstring">        out the named schema.</tt> </tt>
-<a name="L79"></a><tt class="py-lineno"> 79</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
-<a name="L80"></a><tt class="py-lineno"> 80</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">schemas</tt> <tt class="py-op">=</tt> <tt id="link-0" class="py-name" targets="Module googleapiclient.discovery=googleapiclient.discovery-module.html"><a title="googleapiclient.discovery" class="py-name" href="#" onclick="return doclink('link-0', 'discovery', 'link-0');">discovery</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method googleapiclient.schema.Schemas.get()=googleapiclient.schema.Schemas-class.html#get"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-1', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'schemas'</tt><tt class="py-op">,</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">)</tt> </tt>
-<a name="L81"></a><tt class="py-lineno"> 81</tt>  <tt class="py-line"> </tt>
-<a name="L82"></a><tt class="py-lineno"> 82</tt>  <tt class="py-line">    <tt class="py-comment"># Cache of pretty printed schemas.</tt> </tt>
-<a name="L83"></a><tt class="py-lineno"> 83</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pretty</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
-</div><a name="L84"></a><tt class="py-lineno"> 84</tt>  <tt class="py-line"> </tt>
-<a name="L85"></a><tt class="py-lineno"> 85</tt>  <tt class="py-line">  <tt class="py-decorator">@</tt><tt class="py-decorator">util</tt><tt class="py-op">.</tt><tt class="py-name">positional</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="Schemas._prettyPrintByName"></a><div id="Schemas._prettyPrintByName-def"><a name="L86"></a><tt class="py-lineno"> 86</tt> <a class="py-toggle" href="#" id="Schemas._prettyPrintByName-toggle" onclick="return toggle('Schemas._prettyPrintByName');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema.Schemas-class.html#_prettyPrintByName">_prettyPrintByName</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">,</tt> <tt class="py-param">seen</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">dent</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Schemas._prettyPrintByName-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="Schemas._prettyPrintByName-expanded"><a name="L87"></a><tt class="py-lineno"> 87</tt>  <tt class="py-line">    <tt class="py-docstring">"""Get pretty printed object prototype from the schema name.</tt> </tt>
-<a name="L88"></a><tt class="py-lineno"> 88</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L89"></a><tt class="py-lineno"> 89</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
-<a name="L90"></a><tt class="py-lineno"> 90</tt>  <tt class="py-line"><tt class="py-docstring">      name: string, Name of schema in the discovery document.</tt> </tt>
-<a name="L91"></a><tt class="py-lineno"> 91</tt>  <tt class="py-line"><tt class="py-docstring">      seen: list of string, Names of schema already seen. Used to handle</tt> </tt>
-<a name="L92"></a><tt class="py-lineno"> 92</tt>  <tt class="py-line"><tt class="py-docstring">        recursive definitions.</tt> </tt>
-<a name="L93"></a><tt class="py-lineno"> 93</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L94"></a><tt class="py-lineno"> 94</tt>  <tt class="py-line"><tt class="py-docstring">    Returns:</tt> </tt>
-<a name="L95"></a><tt class="py-lineno"> 95</tt>  <tt class="py-line"><tt class="py-docstring">      string, A string that contains a prototype object with</tt> </tt>
-<a name="L96"></a><tt class="py-lineno"> 96</tt>  <tt class="py-line"><tt class="py-docstring">        comments that conforms to the given schema.</tt> </tt>
-<a name="L97"></a><tt class="py-lineno"> 97</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
-<a name="L98"></a><tt class="py-lineno"> 98</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">seen</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L99"></a><tt class="py-lineno"> 99</tt>  <tt class="py-line">      <tt class="py-name">seen</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L100"></a><tt class="py-lineno">100</tt>  <tt class="py-line"> </tt>
-<a name="L101"></a><tt class="py-lineno">101</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">name</tt> <tt class="py-keyword">in</tt> <tt class="py-name">seen</tt><tt class="py-op">:</tt> </tt>
-<a name="L102"></a><tt class="py-lineno">102</tt>  <tt class="py-line">      <tt class="py-comment"># Do not fall into an infinite loop over recursive definitions.</tt> </tt>
-<a name="L103"></a><tt class="py-lineno">103</tt>  <tt class="py-line">      <tt class="py-keyword">return</tt> <tt class="py-string">'# Object with schema name: %s'</tt> <tt class="py-op">%</tt> <tt class="py-name">name</tt> </tt>
-<a name="L104"></a><tt class="py-lineno">104</tt>  <tt class="py-line">    <tt class="py-name">seen</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">name</tt><tt class="py-op">)</tt> </tt>
-<a name="L105"></a><tt class="py-lineno">105</tt>  <tt class="py-line"> </tt>
-<a name="L106"></a><tt class="py-lineno">106</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">name</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pretty</tt><tt class="py-op">:</tt> </tt>
-<a name="L107"></a><tt class="py-lineno">107</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pretty</tt><tt class="py-op">[</tt><tt class="py-name">name</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-2" class="py-name" targets="Class googleapiclient.schema._SchemaToStruct=googleapiclient.schema._SchemaToStruct-class.html"><a title="googleapiclient.schema._SchemaToStruct" class="py-name" href="#" onclick="return doclink('link-2', '_SchemaToStruct', 'link-2');">_SchemaToStruct</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">schemas</tt><tt class="py-op">[</tt><tt class="py-name">name</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
-<a name="L108"></a><tt class="py-lineno">108</tt>  <tt class="py-line">          <tt class="py-name">seen</tt><tt class="py-op">,</tt> <tt class="py-name">dent</tt><tt class="py-op">=</tt><tt class="py-name">dent</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method googleapiclient.schema._SchemaToStruct.to_str()=googleapiclient.schema._SchemaToStruct-class.html#to_str"><a title="googleapiclient.schema._SchemaToStruct.to_str" class="py-name" href="#" onclick="return doclink('link-3', 'to_str', 'link-3');">to_str</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method googleapiclient.schema.Schemas._prettyPrintByName()=googleapiclient.schema.Schemas-class.html#_prettyPrintByName"><a title="googleapiclient.schema.Schemas._prettyPrintByName" class="py-name" href="#" onclick="return doclink('link-4', '_prettyPrintByName', 'link-4');">_prettyPrintByName</a></tt><tt class="py-op">)</tt> </tt>
-<a name="L109"></a><tt class="py-lineno">109</tt>  <tt class="py-line"> </tt>
-<a name="L110"></a><tt class="py-lineno">110</tt>  <tt class="py-line">    <tt class="py-name">seen</tt><tt class="py-op">.</tt><tt class="py-name">pop</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L111"></a><tt class="py-lineno">111</tt>  <tt class="py-line"> </tt>
-<a name="L112"></a><tt class="py-lineno">112</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pretty</tt><tt class="py-op">[</tt><tt class="py-name">name</tt><tt class="py-op">]</tt> </tt>
-</div><a name="L113"></a><tt class="py-lineno">113</tt>  <tt class="py-line"> </tt>
-<a name="Schemas.prettyPrintByName"></a><div id="Schemas.prettyPrintByName-def"><a name="L114"></a><tt class="py-lineno">114</tt> <a class="py-toggle" href="#" id="Schemas.prettyPrintByName-toggle" onclick="return toggle('Schemas.prettyPrintByName');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema.Schemas-class.html#prettyPrintByName">prettyPrintByName</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Schemas.prettyPrintByName-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="Schemas.prettyPrintByName-expanded"><a name="L115"></a><tt class="py-lineno">115</tt>  <tt class="py-line">    <tt class="py-docstring">"""Get pretty printed object prototype from the schema name.</tt> </tt>
-<a name="L116"></a><tt class="py-lineno">116</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L117"></a><tt class="py-lineno">117</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
-<a name="L118"></a><tt class="py-lineno">118</tt>  <tt class="py-line"><tt class="py-docstring">      name: string, Name of schema in the discovery document.</tt> </tt>
-<a name="L119"></a><tt class="py-lineno">119</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L120"></a><tt class="py-lineno">120</tt>  <tt class="py-line"><tt class="py-docstring">    Returns:</tt> </tt>
-<a name="L121"></a><tt class="py-lineno">121</tt>  <tt class="py-line"><tt class="py-docstring">      string, A string that contains a prototype object with</tt> </tt>
-<a name="L122"></a><tt class="py-lineno">122</tt>  <tt class="py-line"><tt class="py-docstring">        comments that conforms to the given schema.</tt> </tt>
-<a name="L123"></a><tt class="py-lineno">123</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
-<a name="L124"></a><tt class="py-lineno">124</tt>  <tt class="py-line">    <tt class="py-comment"># Return with trailing comma and newline removed.</tt> </tt>
-<a name="L125"></a><tt class="py-lineno">125</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="googleapiclient.schema.Schemas._prettyPrintByName" class="py-name" href="#" onclick="return doclink('link-5', '_prettyPrintByName', 'link-4');">_prettyPrintByName</a></tt><tt class="py-op">(</tt><tt class="py-name">name</tt><tt class="py-op">,</tt> <tt class="py-name">seen</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">dent</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
-</div><a name="L126"></a><tt class="py-lineno">126</tt>  <tt class="py-line"> </tt>
-<a name="L127"></a><tt class="py-lineno">127</tt>  <tt class="py-line">  <tt class="py-decorator">@</tt><tt class="py-decorator">util</tt><tt class="py-op">.</tt><tt class="py-name">positional</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
-<a name="Schemas._prettyPrintSchema"></a><div id="Schemas._prettyPrintSchema-def"><a name="L128"></a><tt class="py-lineno">128</tt> <a class="py-toggle" href="#" id="Schemas._prettyPrintSchema-toggle" onclick="return toggle('Schemas._prettyPrintSchema');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema.Schemas-class.html#_prettyPrintSchema">_prettyPrintSchema</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">schema</tt><tt class="py-op">,</tt> <tt class="py-param">seen</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">dent</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Schemas._prettyPrintSchema-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="Schemas._prettyPrintSchema-expanded"><a name="L129"></a><tt class="py-lineno">129</tt>  <tt class="py-line">    <tt class="py-docstring">"""Get pretty printed object prototype of schema.</tt> </tt>
-<a name="L130"></a><tt class="py-lineno">130</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L131"></a><tt class="py-lineno">131</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
-<a name="L132"></a><tt class="py-lineno">132</tt>  <tt class="py-line"><tt class="py-docstring">      schema: object, Parsed JSON schema.</tt> </tt>
-<a name="L133"></a><tt class="py-lineno">133</tt>  <tt class="py-line"><tt class="py-docstring">      seen: list of string, Names of schema already seen. Used to handle</tt> </tt>
-<a name="L134"></a><tt class="py-lineno">134</tt>  <tt class="py-line"><tt class="py-docstring">        recursive definitions.</tt> </tt>
-<a name="L135"></a><tt class="py-lineno">135</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L136"></a><tt class="py-lineno">136</tt>  <tt class="py-line"><tt class="py-docstring">    Returns:</tt> </tt>
-<a name="L137"></a><tt class="py-lineno">137</tt>  <tt class="py-line"><tt class="py-docstring">      string, A string that contains a prototype object with</tt> </tt>
-<a name="L138"></a><tt class="py-lineno">138</tt>  <tt class="py-line"><tt class="py-docstring">        comments that conforms to the given schema.</tt> </tt>
-<a name="L139"></a><tt class="py-lineno">139</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
-<a name="L140"></a><tt class="py-lineno">140</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">seen</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
-<a name="L141"></a><tt class="py-lineno">141</tt>  <tt class="py-line">      <tt class="py-name">seen</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L142"></a><tt class="py-lineno">142</tt>  <tt class="py-line"> </tt>
-<a name="L143"></a><tt class="py-lineno">143</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt id="link-6" class="py-name"><a title="googleapiclient.schema._SchemaToStruct" class="py-name" href="#" onclick="return doclink('link-6', '_SchemaToStruct', 'link-2');">_SchemaToStruct</a></tt><tt class="py-op">(</tt><tt id="link-7" class="py-name" targets="Module googleapiclient.schema=googleapiclient.schema-module.html"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-7', 'schema', 'link-7');">schema</a></tt><tt class="py-op">,</tt> <tt class="py-name">seen</tt><tt class="py-op">,</tt> <tt class="py-name">dent</tt><tt class="py-op">=</tt><tt class="py-name">dent</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.to_str" class="py-name" href="#" onclick="return doclink('link-8', 'to_str', 'link-3');">to_str</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="googleapiclient.schema.Schemas._prettyPrintByName" class="py-name" href="#" onclick="return doclink('link-9', '_prettyPrintByName', 'link-4');">_prettyPrintByName</a></tt><tt class="py-op">)</tt> </tt>
-</div><a name="L144"></a><tt class="py-lineno">144</tt>  <tt class="py-line"> </tt>
-<a name="Schemas.prettyPrintSchema"></a><div id="Schemas.prettyPrintSchema-def"><a name="L145"></a><tt class="py-lineno">145</tt> <a class="py-toggle" href="#" id="Schemas.prettyPrintSchema-toggle" onclick="return toggle('Schemas.prettyPrintSchema');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema.Schemas-class.html#prettyPrintSchema">prettyPrintSchema</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">schema</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Schemas.prettyPrintSchema-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="Schemas.prettyPrintSchema-expanded"><a name="L146"></a><tt class="py-lineno">146</tt>  <tt class="py-line">    <tt class="py-docstring">"""Get pretty printed object prototype of schema.</tt> </tt>
-<a name="L147"></a><tt class="py-lineno">147</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L148"></a><tt class="py-lineno">148</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
-<a name="L149"></a><tt class="py-lineno">149</tt>  <tt class="py-line"><tt class="py-docstring">      schema: object, Parsed JSON schema.</tt> </tt>
-<a name="L150"></a><tt class="py-lineno">150</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L151"></a><tt class="py-lineno">151</tt>  <tt class="py-line"><tt class="py-docstring">    Returns:</tt> </tt>
-<a name="L152"></a><tt class="py-lineno">152</tt>  <tt class="py-line"><tt class="py-docstring">      string, A string that contains a prototype object with</tt> </tt>
-<a name="L153"></a><tt class="py-lineno">153</tt>  <tt class="py-line"><tt class="py-docstring">        comments that conforms to the given schema.</tt> </tt>
-<a name="L154"></a><tt class="py-lineno">154</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
-<a name="L155"></a><tt class="py-lineno">155</tt>  <tt class="py-line">    <tt class="py-comment"># Return with trailing comma and newline removed.</tt> </tt>
-<a name="L156"></a><tt class="py-lineno">156</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Method googleapiclient.schema.Schemas._prettyPrintSchema()=googleapiclient.schema.Schemas-class.html#_prettyPrintSchema"><a title="googleapiclient.schema.Schemas._prettyPrintSchema" class="py-name" href="#" onclick="return doclink('link-10', '_prettyPrintSchema', 'link-10');">_prettyPrintSchema</a></tt><tt class="py-op">(</tt><tt id="link-11" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-11', 'schema', 'link-7');">schema</a></tt><tt class="py-op">,</tt> <tt class="py-name">dent</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
-</div><a name="L157"></a><tt class="py-lineno">157</tt>  <tt class="py-line"> </tt>
-<a name="Schemas.get"></a><div id="Schemas.get-def"><a name="L158"></a><tt class="py-lineno">158</tt> <a class="py-toggle" href="#" id="Schemas.get-toggle" onclick="return toggle('Schemas.get');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema.Schemas-class.html#get">get</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="Schemas.get-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="Schemas.get-expanded"><a name="L159"></a><tt class="py-lineno">159</tt>  <tt class="py-line">    <tt class="py-docstring">"""Get deserialized JSON schema from the schema name.</tt> </tt>
-<a name="L160"></a><tt class="py-lineno">160</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L161"></a><tt class="py-lineno">161</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
-<a name="L162"></a><tt class="py-lineno">162</tt>  <tt class="py-line"><tt class="py-docstring">      name: string, Schema name.</tt> </tt>
-<a name="L163"></a><tt class="py-lineno">163</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
-<a name="L164"></a><tt class="py-lineno">164</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">schemas</tt><tt class="py-op">[</tt><tt class="py-name">name</tt><tt class="py-op">]</tt> </tt>
-</div></div><a name="L165"></a><tt class="py-lineno">165</tt>  <tt class="py-line"> </tt>
-<a name="_SchemaToStruct"></a><div id="_SchemaToStruct-def"><a name="L166"></a><tt class="py-lineno">166</tt>  <tt class="py-line"> </tt>
-<a name="L167"></a><tt class="py-lineno">167</tt> <a class="py-toggle" href="#" id="_SchemaToStruct-toggle" onclick="return toggle('_SchemaToStruct');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html">_SchemaToStruct</a><tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_SchemaToStruct-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_SchemaToStruct-expanded"><a name="L168"></a><tt class="py-lineno">168</tt>  <tt class="py-line">  <tt class="py-docstring">"""Convert schema to a prototype object."""</tt> </tt>
-<a name="L169"></a><tt class="py-lineno">169</tt>  <tt class="py-line"> </tt>
-<a name="L170"></a><tt class="py-lineno">170</tt>  <tt class="py-line">  <tt class="py-decorator">@</tt><tt class="py-decorator">util</tt><tt class="py-op">.</tt><tt class="py-name">positional</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt> </tt>
-<a name="_SchemaToStruct.__init__"></a><div id="_SchemaToStruct.__init__-def"><a name="L171"></a><tt class="py-lineno">171</tt> <a class="py-toggle" href="#" id="_SchemaToStruct.__init__-toggle" onclick="return toggle('_SchemaToStruct.__init__');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">schema</tt><tt class="py-op">,</tt> <tt class="py-param">seen</tt><tt class="py-op">,</tt> <tt class="py-param">dent</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_SchemaToStruct.__init__-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct.__init__-expanded"><a name="L172"></a><tt class="py-lineno">172</tt>  <tt class="py-line">    <tt class="py-docstring">"""Constructor.</tt> </tt>
-<a name="L173"></a><tt class="py-lineno">173</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L174"></a><tt class="py-lineno">174</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
-<a name="L175"></a><tt class="py-lineno">175</tt>  <tt class="py-line"><tt class="py-docstring">      schema: object, Parsed JSON schema.</tt> </tt>
-<a name="L176"></a><tt class="py-lineno">176</tt>  <tt class="py-line"><tt class="py-docstring">      seen: list, List of names of schema already seen while parsing. Used to</tt> </tt>
-<a name="L177"></a><tt class="py-lineno">177</tt>  <tt class="py-line"><tt class="py-docstring">        handle recursive definitions.</tt> </tt>
-<a name="L178"></a><tt class="py-lineno">178</tt>  <tt class="py-line"><tt class="py-docstring">      dent: int, Initial indentation depth.</tt> </tt>
-<a name="L179"></a><tt class="py-lineno">179</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
-<a name="L180"></a><tt class="py-lineno">180</tt>  <tt class="py-line">    <tt class="py-comment"># The result of this parsing kept as list of strings.</tt> </tt>
-<a name="L181"></a><tt class="py-lineno">181</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
-<a name="L182"></a><tt class="py-lineno">182</tt>  <tt class="py-line"> </tt>
-<a name="L183"></a><tt class="py-lineno">183</tt>  <tt class="py-line">    <tt class="py-comment"># The final value of the parsing.</tt> </tt>
-<a name="L184"></a><tt class="py-lineno">184</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">string</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L185"></a><tt class="py-lineno">185</tt>  <tt class="py-line"> </tt>
-<a name="L186"></a><tt class="py-lineno">186</tt>  <tt class="py-line">    <tt class="py-comment"># The parsed JSON schema.</tt> </tt>
-<a name="L187"></a><tt class="py-lineno">187</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-12', 'schema', 'link-7');">schema</a></tt> <tt class="py-op">=</tt> <tt id="link-13" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-13', 'schema', 'link-7');">schema</a></tt> </tt>
-<a name="L188"></a><tt class="py-lineno">188</tt>  <tt class="py-line"> </tt>
-<a name="L189"></a><tt class="py-lineno">189</tt>  <tt class="py-line">    <tt class="py-comment"># Indentation level.</tt> </tt>
-<a name="L190"></a><tt class="py-lineno">190</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">dent</tt> <tt class="py-op">=</tt> <tt class="py-name">dent</tt> </tt>
-<a name="L191"></a><tt class="py-lineno">191</tt>  <tt class="py-line"> </tt>
-<a name="L192"></a><tt class="py-lineno">192</tt>  <tt class="py-line">    <tt class="py-comment"># Method that when called returns a prototype object for the schema with</tt> </tt>
-<a name="L193"></a><tt class="py-lineno">193</tt>  <tt class="py-line">    <tt class="py-comment"># the given name.</tt> </tt>
-<a name="L194"></a><tt class="py-lineno">194</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">from_cache</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
-<a name="L195"></a><tt class="py-lineno">195</tt>  <tt class="py-line"> </tt>
-<a name="L196"></a><tt class="py-lineno">196</tt>  <tt class="py-line">    <tt class="py-comment"># List of names of schema already seen while parsing.</tt> </tt>
-<a name="L197"></a><tt class="py-lineno">197</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">seen</tt> <tt class="py-op">=</tt> <tt class="py-name">seen</tt> </tt>
-</div><a name="L198"></a><tt class="py-lineno">198</tt>  <tt class="py-line"> </tt>
-<a name="_SchemaToStruct.emit"></a><div id="_SchemaToStruct.emit-def"><a name="L199"></a><tt class="py-lineno">199</tt> <a class="py-toggle" href="#" id="_SchemaToStruct.emit-toggle" onclick="return toggle('_SchemaToStruct.emit');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#emit">emit</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">text</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_SchemaToStruct.emit-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct.emit-expanded"><a name="L200"></a><tt class="py-lineno">200</tt>  <tt class="py-line">    <tt class="py-docstring">"""Add text as a line to the output.</tt> </tt>
-<a name="L201"></a><tt class="py-lineno">201</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L202"></a><tt class="py-lineno">202</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
-<a name="L203"></a><tt class="py-lineno">203</tt>  <tt class="py-line"><tt class="py-docstring">      text: string, Text to output.</tt> </tt>
-<a name="L204"></a><tt class="py-lineno">204</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
-<a name="L205"></a><tt class="py-lineno">205</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"  "</tt> <tt class="py-op">*</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">dent</tt><tt class="py-op">,</tt> <tt class="py-name">text</tt><tt class="py-op">,</tt> <tt class="py-string">'\n'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L206"></a><tt class="py-lineno">206</tt>  <tt class="py-line"> </tt>
-<a name="_SchemaToStruct.emitBegin"></a><div id="_SchemaToStruct.emitBegin-def"><a name="L207"></a><tt class="py-lineno">207</tt> <a class="py-toggle" href="#" id="_SchemaToStruct.emitBegin-toggle" onclick="return toggle('_SchemaToStruct.emitBegin');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#emitBegin">emitBegin</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">text</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_SchemaToStruct.emitBegin-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct.emitBegin-expanded"><a name="L208"></a><tt class="py-lineno">208</tt>  <tt class="py-line">    <tt class="py-docstring">"""Add text to the output, but with no line terminator.</tt> </tt>
-<a name="L209"></a><tt class="py-lineno">209</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L210"></a><tt class="py-lineno">210</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
-<a name="L211"></a><tt class="py-lineno">211</tt>  <tt class="py-line"><tt class="py-docstring">      text: string, Text to output.</tt> </tt>
-<a name="L212"></a><tt class="py-lineno">212</tt>  <tt class="py-line"><tt class="py-docstring">      """</tt> </tt>
-<a name="L213"></a><tt class="py-lineno">213</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"  "</tt> <tt class="py-op">*</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">dent</tt><tt class="py-op">,</tt> <tt class="py-name">text</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L214"></a><tt class="py-lineno">214</tt>  <tt class="py-line"> </tt>
-<a name="_SchemaToStruct.emitEnd"></a><div id="_SchemaToStruct.emitEnd-def"><a name="L215"></a><tt class="py-lineno">215</tt> <a class="py-toggle" href="#" id="_SchemaToStruct.emitEnd-toggle" onclick="return toggle('_SchemaToStruct.emitEnd');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#emitEnd">emitEnd</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">text</tt><tt class="py-op">,</tt> <tt class="py-param">comment</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_SchemaToStruct.emitEnd-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct.emitEnd-expanded"><a name="L216"></a><tt class="py-lineno">216</tt>  <tt class="py-line">    <tt class="py-docstring">"""Add text and comment to the output with line terminator.</tt> </tt>
-<a name="L217"></a><tt class="py-lineno">217</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L218"></a><tt class="py-lineno">218</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
-<a name="L219"></a><tt class="py-lineno">219</tt>  <tt class="py-line"><tt class="py-docstring">      text: string, Text to output.</tt> </tt>
-<a name="L220"></a><tt class="py-lineno">220</tt>  <tt class="py-line"><tt class="py-docstring">      comment: string, Python comment.</tt> </tt>
-<a name="L221"></a><tt class="py-lineno">221</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
-<a name="L222"></a><tt class="py-lineno">222</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">comment</tt><tt class="py-op">:</tt> </tt>
-<a name="L223"></a><tt class="py-lineno">223</tt>  <tt class="py-line">      <tt class="py-name">divider</tt> <tt class="py-op">=</tt> <tt class="py-string">'\n'</tt> <tt class="py-op">+</tt> <tt class="py-string">'  '</tt> <tt class="py-op">*</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">dent</tt> <tt class="py-op">+</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">'# '</tt> </tt>
-<a name="L224"></a><tt class="py-lineno">224</tt>  <tt class="py-line">      <tt class="py-name">lines</tt> <tt class="py-op">=</tt> <tt class="py-name">comment</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L225"></a><tt class="py-lineno">225</tt>  <tt class="py-line">      <tt class="py-name">lines</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">x</tt><tt class="py-op">.</tt><tt class="py-name">rstrip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">lines</tt><tt class="py-op">]</tt> </tt>
-<a name="L226"></a><tt class="py-lineno">226</tt>  <tt class="py-line">      <tt class="py-name">comment</tt> <tt class="py-op">=</tt> <tt class="py-name">divider</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">lines</tt><tt class="py-op">)</tt> </tt>
-<a name="L227"></a><tt class="py-lineno">227</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">text</tt><tt class="py-op">,</tt> <tt class="py-string">' # '</tt><tt class="py-op">,</tt> <tt class="py-name">comment</tt><tt class="py-op">,</tt> <tt class="py-string">'\n'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L228"></a><tt class="py-lineno">228</tt>  <tt class="py-line">    <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L229"></a><tt class="py-lineno">229</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">text</tt><tt class="py-op">,</tt> <tt class="py-string">'\n'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-</div><a name="L230"></a><tt class="py-lineno">230</tt>  <tt class="py-line"> </tt>
-<a name="_SchemaToStruct.indent"></a><div id="_SchemaToStruct.indent-def"><a name="L231"></a><tt class="py-lineno">231</tt> <a class="py-toggle" href="#" id="_SchemaToStruct.indent-toggle" onclick="return toggle('_SchemaToStruct.indent');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#indent">indent</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_SchemaToStruct.indent-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct.indent-expanded"><a name="L232"></a><tt class="py-lineno">232</tt>  <tt class="py-line">    <tt class="py-docstring">"""Increase indentation level."""</tt> </tt>
-<a name="L233"></a><tt class="py-lineno">233</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">dent</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
-</div><a name="L234"></a><tt class="py-lineno">234</tt>  <tt class="py-line"> </tt>
-<a name="_SchemaToStruct.undent"></a><div id="_SchemaToStruct.undent-def"><a name="L235"></a><tt class="py-lineno">235</tt> <a class="py-toggle" href="#" id="_SchemaToStruct.undent-toggle" onclick="return toggle('_SchemaToStruct.undent');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#undent">undent</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_SchemaToStruct.undent-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct.undent-expanded"><a name="L236"></a><tt class="py-lineno">236</tt>  <tt class="py-line">    <tt class="py-docstring">"""Decrease indentation level."""</tt> </tt>
-<a name="L237"></a><tt class="py-lineno">237</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">dent</tt> <tt class="py-op">-=</tt> <tt class="py-number">1</tt> </tt>
-</div><a name="L238"></a><tt class="py-lineno">238</tt>  <tt class="py-line"> </tt>
-<a name="_SchemaToStruct._to_str_impl"></a><div id="_SchemaToStruct._to_str_impl-def"><a name="L239"></a><tt class="py-lineno">239</tt> <a class="py-toggle" href="#" id="_SchemaToStruct._to_str_impl-toggle" onclick="return toggle('_SchemaToStruct._to_str_impl');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#_to_str_impl">_to_str_impl</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">schema</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_SchemaToStruct._to_str_impl-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct._to_str_impl-expanded"><a name="L240"></a><tt class="py-lineno">240</tt>  <tt class="py-line">    <tt class="py-docstring">"""Prototype object based on the schema, in Python code with comments.</tt> </tt>
-<a name="L241"></a><tt class="py-lineno">241</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L242"></a><tt class="py-lineno">242</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
-<a name="L243"></a><tt class="py-lineno">243</tt>  <tt class="py-line"><tt class="py-docstring">      schema: object, Parsed JSON schema file.</tt> </tt>
-<a name="L244"></a><tt class="py-lineno">244</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L245"></a><tt class="py-lineno">245</tt>  <tt class="py-line"><tt class="py-docstring">    Returns:</tt> </tt>
-<a name="L246"></a><tt class="py-lineno">246</tt>  <tt class="py-line"><tt class="py-docstring">      Prototype object based on the schema, in Python code with comments.</tt> </tt>
-<a name="L247"></a><tt class="py-lineno">247</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
-<a name="L248"></a><tt class="py-lineno">248</tt>  <tt class="py-line">    <tt class="py-name">stype</tt> <tt class="py-op">=</tt> <tt id="link-14" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-14', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-15', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'type'</tt><tt class="py-op">)</tt> </tt>
-<a name="L249"></a><tt class="py-lineno">249</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'object'</tt><tt class="py-op">:</tt> </tt>
-<a name="L250"></a><tt class="py-lineno">250</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name" targets="Method googleapiclient.schema._SchemaToStruct.emitEnd()=googleapiclient.schema._SchemaToStruct-class.html#emitEnd"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-16', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'{'</tt><tt class="py-op">,</tt> <tt id="link-17" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-17', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-18', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L251"></a><tt class="py-lineno">251</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method googleapiclient.schema._SchemaToStruct.indent()=googleapiclient.schema._SchemaToStruct-class.html#indent"><a title="googleapiclient.schema._SchemaToStruct.indent" class="py-name" href="#" onclick="return doclink('link-19', 'indent', 'link-19');">indent</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L252"></a><tt class="py-lineno">252</tt>  <tt class="py-line">      <tt class="py-keyword">if</tt> <tt class="py-string">'properties'</tt> <tt class="py-keyword">in</tt> <tt id="link-20" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-20', 'schema', 'link-7');">schema</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L253"></a><tt class="py-lineno">253</tt>  <tt class="py-line">        <tt class="py-keyword">for</tt> <tt class="py-name">pname</tt><tt class="py-op">,</tt> <tt class="py-name">pschema</tt> <tt class="py-keyword">in</tt> <tt id="link-21" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-21', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-22', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'properties'</tt><tt class="py-op">,</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">iteritems</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-<a name="L254"></a><tt class="py-lineno">254</tt>  <tt class="py-line">          <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method googleapiclient.schema._SchemaToStruct.emitBegin()=googleapiclient.schema._SchemaToStruct-class.html#emitBegin"><a title="googleapiclient.schema._SchemaToStruct.emitBegin" class="py-name" href="#" onclick="return doclink('link-23', 'emitBegin', 'link-23');">emitBegin</a></tt><tt class="py-op">(</tt><tt class="py-string">'"%s": '</tt> <tt class="py-op">%</tt> <tt class="py-name">pname</tt><tt class="py-op">)</tt> </tt>
-<a name="L255"></a><tt class="py-lineno">255</tt>  <tt class="py-line">          <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method googleapiclient.schema._SchemaToStruct._to_str_impl()=googleapiclient.schema._SchemaToStruct-class.html#_to_str_impl"><a title="googleapiclient.schema._SchemaToStruct._to_str_impl" class="py-name" href="#" onclick="return doclink('link-24', '_to_str_impl', 'link-24');">_to_str_impl</a></tt><tt class="py-op">(</tt><tt class="py-name">pschema</tt><tt class="py-op">)</tt> </tt>
-<a name="L256"></a><tt class="py-lineno">256</tt>  <tt class="py-line">      <tt class="py-keyword">elif</tt> <tt class="py-string">'additionalProperties'</tt> <tt class="py-keyword">in</tt> <tt id="link-25" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-25', 'schema', 'link-7');">schema</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L257"></a><tt class="py-lineno">257</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitBegin" class="py-name" href="#" onclick="return doclink('link-26', 'emitBegin', 'link-23');">emitBegin</a></tt><tt class="py-op">(</tt><tt class="py-string">'"a_key": '</tt><tt class="py-op">)</tt> </tt>
-<a name="L258"></a><tt class="py-lineno">258</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="googleapiclient.schema._SchemaToStruct._to_str_impl" class="py-name" href="#" onclick="return doclink('link-27', '_to_str_impl', 'link-24');">_to_str_impl</a></tt><tt class="py-op">(</tt><tt id="link-28" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-28', 'schema', 'link-7');">schema</a></tt><tt class="py-op">[</tt><tt class="py-string">'additionalProperties'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L259"></a><tt class="py-lineno">259</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Method googleapiclient.schema._SchemaToStruct.undent()=googleapiclient.schema._SchemaToStruct-class.html#undent"><a title="googleapiclient.schema._SchemaToStruct.undent" class="py-name" href="#" onclick="return doclink('link-29', 'undent', 'link-29');">undent</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L260"></a><tt class="py-lineno">260</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method googleapiclient.schema._SchemaToStruct.emit()=googleapiclient.schema._SchemaToStruct-class.html#emit"><a title="googleapiclient.schema._SchemaToStruct.emit" class="py-name" href="#" onclick="return doclink('link-30', 'emit', 'link-30');">emit</a></tt><tt class="py-op">(</tt><tt class="py-string">'},'</tt><tt class="py-op">)</tt> </tt>
-<a name="L261"></a><tt class="py-lineno">261</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-string">'$ref'</tt> <tt class="py-keyword">in</tt> <tt id="link-31" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-31', 'schema', 'link-7');">schema</a></tt><tt class="py-op">:</tt> </tt>
-<a name="L262"></a><tt class="py-lineno">262</tt>  <tt class="py-line">      <tt class="py-name">schemaName</tt> <tt class="py-op">=</tt> <tt id="link-32" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-32', 'schema', 'link-7');">schema</a></tt><tt class="py-op">[</tt><tt class="py-string">'$ref'</tt><tt class="py-op">]</tt> </tt>
-<a name="L263"></a><tt class="py-lineno">263</tt>  <tt class="py-line">      <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt id="link-33" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-33', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-34', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-<a name="L264"></a><tt class="py-lineno">264</tt>  <tt class="py-line">      <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">from_cache</tt><tt class="py-op">(</tt><tt class="py-name">schemaName</tt><tt class="py-op">,</tt> <tt class="py-name">seen</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">seen</tt><tt class="py-op">)</tt> </tt>
-<a name="L265"></a><tt class="py-lineno">265</tt>  <tt class="py-line">      <tt class="py-name">parts</tt> <tt class="py-op">=</tt> <tt class="py-name">s</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L266"></a><tt class="py-lineno">266</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-35', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-name">parts</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">description</tt><tt class="py-op">)</tt> </tt>
-<a name="L267"></a><tt class="py-lineno">267</tt>  <tt class="py-line">      <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parts</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
-<a name="L268"></a><tt class="py-lineno">268</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emit" class="py-name" href="#" onclick="return doclink('link-36', 'emit', 'link-30');">emit</a></tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">rstrip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L269"></a><tt class="py-lineno">269</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'boolean'</tt><tt class="py-op">:</tt> </tt>
-<a name="L270"></a><tt class="py-lineno">270</tt>  <tt class="py-line">      <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt id="link-37" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-37', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-38', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'default'</tt><tt class="py-op">,</tt> <tt class="py-string">'True or False'</tt><tt class="py-op">)</tt> </tt>
-<a name="L271"></a><tt class="py-lineno">271</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-39', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'%s,'</tt> <tt class="py-op">%</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-40" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-40', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-41', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L272"></a><tt class="py-lineno">272</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'string'</tt><tt class="py-op">:</tt> </tt>
-<a name="L273"></a><tt class="py-lineno">273</tt>  <tt class="py-line">      <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt id="link-42" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-42', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-43', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'default'</tt><tt class="py-op">,</tt> <tt class="py-string">'A String'</tt><tt class="py-op">)</tt> </tt>
-<a name="L274"></a><tt class="py-lineno">274</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-44', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'"%s",'</tt> <tt class="py-op">%</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-45" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-45', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-46', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L275"></a><tt class="py-lineno">275</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'integer'</tt><tt class="py-op">:</tt> </tt>
-<a name="L276"></a><tt class="py-lineno">276</tt>  <tt class="py-line">      <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt id="link-47" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-47', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-48', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'default'</tt><tt class="py-op">,</tt> <tt class="py-string">'42'</tt><tt class="py-op">)</tt> </tt>
-<a name="L277"></a><tt class="py-lineno">277</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-49', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'%s,'</tt> <tt class="py-op">%</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-50" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-50', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-51', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L278"></a><tt class="py-lineno">278</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'number'</tt><tt class="py-op">:</tt> </tt>
-<a name="L279"></a><tt class="py-lineno">279</tt>  <tt class="py-line">      <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt id="link-52" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-52', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-53', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'default'</tt><tt class="py-op">,</tt> <tt class="py-string">'3.14'</tt><tt class="py-op">)</tt> </tt>
-<a name="L280"></a><tt class="py-lineno">280</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-54', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'%s,'</tt> <tt class="py-op">%</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-55" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-55', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-56', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L281"></a><tt class="py-lineno">281</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'null'</tt><tt class="py-op">:</tt> </tt>
-<a name="L282"></a><tt class="py-lineno">282</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-57', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'None,'</tt><tt class="py-op">,</tt> <tt id="link-58" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-58', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-59', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L283"></a><tt class="py-lineno">283</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'any'</tt><tt class="py-op">:</tt> </tt>
-<a name="L284"></a><tt class="py-lineno">284</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-60', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'"",'</tt><tt class="py-op">,</tt> <tt id="link-61" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-61', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-62', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L285"></a><tt class="py-lineno">285</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'array'</tt><tt class="py-op">:</tt> </tt>
-<a name="L286"></a><tt class="py-lineno">286</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-63', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'['</tt><tt class="py-op">,</tt> <tt id="link-64" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-64', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-65', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
-<a name="L287"></a><tt class="py-lineno">287</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.indent" class="py-name" href="#" onclick="return doclink('link-66', 'indent', 'link-19');">indent</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L288"></a><tt class="py-lineno">288</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitBegin" class="py-name" href="#" onclick="return doclink('link-67', 'emitBegin', 'link-23');">emitBegin</a></tt><tt class="py-op">(</tt><tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-<a name="L289"></a><tt class="py-lineno">289</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="googleapiclient.schema._SchemaToStruct._to_str_impl" class="py-name" href="#" onclick="return doclink('link-68', '_to_str_impl', 'link-24');">_to_str_impl</a></tt><tt class="py-op">(</tt><tt id="link-69" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-69', 'schema', 'link-7');">schema</a></tt><tt class="py-op">[</tt><tt class="py-string">'items'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
-<a name="L290"></a><tt class="py-lineno">290</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.undent" class="py-name" href="#" onclick="return doclink('link-70', 'undent', 'link-29');">undent</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
-<a name="L291"></a><tt class="py-lineno">291</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emit" class="py-name" href="#" onclick="return doclink('link-71', 'emit', 'link-30');">emit</a></tt><tt class="py-op">(</tt><tt class="py-string">'],'</tt><tt class="py-op">)</tt> </tt>
-<a name="L292"></a><tt class="py-lineno">292</tt>  <tt class="py-line">    <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
-<a name="L293"></a><tt class="py-lineno">293</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emit" class="py-name" href="#" onclick="return doclink('link-72', 'emit', 'link-30');">emit</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unknown type! %s'</tt> <tt class="py-op">%</tt> <tt class="py-name">stype</tt><tt class="py-op">)</tt> </tt>
-<a name="L294"></a><tt class="py-lineno">294</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-73', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">''</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
-<a name="L295"></a><tt class="py-lineno">295</tt>  <tt class="py-line"> </tt>
-<a name="L296"></a><tt class="py-lineno">296</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">string</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">)</tt> </tt>
-<a name="L297"></a><tt class="py-lineno">297</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">string</tt> </tt>
-</div><a name="L298"></a><tt class="py-lineno">298</tt>  <tt class="py-line"> </tt>
-<a name="_SchemaToStruct.to_str"></a><div id="_SchemaToStruct.to_str-def"><a name="L299"></a><tt class="py-lineno">299</tt> <a class="py-toggle" href="#" id="_SchemaToStruct.to_str-toggle" onclick="return toggle('_SchemaToStruct.to_str');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#to_str">to_str</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">from_cache</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
-</div><div id="_SchemaToStruct.to_str-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct.to_str-expanded"><a name="L300"></a><tt class="py-lineno">300</tt>  <tt class="py-line">    <tt class="py-docstring">"""Prototype object based on the schema, in Python code with comments.</tt> </tt>
-<a name="L301"></a><tt class="py-lineno">301</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L302"></a><tt class="py-lineno">302</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
-<a name="L303"></a><tt class="py-lineno">303</tt>  <tt class="py-line"><tt class="py-docstring">      from_cache: callable(name, seen), Callable that retrieves an object</tt> </tt>
-<a name="L304"></a><tt class="py-lineno">304</tt>  <tt class="py-line"><tt class="py-docstring">         prototype for a schema with the given name. Seen is a list of schema</tt> </tt>
-<a name="L305"></a><tt class="py-lineno">305</tt>  <tt class="py-line"><tt class="py-docstring">         names already seen as we recursively descend the schema definition.</tt> </tt>
-<a name="L306"></a><tt class="py-lineno">306</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
-<a name="L307"></a><tt class="py-lineno">307</tt>  <tt class="py-line"><tt class="py-docstring">    Returns:</tt> </tt>
-<a name="L308"></a><tt class="py-lineno">308</tt>  <tt class="py-line"><tt class="py-docstring">      Prototype object based on the schema, in Python code with comments.</tt> </tt>
-<a name="L309"></a><tt class="py-lineno">309</tt>  <tt class="py-line"><tt class="py-docstring">      The lines of the code will all be properly indented.</tt> </tt>
-<a name="L310"></a><tt class="py-lineno">310</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
-<a name="L311"></a><tt class="py-lineno">311</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">from_cache</tt> <tt class="py-op">=</tt> <tt class="py-name">from_cache</tt> </tt>
-<a name="L312"></a><tt class="py-lineno">312</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="googleapiclient.schema._SchemaToStruct._to_str_impl" class="py-name" href="#" onclick="return doclink('link-74', '_to_str_impl', 'link-24');">_to_str_impl</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-75', 'schema', 'link-7');">schema</a></tt><tt class="py-op">)</tt> </tt>
-</div></div><a name="L313"></a><tt class="py-lineno">313</tt>  <tt class="py-line"> </tt><script type="text/javascript">
+<a name="Schemas"></a><div id="Schemas-def"><a name="L67"></a><tt class="py-lineno"> 67</tt>  <tt class="py-line"> </tt>
+<a name="L68"></a><tt class="py-lineno"> 68</tt>  <tt class="py-line"> </tt>
+<a name="L69"></a><tt class="py-lineno"> 69</tt> <a class="py-toggle" href="#" id="Schemas-toggle" onclick="return toggle('Schemas');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="googleapiclient.schema.Schemas-class.html">Schemas</a><tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="Schemas-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="Schemas-expanded"><a name="L70"></a><tt class="py-lineno"> 70</tt>  <tt class="py-line">  <tt class="py-docstring">"""Schemas for an API."""</tt> </tt>
+<a name="L71"></a><tt class="py-lineno"> 71</tt>  <tt class="py-line"> </tt>
+<a name="Schemas.__init__"></a><div id="Schemas.__init__-def"><a name="L72"></a><tt class="py-lineno"> 72</tt> <a class="py-toggle" href="#" id="Schemas.__init__-toggle" onclick="return toggle('Schemas.__init__');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema.Schemas-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">discovery</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="Schemas.__init__-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="Schemas.__init__-expanded"><a name="L73"></a><tt class="py-lineno"> 73</tt>  <tt class="py-line">    <tt class="py-docstring">"""Constructor.</tt> </tt>
+<a name="L74"></a><tt class="py-lineno"> 74</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L75"></a><tt class="py-lineno"> 75</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
+<a name="L76"></a><tt class="py-lineno"> 76</tt>  <tt class="py-line"><tt class="py-docstring">      discovery: object, Deserialized discovery document from which we pull</tt> </tt>
+<a name="L77"></a><tt class="py-lineno"> 77</tt>  <tt class="py-line"><tt class="py-docstring">        out the named schema.</tt> </tt>
+<a name="L78"></a><tt class="py-lineno"> 78</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
+<a name="L79"></a><tt class="py-lineno"> 79</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">schemas</tt> <tt class="py-op">=</tt> <tt id="link-0" class="py-name" targets="Module googleapiclient.discovery=googleapiclient.discovery-module.html"><a title="googleapiclient.discovery" class="py-name" href="#" onclick="return doclink('link-0', 'discovery', 'link-0');">discovery</a></tt><tt class="py-op">.</tt><tt id="link-1" class="py-name" targets="Method googleapiclient.schema.Schemas.get()=googleapiclient.schema.Schemas-class.html#get"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-1', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'schemas'</tt><tt class="py-op">,</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">)</tt> </tt>
+<a name="L80"></a><tt class="py-lineno"> 80</tt>  <tt class="py-line"> </tt>
+<a name="L81"></a><tt class="py-lineno"> 81</tt>  <tt class="py-line">    <tt class="py-comment"># Cache of pretty printed schemas.</tt> </tt>
+<a name="L82"></a><tt class="py-lineno"> 82</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pretty</tt> <tt class="py-op">=</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt> </tt>
+</div><a name="L83"></a><tt class="py-lineno"> 83</tt>  <tt class="py-line"> </tt>
+<a name="L84"></a><tt class="py-lineno"> 84</tt>  <tt class="py-line">  <tt class="py-decorator">@</tt><tt class="py-decorator">util</tt><tt class="py-op">.</tt><tt class="py-name">positional</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
+<a name="Schemas._prettyPrintByName"></a><div id="Schemas._prettyPrintByName-def"><a name="L85"></a><tt class="py-lineno"> 85</tt> <a class="py-toggle" href="#" id="Schemas._prettyPrintByName-toggle" onclick="return toggle('Schemas._prettyPrintByName');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema.Schemas-class.html#_prettyPrintByName">_prettyPrintByName</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">,</tt> <tt class="py-param">seen</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">dent</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="Schemas._prettyPrintByName-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="Schemas._prettyPrintByName-expanded"><a name="L86"></a><tt class="py-lineno"> 86</tt>  <tt class="py-line">    <tt class="py-docstring">"""Get pretty printed object prototype from the schema name.</tt> </tt>
+<a name="L87"></a><tt class="py-lineno"> 87</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L88"></a><tt class="py-lineno"> 88</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
+<a name="L89"></a><tt class="py-lineno"> 89</tt>  <tt class="py-line"><tt class="py-docstring">      name: string, Name of schema in the discovery document.</tt> </tt>
+<a name="L90"></a><tt class="py-lineno"> 90</tt>  <tt class="py-line"><tt class="py-docstring">      seen: list of string, Names of schema already seen. Used to handle</tt> </tt>
+<a name="L91"></a><tt class="py-lineno"> 91</tt>  <tt class="py-line"><tt class="py-docstring">        recursive definitions.</tt> </tt>
+<a name="L92"></a><tt class="py-lineno"> 92</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L93"></a><tt class="py-lineno"> 93</tt>  <tt class="py-line"><tt class="py-docstring">    Returns:</tt> </tt>
+<a name="L94"></a><tt class="py-lineno"> 94</tt>  <tt class="py-line"><tt class="py-docstring">      string, A string that contains a prototype object with</tt> </tt>
+<a name="L95"></a><tt class="py-lineno"> 95</tt>  <tt class="py-line"><tt class="py-docstring">        comments that conforms to the given schema.</tt> </tt>
+<a name="L96"></a><tt class="py-lineno"> 96</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
+<a name="L97"></a><tt class="py-lineno"> 97</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">seen</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
+<a name="L98"></a><tt class="py-lineno"> 98</tt>  <tt class="py-line">      <tt class="py-name">seen</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
+<a name="L99"></a><tt class="py-lineno"> 99</tt>  <tt class="py-line"> </tt>
+<a name="L100"></a><tt class="py-lineno">100</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">name</tt> <tt class="py-keyword">in</tt> <tt class="py-name">seen</tt><tt class="py-op">:</tt> </tt>
+<a name="L101"></a><tt class="py-lineno">101</tt>  <tt class="py-line">      <tt class="py-comment"># Do not fall into an infinite loop over recursive definitions.</tt> </tt>
+<a name="L102"></a><tt class="py-lineno">102</tt>  <tt class="py-line">      <tt class="py-keyword">return</tt> <tt class="py-string">'# Object with schema name: %s'</tt> <tt class="py-op">%</tt> <tt class="py-name">name</tt> </tt>
+<a name="L103"></a><tt class="py-lineno">103</tt>  <tt class="py-line">    <tt class="py-name">seen</tt><tt class="py-op">.</tt><tt class="py-name">append</tt><tt class="py-op">(</tt><tt class="py-name">name</tt><tt class="py-op">)</tt> </tt>
+<a name="L104"></a><tt class="py-lineno">104</tt>  <tt class="py-line"> </tt>
+<a name="L105"></a><tt class="py-lineno">105</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">name</tt> <tt class="py-keyword">not</tt> <tt class="py-keyword">in</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pretty</tt><tt class="py-op">:</tt> </tt>
+<a name="L106"></a><tt class="py-lineno">106</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pretty</tt><tt class="py-op">[</tt><tt class="py-name">name</tt><tt class="py-op">]</tt> <tt class="py-op">=</tt> <tt id="link-2" class="py-name" targets="Class googleapiclient.schema._SchemaToStruct=googleapiclient.schema._SchemaToStruct-class.html"><a title="googleapiclient.schema._SchemaToStruct" class="py-name" href="#" onclick="return doclink('link-2', '_SchemaToStruct', 'link-2');">_SchemaToStruct</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">schemas</tt><tt class="py-op">[</tt><tt class="py-name">name</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> </tt>
+<a name="L107"></a><tt class="py-lineno">107</tt>  <tt class="py-line">          <tt class="py-name">seen</tt><tt class="py-op">,</tt> <tt class="py-name">dent</tt><tt class="py-op">=</tt><tt class="py-name">dent</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-3" class="py-name" targets="Method googleapiclient.schema._SchemaToStruct.to_str()=googleapiclient.schema._SchemaToStruct-class.html#to_str"><a title="googleapiclient.schema._SchemaToStruct.to_str" class="py-name" href="#" onclick="return doclink('link-3', 'to_str', 'link-3');">to_str</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-4" class="py-name" targets="Method googleapiclient.schema.Schemas._prettyPrintByName()=googleapiclient.schema.Schemas-class.html#_prettyPrintByName"><a title="googleapiclient.schema.Schemas._prettyPrintByName" class="py-name" href="#" onclick="return doclink('link-4', '_prettyPrintByName', 'link-4');">_prettyPrintByName</a></tt><tt class="py-op">)</tt> </tt>
+<a name="L108"></a><tt class="py-lineno">108</tt>  <tt class="py-line"> </tt>
+<a name="L109"></a><tt class="py-lineno">109</tt>  <tt class="py-line">    <tt class="py-name">seen</tt><tt class="py-op">.</tt><tt class="py-name">pop</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
+<a name="L110"></a><tt class="py-lineno">110</tt>  <tt class="py-line"> </tt>
+<a name="L111"></a><tt class="py-lineno">111</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">pretty</tt><tt class="py-op">[</tt><tt class="py-name">name</tt><tt class="py-op">]</tt> </tt>
+</div><a name="L112"></a><tt class="py-lineno">112</tt>  <tt class="py-line"> </tt>
+<a name="Schemas.prettyPrintByName"></a><div id="Schemas.prettyPrintByName-def"><a name="L113"></a><tt class="py-lineno">113</tt> <a class="py-toggle" href="#" id="Schemas.prettyPrintByName-toggle" onclick="return toggle('Schemas.prettyPrintByName');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema.Schemas-class.html#prettyPrintByName">prettyPrintByName</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="Schemas.prettyPrintByName-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="Schemas.prettyPrintByName-expanded"><a name="L114"></a><tt class="py-lineno">114</tt>  <tt class="py-line">    <tt class="py-docstring">"""Get pretty printed object prototype from the schema name.</tt> </tt>
+<a name="L115"></a><tt class="py-lineno">115</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L116"></a><tt class="py-lineno">116</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
+<a name="L117"></a><tt class="py-lineno">117</tt>  <tt class="py-line"><tt class="py-docstring">      name: string, Name of schema in the discovery document.</tt> </tt>
+<a name="L118"></a><tt class="py-lineno">118</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L119"></a><tt class="py-lineno">119</tt>  <tt class="py-line"><tt class="py-docstring">    Returns:</tt> </tt>
+<a name="L120"></a><tt class="py-lineno">120</tt>  <tt class="py-line"><tt class="py-docstring">      string, A string that contains a prototype object with</tt> </tt>
+<a name="L121"></a><tt class="py-lineno">121</tt>  <tt class="py-line"><tt class="py-docstring">        comments that conforms to the given schema.</tt> </tt>
+<a name="L122"></a><tt class="py-lineno">122</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
+<a name="L123"></a><tt class="py-lineno">123</tt>  <tt class="py-line">    <tt class="py-comment"># Return with trailing comma and newline removed.</tt> </tt>
+<a name="L124"></a><tt class="py-lineno">124</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-5" class="py-name"><a title="googleapiclient.schema.Schemas._prettyPrintByName" class="py-name" href="#" onclick="return doclink('link-5', '_prettyPrintByName', 'link-4');">_prettyPrintByName</a></tt><tt class="py-op">(</tt><tt class="py-name">name</tt><tt class="py-op">,</tt> <tt class="py-name">seen</tt><tt class="py-op">=</tt><tt class="py-op">[</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">dent</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
+</div><a name="L125"></a><tt class="py-lineno">125</tt>  <tt class="py-line"> </tt>
+<a name="L126"></a><tt class="py-lineno">126</tt>  <tt class="py-line">  <tt class="py-decorator">@</tt><tt class="py-decorator">util</tt><tt class="py-op">.</tt><tt class="py-name">positional</tt><tt class="py-op">(</tt><tt class="py-number">2</tt><tt class="py-op">)</tt> </tt>
+<a name="Schemas._prettyPrintSchema"></a><div id="Schemas._prettyPrintSchema-def"><a name="L127"></a><tt class="py-lineno">127</tt> <a class="py-toggle" href="#" id="Schemas._prettyPrintSchema-toggle" onclick="return toggle('Schemas._prettyPrintSchema');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema.Schemas-class.html#_prettyPrintSchema">_prettyPrintSchema</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">schema</tt><tt class="py-op">,</tt> <tt class="py-param">seen</tt><tt class="py-op">=</tt><tt class="py-name">None</tt><tt class="py-op">,</tt> <tt class="py-param">dent</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="Schemas._prettyPrintSchema-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="Schemas._prettyPrintSchema-expanded"><a name="L128"></a><tt class="py-lineno">128</tt>  <tt class="py-line">    <tt class="py-docstring">"""Get pretty printed object prototype of schema.</tt> </tt>
+<a name="L129"></a><tt class="py-lineno">129</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L130"></a><tt class="py-lineno">130</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
+<a name="L131"></a><tt class="py-lineno">131</tt>  <tt class="py-line"><tt class="py-docstring">      schema: object, Parsed JSON schema.</tt> </tt>
+<a name="L132"></a><tt class="py-lineno">132</tt>  <tt class="py-line"><tt class="py-docstring">      seen: list of string, Names of schema already seen. Used to handle</tt> </tt>
+<a name="L133"></a><tt class="py-lineno">133</tt>  <tt class="py-line"><tt class="py-docstring">        recursive definitions.</tt> </tt>
+<a name="L134"></a><tt class="py-lineno">134</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L135"></a><tt class="py-lineno">135</tt>  <tt class="py-line"><tt class="py-docstring">    Returns:</tt> </tt>
+<a name="L136"></a><tt class="py-lineno">136</tt>  <tt class="py-line"><tt class="py-docstring">      string, A string that contains a prototype object with</tt> </tt>
+<a name="L137"></a><tt class="py-lineno">137</tt>  <tt class="py-line"><tt class="py-docstring">        comments that conforms to the given schema.</tt> </tt>
+<a name="L138"></a><tt class="py-lineno">138</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
+<a name="L139"></a><tt class="py-lineno">139</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">seen</tt> <tt class="py-keyword">is</tt> <tt class="py-name">None</tt><tt class="py-op">:</tt> </tt>
+<a name="L140"></a><tt class="py-lineno">140</tt>  <tt class="py-line">      <tt class="py-name">seen</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
+<a name="L141"></a><tt class="py-lineno">141</tt>  <tt class="py-line"> </tt>
+<a name="L142"></a><tt class="py-lineno">142</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt id="link-6" class="py-name"><a title="googleapiclient.schema._SchemaToStruct" class="py-name" href="#" onclick="return doclink('link-6', '_SchemaToStruct', 'link-2');">_SchemaToStruct</a></tt><tt class="py-op">(</tt><tt id="link-7" class="py-name" targets="Module googleapiclient.schema=googleapiclient.schema-module.html"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-7', 'schema', 'link-7');">schema</a></tt><tt class="py-op">,</tt> <tt class="py-name">seen</tt><tt class="py-op">,</tt> <tt class="py-name">dent</tt><tt class="py-op">=</tt><tt class="py-name">dent</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt id="link-8" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.to_str" class="py-name" href="#" onclick="return doclink('link-8', 'to_str', 'link-3');">to_str</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-9" class="py-name"><a title="googleapiclient.schema.Schemas._prettyPrintByName" class="py-name" href="#" onclick="return doclink('link-9', '_prettyPrintByName', 'link-4');">_prettyPrintByName</a></tt><tt class="py-op">)</tt> </tt>
+</div><a name="L143"></a><tt class="py-lineno">143</tt>  <tt class="py-line"> </tt>
+<a name="Schemas.prettyPrintSchema"></a><div id="Schemas.prettyPrintSchema-def"><a name="L144"></a><tt class="py-lineno">144</tt> <a class="py-toggle" href="#" id="Schemas.prettyPrintSchema-toggle" onclick="return toggle('Schemas.prettyPrintSchema');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema.Schemas-class.html#prettyPrintSchema">prettyPrintSchema</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">schema</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="Schemas.prettyPrintSchema-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="Schemas.prettyPrintSchema-expanded"><a name="L145"></a><tt class="py-lineno">145</tt>  <tt class="py-line">    <tt class="py-docstring">"""Get pretty printed object prototype of schema.</tt> </tt>
+<a name="L146"></a><tt class="py-lineno">146</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L147"></a><tt class="py-lineno">147</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
+<a name="L148"></a><tt class="py-lineno">148</tt>  <tt class="py-line"><tt class="py-docstring">      schema: object, Parsed JSON schema.</tt> </tt>
+<a name="L149"></a><tt class="py-lineno">149</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L150"></a><tt class="py-lineno">150</tt>  <tt class="py-line"><tt class="py-docstring">    Returns:</tt> </tt>
+<a name="L151"></a><tt class="py-lineno">151</tt>  <tt class="py-line"><tt class="py-docstring">      string, A string that contains a prototype object with</tt> </tt>
+<a name="L152"></a><tt class="py-lineno">152</tt>  <tt class="py-line"><tt class="py-docstring">        comments that conforms to the given schema.</tt> </tt>
+<a name="L153"></a><tt class="py-lineno">153</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
+<a name="L154"></a><tt class="py-lineno">154</tt>  <tt class="py-line">    <tt class="py-comment"># Return with trailing comma and newline removed.</tt> </tt>
+<a name="L155"></a><tt class="py-lineno">155</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-10" class="py-name" targets="Method googleapiclient.schema.Schemas._prettyPrintSchema()=googleapiclient.schema.Schemas-class.html#_prettyPrintSchema"><a title="googleapiclient.schema.Schemas._prettyPrintSchema" class="py-name" href="#" onclick="return doclink('link-10', '_prettyPrintSchema', 'link-10');">_prettyPrintSchema</a></tt><tt class="py-op">(</tt><tt id="link-11" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-11', 'schema', 'link-7');">schema</a></tt><tt class="py-op">,</tt> <tt class="py-name">dent</tt><tt class="py-op">=</tt><tt class="py-number">1</tt><tt class="py-op">)</tt><tt class="py-op">[</tt><tt class="py-op">:</tt><tt class="py-op">-</tt><tt class="py-number">2</tt><tt class="py-op">]</tt> </tt>
+</div><a name="L156"></a><tt class="py-lineno">156</tt>  <tt class="py-line"> </tt>
+<a name="Schemas.get"></a><div id="Schemas.get-def"><a name="L157"></a><tt class="py-lineno">157</tt> <a class="py-toggle" href="#" id="Schemas.get-toggle" onclick="return toggle('Schemas.get');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema.Schemas-class.html#get">get</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">name</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="Schemas.get-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="Schemas.get-expanded"><a name="L158"></a><tt class="py-lineno">158</tt>  <tt class="py-line">    <tt class="py-docstring">"""Get deserialized JSON schema from the schema name.</tt> </tt>
+<a name="L159"></a><tt class="py-lineno">159</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L160"></a><tt class="py-lineno">160</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
+<a name="L161"></a><tt class="py-lineno">161</tt>  <tt class="py-line"><tt class="py-docstring">      name: string, Schema name.</tt> </tt>
+<a name="L162"></a><tt class="py-lineno">162</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
+<a name="L163"></a><tt class="py-lineno">163</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">schemas</tt><tt class="py-op">[</tt><tt class="py-name">name</tt><tt class="py-op">]</tt> </tt>
+</div></div><a name="L164"></a><tt class="py-lineno">164</tt>  <tt class="py-line"> </tt>
+<a name="_SchemaToStruct"></a><div id="_SchemaToStruct-def"><a name="L165"></a><tt class="py-lineno">165</tt>  <tt class="py-line"> </tt>
+<a name="L166"></a><tt class="py-lineno">166</tt> <a class="py-toggle" href="#" id="_SchemaToStruct-toggle" onclick="return toggle('_SchemaToStruct');">-</a><tt class="py-line"><tt class="py-keyword">class</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html">_SchemaToStruct</a><tt class="py-op">(</tt><tt class="py-base-class">object</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="_SchemaToStruct-collapsed" style="display:none;" pad="+++" indent="++++"></div><div id="_SchemaToStruct-expanded"><a name="L167"></a><tt class="py-lineno">167</tt>  <tt class="py-line">  <tt class="py-docstring">"""Convert schema to a prototype object."""</tt> </tt>
+<a name="L168"></a><tt class="py-lineno">168</tt>  <tt class="py-line"> </tt>
+<a name="L169"></a><tt class="py-lineno">169</tt>  <tt class="py-line">  <tt class="py-decorator">@</tt><tt class="py-decorator">util</tt><tt class="py-op">.</tt><tt class="py-name">positional</tt><tt class="py-op">(</tt><tt class="py-number">3</tt><tt class="py-op">)</tt> </tt>
+<a name="_SchemaToStruct.__init__"></a><div id="_SchemaToStruct.__init__-def"><a name="L170"></a><tt class="py-lineno">170</tt> <a class="py-toggle" href="#" id="_SchemaToStruct.__init__-toggle" onclick="return toggle('_SchemaToStruct.__init__');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#__init__">__init__</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">schema</tt><tt class="py-op">,</tt> <tt class="py-param">seen</tt><tt class="py-op">,</tt> <tt class="py-param">dent</tt><tt class="py-op">=</tt><tt class="py-number">0</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="_SchemaToStruct.__init__-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct.__init__-expanded"><a name="L171"></a><tt class="py-lineno">171</tt>  <tt class="py-line">    <tt class="py-docstring">"""Constructor.</tt> </tt>
+<a name="L172"></a><tt class="py-lineno">172</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L173"></a><tt class="py-lineno">173</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
+<a name="L174"></a><tt class="py-lineno">174</tt>  <tt class="py-line"><tt class="py-docstring">      schema: object, Parsed JSON schema.</tt> </tt>
+<a name="L175"></a><tt class="py-lineno">175</tt>  <tt class="py-line"><tt class="py-docstring">      seen: list, List of names of schema already seen while parsing. Used to</tt> </tt>
+<a name="L176"></a><tt class="py-lineno">176</tt>  <tt class="py-line"><tt class="py-docstring">        handle recursive definitions.</tt> </tt>
+<a name="L177"></a><tt class="py-lineno">177</tt>  <tt class="py-line"><tt class="py-docstring">      dent: int, Initial indentation depth.</tt> </tt>
+<a name="L178"></a><tt class="py-lineno">178</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
+<a name="L179"></a><tt class="py-lineno">179</tt>  <tt class="py-line">    <tt class="py-comment"># The result of this parsing kept as list of strings.</tt> </tt>
+<a name="L180"></a><tt class="py-lineno">180</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-op">]</tt> </tt>
+<a name="L181"></a><tt class="py-lineno">181</tt>  <tt class="py-line"> </tt>
+<a name="L182"></a><tt class="py-lineno">182</tt>  <tt class="py-line">    <tt class="py-comment"># The final value of the parsing.</tt> </tt>
+<a name="L183"></a><tt class="py-lineno">183</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">string</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
+<a name="L184"></a><tt class="py-lineno">184</tt>  <tt class="py-line"> </tt>
+<a name="L185"></a><tt class="py-lineno">185</tt>  <tt class="py-line">    <tt class="py-comment"># The parsed JSON schema.</tt> </tt>
+<a name="L186"></a><tt class="py-lineno">186</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-12" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-12', 'schema', 'link-7');">schema</a></tt> <tt class="py-op">=</tt> <tt id="link-13" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-13', 'schema', 'link-7');">schema</a></tt> </tt>
+<a name="L187"></a><tt class="py-lineno">187</tt>  <tt class="py-line"> </tt>
+<a name="L188"></a><tt class="py-lineno">188</tt>  <tt class="py-line">    <tt class="py-comment"># Indentation level.</tt> </tt>
+<a name="L189"></a><tt class="py-lineno">189</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">dent</tt> <tt class="py-op">=</tt> <tt class="py-name">dent</tt> </tt>
+<a name="L190"></a><tt class="py-lineno">190</tt>  <tt class="py-line"> </tt>
+<a name="L191"></a><tt class="py-lineno">191</tt>  <tt class="py-line">    <tt class="py-comment"># Method that when called returns a prototype object for the schema with</tt> </tt>
+<a name="L192"></a><tt class="py-lineno">192</tt>  <tt class="py-line">    <tt class="py-comment"># the given name.</tt> </tt>
+<a name="L193"></a><tt class="py-lineno">193</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">from_cache</tt> <tt class="py-op">=</tt> <tt class="py-name">None</tt> </tt>
+<a name="L194"></a><tt class="py-lineno">194</tt>  <tt class="py-line"> </tt>
+<a name="L195"></a><tt class="py-lineno">195</tt>  <tt class="py-line">    <tt class="py-comment"># List of names of schema already seen while parsing.</tt> </tt>
+<a name="L196"></a><tt class="py-lineno">196</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">seen</tt> <tt class="py-op">=</tt> <tt class="py-name">seen</tt> </tt>
+</div><a name="L197"></a><tt class="py-lineno">197</tt>  <tt class="py-line"> </tt>
+<a name="_SchemaToStruct.emit"></a><div id="_SchemaToStruct.emit-def"><a name="L198"></a><tt class="py-lineno">198</tt> <a class="py-toggle" href="#" id="_SchemaToStruct.emit-toggle" onclick="return toggle('_SchemaToStruct.emit');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#emit">emit</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">text</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="_SchemaToStruct.emit-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct.emit-expanded"><a name="L199"></a><tt class="py-lineno">199</tt>  <tt class="py-line">    <tt class="py-docstring">"""Add text as a line to the output.</tt> </tt>
+<a name="L200"></a><tt class="py-lineno">200</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L201"></a><tt class="py-lineno">201</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
+<a name="L202"></a><tt class="py-lineno">202</tt>  <tt class="py-line"><tt class="py-docstring">      text: string, Text to output.</tt> </tt>
+<a name="L203"></a><tt class="py-lineno">203</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
+<a name="L204"></a><tt class="py-lineno">204</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"  "</tt> <tt class="py-op">*</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">dent</tt><tt class="py-op">,</tt> <tt class="py-name">text</tt><tt class="py-op">,</tt> <tt class="py-string">'\n'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
+</div><a name="L205"></a><tt class="py-lineno">205</tt>  <tt class="py-line"> </tt>
+<a name="_SchemaToStruct.emitBegin"></a><div id="_SchemaToStruct.emitBegin-def"><a name="L206"></a><tt class="py-lineno">206</tt> <a class="py-toggle" href="#" id="_SchemaToStruct.emitBegin-toggle" onclick="return toggle('_SchemaToStruct.emitBegin');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#emitBegin">emitBegin</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">text</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="_SchemaToStruct.emitBegin-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct.emitBegin-expanded"><a name="L207"></a><tt class="py-lineno">207</tt>  <tt class="py-line">    <tt class="py-docstring">"""Add text to the output, but with no line terminator.</tt> </tt>
+<a name="L208"></a><tt class="py-lineno">208</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L209"></a><tt class="py-lineno">209</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
+<a name="L210"></a><tt class="py-lineno">210</tt>  <tt class="py-line"><tt class="py-docstring">      text: string, Text to output.</tt> </tt>
+<a name="L211"></a><tt class="py-lineno">211</tt>  <tt class="py-line"><tt class="py-docstring">      """</tt> </tt>
+<a name="L212"></a><tt class="py-lineno">212</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-string">"  "</tt> <tt class="py-op">*</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">dent</tt><tt class="py-op">,</tt> <tt class="py-name">text</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
+</div><a name="L213"></a><tt class="py-lineno">213</tt>  <tt class="py-line"> </tt>
+<a name="_SchemaToStruct.emitEnd"></a><div id="_SchemaToStruct.emitEnd-def"><a name="L214"></a><tt class="py-lineno">214</tt> <a class="py-toggle" href="#" id="_SchemaToStruct.emitEnd-toggle" onclick="return toggle('_SchemaToStruct.emitEnd');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#emitEnd">emitEnd</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">text</tt><tt class="py-op">,</tt> <tt class="py-param">comment</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="_SchemaToStruct.emitEnd-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct.emitEnd-expanded"><a name="L215"></a><tt class="py-lineno">215</tt>  <tt class="py-line">    <tt class="py-docstring">"""Add text and comment to the output with line terminator.</tt> </tt>
+<a name="L216"></a><tt class="py-lineno">216</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L217"></a><tt class="py-lineno">217</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
+<a name="L218"></a><tt class="py-lineno">218</tt>  <tt class="py-line"><tt class="py-docstring">      text: string, Text to output.</tt> </tt>
+<a name="L219"></a><tt class="py-lineno">219</tt>  <tt class="py-line"><tt class="py-docstring">      comment: string, Python comment.</tt> </tt>
+<a name="L220"></a><tt class="py-lineno">220</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
+<a name="L221"></a><tt class="py-lineno">221</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">comment</tt><tt class="py-op">:</tt> </tt>
+<a name="L222"></a><tt class="py-lineno">222</tt>  <tt class="py-line">      <tt class="py-name">divider</tt> <tt class="py-op">=</tt> <tt class="py-string">'\n'</tt> <tt class="py-op">+</tt> <tt class="py-string">'  '</tt> <tt class="py-op">*</tt> <tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">dent</tt> <tt class="py-op">+</tt> <tt class="py-number">2</tt><tt class="py-op">)</tt> <tt class="py-op">+</tt> <tt class="py-string">'# '</tt> </tt>
+<a name="L223"></a><tt class="py-lineno">223</tt>  <tt class="py-line">      <tt class="py-name">lines</tt> <tt class="py-op">=</tt> <tt class="py-name">comment</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
+<a name="L224"></a><tt class="py-lineno">224</tt>  <tt class="py-line">      <tt class="py-name">lines</tt> <tt class="py-op">=</tt> <tt class="py-op">[</tt><tt class="py-name">x</tt><tt class="py-op">.</tt><tt class="py-name">rstrip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> <tt class="py-keyword">for</tt> <tt class="py-name">x</tt> <tt class="py-keyword">in</tt> <tt class="py-name">lines</tt><tt class="py-op">]</tt> </tt>
+<a name="L225"></a><tt class="py-lineno">225</tt>  <tt class="py-line">      <tt class="py-name">comment</tt> <tt class="py-op">=</tt> <tt class="py-name">divider</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">lines</tt><tt class="py-op">)</tt> </tt>
+<a name="L226"></a><tt class="py-lineno">226</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">text</tt><tt class="py-op">,</tt> <tt class="py-string">' # '</tt><tt class="py-op">,</tt> <tt class="py-name">comment</tt><tt class="py-op">,</tt> <tt class="py-string">'\n'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
+<a name="L227"></a><tt class="py-lineno">227</tt>  <tt class="py-line">    <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
+<a name="L228"></a><tt class="py-lineno">228</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">.</tt><tt class="py-name">extend</tt><tt class="py-op">(</tt><tt class="py-op">[</tt><tt class="py-name">text</tt><tt class="py-op">,</tt> <tt class="py-string">'\n'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
+</div><a name="L229"></a><tt class="py-lineno">229</tt>  <tt class="py-line"> </tt>
+<a name="_SchemaToStruct.indent"></a><div id="_SchemaToStruct.indent-def"><a name="L230"></a><tt class="py-lineno">230</tt> <a class="py-toggle" href="#" id="_SchemaToStruct.indent-toggle" onclick="return toggle('_SchemaToStruct.indent');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#indent">indent</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="_SchemaToStruct.indent-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct.indent-expanded"><a name="L231"></a><tt class="py-lineno">231</tt>  <tt class="py-line">    <tt class="py-docstring">"""Increase indentation level."""</tt> </tt>
+<a name="L232"></a><tt class="py-lineno">232</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">dent</tt> <tt class="py-op">+=</tt> <tt class="py-number">1</tt> </tt>
+</div><a name="L233"></a><tt class="py-lineno">233</tt>  <tt class="py-line"> </tt>
+<a name="_SchemaToStruct.undent"></a><div id="_SchemaToStruct.undent-def"><a name="L234"></a><tt class="py-lineno">234</tt> <a class="py-toggle" href="#" id="_SchemaToStruct.undent-toggle" onclick="return toggle('_SchemaToStruct.undent');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#undent">undent</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="_SchemaToStruct.undent-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct.undent-expanded"><a name="L235"></a><tt class="py-lineno">235</tt>  <tt class="py-line">    <tt class="py-docstring">"""Decrease indentation level."""</tt> </tt>
+<a name="L236"></a><tt class="py-lineno">236</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">dent</tt> <tt class="py-op">-=</tt> <tt class="py-number">1</tt> </tt>
+</div><a name="L237"></a><tt class="py-lineno">237</tt>  <tt class="py-line"> </tt>
+<a name="_SchemaToStruct._to_str_impl"></a><div id="_SchemaToStruct._to_str_impl-def"><a name="L238"></a><tt class="py-lineno">238</tt> <a class="py-toggle" href="#" id="_SchemaToStruct._to_str_impl-toggle" onclick="return toggle('_SchemaToStruct._to_str_impl');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#_to_str_impl">_to_str_impl</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">schema</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="_SchemaToStruct._to_str_impl-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct._to_str_impl-expanded"><a name="L239"></a><tt class="py-lineno">239</tt>  <tt class="py-line">    <tt class="py-docstring">"""Prototype object based on the schema, in Python code with comments.</tt> </tt>
+<a name="L240"></a><tt class="py-lineno">240</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L241"></a><tt class="py-lineno">241</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
+<a name="L242"></a><tt class="py-lineno">242</tt>  <tt class="py-line"><tt class="py-docstring">      schema: object, Parsed JSON schema file.</tt> </tt>
+<a name="L243"></a><tt class="py-lineno">243</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L244"></a><tt class="py-lineno">244</tt>  <tt class="py-line"><tt class="py-docstring">    Returns:</tt> </tt>
+<a name="L245"></a><tt class="py-lineno">245</tt>  <tt class="py-line"><tt class="py-docstring">      Prototype object based on the schema, in Python code with comments.</tt> </tt>
+<a name="L246"></a><tt class="py-lineno">246</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
+<a name="L247"></a><tt class="py-lineno">247</tt>  <tt class="py-line">    <tt class="py-name">stype</tt> <tt class="py-op">=</tt> <tt id="link-14" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-14', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-15" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-15', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'type'</tt><tt class="py-op">)</tt> </tt>
+<a name="L248"></a><tt class="py-lineno">248</tt>  <tt class="py-line">    <tt class="py-keyword">if</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'object'</tt><tt class="py-op">:</tt> </tt>
+<a name="L249"></a><tt class="py-lineno">249</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-16" class="py-name" targets="Method googleapiclient.schema._SchemaToStruct.emitEnd()=googleapiclient.schema._SchemaToStruct-class.html#emitEnd"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-16', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'{'</tt><tt class="py-op">,</tt> <tt id="link-17" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-17', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-18" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-18', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+<a name="L250"></a><tt class="py-lineno">250</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-19" class="py-name" targets="Method googleapiclient.schema._SchemaToStruct.indent()=googleapiclient.schema._SchemaToStruct-class.html#indent"><a title="googleapiclient.schema._SchemaToStruct.indent" class="py-name" href="#" onclick="return doclink('link-19', 'indent', 'link-19');">indent</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
+<a name="L251"></a><tt class="py-lineno">251</tt>  <tt class="py-line">      <tt class="py-keyword">if</tt> <tt class="py-string">'properties'</tt> <tt class="py-keyword">in</tt> <tt id="link-20" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-20', 'schema', 'link-7');">schema</a></tt><tt class="py-op">:</tt> </tt>
+<a name="L252"></a><tt class="py-lineno">252</tt>  <tt class="py-line">        <tt class="py-keyword">for</tt> <tt class="py-name">pname</tt><tt class="py-op">,</tt> <tt class="py-name">pschema</tt> <tt class="py-keyword">in</tt> <tt id="link-21" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-21', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-22" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-22', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'properties'</tt><tt class="py-op">,</tt> <tt class="py-op">{</tt><tt class="py-op">}</tt><tt class="py-op">)</tt><tt class="py-op">.</tt><tt class="py-name">iteritems</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+<a name="L253"></a><tt class="py-lineno">253</tt>  <tt class="py-line">          <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-23" class="py-name" targets="Method googleapiclient.schema._SchemaToStruct.emitBegin()=googleapiclient.schema._SchemaToStruct-class.html#emitBegin"><a title="googleapiclient.schema._SchemaToStruct.emitBegin" class="py-name" href="#" onclick="return doclink('link-23', 'emitBegin', 'link-23');">emitBegin</a></tt><tt class="py-op">(</tt><tt class="py-string">'"%s": '</tt> <tt class="py-op">%</tt> <tt class="py-name">pname</tt><tt class="py-op">)</tt> </tt>
+<a name="L254"></a><tt class="py-lineno">254</tt>  <tt class="py-line">          <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-24" class="py-name" targets="Method googleapiclient.schema._SchemaToStruct._to_str_impl()=googleapiclient.schema._SchemaToStruct-class.html#_to_str_impl"><a title="googleapiclient.schema._SchemaToStruct._to_str_impl" class="py-name" href="#" onclick="return doclink('link-24', '_to_str_impl', 'link-24');">_to_str_impl</a></tt><tt class="py-op">(</tt><tt class="py-name">pschema</tt><tt class="py-op">)</tt> </tt>
+<a name="L255"></a><tt class="py-lineno">255</tt>  <tt class="py-line">      <tt class="py-keyword">elif</tt> <tt class="py-string">'additionalProperties'</tt> <tt class="py-keyword">in</tt> <tt id="link-25" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-25', 'schema', 'link-7');">schema</a></tt><tt class="py-op">:</tt> </tt>
+<a name="L256"></a><tt class="py-lineno">256</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-26" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitBegin" class="py-name" href="#" onclick="return doclink('link-26', 'emitBegin', 'link-23');">emitBegin</a></tt><tt class="py-op">(</tt><tt class="py-string">'"a_key": '</tt><tt class="py-op">)</tt> </tt>
+<a name="L257"></a><tt class="py-lineno">257</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-27" class="py-name"><a title="googleapiclient.schema._SchemaToStruct._to_str_impl" class="py-name" href="#" onclick="return doclink('link-27', '_to_str_impl', 'link-24');">_to_str_impl</a></tt><tt class="py-op">(</tt><tt id="link-28" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-28', 'schema', 'link-7');">schema</a></tt><tt class="py-op">[</tt><tt class="py-string">'additionalProperties'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
+<a name="L258"></a><tt class="py-lineno">258</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-29" class="py-name" targets="Method googleapiclient.schema._SchemaToStruct.undent()=googleapiclient.schema._SchemaToStruct-class.html#undent"><a title="googleapiclient.schema._SchemaToStruct.undent" class="py-name" href="#" onclick="return doclink('link-29', 'undent', 'link-29');">undent</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
+<a name="L259"></a><tt class="py-lineno">259</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-30" class="py-name" targets="Method googleapiclient.schema._SchemaToStruct.emit()=googleapiclient.schema._SchemaToStruct-class.html#emit"><a title="googleapiclient.schema._SchemaToStruct.emit" class="py-name" href="#" onclick="return doclink('link-30', 'emit', 'link-30');">emit</a></tt><tt class="py-op">(</tt><tt class="py-string">'},'</tt><tt class="py-op">)</tt> </tt>
+<a name="L260"></a><tt class="py-lineno">260</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-string">'$ref'</tt> <tt class="py-keyword">in</tt> <tt id="link-31" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-31', 'schema', 'link-7');">schema</a></tt><tt class="py-op">:</tt> </tt>
+<a name="L261"></a><tt class="py-lineno">261</tt>  <tt class="py-line">      <tt class="py-name">schemaName</tt> <tt class="py-op">=</tt> <tt id="link-32" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-32', 'schema', 'link-7');">schema</a></tt><tt class="py-op">[</tt><tt class="py-string">'$ref'</tt><tt class="py-op">]</tt> </tt>
+<a name="L262"></a><tt class="py-lineno">262</tt>  <tt class="py-line">      <tt class="py-name">description</tt> <tt class="py-op">=</tt> <tt id="link-33" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-33', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-34" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-34', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
+<a name="L263"></a><tt class="py-lineno">263</tt>  <tt class="py-line">      <tt class="py-name">s</tt> <tt class="py-op">=</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">from_cache</tt><tt class="py-op">(</tt><tt class="py-name">schemaName</tt><tt class="py-op">,</tt> <tt class="py-name">seen</tt><tt class="py-op">=</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">seen</tt><tt class="py-op">)</tt> </tt>
+<a name="L264"></a><tt class="py-lineno">264</tt>  <tt class="py-line">      <tt class="py-name">parts</tt> <tt class="py-op">=</tt> <tt class="py-name">s</tt><tt class="py-op">.</tt><tt class="py-name">splitlines</tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
+<a name="L265"></a><tt class="py-lineno">265</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-35" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-35', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-name">parts</tt><tt class="py-op">[</tt><tt class="py-number">0</tt><tt class="py-op">]</tt><tt class="py-op">,</tt> <tt class="py-name">description</tt><tt class="py-op">)</tt> </tt>
+<a name="L266"></a><tt class="py-lineno">266</tt>  <tt class="py-line">      <tt class="py-keyword">for</tt> <tt class="py-name">line</tt> <tt class="py-keyword">in</tt> <tt class="py-name">parts</tt><tt class="py-op">[</tt><tt class="py-number">1</tt><tt class="py-op">:</tt><tt class="py-op">]</tt><tt class="py-op">:</tt> </tt>
+<a name="L267"></a><tt class="py-lineno">267</tt>  <tt class="py-line">        <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-36" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emit" class="py-name" href="#" onclick="return doclink('link-36', 'emit', 'link-30');">emit</a></tt><tt class="py-op">(</tt><tt class="py-name">line</tt><tt class="py-op">.</tt><tt class="py-name">rstrip</tt><tt class="py-op">(</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+<a name="L268"></a><tt class="py-lineno">268</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'boolean'</tt><tt class="py-op">:</tt> </tt>
+<a name="L269"></a><tt class="py-lineno">269</tt>  <tt class="py-line">      <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt id="link-37" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-37', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-38" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-38', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'default'</tt><tt class="py-op">,</tt> <tt class="py-string">'True or False'</tt><tt class="py-op">)</tt> </tt>
+<a name="L270"></a><tt class="py-lineno">270</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-39" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-39', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'%s,'</tt> <tt class="py-op">%</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-40" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-40', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-41" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-41', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+<a name="L271"></a><tt class="py-lineno">271</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'string'</tt><tt class="py-op">:</tt> </tt>
+<a name="L272"></a><tt class="py-lineno">272</tt>  <tt class="py-line">      <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt id="link-42" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-42', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-43" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-43', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'default'</tt><tt class="py-op">,</tt> <tt class="py-string">'A String'</tt><tt class="py-op">)</tt> </tt>
+<a name="L273"></a><tt class="py-lineno">273</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-44" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-44', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'"%s",'</tt> <tt class="py-op">%</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-45" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-45', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-46" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-46', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+<a name="L274"></a><tt class="py-lineno">274</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'integer'</tt><tt class="py-op">:</tt> </tt>
+<a name="L275"></a><tt class="py-lineno">275</tt>  <tt class="py-line">      <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt id="link-47" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-47', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-48" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-48', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'default'</tt><tt class="py-op">,</tt> <tt class="py-string">'42'</tt><tt class="py-op">)</tt> </tt>
+<a name="L276"></a><tt class="py-lineno">276</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-49" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-49', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'%s,'</tt> <tt class="py-op">%</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-50" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-50', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-51" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-51', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+<a name="L277"></a><tt class="py-lineno">277</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'number'</tt><tt class="py-op">:</tt> </tt>
+<a name="L278"></a><tt class="py-lineno">278</tt>  <tt class="py-line">      <tt class="py-name">value</tt> <tt class="py-op">=</tt> <tt id="link-52" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-52', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-53" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-53', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'default'</tt><tt class="py-op">,</tt> <tt class="py-string">'3.14'</tt><tt class="py-op">)</tt> </tt>
+<a name="L279"></a><tt class="py-lineno">279</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-54" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-54', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'%s,'</tt> <tt class="py-op">%</tt> <tt class="py-name">str</tt><tt class="py-op">(</tt><tt class="py-name">value</tt><tt class="py-op">)</tt><tt class="py-op">,</tt> <tt id="link-55" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-55', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-56" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-56', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+<a name="L280"></a><tt class="py-lineno">280</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'null'</tt><tt class="py-op">:</tt> </tt>
+<a name="L281"></a><tt class="py-lineno">281</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-57" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-57', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'None,'</tt><tt class="py-op">,</tt> <tt id="link-58" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-58', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-59" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-59', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+<a name="L282"></a><tt class="py-lineno">282</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'any'</tt><tt class="py-op">:</tt> </tt>
+<a name="L283"></a><tt class="py-lineno">283</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-60" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-60', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'"",'</tt><tt class="py-op">,</tt> <tt id="link-61" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-61', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-62" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-62', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+<a name="L284"></a><tt class="py-lineno">284</tt>  <tt class="py-line">    <tt class="py-keyword">elif</tt> <tt class="py-name">stype</tt> <tt class="py-op">==</tt> <tt class="py-string">'array'</tt><tt class="py-op">:</tt> </tt>
+<a name="L285"></a><tt class="py-lineno">285</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-63" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-63', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">'['</tt><tt class="py-op">,</tt> <tt id="link-64" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-64', 'schema', 'link-7');">schema</a></tt><tt class="py-op">.</tt><tt id="link-65" class="py-name"><a title="googleapiclient.schema.Schemas.get" class="py-name" href="#" onclick="return doclink('link-65', 'get', 'link-1');">get</a></tt><tt class="py-op">(</tt><tt class="py-string">'description'</tt><tt class="py-op">)</tt><tt class="py-op">)</tt> </tt>
+<a name="L286"></a><tt class="py-lineno">286</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-66" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.indent" class="py-name" href="#" onclick="return doclink('link-66', 'indent', 'link-19');">indent</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
+<a name="L287"></a><tt class="py-lineno">287</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-67" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitBegin" class="py-name" href="#" onclick="return doclink('link-67', 'emitBegin', 'link-23');">emitBegin</a></tt><tt class="py-op">(</tt><tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
+<a name="L288"></a><tt class="py-lineno">288</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-68" class="py-name"><a title="googleapiclient.schema._SchemaToStruct._to_str_impl" class="py-name" href="#" onclick="return doclink('link-68', '_to_str_impl', 'link-24');">_to_str_impl</a></tt><tt class="py-op">(</tt><tt id="link-69" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-69', 'schema', 'link-7');">schema</a></tt><tt class="py-op">[</tt><tt class="py-string">'items'</tt><tt class="py-op">]</tt><tt class="py-op">)</tt> </tt>
+<a name="L289"></a><tt class="py-lineno">289</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-70" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.undent" class="py-name" href="#" onclick="return doclink('link-70', 'undent', 'link-29');">undent</a></tt><tt class="py-op">(</tt><tt class="py-op">)</tt> </tt>
+<a name="L290"></a><tt class="py-lineno">290</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-71" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emit" class="py-name" href="#" onclick="return doclink('link-71', 'emit', 'link-30');">emit</a></tt><tt class="py-op">(</tt><tt class="py-string">'],'</tt><tt class="py-op">)</tt> </tt>
+<a name="L291"></a><tt class="py-lineno">291</tt>  <tt class="py-line">    <tt class="py-keyword">else</tt><tt class="py-op">:</tt> </tt>
+<a name="L292"></a><tt class="py-lineno">292</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-72" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emit" class="py-name" href="#" onclick="return doclink('link-72', 'emit', 'link-30');">emit</a></tt><tt class="py-op">(</tt><tt class="py-string">'Unknown type! %s'</tt> <tt class="py-op">%</tt> <tt class="py-name">stype</tt><tt class="py-op">)</tt> </tt>
+<a name="L293"></a><tt class="py-lineno">293</tt>  <tt class="py-line">      <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-73" class="py-name"><a title="googleapiclient.schema._SchemaToStruct.emitEnd" class="py-name" href="#" onclick="return doclink('link-73', 'emitEnd', 'link-16');">emitEnd</a></tt><tt class="py-op">(</tt><tt class="py-string">''</tt><tt class="py-op">,</tt> <tt class="py-string">''</tt><tt class="py-op">)</tt> </tt>
+<a name="L294"></a><tt class="py-lineno">294</tt>  <tt class="py-line"> </tt>
+<a name="L295"></a><tt class="py-lineno">295</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">string</tt> <tt class="py-op">=</tt> <tt class="py-string">''</tt><tt class="py-op">.</tt><tt class="py-name">join</tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">value</tt><tt class="py-op">)</tt> </tt>
+<a name="L296"></a><tt class="py-lineno">296</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">string</tt> </tt>
+</div><a name="L297"></a><tt class="py-lineno">297</tt>  <tt class="py-line"> </tt>
+<a name="_SchemaToStruct.to_str"></a><div id="_SchemaToStruct.to_str-def"><a name="L298"></a><tt class="py-lineno">298</tt> <a class="py-toggle" href="#" id="_SchemaToStruct.to_str-toggle" onclick="return toggle('_SchemaToStruct.to_str');">-</a><tt class="py-line">  <tt class="py-keyword">def</tt> <a class="py-def-name" href="googleapiclient.schema._SchemaToStruct-class.html#to_str">to_str</a><tt class="py-op">(</tt><tt class="py-param">self</tt><tt class="py-op">,</tt> <tt class="py-param">from_cache</tt><tt class="py-op">)</tt><tt class="py-op">:</tt> </tt>
+</div><div id="_SchemaToStruct.to_str-collapsed" style="display:none;" pad="+++" indent="++++++"></div><div id="_SchemaToStruct.to_str-expanded"><a name="L299"></a><tt class="py-lineno">299</tt>  <tt class="py-line">    <tt class="py-docstring">"""Prototype object based on the schema, in Python code with comments.</tt> </tt>
+<a name="L300"></a><tt class="py-lineno">300</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L301"></a><tt class="py-lineno">301</tt>  <tt class="py-line"><tt class="py-docstring">    Args:</tt> </tt>
+<a name="L302"></a><tt class="py-lineno">302</tt>  <tt class="py-line"><tt class="py-docstring">      from_cache: callable(name, seen), Callable that retrieves an object</tt> </tt>
+<a name="L303"></a><tt class="py-lineno">303</tt>  <tt class="py-line"><tt class="py-docstring">         prototype for a schema with the given name. Seen is a list of schema</tt> </tt>
+<a name="L304"></a><tt class="py-lineno">304</tt>  <tt class="py-line"><tt class="py-docstring">         names already seen as we recursively descend the schema definition.</tt> </tt>
+<a name="L305"></a><tt class="py-lineno">305</tt>  <tt class="py-line"><tt class="py-docstring"></tt> </tt>
+<a name="L306"></a><tt class="py-lineno">306</tt>  <tt class="py-line"><tt class="py-docstring">    Returns:</tt> </tt>
+<a name="L307"></a><tt class="py-lineno">307</tt>  <tt class="py-line"><tt class="py-docstring">      Prototype object based on the schema, in Python code with comments.</tt> </tt>
+<a name="L308"></a><tt class="py-lineno">308</tt>  <tt class="py-line"><tt class="py-docstring">      The lines of the code will all be properly indented.</tt> </tt>
+<a name="L309"></a><tt class="py-lineno">309</tt>  <tt class="py-line"><tt class="py-docstring">    """</tt> </tt>
+<a name="L310"></a><tt class="py-lineno">310</tt>  <tt class="py-line">    <tt class="py-name">self</tt><tt class="py-op">.</tt><tt class="py-name">from_cache</tt> <tt class="py-op">=</tt> <tt class="py-name">from_cache</tt> </tt>
+<a name="L311"></a><tt class="py-lineno">311</tt>  <tt class="py-line">    <tt class="py-keyword">return</tt> <tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-74" class="py-name"><a title="googleapiclient.schema._SchemaToStruct._to_str_impl" class="py-name" href="#" onclick="return doclink('link-74', '_to_str_impl', 'link-24');">_to_str_impl</a></tt><tt class="py-op">(</tt><tt class="py-name">self</tt><tt class="py-op">.</tt><tt id="link-75" class="py-name"><a title="googleapiclient.schema" class="py-name" href="#" onclick="return doclink('link-75', 'schema', 'link-7');">schema</a></tt><tt class="py-op">)</tt> </tt>
+</div></div><a name="L312"></a><tt class="py-lineno">312</tt>  <tt class="py-line"> </tt><script type="text/javascript">
 <!--
 expandto(location.href);
 // -->
@@ -401,7 +400,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.schema.Schemas-class.html b/docs/epy/googleapiclient.schema.Schemas-class.html
index d0f618e..7327f15 100644
--- a/docs/epy/googleapiclient.schema.Schemas-class.html
+++ b/docs/epy/googleapiclient.schema.Schemas-class.html
@@ -485,7 +485,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/googleapiclient.schema._SchemaToStruct-class.html b/docs/epy/googleapiclient.schema._SchemaToStruct-class.html
index ff3dc88..75f40c8 100644
--- a/docs/epy/googleapiclient.schema._SchemaToStruct-class.html
+++ b/docs/epy/googleapiclient.schema._SchemaToStruct-class.html
@@ -509,7 +509,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:19 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:20 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/help.html b/docs/epy/help.html
index 857b524..d75f3cd 100644
--- a/docs/epy/help.html
+++ b/docs/epy/help.html
@@ -246,7 +246,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/identifier-index.html b/docs/epy/identifier-index.html
index fc00217..f52f7ca 100644
--- a/docs/epy/identifier-index.html
+++ b/docs/epy/identifier-index.html
@@ -878,7 +878,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/docs/epy/module-tree.html b/docs/epy/module-tree.html
index e934f60..04b81a9 100644
--- a/docs/epy/module-tree.html
+++ b/docs/epy/module-tree.html
@@ -94,7 +94,7 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%%">
   <tr>
     <td align="left" class="footer">
-    Generated by Epydoc 3.0.1 on Thu Aug 14 00:45:18 2014
+    Generated by Epydoc 3.0.1 on Wed Oct 15 10:24:19 2014
     </td>
     <td align="right" class="footer">
       <a target="mainFrame" href="http://epydoc.sourceforge.net"
diff --git a/googleapiclient/__init__.py b/googleapiclient/__init__.py
index 83862a5..898278d 100644
--- a/googleapiclient/__init__.py
+++ b/googleapiclient/__init__.py
@@ -12,4 +12,4 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
-__version__ = "1.2"
+__version__ = "1.3"
diff --git a/tools/gae-zip-creator.sh b/tools/gae-zip-creator.sh
index 5ffe1be..152d5f9 100755
--- a/tools/gae-zip-creator.sh
+++ b/tools/gae-zip-creator.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 #
-# Copyright 2014. Google Inc. All Rights Reserved.
+# Copyright 2014 Google Inc. All Rights Reserved.
 #
 # Generates a zip of the google api python client and dependencies.
 #
