Returns the files Resource.
create(parent, body=None, sizeBytes=None, versionId=None, x__xgafv=None)
Creates a new version for a site.
Deletes the specified version.
list(parent, filter=None, pageToken=None, pageSize=None, x__xgafv=None)
Lists the versions that have been created on the specified site.
list_next(previous_request, previous_response)
Retrieves the next page of results.
patch(name, body=None, updateMask=None, x__xgafv=None)
Updates the specified metadata for a version. Note that this method will
populateFiles(parent, body=None, x__xgafv=None)
Adds content files to a version.
create(parent, body=None, sizeBytes=None, versionId=None, x__xgafv=None)
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.
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.
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"deleteTime": "A String", # Output only. The time at which the version was `DELETED`.
"preview": { # Version preview configuration. If active and unexpired, # Version preview configuration for the site version. This configuration
# specfies whether previewing is enabled for this site version. Version
# previews allow you to preview your site at a custom URL before
# releasing it as the live version.
# this version will be accessible via a custom URL even
# if it is not the currently released version.
"active": True or False, # If true, preview URLs are enabled for this version.
"expireTime": "A String", # Indicates the expiration time for previewing this
# version; preview URL requests received after this time will 404.
},
"labels": { # The labels used for extra metadata and/or filtering.
"a_key": "A String",
},
"createTime": "A String", # Output only. The time at which the version was created.
"versionBytes": "A String", # Output only. The total stored bytesize of the version.
# <br>This value is calculated after a version is `FINALIZED`.
"finalizeTime": "A String", # Output only. The time at which the version was `FINALIZED`.
"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 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.
"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", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"statusCode": 42, # Required. The status HTTP code to return in the response. It must be a
# valid 3xx status code.
"regex": "A String", # The user-supplied RE2 regular expression 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>
},
],
"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.
"regex": "A String", # The user-supplied RE2 regular expression to match against the request
# URL path.
"glob": "A String", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"headers": { # Required. The additional headers to add to the response.
"a_key": "A String",
},
},
],
"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.
"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.
"regex": "A String", # The user-supplied RE2 regular expression to match against the request
# URL path.
"dynamicLinks": True or False, # The request will be forwarded to Firebase Dynamic Links.
"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.
},
"glob": "A String", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"path": "A String", # The URL path to rewrite the request to.
"function": "A String", # The function to proxy requests to. Must match the exported function
# name exactly.
},
],
},
"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.
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"fileCount": "A String", # Output only. The total number of files associated with the version.
# <br>This value is calculated after a version is `FINALIZED`.
}
sizeBytes: string, The self-reported size of the version. This value is used for a pre-emptive
quota check for legacy version uploads.
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
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.
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"deleteTime": "A String", # Output only. The time at which the version was `DELETED`.
"preview": { # Version preview configuration. If active and unexpired, # Version preview configuration for the site version. This configuration
# specfies whether previewing is enabled for this site version. Version
# previews allow you to preview your site at a custom URL before
# releasing it as the live version.
# this version will be accessible via a custom URL even
# if it is not the currently released version.
"active": True or False, # If true, preview URLs are enabled for this version.
"expireTime": "A String", # Indicates the expiration time for previewing this
# version; preview URL requests received after this time will 404.
},
"labels": { # The labels used for extra metadata and/or filtering.
"a_key": "A String",
},
"createTime": "A String", # Output only. The time at which the version was created.
"versionBytes": "A String", # Output only. The total stored bytesize of the version.
# <br>This value is calculated after a version is `FINALIZED`.
"finalizeTime": "A String", # Output only. The time at which the version was `FINALIZED`.
"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 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.
"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", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"statusCode": 42, # Required. The status HTTP code to return in the response. It must be a
# valid 3xx status code.
"regex": "A String", # The user-supplied RE2 regular expression 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>
},
],
"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.
"regex": "A String", # The user-supplied RE2 regular expression to match against the request
# URL path.
"glob": "A String", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"headers": { # Required. The additional headers to add to the response.
"a_key": "A String",
},
},
],
"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.
"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.
"regex": "A String", # The user-supplied RE2 regular expression to match against the request
# URL path.
"dynamicLinks": True or False, # The request will be forwarded to Firebase Dynamic Links.
"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.
},
"glob": "A String", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"path": "A String", # The URL path to rewrite the request to.
"function": "A String", # The function to proxy requests to. Must match the exported function
# name exactly.
},
],
},
"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.
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"fileCount": "A String", # Output only. The total number of files associated with the version.
# <br>This value is calculated after a version is `FINALIZED`.
}
delete(name, x__xgafv=None)
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 `{}`.
}
list(parent, filter=None, pageToken=None, pageSize=None, x__xgafv=None)
Lists the versions that have been created on the specified site.
Will include filtering in the future.
Args:
parent: string, Required. The parent for which to list files, in the format:
<code>sites/<var>site-name</var></code> (required)
filter: string, The filter string used to return a subset of versions in the response.
Currently supported fields for filtering are: name, status,
and create_time. Filter processing will be implemented in accordance
with go/filtering.
pageToken: string, The next_page_token from a previous request, if provided.
pageSize: integer, The maximum number of versions to return. The service may return fewer than
this value.
If unspecified, at most 25 versions will be returned.
The maximum value is 100; values above 100 will be coerced to 100
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{
"versions": [ # The list of versions, if any exist.
{ # A `Version` is the collection of configuration and
# [static files](sites.versions.files) that determine how a site is displayed.
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"deleteTime": "A String", # Output only. The time at which the version was `DELETED`.
"preview": { # Version preview configuration. If active and unexpired, # Version preview configuration for the site version. This configuration
# specfies whether previewing is enabled for this site version. Version
# previews allow you to preview your site at a custom URL before
# releasing it as the live version.
# this version will be accessible via a custom URL even
# if it is not the currently released version.
"active": True or False, # If true, preview URLs are enabled for this version.
"expireTime": "A String", # Indicates the expiration time for previewing this
# version; preview URL requests received after this time will 404.
},
"labels": { # The labels used for extra metadata and/or filtering.
"a_key": "A String",
},
"createTime": "A String", # Output only. The time at which the version was created.
"versionBytes": "A String", # Output only. The total stored bytesize of the version.
# <br>This value is calculated after a version is `FINALIZED`.
"finalizeTime": "A String", # Output only. The time at which the version was `FINALIZED`.
"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 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.
"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", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"statusCode": 42, # Required. The status HTTP code to return in the response. It must be a
# valid 3xx status code.
"regex": "A String", # The user-supplied RE2 regular expression 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>
},
],
"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.
"regex": "A String", # The user-supplied RE2 regular expression to match against the request
# URL path.
"glob": "A String", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"headers": { # Required. The additional headers to add to the response.
"a_key": "A String",
},
},
],
"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.
"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.
"regex": "A String", # The user-supplied RE2 regular expression to match against the request
# URL path.
"dynamicLinks": True or False, # The request will be forwarded to Firebase Dynamic Links.
"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.
},
"glob": "A String", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"path": "A String", # The URL path to rewrite the request to.
"function": "A String", # The function to proxy requests to. Must match the exported function
# name exactly.
},
],
},
"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.
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"fileCount": "A String", # Output only. The total number of files associated with the version.
# <br>This value is calculated after a version is `FINALIZED`.
},
],
"nextPageToken": "A String", # The pagination token, if more results exist
}
list_next(previous_request, previous_response)
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.
patch(name, body=None, updateMask=None, x__xgafv=None)
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.
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.
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"deleteTime": "A String", # Output only. The time at which the version was `DELETED`.
"preview": { # Version preview configuration. If active and unexpired, # Version preview configuration for the site version. This configuration
# specfies whether previewing is enabled for this site version. Version
# previews allow you to preview your site at a custom URL before
# releasing it as the live version.
# this version will be accessible via a custom URL even
# if it is not the currently released version.
"active": True or False, # If true, preview URLs are enabled for this version.
"expireTime": "A String", # Indicates the expiration time for previewing this
# version; preview URL requests received after this time will 404.
},
"labels": { # The labels used for extra metadata and/or filtering.
"a_key": "A String",
},
"createTime": "A String", # Output only. The time at which the version was created.
"versionBytes": "A String", # Output only. The total stored bytesize of the version.
# <br>This value is calculated after a version is `FINALIZED`.
"finalizeTime": "A String", # Output only. The time at which the version was `FINALIZED`.
"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 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.
"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", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"statusCode": 42, # Required. The status HTTP code to return in the response. It must be a
# valid 3xx status code.
"regex": "A String", # The user-supplied RE2 regular expression 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>
},
],
"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.
"regex": "A String", # The user-supplied RE2 regular expression to match against the request
# URL path.
"glob": "A String", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"headers": { # Required. The additional headers to add to the response.
"a_key": "A String",
},
},
],
"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.
"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.
"regex": "A String", # The user-supplied RE2 regular expression to match against the request
# URL path.
"dynamicLinks": True or False, # The request will be forwarded to Firebase Dynamic Links.
"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.
},
"glob": "A String", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"path": "A String", # The URL path to rewrite the request to.
"function": "A String", # The function to proxy requests to. Must match the exported function
# name exactly.
},
],
},
"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.
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"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.
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"deleteTime": "A String", # Output only. The time at which the version was `DELETED`.
"preview": { # Version preview configuration. If active and unexpired, # Version preview configuration for the site version. This configuration
# specfies whether previewing is enabled for this site version. Version
# previews allow you to preview your site at a custom URL before
# releasing it as the live version.
# this version will be accessible via a custom URL even
# if it is not the currently released version.
"active": True or False, # If true, preview URLs are enabled for this version.
"expireTime": "A String", # Indicates the expiration time for previewing this
# version; preview URL requests received after this time will 404.
},
"labels": { # The labels used for extra metadata and/or filtering.
"a_key": "A String",
},
"createTime": "A String", # Output only. The time at which the version was created.
"versionBytes": "A String", # Output only. The total stored bytesize of the version.
# <br>This value is calculated after a version is `FINALIZED`.
"finalizeTime": "A String", # Output only. The time at which the version was `FINALIZED`.
"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 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.
"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", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"statusCode": 42, # Required. The status HTTP code to return in the response. It must be a
# valid 3xx status code.
"regex": "A String", # The user-supplied RE2 regular expression 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>
},
],
"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.
"regex": "A String", # The user-supplied RE2 regular expression to match against the request
# URL path.
"glob": "A String", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"headers": { # Required. The additional headers to add to the response.
"a_key": "A String",
},
},
],
"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.
"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.
"regex": "A String", # The user-supplied RE2 regular expression to match against the request
# URL path.
"dynamicLinks": True or False, # The request will be forwarded to Firebase Dynamic Links.
"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.
},
"glob": "A String", # The user-supplied [glob
# pattern](/docs/hosting/full-config#glob_pattern_matching) to match
# against the request URL path.
"path": "A String", # The URL path to rewrite the request to.
"function": "A String", # The function to proxy requests to. Must match the exported function
# name exactly.
},
],
},
"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.
"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.
"email": "A String", # The email address of the user when the user performed the action.
"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.
},
"fileCount": "A String", # Output only. The total number of files associated with the version.
# <br>This value is calculated after a version is `FINALIZED`.
}
populateFiles(parent, body=None, x__xgafv=None)
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.
The object takes the form of:
{ # The request to populate a Version's Files.
"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.
}