Webhook
データの登録、更新、削除やワークフローの承認など操作を行った際に、外部サービスに情報を通知する設定をします。
Webhook は、アプリの情報を外部サービスに情報を通知する機能です。アプリで操作したタイミングでリアルタイムで情報を送信します。
アプリ、サブアプリのみ設定できます。
一覧
Webhook 処理区分
どのタイミングで Webhook を実行するかを選択します。
アプリ、設定によって、実行可能なタイミングが異なります。
以下の処理区分は、どのアプリ、サブアプリでも設定できます。
- データ登録*1
- データ更新
- データ削除*2
- *1表項目を使用するサブアプリではデータを登録できないため、設定できません。
- *2サブアプリではデータを削除できないため、設定できません。
なお、ログイン/ログアウト 時に通知する Webhook は、管理モードの Webhook 設定 で設定します。
一件追加
Webhook 設定を追加します。
設定
有効
チェックすると、Webhook による通知を実行します。
概要
Webhook の説明を入力します。どのような通知内容か、などメモ書きとしてお使いください。
通知先URL
通知先URLを設定します。URLは、通知先のサービスにてご確認ください。
たとえば、Slack のチャネルに通知するには、通知先のチャネルの Incoming Webhook URL を入力します。
識別キー
識別キーを設定します。任意の文字列を入力します。通知先がリクエストの妥当性を判断する、などの目的に使用します。
使用できる文字は、半角英数字(大文字・小文字)と _ です。
操作
通知を実行する操作を選択します。
操作は、Webhook 処理区分、アプリ、設定 によって異なります。
Webhook 処理区分 | 操作 | 説明 |
---|---|---|
データ登録 | 一件登録画面 | データを登録した際に実行します。 |
一件コピー画面 | データをコピーした際に実行します。 表項目を使用するサブアプリでは使用できません。 |
|
一括登録画面 | データを一括登録した際に実行します。 表項目を使用するアプリ・サブアプリでは使用できません。 |
|
一括更新画面 | データを一括更新した際に実行します。 表項目を使用するアプリ・サブアプリでは使用できません。 |
|
一覧登録(EXCEL)画面 | Excelファイルでデータを一括登録した際に実行します。 表項目を使用するアプリ・サブアプリでは使用できません。 |
|
一覧登録(CSV)画面 | CSVファイルでデータを一括登録した際に実行します。 表項目を使用するアプリ・サブアプリでは使用できません。 |
|
単票登録(EXCEL)画面 | Excelファイルでデータを登録した際に実行します。 Excelから作成の単票形式 かつ テンプレート適用あり のみ使用できます。 |
|
データ取り込み画面 | Excelファイルでデータを複数件登録した際に実行します。 Excel作成の単票形式 かつ テンプレート適用あり のみ使用できます。 |
|
WebAPI*1 | WebAPIでデータを登録した際に実行します。 | |
データ更新 | 一件更新画面 | データを更新した際に実行します。 |
一括更新画面 | データを一括更新した際に実行します。 表項目を使用するアプリ・サブアプリでは使用できません。 |
|
一覧登録(EXCEL)画面 | Excelファイルでデータを一括更新した際に実行します。 表項目を使用するアプリ・サブアプリでは使用できません。 |
|
一覧登録(CSV)画面 | CSVファイルでデータを一括更新した際に実行します。 表項目を使用するアプリ・サブアプリでは使用できません。 |
|
単票登録(EXCEL)画面 | Excelファイルでデータを更新した際に実行します。 Excelから作成の単票形式 かつ テンプレート適用あり のみ使用できます。 |
|
WebAPI*1 | WebAPIでデータを更新した際に実行します。 | |
データ削除 | 一件削除画面 | データを削除した際に実行します。 サブアプリでは使用できません。 |
一括更新画面 | データを一括削除した際に実行します。 サブアプリでは使用できません。 |
|
WebAPI*1 | WebAPIでデータを削除した際に実行します。 |
- *1WebAPI オプションが必要です。
有効
チェックすると、操作を行った際に Webhook による通知を実行します。
通知方法
1 回の操作で複数件のデータを登録/更新/削除した場合の通知方法を選択します。
- データ単位
- 1 件ずつデータを送信します。1 回の操作で複数回(処理したデータの件数分)送信します。
- 操作単位
- 複数件のデータをまとめて送信します。1 回の操作で 1 回送信します。
JSON
Webhook では JSON 形式でデータを送信します。
フィールド
- appName
-
アプリ名です。
- appcode
-
アプリコードです。
- execUserName
-
操作したユーザーの氏名です。
- execUserId
-
操作したユーザーのユーザーIDです。
- type
-
Webhook 処理区分 で選択した処理区分です。
データ登録APP_DATA_INSERTデータ更新APP_DATA_UPDATEデータ削除APP_DATA_DELETE - url
-
操作したデータを参照するURLです。
通知方法 が「データ単位」かつ Webhook 処理区分 が「データ登録」「データ更新」の場合に出力します。
通知方法 が「操作単位」もしくは Webhook 処理区分 が「データ削除」の場合はフィールドがありません。
URL は 一件照会画面の このデータのURL と同じです。 - eventTime
-
操作した日時です。
- key
-
識別キー で入力した値です。
入力した場合のみ出力します。入力しなかった場合はフィールドがありません。 - data
-
処理対象のデータです。
{ "プライマリキーの項目ID": { "type": "項目型" "value": "値" }, "項目ID": { "type": "項目型" "value": "値" }, …項目の数だけ繰り返す… }
- 項目ID
-
項目 項目ID フォームの項目 項目IDは アプリの編集 > 一覧設定 で確認できます。
例rakwdb_app1234_main_0
プライマリキー項目 項目IDの末尾「_連番」を「_primarykey」に置換した値です。
例rakwdb_app1234_main_primarykey
- type
-
項目型です。
詳細は、添付資料. API > 共通仕様: レスポンス の type をご参照ください。 - value
-
項目の値です。
Webhook 処理区分 が「データ登録」「データ更新」の場合は登録/更新した後の値を出力します。「データ削除」の場合は削除したプライマリキー項目の値のみ出力します。
項目型によって書式が異なります。詳細は、添付資料. API > 共通仕様: レスポンス の value をご参照ください。
例 データ単位
通知方法 に「データ単位」を選択すると、JSON に 1 件分のデータを格納します。
{ "appName": "予実管理", "execUserName": "住友 太郎", "execUserId": "aa010001", "appCode": "APP_0100", "type": "APP_DATA_INSERT", "url": "https://rakrak-webdb.net/RakWDB/top/rakwdb_app1234?np=19&rkwa_primarykey_field=rakwdb_app1234_main_primarykey&rakwdb_app1234_main_primarykey=1000", "eventTime": "2022-10-01 10:00:00", "key": "WEBHOOKKEY", "data": { "rakwdb_app1234_main_primarykey": { "type": "id", "value": "1000" }, "rakwdb_app1234_main_0": { "type": "text", "value": "XXXX商事" }, : } }
例 操作単位
通知方法 に「操作単位」を選択すると、JSON に複数件のデータを格納します。
フィールド url がありません。
{ "appName": "予実管理", "execUserName": "住友 太郎", "execUserId": "aa010001", "appCode": "APP_0100", "type": "APP_DATA_INSERT", "eventTime": "2022-10-01 10:00:00", "key": "WEBHOOKKEY", "data": [ { "rakwdb_app1234_main_primarykey": { "type": "id", "value": "1000" }, "rakwdb_app1234_main_0": { "type": "text", "value": "XXXX商事" }, : }, { "rakwdb_app1234_main_primarykey": { "type": "id", "value": "1001" }, "rakwdb_app5000_main_0": { "type": "text", "value": "YYYY製薬" }, : }, …データの数だけ繰り返す… ] }
エラー発生時に送信するメール
Webhook でエラーが発生すると、アプリ管理者宛てにメールを送信します。 通知先からの HTTP レスポンスステータスが 200 , 201 以外の場合はエラーとします。
エラーメール 例
<< このメールは楽々Webデータベースが自動発信しています >> Webhook送信でエラーが発生しました。 送信に失敗したWebhookは、Webhook管理画面 から確認してください。 http://example.com/RakWDB/rkwaWebhookManager?rkwa_appcode=APP_0001 送信日時:2023/1/13 9:46:37 送信先URL:http://example.com/api/data レスポンスステータス:404 種別:データ登録 アプリコード:APP_0001 アプリ名:TODO管理