新規投稿
フォローする

Webhookのプロセス管理のステータスの更新(完了)でのみ通知を送りたい

背景・実現したいこと

Webhookの設定でプロセス管理のステータスの更新(完了)でのみ通知を送りたいです。
が、アプリのWebhookの設定画面には、プロセス管理のステータスの更新の選択肢がありません。どのようにすればよいでしょうか。

Webhookの設定を行うと、kintoneのアプリで以下の操作が行われた際に通知が送信されます。

  • レコードの追加
  • レコードの編集
  • レコードの削除
  • コメントの書き込み
  • プロセス管理のステータスの更新

https://jp.cybozu.help/k/ja/user/app_settings/set_webhook/webhook.html#set_webhook_webhook_30

エラー情報

 

利用したソースコード

 

0

4件のコメント

Avatar
rex0220

webhook の設定で、通知を送信する条件としてステータス更新があります。

ステータスの更新(完了)のみとする条件はありませんので、webhook の受け側で レコードのステータスで処理する判定を入れるしかないと思います。

 

0
Avatar
Gucchiy

お世話になっております。

上記通知を送信する条件なのですが、「通知を送信する条件」チェック状態に関係なく、保存ボタン押下時に、ADD_RECORD や EDIT_RECORD、DELETE_RECORD で WebHook が呼び出されているようです。つまり、「レコードの追加」がチェックされてなくても、ADD_RECORD で WebHook が呼び出されています。また、ステータスの更新については、チェック状態に関係なく WebHook が呼び出されていないように見えます。こちらは仕様でしょうか?または「通知を送信する条件」に加えて、何か設定する必要があるのでしょうか?

0
Avatar
rex0220

検証用に azure function を作成して、webhook の実験をしてログを確認してみました。

結果は、「通知を送信する条件」のとおりの動作でした。

module.exports = async function (context, req) {
context.log('webhook request:', req.body.type, req.body.app, req.body.record);
const responseMessage = ' "This HTTP triggered function executed successfully. ' + req.body.type;
context.res = {
// status: 200, /* Defaults to 200 */
body: responseMessage
};
}

 

・webhook の通知条件をすべてチェック(レコード追加、レコードの編集、レコードの削除、コメントの書き込み、ステータスの更新)して、テスト

→ 全種類の webhook が送信された。

・webhook の通知条件をステータスの更新のみチェックして、テスト

→ ステータスの更新のみ webhook が送信された。

 レコード追加、レコードの編集、レコードの削除、コメントの書き込みの webhook は、送信されない。

 

Gucchiy さんの検証でうまく動作していないとすると、「通知を送信する条件」を設定後に「アプリの更新」を行わずアプリに反映していないなどの問題があった可能性があります。

rex0220により編集されました
1
Avatar
Gucchiy

恐れ入ります、ご確認、大変ありがとうございます。大変失礼いたしました、「アプリの更新」を行ったところ、正常にステータスの更新のみ webhook が呼び出されることを確認致しました。

お手数おかけして、重ねて申し訳ありません。またありがとうございました。

よろしくお願いいたします。

0
サインインしてコメントを残してください。