REST Resource: sites.versions

Recurso: Version

Un Version es una configuración y una colección de archivos estáticos que determinan cómo se muestra un sitio.

Representación JSON
{
  "name": string,
  "status": enum (VersionStatus),
  "config": {
    object (ServingConfig)
  },
  "labels": {
    string: string,
    ...
  },
  "createTime": string,
  "createUser": {
    object (ActingUser)
  },
  "finalizeTime": string,
  "finalizeUser": {
    object (ActingUser)
  },
  "deleteTime": string,
  "deleteUser": {
    object (ActingUser)
  },
  "fileCount": string,
  "versionBytes": string
}
Campos
name

string

El nombre del recurso completamente calificado para la versión, en el formato:

sites/SITE_ID/versions/VERSION_ID

Este nombre se proporciona en el cuerpo de la respuesta cuando llamas a versions.create.

status

enum (VersionStatus)

El estado de implementación de la versión.

Para que la implementación se realice correctamente, llama a versions.create para crear una versión nueva (estado CREATED), sube todos los archivos deseados a la versión y, luego, actualiza la versión al estado FINALIZED.

Ten en cuenta que, si dejas la versión en el estado CREATED por más de 12 horas, el sistema la marcará automáticamente como ABANDONED.

También puedes cambiar el estado de una versión a DELETED llamando a versions.delete.

config

object (ServingConfig)

Es la configuración del comportamiento del sitio. Esta configuración existe en el archivo firebase.json.

labels

map (key: string, value: string)

Las etiquetas que se usan para metadatos adicionales o filtros.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

string (Timestamp format)

Solo salida. La hora en la que se creó la versión.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

createUser

object (ActingUser)

Solo salida. Identifica al usuario que creó la versión.

finalizeTime

string (Timestamp format)

Solo salida. La hora en la que el estado de la versión cambió a FINALIZED.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

finalizeUser

object (ActingUser)

Solo salida. Identifica al usuario que cambió el estado de la versión a FINALIZED.

deleteTime

string (Timestamp format)

Solo salida. La hora en la que el estado de la versión cambió a DELETED.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

deleteUser

object (ActingUser)

Solo salida. Identifica al usuario que cambió el estado de la versión a DELETED.

fileCount

string (int64 format)

Solo salida. La cantidad total de archivos asociados con la versión.

Este valor se calcula después de que el estado de una versión se cambió a FINALIZED.

versionBytes

string (int64 format)

Solo salida. El tamaño total de bytes almacenados de la versión.

Este valor se calcula después de que el estado de una versión se cambió a FINALIZED.

VersionStatus

El estado conocido actual de una versión específica en el ciclo de vida de la implementación.

Enums
VERSION_STATUS_UNSPECIFIED El estado predeterminado; no debe usarse de forma intencional.
CREATED Se creó la versión y actualmente se está agregando contenido a esta.
FINALIZED Todo el contenido se agregó a la versión y esta ya no se puede cambiar.
DELETED Se borró la versión.
ABANDONED La versión no se actualizó a FINALIZED en un período de 12 horas y se borró automáticamente.
EXPIRED La versión está fuera del límite configurado por el sitio para el número de versiones retenidas, por lo que el contenido de la versión está programado para su eliminación.
CLONING La versión se está clonando de otra versión. Aún se está copiando todo el contenido.

ServingConfig

La configuración de la forma en que se deben enrutar y procesar las solicitudes entrantes a un sitio antes de entregar el contenido. Las rutas de solicitud de URL se comparan con los patrones de URL especificados en la configuración. Luego, Hosting aplica la configuración aplicable según un orden de prioridad específico.

Representación JSON
{
  "headers": [
    {
      object (Header)
    }
  ],
  "redirects": [
    {
      object (Redirect)
    }
  ],
  "rewrites": [
    {
      object (Rewrite)
    }
  ],
  "cleanUrls": boolean,
  "trailingSlashBehavior": enum (TrailingSlashBehavior),
  "i18n": {
    object (I18nConfig)
  }
}
Campos
headers[]

object (Header)

Un array de objetos, en el que cada objeto especifica un patrón de URL que activa Hosting para aplicar los encabezados de respuesta personalizados especificados si coincide con la ruta de URL de la solicitud.

redirects[]

object (Redirect)

Un array de objetos (llamados reglas de redireccionamiento), en el que cada regla especifica un patrón de URL que, si coincide con la ruta de URL de la solicitud, activa Hosting para que responda con un redireccionamiento a la ruta de destino especificada.

rewrites[]

object (Rewrite)

Un array de objetos (llamados reglas de reescritura), en el que cada regla especifica un patrón de URL que, si coincide con la ruta de URL de la solicitud, activa Hosting para que responda como si se le otorgara al servicio la URL de destino especificada.

cleanUrls

boolean

Define si se quita la extensión de archivo de los archivos subidos.

trailingSlashBehavior

enum (TrailingSlashBehavior)

Define cómo manejar una barra final en la ruta de URL.

i18n

object (I18nConfig)

Opcional. Define el comportamiento de reescritura de i18n.

El objeto Header especifica un patrón de URL que, si coincide con la ruta de URL de la solicitud, activa Hosting para aplicar los encabezados de respuesta personalizados especificados.

Representación JSON
{
  "headers": {
    string: string,
    ...
  },

  // Union field pattern can be only one of the following:
  "glob": string,
  "regex": string
  // End of list of possible types for union field pattern.
}
Campos
headers

map (key: string, value: string)

Obligatorio. Los encabezados adicionales que se deben agregar a la respuesta.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Campo de unión pattern.
Obligatorio. Un patrón de URL de cadena que debe coincidir con la ruta de URL de la solicitud para determinar si se debe aplicar este encabezado de respuesta personalizado. Puede ser un glob de estilo Bash o una expresión regular RE2.

pattern puede ser solo una de las siguientes opciones:
glob

string

El glob proporcionado por el usuario que debe coincidir con la ruta de la URL de solicitud

regex

string

La expresión regular RE2 proporcionada por el usuario que debe coincidir con la ruta de URL de la solicitud.

Redireccionamiento

El objeto Redirect especifica un patrón de URL que, si coincide con la ruta de URL de la solicitud, activa Hosting para que responda con un redireccionamiento a la ruta de destino especificada.

Representación JSON
{
  "statusCode": integer,
  "location": string,

  // Union field pattern can be only one of the following:
  "glob": string,
  "regex": string
  // End of list of possible types for union field pattern.
}
Campos
statusCode

integer

Obligatorio. El código HTTP del estado que se debe mostrar en la respuesta. Debe ser un código de estado 3xx válido.

location

string

Obligatorio. El valor que debe colocarse en el encabezado de ubicación HTTP de la respuesta.

La ubicación puede contener valores de grupo de captura del patrón mediante el uso de un prefijo : para identificar el segmento y un * opcional para capturar el resto de la URL. Por ejemplo:

"glob": "/:capture*",
"statusCode": 301,
"location": "https://example.com/foo/:capture"

Campo de unión pattern.
Obligatorio. Es un patrón de URL de cadena que debe coincidir con la ruta de URL de la solicitud para determinar si se debe aplicar este redireccionamiento. Puede ser un glob de estilo Bash o una expresión regular RE2.

pattern puede ser solo una de las siguientes opciones:
glob

string

El glob proporcionado por el usuario que debe coincidir con la ruta de la URL de solicitud

regex

string

La expresión regular RE2 proporcionada por el usuario que debe coincidir con la ruta de URL de la solicitud.

Vuelve a escribir

El objeto Rewrite especifica un patrón de URL que, si coincide con la ruta de URL de la solicitud, activa Hosting para que responda como si se le otorgara al servicio la URL de destino especificada.

Representación JSON
{
  "functionRegion": string,

  // Union field pattern can be only one of the following:
  "glob": string,
  "regex": string
  // End of list of possible types for union field pattern.

  // Union field behavior can be only one of the following:
  "path": string,
  "function": string,
  "run": {
    object (CloudRunRewrite)
  }
  // End of list of possible types for union field behavior.
}
Campos
functionRegion

string

Opcional. Especifica una región de Cloud para las invocaciones de Functions reescritas. Si no se proporciona, la configuración predeterminada es us-central1.

Campo de unión pattern.
Obligatorio. Un patrón de URL de cadena que debe coincidir con la ruta de URL de la solicitud para determinar si se debe aplicar esta reescritura. Puede ser un glob de estilo Bash o una expresión regular RE2.

pattern puede ser solo una de las siguientes opciones:
glob

string

El glob proporcionado por el usuario que debe coincidir con la ruta de la URL de solicitud

regex

string

La expresión regular RE2 proporcionada por el usuario que debe coincidir con la ruta de URL de la solicitud.

Campo de unión behavior.
Obligatorio. El comportamiento de la reescritura.

behavior puede ser solo una de las siguientes opciones:
path

string

La ruta de la URL a la cual reescribir la solicitud.

function

string

La función para almacenar en servidores proxy las solicitudes. Debe coincidir con el nombre de la función exportada de manera exacta.

run

object (CloudRunRewrite)

La solicitud se reenviará a Cloud Run.

CloudRunRewrite

Una reescritura configurada que dirige las solicitudes a un servicio de Cloud Run. Si el servicio de Cloud Run no existe cuando se establece o actualiza la configuración de Firebase Hosting, fallará la solicitud. Los errores del servicio de Cloud Run se pasan al usuario final (por ejemplo, si borras un servicio, cualquier solicitud dirigida a ese servicio recibe un error 404).

Representación JSON
{
  "serviceId": string,
  "region": string,
  "tag": string
}
Campos
serviceId

string

Obligatorio ID definido por el usuario del servicio de Cloud Run.

region

string

Opcional: Región proporcionada por el usuario donde se aloja el servicio de Cloud Run.

El valor predeterminado es us-central1 si no se proporciona.

tag

string

Opcional. Etiqueta de TrafficConfig proporcionada por el usuario a la que se envía el tráfico.

Cuando se omite, el tráfico se envía al URI de todo el servicio

TrailingSlashBehavior

Define si se debe agregar o quitar una barra final de la ruta de la URL de solicitud.

Enums
TRAILING_SLASH_BEHAVIOR_UNSPECIFIED

No se especifica ningún comportamiento.

Los archivos se entregan en su ubicación exacta únicamente y las barras finales solo se agregan a los índices de directorio.

ADD Las barras finales se agregan a los índices de directorio y a cualquier ruta de URL que no termine en una extensión de archivo.
REMOVE Las barras finales se quitan de los índices de directorio y también de cualquier ruta de URL que no termine en una extensión de archivo.

I18nConfig

Si se proporcionan, se habilitan las reescrituras de i18n.

Representación JSON
{
  "root": string
}
Campos
root

string

Obligatorio. La ruta de acceso proporcionada por el usuario en la que se buscará el contenido específico de idioma y país en el directorio público.

Métodos

clone

Crea una versión nueva en el sitio de destino especificado con el contenido de la versión especificada.

create

Crea una versión nueva para el sitio especificado.

delete

Borra la versión especificada.

get

Obtén la versión especificada que se creó para el sitio indicado.

list

Enumera las versiones que se crearon para el sitio especificado.

patch

Actualiza los metadatos especificados para la versión especificada.

populateFiles

Agrega archivos de contenido a la versión especificada.