WebhookブロックのPUTメソッド

WebhookブロックのPUTメソッド


問い合わせのステータスの変更や連絡先情報の更新など、ボットを通じてZoho Desk、Zoho CRMなどの外部アプリ/システムに登録されている既存のデータを更新したい場合があります。このような場合に、WebhookブロックのPUTメソッドが役立ちます。

以下では、WebhookブロックのPUTメソッドの概要やよくある質問について説明します。


参考情報:自動ガイドボットのWebhookブロックの概要 

PUTメソッドとは   

PUTメソッドとは、APIを通じて外部アプリ/システムに保存されている既存のデータを更新する仕組みです。このメソッドでは、対象のデータが新しいデータに置き換えられます。自動ガイドボットのフロー内でWebhookブロックのPUTメソッドを使用することで、対象のデータ全体を新しいデータとして更新することが可能です。



使用するタイミング   

PUTメソッドが役に立つタイミングは、以下のとおりです。
  1. Zoho Deskのカスタムタブに保存されているデータに関して、すべての項目を更新したい
  2. 問い合わせの工数の記録に関するデータを新しいデータに置き換えたい
  3. タブ内のデータの構造を編集したい
 問い合わせの優先度やステータスなど、対象のデータの特定の項目のみを変更したい場合は、PATCHメソッドがより適しています。PUTメソッドは、対象のデータのすべての項目を変更したい場合に適しています。 
使用例
Zoho Deskのカスタムタブ内のデータを、新しい内容に編集したいとします。


   "description": "Doctor informations", 
   "profileIds": [1000000029530, 1000000029533], 
   "pluralLabel": "Doctors", 
   "departmentIds": [1000000774623, 1000000025632], 
   "singularLabel": "Doctor" 
 }
 
 
レスポンスの例:

{
  "module_id": "MOD123456",
  "status": "Updated"
}  

このレスポンスをもとに、チャットの利用者に対して以下のメッセージを送信できます。
タブID:MOD123456のデータが更新されました。チーム担当者が確認後、対応を開始します。

ボディ(本文)  

PUTでは、更新対象の項目の情報を含むリクエストボディの情報が必要です。通常、ボディはJSON形式で指定する必要があります。ただし、一部のAPIではフォームデータにも対応しています。
ボディに関して行える内容は、以下のとおりです。
  1. WebhookブロックにJSONまたはフォームデータを手動で入力できます
  2. @user.id、@ticket.priorityなどの動的変数を使用し、リクエストをカスタマイズできます。
フォームデータ
フォームデータ
特定のサービスや長く使用されているAPIなどの一部のAPIでは、JSONではなくフォームデータが必要です。この場合、以下のようにキーと値のペアを入力します。
 
name = {{user.name}} 
 email = {{user.email}} 
 message = {{user.query}}   

 APIの対応形式(JSONまたはフォームデータ)や必須項目に関する詳細については、APIドキュメントをご参照ください。

PUTメソッドとPATCHメソッドの違い

PUTメソッドとPATCHメソッドの違い
PUTメソッドとPATCHメソッドの違い
PUTメソッドとPATCHメソッドの主な違いは、以下の表のとおりです。

機能
PUTメソッド
PATCHメソッド
更新の種類
すべてのデータの更新(すべてのデータを置換する)
一部のデータの更新(特定の項目の値のみ変更する)
必要なデータ
対象のデータの全体
更新対象の項目のみ
使用例
すべてのデータを置換、更新する
特定の値のみを変更する
APIの動作
すべてのデータを上書きする
指定されていない項目の値は保持する
 
PUTメソッドでは対象のデータのすべての値が更新されるのに対して、PATCHメソッドでは対象のデータの一部の値のみが更新されます。
 

PUTメソッドによるデータの更新
以下の元のオブジェクトがあるとします。

   "ticket_id": "TX12345", 
   "status": "Open", 
   "priority": "Normal", 
   "assignee": "Agent A" 
 } 

PUTメソッドを使用することで、このオブジェクトを以下のように更新することが可能です。 
 { 
   "ticket_id": "TX12345", 
   "status": "In Progress", 
   "priority": "High" 
 } 

APIによっては、すべてのオブジェクトを指定する必要があります。一部の項目を指定しなかった場合、エラーが発生する可能性があります。そのため、PUTメソッドを使用する場合は、すべての項目を指定する必要があるのか、一部の項目を省略可能なのかをご確認ください。
 

Webhookブロックの各メソッドの違い 

GET
POST
PUT
PATCH
DELETE
GET
主な使用目的
一般的な使用例
リクエストボディ

サーバーからデータを取得する
ユーザー情報の取得
問い合わせの履歴の取得
ナレッジベースの記事の取得
×
メールアドレスをもとに顧客のサブスクリプション情報を表示する
POST
主な使用目的
一般的な使用例
リクエストボディ

外部アプリ/システムに新しいデータを作成する
新しい問い合わせの作成
フォームの送信
ユーザーのフィードバックの記録
○(例:JSON)
チャットの利用者の情報をもとにZoho Deskで新しい問い合わせを作成する
PUT
主な使用目的
一般的な使用例
リクエストボディ

既存のデータを更新する/置き換える
問い合わせのステータスの更新
連絡先情報の更新
サブスクリプション情報の変更
○(すべてのデータ)
問い合わせの優先度を「緊急」に変更する
PATCH
既存のデータの一部を更新する
問い合わせの優先度の更新
顧客の電話番号の変更
特定の項目の更新
○(一部のデータ)
問い合わせのステータスの項目のみを「対応中」に更新する
DELETE

主な使用目的

一般的な使用例

リクエストボディ

サーバーからデータを削除する

問い合わせの削除

ユーザーの登録解除
顧客のデータの削除

任意

ユーザーの問い合わせを削除する

 GETPOSTPATCHDELETEの各メソッドに関する詳細については、該当のヘルプをご参照ください。

PUTメソッドのメリット   


  1. 外部アプリ/システムに保存されているデータを、常に最新の状態に保つことができます。
  2. データ更新をボットに任せることができます。
  3. チャットの利用者の操作情報をもとに、Zoho DeskやZoho CRMなどの外部アプリ/システムのデータを同期できます。
  4. データを効率よく管理できます。


よくある質問   

PUTメソッドを使用してZoho Deskの問い合わせのデータを更新できますか?
はい。APIが対応している場合、PUTメソッドを使用してZoho Deskの問い合わせの優先度、ステータス、担当者などのデータを更新することが可能です。
本番環境に適用する前にPUTメソッドのテストを行うことはできますか?
はい。自動ガイドボットの設計画面のプレビュー画面からテストを行うことが可能です。PUTメソッドのレスポンスは、プレビュー画面内に表示されます。

使用に関するヒント   


  1. 保存する前にWebhookのプレビューを表示して、リクエストとレスポンスをご確認ください。
  2. 動的変数を使用することで、チャットの利用者に応じてデータを更新できます。
  3. APIにおいて、すべての項目を指定する必要があるのか、一部の項目を省略可能なのかをご確認ください。
  4. APIのレスポンスに関して、処理が適切に行われているかどうかをご確認ください。
  5. データの一部の項目のみを変更する場合は、PATCHメソッドを使用することをおすすめします。


参考情報:自動ガイドボットのWebhookブロックの概要