为列介绍webhook

发表在2020年2月27日

如果您目前使用Webhooks,或者您希望在特定列数据更改时收到通知,此更新是为您准备的!

Webhooks为Smartsheet提供了一种方法,当某些事件在Smartsheet中发生时,可以自动通知外部应用程序或服务。Webhooks提供了一种更有效的替代方法,可以使用API定期轮询更改。

用于列的webhook是对现有Webhooks的增强,使您能够限制您的Webhooks到特定的列。只有当这些列中的数据发生变化时,才会调用webhooks,而不是工作表中的任何地方。这可以更有效地利用计算和网络资源,因为您不会因为同一工作表中您不关心的其他更改而收到通知。欧宝体育app官方888

一个新的字段被添加到Webhook对象中。子作用域包含一个数组字段columnIds.如果数据进入,webhook通知将被触发任何这些列的变化。

使用实例创建Webhook对象

var body = {name: "Webhook #4", callbackUrl: "https://www.example.com/webhooks", scope: "sheet", scopeObjectId: 3285357287499652, events: ["*.]*"],版本:1,subscope: {columnIds: [7318427511613316, 7318427511613123],}};

陷阱-预期行为:

  • (columnIds)仅在创建时设置,此后为只读。这与现有的更新Webhook (PUT端点)是一致的范围而且scopeObjectId也不会更新。如果您需要修改作用域、scopeObjectId和subscope,您应该删除并创建一个新的Webhook。
  • 不随回调有效负载返回。你可以通过id获取webhook来查看子作用域信息。
  • 空的columnIds字段表示所有列匹配。这可能是混淆的来源,因为“空表示所有匹配”行为有点违反直觉。API文档非常清楚地说明了这种行为。

有关Webhooks的更多信息可以在官方API和SDK文档

评论

评论