REST Resource: forms.watches

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 (WatchTarget)
  },
  "eventType": enum (EventType),
  "createTime": string,
  "expireTime": string,
  "errorType": enum (ErrorType),
  "state": enum (State)
}
Campos
id

string

Apenas saída. O ID deste relógio. Consulte as observações sobre CreateWatchRequest.watch_id.

target

object (WatchTarget)

Obrigatório. Para onde enviar a notificação.

eventType

enum (EventType)

Obrigatório. O tipo de evento a ser observado.

createTime

string (Timestamp format)

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

expireTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora de quando isso vai expirar. Cada chamada watches.renew redefine esse valor para sete dias no futuro.

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: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

errorType

enum (ErrorType)

Apenas saída. O tipo de erro mais recente de uma tentativa de entrega. Para começar a monitorar o formulário novamente, uma chamada pode ser feita para watches.renew, que também limpa essas informações de erro.

state

enum (State)

Apenas saída. O estado atual do relógio. Para conferir mais detalhes sobre os relógios suspensos, consulte o errorType.

WatchTarget

O destino para entrega de notificações.

Representação 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ão target. Obrigatório. O destino para entrega de notificações. target pode ser apenas de um dos tipos a seguir:
topic

object (CloudPubsubTopic)

Um tópico do Pub/Sub. Para receber notificações, o tópico precisa conceder privilégios de publicação à conta de serviço serviceAccount:forms-notifications@system.gserviceaccount.com do Formulários. Somente o projeto que é proprietário de um tópico pode criar uma observação com ele.

As garantias de entrega do Pub/Sub precisam ser consideradas.

CloudPubsubTopic

Um tópico do Pub/Sub.

Representação JSON
{
  "topicName": string
}
Campos
topicName

string

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 assistido. 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 vão ser 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 vão ser 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 state do 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

create

Crie um novo relógio.

delete

Excluir um relógio.

list

Retorna uma lista dos relógios pertencentes ao projeto de invocação.

renew

Renovar um relógio por sete dias.