设置Webhook

在kintone中使用Webhook,可在对kintone的应用进行特定的操作时,将其内容发送至指定的外部服务。
例如,无需编程即可设置类似于在发生记录添加时将其内容发送至聊天工具的整合。
仅可在kintone标准版中使用Webhook。

Webhook的机制

将用于整合多种网络服务的工具指定为Webhook的整合对象,即可将其所支持的服务与kintone进行整合。
用于整合网络服务的工具有:Zapier、Microsoft Power Automate、IFTTT等。

画像

设置Webhook后,当kintone应用中发生以下操作时可收到通知:

  • 添加记录
  • 编辑记录
  • 删除记录
  • 填写回复
  • 更新流程管理的状态

设置示例

此处以使用Zapier,设置“当kintone中发生记录添加时向Gmail发送通知”为例进行说明。

预先准备

在进行Webhook的整合设置前,请进行以下准备:

  • 创建Gmail账号
  • 创建kintone的应用

完成准备后,进行以下设置:

在Zapier中设置触发器

  1. 访问Zapier的Web网站,并进行注册。
    没有Zapier账号时,请创建账号或使用Google等账号注册。

  2. 点击Zapier的Web网站中的[MAKE A ZAP]。

  3. 在“Name your zap”中输入任意标题。

  4. 在触发器选择页面中的搜索框中输入“Webhook”,点击“Webhooks by Zapier”。

  5. 触发事件选择“Catch Hook”,点击[CONTINUE]。

  6. 生成Custom Webhook URL,点击[Copy]。
    请将URL粘贴至文本编辑器中。

在kintone中设置Webhook

  1. 在kintone中打开Webhook的设置页面。
    点击记录列表页面右上方的应用设置按钮 设置按钮 ,依次选择“设置”标签 > “自定义/服务整合”的[Webhook]。

  2. 点击添加按钮 画像

  3. 输入要设置的Webhook的说明。
    输入的说明将显示在Webhook设置的列表页面。最多可输入64个字符。 画像

  4. 将步骤6中复制的URL粘贴至Webhook URL中。
    URL栏中最多可输入1,024个字符。

  5. 发送通知的条件中指定要发送Webhook通知的操作。
    本例中勾选“添加记录”。

  6. 选择是否启用已设置的Webhook。初始设置为启用。

  7. 点击[保存]。

  8. 点击Webhook设置页面右下方的[返回应用的设置]。

  9. 点击应用设置页面右上方的[更新应用]。

  10. 为了对Zapier中设置的触发器进行测试,在kintone的应用中添加新的记录。

  11. 返回Zapier的Web网站,点击[CONTINUE],再点击[Test trigger]。

  12. 确认测试成功后,点击[CONTINUE]。
    如未成功,请多次点击[Test trigger]进行尝试。
    如依然失败,请确认Webhook URL中复制粘贴的URL是否有误。

在Zapier中进行动作设置

  1. 显示Zapier的动作设置后,选择Gmail。

  2. 动作事件选择“Send Email”,点击[CONTINUE]。

  3. 选择Gmail账号,点击[CONTINUE]。
    未登录Gmail时,将显示确认允许登录Gmail的页面。

  4. 设置发送至Gmail的通知内容。“To”中输入要接收通知的Gmail地址,Subject、Body等处设置必要的内容。
    设置后,点击[CONTINUE]。

  5. 确认设置内容,点击[TEST & CONTINUE]。

  6. 确认收件人的Gmail中已收到邮件,点击[TURN ON ZAP]。

  7. 启用已设置的Zap。

发送的通知的内容

如启用Webhook,将从kintone 发送JSON格式的通知。
进行各项操作时,通知的参数如下:

添加记录/编辑记录/更新记录的状态
参数 值的类型 说明
id 字符串 分配给每个通知的唯一的ID。
type 字符串 操作的类型。
添加了记录:ADD_RECORD
编辑了记录:UPDATE_RECORD
更改了记录的状态:UPDATE_STATUS
app 对象 代表应用信息的对象。
app.id 文本框 应用的ID。
app.name 文本框 应用名称。
record 对象 代表记录信息的对象。
对象的格式与获取记录的REST API相同。
获取记录(GET)(cybozu developer network)
recordTitle 字符串 记录的标题。
可更改要设置为标题的字段。
设置记录标题
url 字符串 记录的URL。
发送的通知的范例
{
"id":"01234567-0123-0123-0123-0123456789ab",
"type":"ADD_RECORD",
"app":{
"id":"1",
"name":"案件管理"
},
"record":{
"记录编号":{
"type":"RECORD_NUMBER",
"value":"2"
},
~~
"$revision":{
"type":"__REVISION__",
"value":"3"
},
"$id":{
"type":"__ID__",
"value":"2"
}
},
"recordTitle":"拜访:才望子",
"url":"https://example.cybozu.com/k/1/show#record=2"
}
删除记录
参数 值的类型 说明
id 字符串 分配给每个通知的唯一的ID。
type 字符串 操作的类型。
删除了记录:DELETE_RECORD
app 对象 代表应用信息的对象。
app.id 文本框 应用的ID。
app.name 文本框 应用名称。
recordId 字符串 记录编号。
deleteBy 对象 代表删除记录的用户信息的对象。
deletedBy.code 文本框 用户的登录名。
deletedBy.name 文本框 用户的姓名。
deleteAt 字符串 删除的日期与时间。
发送的通知的范例
{
"app":{
"id":"1",
"name":"案件管理"
},
"id":"01234567-0123-0123-0123-0123456789ab",
"recordId":"2",
"deleteBy":{
"code":"sato",
"name":"佐藤 升"
},
"deleteAt":"2017-07-03T09:38:09Z"
"type":"DELETE_RECORD"
}
填写回复
参数 值的类型 说明
app 对象 代表应用信息的对象。
app.id 文本框 应用的ID。
app.name 文本框 应用名称。
comment 对象 代表回复信息的对象。
对象的格式与获取记录的REST API相同。
批量获取记录的回复(日语)(cybozu developer network)
id 字符串 分配给每个通知的唯一的ID。
recordId 字符串 记录编号。
type 字符串 操作的类型。
填写了回复:ADD_RECORD_COMMENT
url 字符串 回复的URL。
发送的通知的范例
{
"app":{
"id":"1",
"name":"案件管理"
},
"comment":{
"createdAt":"2012-02-03T09:38:09Z",
"creator":{
"code":"kato",
"name":"加藤 美咲"
},
"id":"11",
"mentions":[{
"code":"kato",
"type":"USER"
},{
"code":"org1",
"type":"ORGANIZATION"
},{
"code":"group1",
"type":"GROUP"
}],
"text":"我来拜访才望子了。""
},
"id":"01234567-0123-0123-0123-0123456789ab",
"recordId":"2",
"type":"ADD_RECORD_COMMENT",
"url":"https://example.cybozu.com/k/1/show#record=2&comment=11"
}