REST Resource: forms.watches

Recurso: Watch

Un reloj para los eventos de un formulario Cuando ocurra el evento designado, se publicará una notificación en el destino especificado. Los atributos de la notificación incluirán una clave formId con el ID del formulario que se vio y una clave eventType con la string del tipo.

Los mensajes se envían con, al menos, una entrega y solo se descartan en circunstancias extraordinarias. Por lo general, todas las notificaciones se entregan de forma confiable en pocos segundos. Sin embargo, en algunos casos, se pueden retrasar.

Un reloj vence siete días después de su creación, a menos que se renueve con watches.renew

Representación JSON
{
  "id": string,
  "target": {
    object (WatchTarget)
  },
  "eventType": enum (EventType),
  "createTime": string,
  "expireTime": string,
  "errorType": enum (ErrorType),
  "state": enum (State)
}
Campos
id

string

Solo salida. Es el ID de este reloj. Consulta las notas sobre CreateWatchRequest.watch_id.

target

object (WatchTarget)

Obligatorio. Dónde enviar la notificación

eventType

enum (EventType)

Obligatorio. Qué tipo de evento observar

createTime

string (Timestamp format)

Solo salida. Marca de tiempo de la creación.

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

expireTime

string (Timestamp format)

Solo salida. Marca de tiempo del vencimiento. Cada llamada a watches.renew lo restablece a siete días en el futuro.

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

errorType

enum (ErrorType)

Solo salida. El tipo de error más reciente de un intento de entrega. Para volver a ver el formulario, puedes llamar a watches.renew. Esta acción también borrará la información de error.

state

enum (State)

Solo salida. El estado actual del reloj. Puedes encontrar más detalles sobre los relojes suspendidos en el errorType.

Objetivo de observación

Es el objetivo para la entrega de notificaciones.

Representación JSON
{

  // Union field target can be only one of the following:
  "topic": {
    object (CloudPubsubTopic)
  }
  // End of list of possible types for union field target.
}
Campos
Campo de unión target. Obligatorio. Es el objetivo para la entrega de notificaciones. Las direcciones (target) solo pueden ser una de las siguientes opciones:
topic

object (CloudPubsubTopic)

Un tema de Pub/Sub. Para recibir notificaciones, el tema debe otorgar privilegios de publicación a la cuenta de servicio de Formularios serviceAccount:forms-notifications@system.gserviceaccount.com. Solo el proyecto que posee un tema puede crear un reloj con él.

Se deben considerar las garantías de entrega de Pub/Sub.

Cloud Pub/Sub

Un tema de Pub/Sub.

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

string

Obligatorio. Un nombre de tema de Pub/Sub completamente calificado para publicar los eventos. Este tema debe ser propiedad del proyecto que realiza la llamada y ya debe existir en Pub/Sub.

EventType

Posibles tipos de eventos que se pueden mirar.

Enumeradores
EVENT_TYPE_UNSPECIFIED Tipo de evento no especificado. No se debe usar este valor.
SCHEMA Es el tipo de evento de esquema. Un reloj con este tipo de evento recibirá una notificación sobre los cambios en el contenido y la configuración del formulario.
RESPONSES El tipo de evento de respuestas. Un reloj con este tipo de evento recibirá una notificación cuando se envíen las respuestas del formulario.

ErrorType

Posibles tipos de errores.

Enumeradores
ERROR_TYPE_UNSPECIFIED Tipo de error sin especificar.
PROJECT_NOT_AUTHORIZED El proyecto de la nube no tiene acceso al formulario que se observa. Esto ocurre si el usuario revocó la autorización del proyecto para acceder a sus formularios. No se reintentarán reproducciones con este error. Para volver a ver el formulario, puedes llamar al watches.renew
NO_USER_ACCESS El usuario que otorgó acceso ya no tiene acceso al formulario que se está observando. No se reintentarán reproducciones con este error. Para volver a ver el formulario, puedes llamar al watches.renew
OTHER_ERRORS Se produjo otro tipo de error. La continuación de las notificaciones dependerá del state del reloj.

Estado

Los posibles estados del reloj.

Enumeradores
STATE_UNSPECIFIED Estado sin especificar.
ACTIVE El reloj está activo.
SUSPENDED El reloj está suspendido debido a un error que puede resolverse. El reloj seguirá existiendo hasta que venza. Para intentar reactivar el reloj, puedes llamar al watches.renew

Métodos

create

Crea un reloj nuevo.

delete

Borra un reloj.

list

Muestra una lista de los relojes que pertenecen al proyecto que hace la invocación.

renew

Renovar un reloj existente durante siete días