質問

Zendesk v2 APIを使用してAPIリクエストを認証するにはどうすればよいですか?

回答

認証済みAPIリクエストを実行するには、認証済みのZendeskユーザーであることが必要です。APIリクエストを認証するには、メールアドレスとパスワード、メールアドレスとAPIトークン、またはOAuthアクセストークンでBasic認証を使用します。

それぞれの認証方法で、承認ヘッダーの設定が異なります。ペイロードまたはURLで送信された資格情報は処理されません。各オプションを以下に示します。

  • パスワード認証
  • APIトークン認証
  • OAuthアクセストークン認証
  • 承認ヘッダーを表示する

パスワード認証

メモ:APIのパスワード認証は廃止されます。廃止のタイミングは、トラフィックパターンやアカウントの作成日によって異なる場合があります。次のページを参照してください。「APIのパスワードアクセス」の提供終了に関するお知らせ

Basic認証を使用している場合は、メールアドレスとパスワードを組み合わせて承認ヘッダーを生成できます。Basic認証を使用するには、管理センターの「アプリおよびインテグレーション」>「API」>「 Zendesk API」の順に選択し、関連する認証セクション(「チームメンバー」または「エンドユーザー」)でも、パスワードアクセスを有効にする必要があります。

画像

メールアドレスとパスワードの組み合わせをBase-64でエンコードされた文字列にフォーマットします。認証ヘッダーをフォーマットする方法の例については、次のコードブロックを参照してください。

Authorization: Basic {base-64-encoded email_address:password}

APIトークン認証

APIトークンを使用している場合、メールアドレスとAPIトークンを組み合わせて承認ヘッダーを生成します。メールアドレスとAPIトークンの組み合わせをBase-64でエンコードされた文字列にフォーマットします。認証ヘッダーをフォーマットする方法の例については、次のコードブロックを参照してください。

Authorization: Basic {base-64-encoded email_address/token:api_token}

OAuthアクセストークン認証

OAuthを使用して認証を行う場合は、認証ヘッダーを次のようにフォーマットします。

Authorization: Bearer oauth_access_token

詳しくは、次の記事を参照してください:「アプリでのOAuth認証の使用」

承認ヘッダーを表示する

アプリが送信するものを正確に確認するには、Request Binなどのサードパーティページを使用します。OAuth認証を使用するWebhookにより生成されるヘッダーと、自分のヘッダーを比較します。Webhookをrequestb.inのURLにポイントし、「Webhookを追加」ページで、「Webhookをテスト」をクリックして、実際の動作を確認します。

Add_Webhook.jpg

リクエストがrequestb.inに届くと、次のように表示されます。

requestbin

Authorization: Bearerの後ろの文字列は、「プログラムによるアクセス」にあるアカウント設定でRequestBinで提供されるAPIキーです。

Pythonを使用してリクエストを実行する場合、セッションヘッダーを以下のように設定します。

session = requests.Session()
session.headers = {'Content-Type': 'application/json', 'Authorization': 'Basic Basic_64_encoded_code'}
メモ:APIの使用状況ダッシュボードでAPIの使用状況を監視し、予想API制限を確認します。

詳細については、開発ドキュメントを参照してください:「セキュリティおよび認証」

Powered by Zendesk