REST Resource: forms.watches

资源:Watch

监视表单事件。当指定事件发生时,系统会向指定目标发布通知。通知的属性将包含一个 formId 键(具有受监视表单的 ID)和一个 eventType 键(具有该类型字符串)。

消息至少传送一次,只有在特殊情况下才会被丢弃。通常,所有通知都应在几秒内可靠地传送;但在某些情况下,通知可能会延迟。

手表会在创建 7 天后过期,除非通过 watches.renew 续订

JSON 表示法
{
  "id": string,
  "target": {
    object (WatchTarget)
  },
  "eventType": enum (EventType),
  "createTime": string,
  "expireTime": string,
  "errorType": enum (ErrorType),
  "state": enum (State)
}
字段
id

string

仅供输出。此手表的 ID。请参阅关于CreateWatchRequest.watch_id的注释。

target

object (WatchTarget)

必需。发送通知的目标位置。

eventType

enum (EventType)

必需。要观看的事件类型。

createTime

string (Timestamp format)

仅供输出。表示创建时间的时间戳。

时间戳,采用 RFC3339 世界协调时间 (UTC)(即“祖鲁时”)格式,具有纳秒级分辨率,最多包含九个小数位。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

expireTime

string (Timestamp format)

仅供输出。失效时间的时间戳。每次 watches.renew 调用都会将其重置为未来 7 天。

时间戳,采用 RFC3339 世界协调时间 (UTC)(即“祖鲁时”)格式,具有纳秒级分辨率,最多包含九个小数位。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

errorType

enum (ErrorType)

仅供输出。尝试递送的最新错误类型。如需再次开始监控表单,可以对 watches.renew 进行调用,该方法也会清除此错误信息。

state

enum (State)

仅供输出。手表的当前状态。如需详细了解已暂停的手表,请查看 errorType

WatchTarget

通知递送的目标。

JSON 表示法
{

  // Union field target can be only one of the following:
  "topic": {
    object (CloudPubsubTopic)
  }
  // End of list of possible types for union field target.
}
字段
联合字段 target。必需。通知递送的目标。target 只能是下列其中一项:
topic

object (CloudPubsubTopic)

Pub/Sub 主题。要接收通知,该主题必须向表单服务账号 serviceAccount:forms-notifications@system.gserviceaccount.com 授予发布权限。只有拥有某个主题的项目才能使用该主题创建手表。

应考虑 Pub/Sub 传送保证。

CloudPubsubTopic

Pub/Sub 主题。

JSON 表示法
{
  "topicName": string
}
字段
topicName

string

必需。将事件发布到的完全限定 Pub/Sub 主题名称。此主题必须由调用方项目拥有,并且已存在于 Pub/Sub 中。

EventType

可能的可观看事件类型。

枚举
EVENT_TYPE_UNSPECIFIED 未指定事件类型。不应使用此值。
SCHEMA 架构事件类型。具有此事件类型的手表将收到有关表单内容和设置更改的通知。
RESPONSES 响应事件类型。当提交表单回复时,具有此事件类型的手表将会收到通知。

ErrorType

可能的错误类型。

枚举
ERROR_TYPE_UNSPECIFIED 未指定的错误类型。
PROJECT_NOT_AUTHORIZED Cloud 项目无权访问正在监控的表单。如果用户撤消了您的项目访问其表单的授权,就会发生这种情况。不会重试存在此错误的手表。如需再次尝试开始监控表单,可以调用 watches.renew
NO_USER_ACCESS 被授予访问权限的用户将无法再访问所监控的表单。不会重试存在此错误的手表。如需再次尝试开始监控表单,可以调用 watches.renew
OTHER_ERRORS 发生了其他类型的错误。是否继续显示通知取决于手表 state

状态

可能的手表状态。

枚举
STATE_UNSPECIFIED 未指定状态。
ACTIVE 手表已激活。
SUSPENDED 手表已被中止,因为发生了可以解决的错误。手表将持续存在,直到过期。如需尝试重新激活手表,可向 watches.renew 发出调用

方法

create

创建新手表。

delete

删除手表。

list

返回调用项目拥有的手表的列表。

renew

将现有手表续订 7 天。