ZendeskでチャットAPIを使用する方法:ステップバイステップガイド

Stevia Putri

Katelin Teen
Last edited 2025 10月 10
Expert Verified

カスタムインテグレーションの構築、レポート用のチャットデータの取得、あるいはZendeskでのワークフローの自動化をお考えですね。素晴らしい目標です。APIを使えば、プラットフォームを本当に思い通りに活用する力を手に入れられます。
しかし、正直に言いましょう。ZendeskのAPIをどこから始めればいいのかを理解するのは、少し悪夢のように感じられるかもしれません。従来のLive Chat、新しいMessagingプラットフォーム、そしてREST、Real-Time、Conversationsなど、選ぶべきAPIが山ほどあります。コードを一行も書く前にブラウザのタブを閉じてしまいたくなるほどです。
もし心当たりがあるなら、この記事はまさにあなたのためのものです。このガイドでは、ノイズを排除し、Zendeskが提供する従来のChat APIを使用するためのシンプルでステップバイステップのプロセスを解説します。混乱を解消し、頭を悩ませる状態から最初のAPIコールを成功させるまで、あなたを導きます。
Zendesk Chat APIを始めるために必要なもの
本格的にコードに取り掛かる前に、必要なものがすべて揃っているか簡単に確認しましょう。これを今整理しておくことで、後々の多くの手間を省くことができます。
簡単なチェックリストはこちらです:
-
APIアクセス権のあるZendeskアカウント。 これは通常、Zendesk Suite Teamプラン以上で利用可能です。どのプランを利用しているかわからない場合は、契約内容を確認してみる価値があります。
-
管理者権限。 APIキーを生成するには、Zendeskアカウントの管理者である必要があります。管理者でない場合は、管理者である人を見つけて、手伝ってもらうよう丁寧にお願いする必要があります。
-
APIクライアント。 APIにリクエストを送信する方法が必要です。Postmanのようなツールは、すぐにコードを書く代わりにユーザーフレンドリーなインターフェースでAPIコールをテストできるため、非常に便利です。あるいは、コンピュータのターミナルで直接cURLを使用したり、お気に入りのプログラミング言語に直接飛び込むこともできます。
-
REST APIの基本的な知識。 専門家である必要はありませんが、エンドポイント、GETリクエスト、認証ヘッダーといった概念に少しでも慣れていれば、このプロセスはずっとスムーズに感じられるでしょう。
Zendesk Chat APIのステップバイステップガイド
さて、すべてのツールが準備できたところで、本題に入りましょう。まずZendeskの全体像を理解し、その後で実際のAPIコールに手を動かしていきます。
ステップ1:Zendesk Chat APIの全体像を理解する(Chat vs. Messaging)
正直なところ、Zendesk APIを使い始める人が直面する最大の混乱点は、2つのチャット製品、Live ChatとMessagingの違いです。名前は似ていますが、内部的には全く異なるものであり、全く異なるAPIセットを使用します。これを最初にはっきりと理解しておくことが重要です。
Zendesk Live Chat(クラシック版)
これは、多くの人が慣れ親しんでいるオリジナルのセッションベースのチャット製品です(以前はZopimと呼ばれていました)。電話のようなものだと考えてください。顧客がチャットを開始し、リアルタイムの会話が行われ、ウィンドウを閉じると終了します。この製品は、私たちがこのガイドで焦点を当てるChat REST APIを含む、特定のAPIセットを使用します。これらのAPIは、リアルタイムの会話を管理し、エージェントを処理し、このクラシックシステムから過去のチャットログを取得するために構築されています。
これはZendeskの新しいオムニチャネルアプローチです。非同期の会話向けに構築されており、テキストメッセージやWhatsAppに似ています。顧客はウェブサイト、モバイルアプリ、あるいはFacebookメッセンジャーからメッセージを送り、後で返信を確認することができます。ここが重要な点ですが、Messagingは従来のChat APIを一切使用しません。代わりに、Sunshine Conversationsやリアルタイムデータ用のWebhookなど、異なる開発者ツールキットに依存しています。
この分裂は、統一された自動化を構築しようとするチームにとって、本当に頭の痛い問題です。全く異なる2つのAPIモデルをやりくりするのは複雑で、多くの時間とリソースを消耗する可能性があります。これが、この種のプロジェクトの多くが開発途中で行き詰まる一般的な理由です。そして、まさにeesel AIのようなプラットフォームが存在する理由でもあります。それは、従来のChatからであろうと最新のMessagingからであろうと、すべてのヘルプデスクデータに接続するZendeskとのワンクリック統合を提供します。これにより、どのAPIを使用すべきか心配することなく、スマートなAIエージェントを構築できます。
ステップ2:目的に合った適切なAPIを選ぶ
旧来のLive Chatの世界でさえ、Zendeskは特定のタスクごとに設計されたいくつかの異なるAPIを提供しています。最初から適切なものを選ぶことで、無駄な追跡を避けることができます。
以下に、選択肢の簡単な概要を示します:
-
Chat REST API: ほとんどのことに使用する主力APIです。過去のチャットデータをプログラムで取得したり、トランスクリプトを取得したり、エージェントを管理したり、会話が終了した後にチャット情報を更新したりするのに使用します。以下の例では、このAPIを使用します。
-
Real-Time Chat API: これは、今まさに何が起こっているかを監視するために構築されたストリーミングAPIです。現在アクティブなチャット数やオンラインのエージェントを示すダッシュボードを構築する必要がある場合、これが求めるAPIです。
-
Conversations API (GraphQL): このAPIは元々、カスタムチャットボットなど、エージェントのように振る舞うアプリケーションを構築するために設計されました。しかし、ZendeskはこのAPIをメンテナンスモードに移行し、新規のインテグレーションには利用できなくなりました。新しいプロジェクトでは、このAPIは避けるべきです。
-
Web SDK: これは典型的なAPIではなく、クライアントサイドで動作するJavaScriptライブラリです。ウェブサイト用に完全にカスタムなチャットウィジェットを構築する力を与え、見た目、操作感、ユーザーエクスペリエンスを完全にコントロールできます。
さらに明確にするために、判断に役立つ簡単な表を以下に示します:
API名 | タイプ | 主な使用例 | ステータス |
---|---|---|---|
Chat REST API | REST | 過去のデータの取得、チャットの管理 | アクティブ |
Real-Time Chat API | REST / ストリーミング | ライブメトリクスとエージェントステータスの監視 | アクティブ |
Conversations API | GraphQL | エージェントのようなボットやアプリの構築 | メンテナンスモード |
Web SDK | JavaScript | カスタムのフロントエンドチャットウィジェットの構築 | アクティブ |
ステップ3:API認証情報を生成する
APIと安全に通信するためには、あなたのコードが許可を持っていることを証明する必要があります。これを行う標準的な方法は、Zendesk ChatダッシュボードでOAuthクライアントを作成することです。これにより、アクセストークンを生成するために必要な認証情報が得られます。
手順は以下の通りです:
-
Zendesk Chatダッシュボードにアクセスします。通常、メインのZendesk Supportアカウントの製品トレイ(4つの四角いアイコン)から見つけることができます。
-
左側のメニューで、設定 > アカウントに移動し、API & SDKタブをクリックします。
-
大きなAPIクライアントを追加ボタンをクリックします。
-
フォームが表示されます。クライアントに覚えやすいクライアント名(「チャットデータ連携」のようなものが良いでしょう)を付け、会社名を入力します。リダイレクトURLについては、今のところ「https://localhost」と入力するだけで大丈夫です。これは認証フローで必要なプレースホルダーであり、今日の目的にはこれで十分です。
-
クライアントを作成すると、ZendeskがクライアントIDとクライアントシークレットを表示します。クライアントシークレットをコピーして、パスワードマネージャーなどの安全な場所に保管してください。これを見ることができるのはこの一度きりです。
-
これらの認証情報は、OAuth認証フローと呼ばれるプロセスで使用され、一時的なベアラートークンを取得します。このガイドをシンプルに保つため、ここでは話を早送りし、リクエストで直接使用するアクセストークンを生成済みであると仮定します。
ステップ4:最初のAPIコールを行う
いよいよ正念場です。先ほど生成した認証情報を使って、アカウントから実際のデータを取得してみましょう。目標は単純です:最新のチャットのリストを取得することです。
エンドポイント
APIエンドポイントとは、リクエストを送信するURLのことです。すべてのチャットのリストを取得するためのエンドポイントは"GET /api/v2/chats"です。
認証
送信するすべてのリクエストは、あなた自身であることを証明するために認証される必要があります。これは、"Authorization"ヘッダーにアクセストークンを含めることで行います。形式は簡単です:"Authorization: Bearer YOUR_ACCESS_TOKEN"。
すべてをまとめる(cURLの例)
ターミナルからcURLを使用するのは、面倒なくAPIをテストする最も手っ取り早い方法の一つです。ターミナルを開き、YOUR_ACCESS_TOKEN
を実際のトークンに置き換えて、このコマンドを実行してください:
"`bash
curl https://www.zopim.com/api/v2/chats \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
"`
すべてが正しく設定されていれば、Zendeskのサーバーはチャットのリストを含むJSON形式のテキストで応答するはずです。
レスポンス例
レスポンスは、チャットオブジェクトのJSON配列になります。以下に、その簡単なスニペットを示します:
"`json
{
"chats": [
{
"id": "1A2B3C4D5E",
"visitor": {
"name": "Jane Doe",
"email": "jane.doe@example.com"
},
"history": [
{
"type": "chat.msg",
"display_name": "Jane Doe",
"msg": "Hi, I have a question about my recent order.",
"timestamp": 1678886400000
},
{
"type": "chat.msg",
"display_name": "Support Agent",
"msg": "Hello Jane, I’d be happy to help with that!",
"timestamp": 1678886460000
}
],
"timestamp": "2023-03-15T12:00:00Z"
}
],
"count": 1
}
"`
これで、やり遂げました!Zendeskが提供するChat APIを正常に使用して、実際のデータを取得できました。チャットID、訪問者の詳細、タイムスタンプ付きの完全な会話履歴など、あらゆる種類の有用な情報をここで確認できます。
Zendesk Chat APIを使用する際に避けるべきよくある間違い
最初のAPIコールを成功させることは素晴らしい第一歩ですが、より高度なインテグレーションを構築し始めると、陥りやすい共通の罠がいくつかあります。それらを回避するのに役立つ、いくつかのアドバイスを紹介します。
-
1. 仕事に合わないAPIを使用する: 何度か言及しましたが、これが人々が犯す一番の間違いなので、繰り返す価値があります。コードを一行も書く前に、あなたの目標が従来のLive Chatなのか、最新のMessagingなのかを再確認してください。Chat APIでMessagingのデータを取得しようとしても全く機能せず、なぜ何も表示されないのか不思議に思うだけです。
-
2. レート制限を無視する: すべてのユーザーに対してサービスを安定させるため、ZendeskのChat APIにはレート制限があります。これは通常、1分あたり約200リクエストです。この制限を超えると、「429 Too Many Requests」エラーが発生します。良い習慣として、APIレスポンスの「X-Rate-Limit-Remaining」ヘッダーを常にチェックして、残りのコール数を確認し、アプリケーションに制限に近づいたら一時停止する簡単なロジックを組み込むことです。
-
3. 非推奨のAPIで新しいプロジェクトを構築する: 先に述べたように、Conversations APIはメンテナンスモードです。強力に見えるかもしれませんが、Zendeskがもはや積極的に開発していないAPIで新しいプロジェクトを始めることは、将来的に問題を引き起こすことになります。新しい作業には、積極的にサポートされているAPIを使用するようにしてください。
これらの課題は、カスタムインテグレーションの構築と維持にかかる隠れたコストを浮き彫りにします。それは、コードを書くための初期時間だけでなく、エラーの処理、APIの変更への適応、そしてすべての技術的な維持管理といった継続的な作業です。ここで、ゼロから構築する価値があるのかと自問するかもしれません。エンジニアリングの労力のごく一部で、eesel AIのようなツールは、AIが実際の顧客と対話する前に、何千もの過去のチケットでそのパフォーマンスをテストできる強力なシミュレーションエンジンを提供します。開発リスクなしに、自信を持って高度な自動化を導入できます。
Zendesk Chat APIのコードをスキップしてAIで自動化する
おめでとうございます!認証情報の生成から実際のデータの取得まで、Zendeskが提供する時々混乱しがちなChat APIの世界を乗り越えましたね。これは、あなたが思い描くどんなカスタムツールを構築する上でも、確固たる基盤となります。
しかし、あなたの最終的な目標が、解決策の自動化、エージェントの効率化、そして顧客への即時回答の提供である場合、すべてを自分で構築するのは多くの開発者時間を要する長い道のりです。そこに至るまでには、はるかに速い方法があります。
eesel AIは、わずか数分であなたのZendeskインスタンスに直接接続し、すぐに使えるAIツールの完全なセットを提供します。チケットを自律的に解決できる自律型エージェントから、人間のエージェントにスーパーパワーを与えるAI Copilotまで、数ヶ月ではなく数分で稼働させることができます。エンジニアリングの頭痛の種なしに、強力な自動化のすべての利点を享受できます。
Zendeskで返信を下書きするAI Copilot。Zendesk Chat APIでのコーディングの代替案。
今すぐ無料トライアルを開始しましょう。
よくある質問
Zendeskが提供する従来のChat APIは、オリジナルのセッションベースのLive Chat製品用です。非同期会話のための新しいオムニチャネルソリューションであるZendesk Messagingは、従来のChat APIではなく、Sunshine Conversationsのような異なる開発者ツールセットを使用します。
過去のチャットデータの取得、トランスクリプトの取得、または会話後のチャット情報の管理には、主にChat REST APIを使用する必要があります。これは、Zendeskが提供する従来のChat APIでのほとんどのデータ取得タスクにおける主力APIです。
Zendesk Chatダッシュボードの「設定 > アカウント > API & SDK」でOAuthクライアントを生成する必要があります。このプロセスにより、Zendesk Chat APIでの認証に使用するアクセストークンを取得するためのクライアントIDとクライアントシークレットが提供されます。
よくある落とし穴には、Live ChatではなくMessagingに間違ったAPIを使用すること、APIのレート制限を無視すること、Conversations APIのような非推奨のAPIで新しいプロジェクトを構築することが含まれます。Zendesk Chat APIを使用する際は、常にAPIのステータスと目的を確認してください。
エージェントのステータスやアクティブなチャット数など、ライブチャットのリアルタイム監視には、Real-Time Chat APIを使用する必要があります。このストリーミングAPIは、Zendesk Chat API環境の現在の運用データを提供するために特別に設計されています。
いいえ、Zendeskが提供していたConversations APIはメンテナンスモードにあり、新しいインテグレーションには利用できなくなりました。新しいプロジェクトでは、これを避け、積極的にサポートされているAPIを使用することが最善です。
広範なコーディングなしで自動化したい場合、eesel AIのようなプラットフォームは、Zendeskとのワンクリック統合を提供し、従来のChatや最新のMessagingを含むすべてのヘルプデスクデータに接続します。これにより、Zendesk Chat APIを直接利用することなく、AIを活用した自動化を迅速に展開できます。