このページでは、freeeサイン for Salesforceを利用するにあたり、freeeサインの進行状態をSalesforceに反映するためのWebhook通信の設定手順を説明します。
この設定により、freeeサインのステータスが変更された際に、自動的にSalesforceへ反映されます。
本作業を行うSalesforceユーザーは、下記条件をすべて満たす必要があります。
- freeeサインとSalesforceに登録しているメールアドレスが同一であること
- 以下が割り当てられていること
- システム管理者プロファイル
目次
①Webhookの概要
Webhookは、特定のイベントが発生した際に、自動的に他のシステムへ情報を送信する仕組みです。
freeeサイン for Salesforceでは、Webhookを利用することで、freeeサイン上で発生したイベント(文書状態の変更)をトリガーとして、リアルタイムにSalesforceへ通知し、ステータスなどのデータを自動的に同期します。
この設定により、freeeサインのステータスが変更された際に、自動的にSalesforceへ反映されます。
Webhook通信を行うには、以下の設定が必要です。
freeeサイン for SalesforceでのWebhook設定の流れ
- SalesforceでfreeeサインからのWebhook通信を受け取るための専用「サイト」を作成する
- 作成した「サイト」にWebhook通信を受け取り、同期処理を行うための設定を追加する
- freeeサインでWebhook通知の送信先を設定する
はじめに、後述「②Salesforceに「サイト」を作成する」に進み、Salesforceでサイトを作成します。
②Salesforceに「サイト」を作成する
この手順では、SalesforceでfreeeサインからのWebhook通信を受け取るための専用「サイト」を作成します。
- Salesforceの「設定」画面で、画面左部の「クイック検索」欄に「サイト」と入力して検索します。「サイト」から、ページ下部の「Sites」欄の[新規]をクリックします。
-
「サイトの編集」画面へ遷移したら、「新規サイト」に必要事項を入力します。
詳細は以下の表の通りです。番号 項目 入力内容 ① サイトの表示ラベル freeeサインWebhook ② サイト名 FSWebhook ③ デフォルトWebアドレス 任意の値 ④ 有効 チェックを入れます。 ⑤ 有効なサイトのホームページ(固定) AnswersHome - 必要事項を入力したら、[保存]をクリックします。
- 作成した「freeeサインWebhook」の「サイトの詳細」画面に遷移します。手順②で入力した内容に間違いがないか確認し、必要に応じて修正します。
-
作成したサイトが有効化されていることを確認します。
「クイック検索」欄に「サイト」と入力して検索します。
サイトの表示ラベルに「freeeサインWebhook」が表示され、「有効」にチェックが入っていることを確認します。有効化されていない場合
freeeサインでステータス更新されても、Salesforce側で同期されません。サイトの表示ラベル「freeeサインWebhook」をクリックして編集画面を開き、「有効化」にチェックを入れて保存してください。
つづいて、後述「③「サイト」にWebhook設定を追加する」に進みます。
③「サイト」にWebhook設定を追加する
- 作成した「サイトの表示ラベル」をクリックします。
- 作成した「サイトの詳細」画面へ遷移したら、[公開アクセス設定]をクリックします。
- プロファイル画面へ遷移したら、[有効なApexクラス]をクリックします。
- 「有効なApexクラス」グループの[編集]をクリックします。
-
「Apexクラスアクセスを有効化」画面へ遷移したら、「利用可能なApexクラス」一覧から、以下の項目を選択し「追加」下の[▶](右向き黒三角ボタン)をクリックします。
なお、削除の場合は、「削除」上の[◀](左向き黒三角ボタン)をクリックします。項目名 説明 freeeSign.FSContractStatusUpdateWebhook freeeサイン for Salesforce間のWebhook通信でステータスを同期するためのクラス - 「有効化されたApexクラス」の枠内に移動したら、[保存]をクリックします。Apexクラスが追加されたら、[保存]をクリックします。
- プロファイル画面に遷移したら、「有効なApexクラス」に手順⑥で追加したApexクラスが登録されていることを確認します。
- 画面最上部へスクロールし、「プロファイルの詳細」グループ内の[編集]をクリックします。
- 「カスタムオブジェクト権限」グループが表示されるまでスクロールします。「基本アクセス」欄から、「FS契約」の「参照」にチェックを入れます。
- 画面最上部へスクロールし、[保存]をクリックします。
- プロファイルの設定画面に遷移したら、「項目レベルセキュリティ」グループ内の「カスタム項目レベルセキュリティ」が表示されるまでスクロールします。
- 「FS契約」の[参照]をクリックします。
- [編集]をクリックします。
-
一覧の項目名から以下の4つの項目を探し、各項目の「データ型」欄の[参照アクセス権]にチェックを入れます。
項目名 データ型 参照
チェックボックス
作成
チェックボックス
送信
チェックボックス
締結
チェックボックス
- [保存]をクリックします。プロファイルの設定画面に遷移し、設定は完了です。
つづいて、後述「④freeeサインにWebhook設定を登録する」に進みます。
④freeeサインにWebhook設定を登録する
-
本ページ「②Salesforceに「サイト」を作成する」の手順⑤で表示したサイトの「サイトのURL」を使用するため、URLをコピーして、メモ帳などに貼り付けておきます。
※サイトのURLをコピーする際は、右クリックメニューから[リンクのアドレスをコピー](環境により[リンクアドレスをコピー]等)を選択します。URLが長く画面に表示しきれていないため、ドラッグで範囲選択するとURLの一部しかコピーできません。必ず右クリックメニューからコピーします。
- freeeサインの[設定(ギアアイコン)]→[インテグレーション]→[Webhook]をクリックします。
- 「Webhook設定」画面へ遷移したら、[Webhookを追加する]をクリックします。
- 「Webhookの追加」画面へ遷移したら、「URL」と「不正リクエスト対策パスワード」を入力し、「トリガーイベント」の「文書の状態変更」にチェックを入れます。
-
URL:サイトのURL(本手順①でコピーしたURL)の末尾に以下の値を追加します。
-
末尾に追加するURL:/services/apexrest/freeeSign/fsstatus
URL末尾に上記値を忘れずに追加します。
この値が不足するとWebhook通信が正常に行えず、ステータスの相違が発生したり、送信に失敗するなどの問題が起こります。
例:サイトのURLが「https://example.my.salesforce-sites.com/webhook/」の場合
- https://example.my.salesforce-sites.com/webhook/services/apexrest/freeeSign/fsstatus
-
-
不正リクエスト対策パスワード:任意の値
※この値は設定が必要ですが、今後使用することはありません。
-
URL:サイトのURL(本手順①でコピーしたURL)の末尾に以下の値を追加します。
- 必要事項を入力したら[登録する]をクリックします。
- 「Webhookを登録しました」のメッセージが表示され、Webhookの詳細ページに遷移したら、freeeサインへの設定登録は完了です。
- トリガーイベントに「文書の状態変更」と表示されていることを確認し、必要に応じて修正します。
つづいて、後述「⑤Webhook通信のテストを行う」に進みます。
⑤Webhook通信のテストを行う
Webhookの設定が正しく完了しているかを確認するため、疎通確認(通信テスト)を行います。
- 「④freeeサインにWebhook設定を登録する」で登録した「Webhook詳細」画面へ遷移したら、[疎通確認リクエストを送る]をクリックします。
- 「疎通確認に成功しました」のメッセージが表示されたら、設定は完了です。Webhookが正常に動作していることが確認できました。
つづいて、freeeサイン for Salesforceを利用するための権限設定を行います。
設定方法については、「freeeサイン for Salesforce 初期設定-3.権限設定を行う」のヘルプページをご覧ください。