Regen all docs. (#700)

* Stop recursing if discovery == {}

* Generate docs with 'make docs'.
diff --git a/docs/dyn/firebasehosting_v1beta1.sites.versions.html b/docs/dyn/firebasehosting_v1beta1.sites.versions.html
new file mode 100644
index 0000000..2aea919
--- /dev/null
+++ b/docs/dyn/firebasehosting_v1beta1.sites.versions.html
@@ -0,0 +1,675 @@
+<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="firebasehosting_v1beta1.html">Firebase Hosting API</a> . <a href="firebasehosting_v1beta1.sites.html">sites</a> . <a href="firebasehosting_v1beta1.sites.versions.html">versions</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+  <code><a href="firebasehosting_v1beta1.sites.versions.files.html">files()</a></code>
+</p>
+<p class="firstline">Returns the files Resource.</p>
+
+<p class="toc_element">
+  <code><a href="#create">create(parent, body, versionId=None, x__xgafv=None, sizeBytes=None)</a></code></p>
+<p class="firstline">Creates a new version for a site.</p>
+<p class="toc_element">
+  <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
+<p class="firstline">Deletes the specified version.</p>
+<p class="toc_element">
+  <code><a href="#patch">patch(name, body, updateMask=None, x__xgafv=None)</a></code></p>
+<p class="firstline">Updates the specified metadata for a version. Note that this method will</p>
+<p class="toc_element">
+  <code><a href="#populateFiles">populateFiles(parent, body, x__xgafv=None)</a></code></p>
+<p class="firstline">Adds content files to a version.</p>
+<h3>Method Details</h3>
+<div class="method">
+    <code class="details" id="create">create(parent, body, versionId=None, x__xgafv=None, sizeBytes=None)</code>
+  <pre>Creates a new version for a site.
+
+Args:
+  parent: string, Required. The parent to create the version for, in the format:
+<code>sites/<var>site-name</var></code> (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A `Version` is the collection of configuration and
+    # [static files](sites.versions.files) that determine how a site is displayed.
+  "status": "A String", # The deploy status of a version.
+      # <br>
+      # <br>For a successful deploy, call the
+      # [`CreateVersion`](sites.versions/create) endpoint to make a new version
+      # (`CREATED` status),
+      # [upload all desired files](sites.versions/populateFiles) to the version,
+      # then [update](sites.versions/patch) the version to the `FINALIZED` status.
+      # <br>
+      # <br>Note that if you leave the version in the `CREATED` state for more
+      # than 12&nbsp;hours, the system will automatically mark the version as
+      # `ABANDONED`.
+      # <br>
+      # <br>You can also change the status of a version to `DELETED` by calling the
+      # [`DeleteVersion`](sites.versions/delete) endpoint.
+  "deleteUser": { # Contains metadata about the user who performed an action, such as creating # Output only. Identifies the user who `DELETED` the version.
+      # a release or finalizing a version.
+    "imageUrl": "A String", # A profile image URL for the user. May not be present if the user has
+        # changed their email address or deleted their account.
+    "email": "A String", # The email address of the user when the user performed the action.
+  },
+  "name": "A String", # The unique identifier for a version, in the format:
+      # <code>sites/<var>site-name</var>/versions/<var>versionID</var></code>
+      # This name is provided in the response body when you call the
+      # [`CreateVersion`](../sites.versions/create) endpoint.
+  "versionBytes": "A String", # Output only. The total stored bytesize of the version.
+      # <br>This value is calculated after a version is `FINALIZED`.
+  "labels": { # The labels used for extra metadata and/or filtering.
+    "a_key": "A String",
+  },
+  "finalizeUser": { # Contains metadata about the user who performed an action, such as creating # Output only. Identifies the user who `FINALIZED` the version.
+      # a release or finalizing a version.
+    "imageUrl": "A String", # A profile image URL for the user. May not be present if the user has
+        # changed their email address or deleted their account.
+    "email": "A String", # The email address of the user when the user performed the action.
+  },
+  "finalizeTime": "A String", # Output only. The time at which the version was `FINALIZED`.
+  "deleteTime": "A String", # Output only. The time at which the version was `DELETED`.
+  "createUser": { # Contains metadata about the user who performed an action, such as creating # Output only. Identifies the user who created the version.
+      # a release or finalizing a version.
+    "imageUrl": "A String", # A profile image URL for the user. May not be present if the user has
+        # changed their email address or deleted their account.
+    "email": "A String", # The email address of the user when the user performed the action.
+  },
+  "config": { # The configuration for how incoming requests to a site should be routed and # The configuration for the behavior of the site. This configuration exists
+      # in the [`firebase.json`](/docs/cli/#the_firebasejson_file) file.
+      # processed before serving content. The patterns are matched and applied
+      # according to a specific
+      # [priority order](/docs/hosting/full-config#hosting_priority_order).
+    "redirects": [ # A list of globs that will cause the response to redirect to another
+        # location.
+      { # A [`redirect`](/docs/hosting/full-config#redirects) represents the
+          # configuration for returning an HTTP redirect response given a matching
+          # request URL path.
+        "glob": "A String", # Required. The user-supplied
+            # [glob pattern](/docs/hosting/full-config#glob_pattern_matching) to match
+            # against the request URL path.
+        "location": "A String", # Required. The value to put in the HTTP location header of the response.
+            # <br>The location can contain capture group values from the pattern using
+            # a `:` prefix to identify the segment and an optional `*` to capture the
+            # rest of the URL.
+            # For example:
+            # <code>"glob": "/:capture*",
+            # <br>"statusCode": 301,
+            # <br>"location": "https://example.com/foo/:capture"</code>
+        "statusCode": 42, # Required. The status HTTP code to return in the response. It must be a
+            # valid 3xx status code.
+      },
+    ],
+    "appAssociation": "A String", # How to handle well known App Association files.
+    "trailingSlashBehavior": "A String", # Defines how to handle a trailing slash in the URL path.
+    "cleanUrls": True or False, # Defines whether to drop the file extension from uploaded files.
+    "headers": [ # A list of custom response headers that are added to the content if the
+        # request URL path matches the glob.
+      { # A [`header`](/docs/hosting/full-config#headers) defines custom headers to
+          # add to a response should the request URL path match the pattern.
+        "headers": { # Required. The additional headers to add to the response.
+          "a_key": "A String",
+        },
+        "glob": "A String", # Required. The user-supplied
+            # [glob pattern](/docs/hosting/full-config#glob_pattern_matching) to match
+            # against the request URL path.
+      },
+    ],
+    "rewrites": [ # A list of rewrites that will act as if the service were given the
+        # destination URL.
+      { # A [`rewrite`](/docs/hosting/full-config#rewrites) represents an internal
+          # content rewrite on the version. If the pattern matches, the request will be
+          # handled as if it were to the destination path specified in the
+          # configuration.
+        "function": "A String", # The function to proxy requests to. Must match the exported function
+            # name exactly.
+        "path": "A String", # The URL path to rewrite the request to.
+        "glob": "A String", # Required. The user-supplied
+            # [glob pattern](/docs/hosting/full-config#glob_pattern_matching) to match
+            # against the request URL path.
+        "run": { # A configured rewrite that directs requests to a Cloud Run service. If the # The request will be forwarded to Cloud Run.
+            # Cloud Run service does not exist when setting or updating your Firebase
+            # Hosting configuration, then the request fails. Any errors from the Cloud Run
+            # service are passed to the end user (for example, if you delete a service, any
+            # requests directed to that service receive a `404` error).
+          "region": "A String", # Optional. User-provided region where the Cloud Run service is hosted.<br>
+              # Defaults to `us-central1` if not supplied.
+          "serviceId": "A String", # Required. User-defined ID of the Cloud Run service.
+        },
+        "dynamicLinks": True or False, # The request will be forwarded to Firebase Dynamic Links.
+      },
+    ],
+  },
+  "createTime": "A String", # Output only. The time at which the version was created.
+  "fileCount": "A String", # Output only. The total number of files associated with the version.
+      # <br>This value is calculated after a version is `FINALIZED`.
+}
+
+  versionId: string, A unique id for the new version. This is only specified for legacy version
+creations.
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+  sizeBytes: string, The self-reported size of the version. This value is used for a pre-emptive
+quota check for legacy version uploads.
+
+Returns:
+  An object of the form:
+
+    { # A `Version` is the collection of configuration and
+      # [static files](sites.versions.files) that determine how a site is displayed.
+    "status": "A String", # The deploy status of a version.
+        # <br>
+        # <br>For a successful deploy, call the
+        # [`CreateVersion`](sites.versions/create) endpoint to make a new version
+        # (`CREATED` status),
+        # [upload all desired files](sites.versions/populateFiles) to the version,
+        # then [update](sites.versions/patch) the version to the `FINALIZED` status.
+        # <br>
+        # <br>Note that if you leave the version in the `CREATED` state for more
+        # than 12&nbsp;hours, the system will automatically mark the version as
+        # `ABANDONED`.
+        # <br>
+        # <br>You can also change the status of a version to `DELETED` by calling the
+        # [`DeleteVersion`](sites.versions/delete) endpoint.
+    "deleteUser": { # Contains metadata about the user who performed an action, such as creating # Output only. Identifies the user who `DELETED` the version.
+        # a release or finalizing a version.
+      "imageUrl": "A String", # A profile image URL for the user. May not be present if the user has
+          # changed their email address or deleted their account.
+      "email": "A String", # The email address of the user when the user performed the action.
+    },
+    "name": "A String", # The unique identifier for a version, in the format:
+        # <code>sites/<var>site-name</var>/versions/<var>versionID</var></code>
+        # This name is provided in the response body when you call the
+        # [`CreateVersion`](../sites.versions/create) endpoint.
+    "versionBytes": "A String", # Output only. The total stored bytesize of the version.
+        # <br>This value is calculated after a version is `FINALIZED`.
+    "labels": { # The labels used for extra metadata and/or filtering.
+      "a_key": "A String",
+    },
+    "finalizeUser": { # Contains metadata about the user who performed an action, such as creating # Output only. Identifies the user who `FINALIZED` the version.
+        # a release or finalizing a version.
+      "imageUrl": "A String", # A profile image URL for the user. May not be present if the user has
+          # changed their email address or deleted their account.
+      "email": "A String", # The email address of the user when the user performed the action.
+    },
+    "finalizeTime": "A String", # Output only. The time at which the version was `FINALIZED`.
+    "deleteTime": "A String", # Output only. The time at which the version was `DELETED`.
+    "createUser": { # Contains metadata about the user who performed an action, such as creating # Output only. Identifies the user who created the version.
+        # a release or finalizing a version.
+      "imageUrl": "A String", # A profile image URL for the user. May not be present if the user has
+          # changed their email address or deleted their account.
+      "email": "A String", # The email address of the user when the user performed the action.
+    },
+    "config": { # The configuration for how incoming requests to a site should be routed and # The configuration for the behavior of the site. This configuration exists
+        # in the [`firebase.json`](/docs/cli/#the_firebasejson_file) file.
+        # processed before serving content. The patterns are matched and applied
+        # according to a specific
+        # [priority order](/docs/hosting/full-config#hosting_priority_order).
+      "redirects": [ # A list of globs that will cause the response to redirect to another
+          # location.
+        { # A [`redirect`](/docs/hosting/full-config#redirects) represents the
+            # configuration for returning an HTTP redirect response given a matching
+            # request URL path.
+          "glob": "A String", # Required. The user-supplied
+              # [glob pattern](/docs/hosting/full-config#glob_pattern_matching) to match
+              # against the request URL path.
+          "location": "A String", # Required. The value to put in the HTTP location header of the response.
+              # <br>The location can contain capture group values from the pattern using
+              # a `:` prefix to identify the segment and an optional `*` to capture the
+              # rest of the URL.
+              # For example:
+              # <code>"glob": "/:capture*",
+              # <br>"statusCode": 301,
+              # <br>"location": "https://example.com/foo/:capture"</code>
+          "statusCode": 42, # Required. The status HTTP code to return in the response. It must be a
+              # valid 3xx status code.
+        },
+      ],
+      "appAssociation": "A String", # How to handle well known App Association files.
+      "trailingSlashBehavior": "A String", # Defines how to handle a trailing slash in the URL path.
+      "cleanUrls": True or False, # Defines whether to drop the file extension from uploaded files.
+      "headers": [ # A list of custom response headers that are added to the content if the
+          # request URL path matches the glob.
+        { # A [`header`](/docs/hosting/full-config#headers) defines custom headers to
+            # add to a response should the request URL path match the pattern.
+          "headers": { # Required. The additional headers to add to the response.
+            "a_key": "A String",
+          },
+          "glob": "A String", # Required. The user-supplied
+              # [glob pattern](/docs/hosting/full-config#glob_pattern_matching) to match
+              # against the request URL path.
+        },
+      ],
+      "rewrites": [ # A list of rewrites that will act as if the service were given the
+          # destination URL.
+        { # A [`rewrite`](/docs/hosting/full-config#rewrites) represents an internal
+            # content rewrite on the version. If the pattern matches, the request will be
+            # handled as if it were to the destination path specified in the
+            # configuration.
+          "function": "A String", # The function to proxy requests to. Must match the exported function
+              # name exactly.
+          "path": "A String", # The URL path to rewrite the request to.
+          "glob": "A String", # Required. The user-supplied
+              # [glob pattern](/docs/hosting/full-config#glob_pattern_matching) to match
+              # against the request URL path.
+          "run": { # A configured rewrite that directs requests to a Cloud Run service. If the # The request will be forwarded to Cloud Run.
+              # Cloud Run service does not exist when setting or updating your Firebase
+              # Hosting configuration, then the request fails. Any errors from the Cloud Run
+              # service are passed to the end user (for example, if you delete a service, any
+              # requests directed to that service receive a `404` error).
+            "region": "A String", # Optional. User-provided region where the Cloud Run service is hosted.<br>
+                # Defaults to `us-central1` if not supplied.
+            "serviceId": "A String", # Required. User-defined ID of the Cloud Run service.
+          },
+          "dynamicLinks": True or False, # The request will be forwarded to Firebase Dynamic Links.
+        },
+      ],
+    },
+    "createTime": "A String", # Output only. The time at which the version was created.
+    "fileCount": "A String", # Output only. The total number of files associated with the version.
+        # <br>This value is calculated after a version is `FINALIZED`.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="delete">delete(name, x__xgafv=None)</code>
+  <pre>Deletes the specified version.
+
+Args:
+  name: string, Required. The name of the version to be deleted, in the format:
+<code>sites/<var>site-name</var>/versions/<var>versionID</var></code> (required)
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # A generic empty message that you can re-use to avoid defining duplicated
+      # empty messages in your APIs. A typical example is to use it as the request
+      # or the response type of an API method. For instance:
+      #
+      #     service Foo {
+      #       rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
+      #     }
+      #
+      # The JSON representation for `Empty` is empty JSON object `{}`.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="patch">patch(name, body, updateMask=None, x__xgafv=None)</code>
+  <pre>Updates the specified metadata for a version. Note that this method will
+fail with `FAILED_PRECONDITION` in the event of an invalid state
+transition. The only valid transition for a version is currently from a
+`CREATED` status to a `FINALIZED` status.
+Use [`DeleteVersion`](../sites.versions/delete) to set the status of a
+version to `DELETED`.
+
+Args:
+  name: string, The unique identifier for a version, in the format:
+<code>sites/<var>site-name</var>/versions/<var>versionID</var></code>
+This name is provided in the response body when you call the
+[`CreateVersion`](../sites.versions/create) endpoint. (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{ # A `Version` is the collection of configuration and
+    # [static files](sites.versions.files) that determine how a site is displayed.
+  "status": "A String", # The deploy status of a version.
+      # <br>
+      # <br>For a successful deploy, call the
+      # [`CreateVersion`](sites.versions/create) endpoint to make a new version
+      # (`CREATED` status),
+      # [upload all desired files](sites.versions/populateFiles) to the version,
+      # then [update](sites.versions/patch) the version to the `FINALIZED` status.
+      # <br>
+      # <br>Note that if you leave the version in the `CREATED` state for more
+      # than 12&nbsp;hours, the system will automatically mark the version as
+      # `ABANDONED`.
+      # <br>
+      # <br>You can also change the status of a version to `DELETED` by calling the
+      # [`DeleteVersion`](sites.versions/delete) endpoint.
+  "deleteUser": { # Contains metadata about the user who performed an action, such as creating # Output only. Identifies the user who `DELETED` the version.
+      # a release or finalizing a version.
+    "imageUrl": "A String", # A profile image URL for the user. May not be present if the user has
+        # changed their email address or deleted their account.
+    "email": "A String", # The email address of the user when the user performed the action.
+  },
+  "name": "A String", # The unique identifier for a version, in the format:
+      # <code>sites/<var>site-name</var>/versions/<var>versionID</var></code>
+      # This name is provided in the response body when you call the
+      # [`CreateVersion`](../sites.versions/create) endpoint.
+  "versionBytes": "A String", # Output only. The total stored bytesize of the version.
+      # <br>This value is calculated after a version is `FINALIZED`.
+  "labels": { # The labels used for extra metadata and/or filtering.
+    "a_key": "A String",
+  },
+  "finalizeUser": { # Contains metadata about the user who performed an action, such as creating # Output only. Identifies the user who `FINALIZED` the version.
+      # a release or finalizing a version.
+    "imageUrl": "A String", # A profile image URL for the user. May not be present if the user has
+        # changed their email address or deleted their account.
+    "email": "A String", # The email address of the user when the user performed the action.
+  },
+  "finalizeTime": "A String", # Output only. The time at which the version was `FINALIZED`.
+  "deleteTime": "A String", # Output only. The time at which the version was `DELETED`.
+  "createUser": { # Contains metadata about the user who performed an action, such as creating # Output only. Identifies the user who created the version.
+      # a release or finalizing a version.
+    "imageUrl": "A String", # A profile image URL for the user. May not be present if the user has
+        # changed their email address or deleted their account.
+    "email": "A String", # The email address of the user when the user performed the action.
+  },
+  "config": { # The configuration for how incoming requests to a site should be routed and # The configuration for the behavior of the site. This configuration exists
+      # in the [`firebase.json`](/docs/cli/#the_firebasejson_file) file.
+      # processed before serving content. The patterns are matched and applied
+      # according to a specific
+      # [priority order](/docs/hosting/full-config#hosting_priority_order).
+    "redirects": [ # A list of globs that will cause the response to redirect to another
+        # location.
+      { # A [`redirect`](/docs/hosting/full-config#redirects) represents the
+          # configuration for returning an HTTP redirect response given a matching
+          # request URL path.
+        "glob": "A String", # Required. The user-supplied
+            # [glob pattern](/docs/hosting/full-config#glob_pattern_matching) to match
+            # against the request URL path.
+        "location": "A String", # Required. The value to put in the HTTP location header of the response.
+            # <br>The location can contain capture group values from the pattern using
+            # a `:` prefix to identify the segment and an optional `*` to capture the
+            # rest of the URL.
+            # For example:
+            # <code>"glob": "/:capture*",
+            # <br>"statusCode": 301,
+            # <br>"location": "https://example.com/foo/:capture"</code>
+        "statusCode": 42, # Required. The status HTTP code to return in the response. It must be a
+            # valid 3xx status code.
+      },
+    ],
+    "appAssociation": "A String", # How to handle well known App Association files.
+    "trailingSlashBehavior": "A String", # Defines how to handle a trailing slash in the URL path.
+    "cleanUrls": True or False, # Defines whether to drop the file extension from uploaded files.
+    "headers": [ # A list of custom response headers that are added to the content if the
+        # request URL path matches the glob.
+      { # A [`header`](/docs/hosting/full-config#headers) defines custom headers to
+          # add to a response should the request URL path match the pattern.
+        "headers": { # Required. The additional headers to add to the response.
+          "a_key": "A String",
+        },
+        "glob": "A String", # Required. The user-supplied
+            # [glob pattern](/docs/hosting/full-config#glob_pattern_matching) to match
+            # against the request URL path.
+      },
+    ],
+    "rewrites": [ # A list of rewrites that will act as if the service were given the
+        # destination URL.
+      { # A [`rewrite`](/docs/hosting/full-config#rewrites) represents an internal
+          # content rewrite on the version. If the pattern matches, the request will be
+          # handled as if it were to the destination path specified in the
+          # configuration.
+        "function": "A String", # The function to proxy requests to. Must match the exported function
+            # name exactly.
+        "path": "A String", # The URL path to rewrite the request to.
+        "glob": "A String", # Required. The user-supplied
+            # [glob pattern](/docs/hosting/full-config#glob_pattern_matching) to match
+            # against the request URL path.
+        "run": { # A configured rewrite that directs requests to a Cloud Run service. If the # The request will be forwarded to Cloud Run.
+            # Cloud Run service does not exist when setting or updating your Firebase
+            # Hosting configuration, then the request fails. Any errors from the Cloud Run
+            # service are passed to the end user (for example, if you delete a service, any
+            # requests directed to that service receive a `404` error).
+          "region": "A String", # Optional. User-provided region where the Cloud Run service is hosted.<br>
+              # Defaults to `us-central1` if not supplied.
+          "serviceId": "A String", # Required. User-defined ID of the Cloud Run service.
+        },
+        "dynamicLinks": True or False, # The request will be forwarded to Firebase Dynamic Links.
+      },
+    ],
+  },
+  "createTime": "A String", # Output only. The time at which the version was created.
+  "fileCount": "A String", # Output only. The total number of files associated with the version.
+      # <br>This value is calculated after a version is `FINALIZED`.
+}
+
+  updateMask: string, A set of field names from your [version](../sites.versions) that you want
+to update.
+<br>A field will be overwritten if, and only if, it's in the mask.
+<br>If a mask is not provided then a default mask of only
+[`status`](../sites.versions#Version.FIELDS.status) will be used.
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    { # A `Version` is the collection of configuration and
+      # [static files](sites.versions.files) that determine how a site is displayed.
+    "status": "A String", # The deploy status of a version.
+        # <br>
+        # <br>For a successful deploy, call the
+        # [`CreateVersion`](sites.versions/create) endpoint to make a new version
+        # (`CREATED` status),
+        # [upload all desired files](sites.versions/populateFiles) to the version,
+        # then [update](sites.versions/patch) the version to the `FINALIZED` status.
+        # <br>
+        # <br>Note that if you leave the version in the `CREATED` state for more
+        # than 12&nbsp;hours, the system will automatically mark the version as
+        # `ABANDONED`.
+        # <br>
+        # <br>You can also change the status of a version to `DELETED` by calling the
+        # [`DeleteVersion`](sites.versions/delete) endpoint.
+    "deleteUser": { # Contains metadata about the user who performed an action, such as creating # Output only. Identifies the user who `DELETED` the version.
+        # a release or finalizing a version.
+      "imageUrl": "A String", # A profile image URL for the user. May not be present if the user has
+          # changed their email address or deleted their account.
+      "email": "A String", # The email address of the user when the user performed the action.
+    },
+    "name": "A String", # The unique identifier for a version, in the format:
+        # <code>sites/<var>site-name</var>/versions/<var>versionID</var></code>
+        # This name is provided in the response body when you call the
+        # [`CreateVersion`](../sites.versions/create) endpoint.
+    "versionBytes": "A String", # Output only. The total stored bytesize of the version.
+        # <br>This value is calculated after a version is `FINALIZED`.
+    "labels": { # The labels used for extra metadata and/or filtering.
+      "a_key": "A String",
+    },
+    "finalizeUser": { # Contains metadata about the user who performed an action, such as creating # Output only. Identifies the user who `FINALIZED` the version.
+        # a release or finalizing a version.
+      "imageUrl": "A String", # A profile image URL for the user. May not be present if the user has
+          # changed their email address or deleted their account.
+      "email": "A String", # The email address of the user when the user performed the action.
+    },
+    "finalizeTime": "A String", # Output only. The time at which the version was `FINALIZED`.
+    "deleteTime": "A String", # Output only. The time at which the version was `DELETED`.
+    "createUser": { # Contains metadata about the user who performed an action, such as creating # Output only. Identifies the user who created the version.
+        # a release or finalizing a version.
+      "imageUrl": "A String", # A profile image URL for the user. May not be present if the user has
+          # changed their email address or deleted their account.
+      "email": "A String", # The email address of the user when the user performed the action.
+    },
+    "config": { # The configuration for how incoming requests to a site should be routed and # The configuration for the behavior of the site. This configuration exists
+        # in the [`firebase.json`](/docs/cli/#the_firebasejson_file) file.
+        # processed before serving content. The patterns are matched and applied
+        # according to a specific
+        # [priority order](/docs/hosting/full-config#hosting_priority_order).
+      "redirects": [ # A list of globs that will cause the response to redirect to another
+          # location.
+        { # A [`redirect`](/docs/hosting/full-config#redirects) represents the
+            # configuration for returning an HTTP redirect response given a matching
+            # request URL path.
+          "glob": "A String", # Required. The user-supplied
+              # [glob pattern](/docs/hosting/full-config#glob_pattern_matching) to match
+              # against the request URL path.
+          "location": "A String", # Required. The value to put in the HTTP location header of the response.
+              # <br>The location can contain capture group values from the pattern using
+              # a `:` prefix to identify the segment and an optional `*` to capture the
+              # rest of the URL.
+              # For example:
+              # <code>"glob": "/:capture*",
+              # <br>"statusCode": 301,
+              # <br>"location": "https://example.com/foo/:capture"</code>
+          "statusCode": 42, # Required. The status HTTP code to return in the response. It must be a
+              # valid 3xx status code.
+        },
+      ],
+      "appAssociation": "A String", # How to handle well known App Association files.
+      "trailingSlashBehavior": "A String", # Defines how to handle a trailing slash in the URL path.
+      "cleanUrls": True or False, # Defines whether to drop the file extension from uploaded files.
+      "headers": [ # A list of custom response headers that are added to the content if the
+          # request URL path matches the glob.
+        { # A [`header`](/docs/hosting/full-config#headers) defines custom headers to
+            # add to a response should the request URL path match the pattern.
+          "headers": { # Required. The additional headers to add to the response.
+            "a_key": "A String",
+          },
+          "glob": "A String", # Required. The user-supplied
+              # [glob pattern](/docs/hosting/full-config#glob_pattern_matching) to match
+              # against the request URL path.
+        },
+      ],
+      "rewrites": [ # A list of rewrites that will act as if the service were given the
+          # destination URL.
+        { # A [`rewrite`](/docs/hosting/full-config#rewrites) represents an internal
+            # content rewrite on the version. If the pattern matches, the request will be
+            # handled as if it were to the destination path specified in the
+            # configuration.
+          "function": "A String", # The function to proxy requests to. Must match the exported function
+              # name exactly.
+          "path": "A String", # The URL path to rewrite the request to.
+          "glob": "A String", # Required. The user-supplied
+              # [glob pattern](/docs/hosting/full-config#glob_pattern_matching) to match
+              # against the request URL path.
+          "run": { # A configured rewrite that directs requests to a Cloud Run service. If the # The request will be forwarded to Cloud Run.
+              # Cloud Run service does not exist when setting or updating your Firebase
+              # Hosting configuration, then the request fails. Any errors from the Cloud Run
+              # service are passed to the end user (for example, if you delete a service, any
+              # requests directed to that service receive a `404` error).
+            "region": "A String", # Optional. User-provided region where the Cloud Run service is hosted.<br>
+                # Defaults to `us-central1` if not supplied.
+            "serviceId": "A String", # Required. User-defined ID of the Cloud Run service.
+          },
+          "dynamicLinks": True or False, # The request will be forwarded to Firebase Dynamic Links.
+        },
+      ],
+    },
+    "createTime": "A String", # Output only. The time at which the version was created.
+    "fileCount": "A String", # Output only. The total number of files associated with the version.
+        # <br>This value is calculated after a version is `FINALIZED`.
+  }</pre>
+</div>
+
+<div class="method">
+    <code class="details" id="populateFiles">populateFiles(parent, body, x__xgafv=None)</code>
+  <pre>Adds content files to a version.
+
+Args:
+  parent: string, Required. The version to add files to, in the format:
+<code>sites/<var>site-name</var>/versions/<var>versionID</var></code> (required)
+  body: object, The request body. (required)
+    The object takes the form of:
+
+{
+    "files": { # A set of file paths to the hashes corresponding to assets that should be
+        # added to the version. Note that a file path to an empty hash will remove
+        # the path from the version. Calculate a hash by Gzipping the file then
+        # taking the SHA256 hash of the newly compressed file.
+      "a_key": "A String",
+    },
+  }
+
+  x__xgafv: string, V1 error format.
+    Allowed values
+      1 - v1 error format
+      2 - v2 error format
+
+Returns:
+  An object of the form:
+
+    {
+    "uploadRequiredHashes": [ # The content hashes of the specified files that need to be uploaded to the
+        # specified endpoint.
+      "A String",
+    ],
+    "uploadUrl": "A String", # The URL to which the files should be uploaded, in the format:
+        # <br>"https://upload-firebasehosting.googleapis.com/upload/sites/<var>site-name</var>/versions/<var>versionID</var>/files".
+        # <br>Perform a multipart `POST` of the Gzipped file contents to the URL
+        # using a forward slash and the hash of the file appended to the end.
+  }</pre>
+</div>
+
+</body></html>
\ No newline at end of file