アプリのデータを参照したり、更新情報を確認したり、ダッシュボードのデータを手動で更新したりするにあたって、アプリの画面を切り替えて手動で操作するのには手間がかかります。このような場合に、Webhookが役立ちます。このページでは、自動ガイドボットのWebhookブロックについて説明します。
1.Webhookとは
Webhookとは、あるアプリ/システムで特定の処理が行われた際に、別のアプリ/システムに該当の処理に関するデータを送信するための仕組みです。
例:
顧客がWebサイトでフォームを入力したとします。この場合、Webhookを使用することで、顧客がフォームに入力したデータをZoho DeskやZoho CRMに自動で送信することができます。顧客がフォームの送信ボタンをクリックすると、データはすぐに送信されます。フォームのデータを手動で取り込む手間を省くことが可能です。
このように、新しい問い合わせの作成、代金の受領、顧客からの返信などの特定の処理が行われた際に、Webhookを通じてこれらのデータを他のアプリ/システムに自動で送信できます。
2.自動ガイドボットのWebhookブロックとは
自動ガイドボットのWebhookブロックでは、チャット内で取得したデータを、APIを通じてZoho Desk、Zoho CRM、決済サービスなどの外部のアプリ/システムに送信できます。
たとえば、チャット内で顧客によってメールアドレスが入力されたとします。この場合、Webhookブロックを使用することで、メールアドレスのデータをもとに請求システムから顧客のサブスクリプションの詳細情報を取得し、チャット内に表示することが可能です。請求システム内において情報を手動で検索する手間を省くことができます。
自動ガイドボットのフローでWebhookブロックを追加するには、ブロックの追加画面を開き、処理ブロックの一覧から[Webhook]を選択します。
3.Webhookのメソッド
Webhookのメソッドとは、別のアプリ/システムとデータの送受信を行う際に実行する処理の種類を表します。Webhookのメソッドの種類は、以下のとおりです。
A) GET:データの取得
- このメソッドでは、別のアプリ/システムからデータを取得できます。取得するにあたって、元のデータは変更されません。
- 例:メールアドレスから、顧客の注文ステータスや予約の詳細を取得できます。
B) POST:新しいデータの作成
- このメソッドでは、外部アプリ/システムに新しいデータを送信できます。
- 例:見込み客によって連絡先情報が送信された際に、Zoho CRMに新しい見込み客のデータを追加できます。
C) PUT:すべてのデータの更新
- このメソッドでは、既存のデータを新しいデータに置き換えることができます。
- 例:新しい名前やメールアドレスをもとに、顧客情報を更新できます。
D) PATCH:一部のデータの更新
- このメソッドでは、既存のデータの特定の項目のみを更新できます。
- 例:顧客情報に関して、電話番号のみ変更できます。他のデータは変更されません。
E) DELETE:データの削除
- このメソッドでは、アプリ/システムからデータを削除できます。
- 例:配送情報のデータベースから顧客のデータを削除できます。
4.URLの項目
このURLは、Webhookを通じてデータの送受信を行う場所(エンドポイント)を表します。URLの項目では、接続先の外部アプリ/システムのAPIエンドポイントを保存、管理できます。
留意事項
- URLは、省略せずに正しい形式で入力してください。
- 「https://」 からはじまる、セキュア接続で保護されているURLを使用してください。
5.クエリーパラメーター
クエリーパラメーターを使用することで、Webhookのリクエストを送信する際に問い合わせ番号、メールアドレス、ステータスなどの詳細を合わせて送信できます。このパラメーターをもとに、外部アプリ/システムに対して対象となるデータを指示することが可能です。
- 例: ?email=john.doe@example.com
6.ヘッダー
ヘッダーには、認証トークン、コンテンツの種類、組織IDなどの重要な情報が含まれています。これらの情報は、外部アプリ/システムのAPIによるリクエストの識別、承認時に使用されます。
- 追加できるヘッダーの上限は、20件です。
- データ通信を安全に行うにあたって、ヘッダーの情報は必須です。
7.ボディの項目
ボディの項目では、Webhookのリクエストを送信する際に構造データ(例:JSON)を合わせて送信できます。GETメソッドのリクエストでは使用されませんが、他のメソッド(POST、PUT、PATCH、DELETE)では必須です。
この項目は、以下のデータを送信するために使用されます。
- フォームの入力内容
- 問い合わせの更新情報
- 連絡先の詳細
- その他のデータ
ボディの項目の形式は、外部アプリ/システムの形式と同じにする必要があります。
8.外部連携
外部連携では、Webhookのリクエストを安全に認証できます。認証情報を手動で管理する手間を省くことが可能です。
対応している外部連携の種類は、以下のとおりです。
- Zoho OAuth
- APIキー
- 独自の認証設定
外部連携の設定は、Delugeの連携設定のページで行います。安全にかつ簡単に外部連携を管理することができます。
9.フォーマッター
APIによる出力データは、顧客にとってわかりにくい場合があります。フォーマッターを使用することで、チャットの欄にAPIのデータを出力する前に形式を整えることができます。
フォーマッターを通じて行える内容は、以下のとおりです。
- 項目名の変更(例:「cust_name」から「顧客名」)
- 日時の形式の変更
- 関連情報のみの抽出と表示
これらの設定は、Delugeを通じて行います。簡単な操作でAPIの設定を行うことが可能です。
10.レスポンス
Webhookを通じてAPIのレスポンスを受信するにあたって、通信対象のデータを使用できます。
レスポンスを通じて行える内容は、以下のとおりです。
- ステータスコード(例:200、404)の保存
- データの抽出(例:問い合わせの件名、注文ID、ユーザー名)
- 値と変数の関連付け
また、APIのレスポンスから、名前、日付、問い合わせの詳細などの情報を抽出することも可能です。値と変数を関連付けるだけで、チャット欄で利用者に対して情報を表示したり、以降の処理で情報を使用したりできます。ボットを通じて、データをリアルタイムで使用することが可能です。
11.複数経路
APIのレスポンスには複数の種類があります。成功、失敗、サーバーエラーなど、それぞれのAPIの種類によって出力される内容が異なります。複数経路では、それぞれのAPIの種類に応じたボットの反応を設定できます。
複数のステータスコード(例:200、404、500)を設定することで、複数経路によって各コードに対して処理が自動で作成されます。
例:
- 200:予約情報はこちらです。
- 404:該当のメールアドレスに関連する予約はありません。
- 500:エラーが発生しました。時間をおいて、もう一度お試しください。
12.リクエストのタイムアウト
この設定では、APIからのレスポンスの待機時間を指定できます。APIのレスポンスにかかる時間が長すぎる場合、リクエストは時間切れとなり、ボットによって処理が行われます。
外部アプリ/システムによる処理に時間がかかったり、不具合が発生したりした場合でも、ボットによって対応を行うことが可能です。外部アプリ/システムの通常時のレスポンス時間に応じて、5~40秒の値を待機時間として選択できます。上記の複数経路と合わせて設定することで、リクエストのタイムアウトが発生した際に「通常よりも処理に時間がかかっています。もう一度お試しください」と表示することも可能です。
Webhookブロックを使用するメリット
Webhookブロックを使用することで、特定の処理が発生した際にその情報を自動ガイドボットと他のアプリ/システム間で送受信できます。アプリやシステムの画面を切り替えて情報を確認する手間を省くことが可能です。
Webhookを通じて、注文の詳細、支払い履歴、サブスクリプションなどの情報を取得し、チャット欄に出力できます。顧客に応じたメッセージをリアルタイムで表示することが可能です。
Zoho DeskのWebhookブロックは、REST APIに対応しています。自動ガイドボットを設計するにあたって、さまざまなアプリ/システムにスムーズに連携することが可能です。
顧客の情報を取り扱うにあたって、セキュリティ対策は必要不可欠です。Webhookブロックでは、通信時にZohoの安全な接続方法が使用されます。これにより、認証済みユーザーのみに対してデータへのアクセスを許可できます。