Recurso: relógio
Uma observação de eventos de um formulário. Quando o evento designado acontece, uma notificação é publicada para o destino especificado. Os atributos da notificação incluem uma chave formId com o ID do formulário assistido e uma chave eventType com a string do tipo.
As mensagens são enviadas com entrega pelo menos uma vez e são descartadas apenas em circunstâncias extraordinárias. Normalmente, todas as notificações são enviadas em poucos segundos. No entanto, em algumas situações, elas podem atrasar.
Um relógio expira sete dias após a criação, a menos que seja renovado com watches.renew
| Representação JSON | 
|---|
| { "id": string, "target": { object ( | 
| Campos | |
|---|---|
| id | 
 Apenas saída. O ID deste relógio. Consulte as observações sobre  | 
| target | 
 Obrigatório. Para onde enviar a notificação. | 
| eventType | 
 Obrigatório. O tipo de evento a ser observado. | 
| createTime | 
 Apenas saída. Carimbo de data/hora de quando foi criado. Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos:  | 
| expireTime | 
 Apenas saída. Carimbo de data/hora de quando isso vai expirar. Cada chamada  Usa o RFC 3339, em que a saída gerada é sempre normalizada em Z e usa dígitos fracionários 0, 3, 6 ou 9. Deslocamentos diferentes de "Z" também são aceitos. Exemplos:  | 
| errorType | 
 Apenas saída. O tipo de erro mais recente de uma tentativa de entrega. Para começar a monitorar o formulário novamente, é possível fazer uma chamada para  | 
| state | 
 Apenas saída. O estado atual do relógio. Para conferir mais detalhes sobre os relógios suspensos, consulte o  | 
WatchTarget
O destino para entrega de notificações.
| Representação JSON | 
|---|
| { // Union field | 
| Campos | |
|---|---|
| Campo de união target. Obrigatório. O destino para entrega de notificações.targetpode ser apenas de um dos tipos a seguir: | |
| topic | 
 Um tópico do Pub/Sub. Para receber notificações, o tópico precisa conceder privilégios de publicação à conta de serviço  As garantias de entrega do Pub/Sub precisam ser consideradas. | 
CloudPubsubTopic
Um tópico do Pub/Sub.
| Representação JSON | 
|---|
| { "topicName": string } | 
| Campos | |
|---|---|
| topicName | 
 Obrigatório. Um nome de tópico do Pub/Sub totalmente qualificado para publicar os eventos. Esse tópico precisa ser de propriedade do projeto de chamada e já existir no Pub/Sub. | 
EventType
Possíveis tipos de evento que podem ser assistidos.
| Enums | |
|---|---|
| EVENT_TYPE_UNSPECIFIED | Tipo de evento não especificado. Este valor não deve ser usado. | 
| SCHEMA | O tipo de evento do esquema. Um relógio com esse tipo de evento vai receber uma notificação sobre mudanças no conteúdo e nas configurações do formulário. | 
| RESPONSES | O tipo de evento de respostas. Um monitoramento com esse tipo de evento vai receber uma notificação quando as respostas do formulário forem enviadas. | 
ErrorType
Possíveis tipos de erro.
| Enums | |
|---|---|
| ERROR_TYPE_UNSPECIFIED | Tipo de erro não especificado. | 
| PROJECT_NOT_AUTHORIZED | O projeto do Cloud não tem acesso ao formulário que está sendo monitorado. Isso ocorre se o usuário tiver revogado a autorização para que seu projeto acesse os formulários dele. Os relógios com esse erro não serão tentados novamente. Para tentar assistir o formulário novamente, ligue para watches.renew. | 
| NO_USER_ACCESS | O usuário que concedeu o acesso não tem mais acesso ao formulário que está sendo monitorado. Os relógios com esse erro não serão tentados novamente. Para tentar assistir o formulário novamente, ligue para watches.renew. | 
| OTHER_ERRORS | Ocorreu outro tipo de erro. A continuidade das notificações depende do statedo relógio. | 
Estado
Possíveis estados do relógio.
| Enums | |
|---|---|
| STATE_UNSPECIFIED | Estado não especificado. | 
| ACTIVE | O relógio está ativo. | 
| SUSPENDED | O relógio está suspenso devido a um erro que pode ser resolvido. O relógio vai continuar existindo até expirar. Para tentar reativar o relógio, é possível fazer uma chamada para watches.renew. | 
| Métodos | |
|---|---|
| 
 | Crie um novo relógio. | 
| 
 | Excluir um relógio. | 
| 
 | Retorna uma lista dos relógios pertencentes ao projeto de invocação. | 
| 
 | Renovar um relógio por sete dias. |