Webhookを設定する

Webhookは、複数のWebサービスを連携するための仕組みです。
kintoneでWebhookを設定すると、次の操作が行われたときに、そのことを外部のWebサービスに通知できます。

  • レコードの追加
  • レコードの編集
  • レコードの削除
  • コメントの書き込み
  • レコードのステータスの変更

Webhookを利用すると、kintoneと外部のWebサービスを連携できます。
たとえば、アプリにレコードが追加されたらSlackにメッセージを投稿する、といった連携が可能です。 画像 Webhookを利用するには、kintoneと連携するWebサービスが、Webhookの受信に対応している必要があります。または、Webhookの受信に未対応のWebサービスでも、Zapier、Microsoft Power Automate、IFTTTなどのWebサービスを介すことで、kintoneと連携できる場合があります。

cybozu developer networkでは、Webhookを利用した連携の例を紹介しています。
コーディングなしで超簡単!kintoneのWebhookでGmailに通知する(cybozu developer network)

送信される通知の内容

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 文字列 レコード番号です。
deletedBy オブジェクト レコードを削除したユーザーの情報を表すオブジェクトです。
deletedBy.code 文字列 ユーザーのログイン名です。
deletedBy.name 文字列 ユーザーの名前です。
deletedAt 文字列 削除した日時です。

送信される通知の例

{
"app":{
"id":"1",
"name":"案件管理"
},
"id":"01234567-0123-0123-0123-0123456789ab",
"recordId":"2",
"deletedBy":{
"code":"sato",
"name":"佐藤 昇"
},
"deletedAt":"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"
}

Webhookの設定手順

Webhookの設定手順を説明します。10個まで設定できます。

  1. kintoneと連携するWebサービスで、Webhook URLを取得します。
  2. アプリの設定画面を開きます。
    アプリの設定画面を開く
  3. 「設定」タブをクリックします。
  4. 「カスタマイズ/サービス連携」の[Webhook]をクリックします。 画像
  5. 画像をクリックします。
  6. 各項目を入力します。 画像

    • 説明
      設定するWebhookの説明を64文字以内で入力します。入力した説明は、Webhookの設定の一覧画面に表示されます。
    • Webhook URL
      kintoneと連携するWebサービスで取得したWebhook URLを入力します。最大1,024文字です。
    • 通知を送信する条件
      Webhookの通知を送信する操作を指定します。
    • 有効化
      設定したWebhookを有効にするかどうかを選択します。初期設定では有効です。

  7. [保存]をクリックします。

  8. 画面右下の[アプリの設定に戻る]をクリックします。

  9. 画面右上の[アプリを更新]をクリックします。