Perplexity APIキーの取得方法とSonarリクエストの初回作成

コンソールでPerplexity APIキーを取得し、クレジットを追加して、curl、Python、Apidogを使って最初のSonarリクエストを送信してください。レート制限とエラーについても記載しています。

INEZA Felin-Michel

INEZA Felin-Michel

18 9月 2026

Perplexity APIキーの取得方法とSonarリクエストの初回作成

Apidog エンタープライズ

オンプレミスデプロイ

SSO & RBAC

SOC 2 準拠

Apidog Enterpriseを見る

Perplexity APIキーは、api.perplexity.aiへのすべてのリクエストとともに送信する認証情報です。これはプロジェクトを識別し、プリペイドクレジット残高を減らし、レート制限ティアを設定します。APIキーを扱ったことがない場合は、APIキーとは何かについての入門記事が基本をカバーしています。このガイドでは、Perplexity固有の部分、つまりアカウントの作成、クレジットの追加、キーの生成、およびcurl、Python、Apidogから最初のグラウンデッドなSonarリクエストを送信する方法について説明します。

開始する前の注意点です。PerplexityはSonarをAgent APIに移行し、公式クイックスタートも現在そこを指しています。古いSonarチャット補完エンドポイントは2026年9月27日まで機能し、その後廃止されます。以下のすべての例は現在のエンドポイントを使用しており、古いコードを保守している場合のためにレガシー形式に関する簡単な注記も含まれています。

ボタン

始める前に必要なもの

ステップ1:APIコンソールにサインインしてプロジェクトを作成する

console.perplexity.aiにアクセスし、サインイン方法を選択します。サインインするとPerplexityアカウントが作成されますが、APIプロジェクトは作成されません。初回訪問時には、キーはプロジェクトにスコープされるため、キーを生成する前にプロジェクトを作成または参加するようセットアップウィザードが表示されます。

左サイドバーの設定を開き、組織名、住所、税務情報を入力してください。これらは請求書に記載されます。もし会社がすでにプロジェクトを持っている場合は、2つ目を作成するのではなく、管理者に依頼して既存のプロジェクトに追加してもらってください。プロジェクトを分離することで、クレジット残高とキーも分離されるため、本番アプリを実験から隔離するのに役立ちます。

ステップ2:支払い方法とクレジットを追加する

請求ページを開いてカードを追加します。ドキュメントによると、支払い方法を追加してもカードに請求はされず、将来の利用のために詳細が保存されます。その後、クレジットを購入します。残高、モデルごとの使用状況の内訳、請求履歴はすべてこのページで確認できます。

ここで重要な点が2つあります。APIはプリペイドクレジットから請求され、残高がなくなるとチャージするまでキーがブロックされます。ドキュメントでは、この失敗を402ではなく401として説明しているため、クレジット切れのアプリは一見すると認証バグのように見えます。また、自動リロードの隣にある設定を変更をクリックすると、残高が設定したしきい値を下回ったときにコンソールが自動的にクレジットを追加するように設定できます。本番環境に移行する前に、これをオンにしてください。

ドキュメントには最低購入額は記載されていないため、請求ページに表示されている情報に従ってください。レート制限を設定する使用ティアは、現在の残高ではなく、アカウントの有効期間中に購入した累計クレジットに基づいて決定されます。

ステップ3:APIキーを生成する

コンソールのAPIキーページを開き、キーを作成します。dev-laptopprod-search-workerのような分かりやすい名前を付けます。作成後、完全な値は一度だけ表示され、再度取得することはできないため、キーを区別する唯一の方法はその名前になります。すぐにコピーしてください。

キーはコードではなく環境変数に格納してください。

export PERPLEXITY_API_KEY="pplx-your-key-here"

Windowsでは、setx PERPLEXITY_API_KEY "pplx-your-key-here"を使用し、新しいターミナルを開きます。

1つのプロジェクト内で複数のキーを作成できるため、環境ごと、サービスごとに1つずつ作成します。キーの取り消しは永続的であり、キーが漏洩した場合には望ましいことです。キーがリポジトリに漏洩したかどうか不明な場合は、キーをローテーションする前にGit履歴に対してシークレットスキャナーを実行してください。

ステップ4:最初のSonarリクエストを送信する

現在のエンドポイントはPOST https://api.perplexity.ai/v1/agentです。認証は標準的なベアラーヘッダーAuthorization: Bearer $PERPLEXITY_API_KEYを使用します。ボディにはmodelinput文字列を取ります。このエンドポイントのSonarモデルIDはperplexity/sonarで、web_searchツールを追加すると、ライブWebを検索してソースを添付するように指示されます。

時間とともに変化する実際の答えを持つ質問をしてみてください。

curl https://api.perplexity.ai/v1/agent \
  -H "Authorization: Bearer $PERPLEXITY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "perplexity/sonar",
    "input": "Which Node.js release line is currently Active LTS, and when does it reach end of life?",
    "tools": [{ "type": "web_search" }]
  }' | jq

レスポンスには、平文の回答であるoutput_textと、モデルが実行したステップごとに1つの項目を持つoutput配列が含まれています。message項目には回答が保持され、search_results項目には読み取ったページがリストされ、それぞれにurltitlesnippetdateが含まれます。usageオブジェクトはトークン数とコストを報告します。completedstatusは、実行が完了したことを意味します。

公式SDKを使用したPythonでの同じリクエスト:

pip install perplexityai
from perplexity import Perplexity

client = Perplexity()  # 環境変数から PERPLEXITY_API_KEY を読み込みます

response = client.responses.create(
    model="perplexity/sonar",
    input="Which Node.js release line is currently Active LTS, and when does it reach end of life?",
    tools=[{"type": "web_search"}],
)

print(response.output_text)

OpenAI SDKを好む場合は、base_url="https://api.perplexity.ai/v1"を設定し、同じ引数でclient.responses.create()を呼び出します。SDKはそれを/v1/responsesにルーティングし、Perplexityはこれをエイリアスとして受け入れます。プリセット(fastlowmediumhighxhigh)は、モデル、トークン予算、およびツールをまとめて提供します。OpenAI SDKでは、これらをextra_bodyを通じて渡します。

レガシーなチャット補完形式を使用している場合

古いコードでは、モデルID sonarsonar-prosonar-reasoning-pro、またはsonar-deep-researchを使用してmessageshttps://api.perplexity.ai/v1/sonarに送信し、choices[0].message.contentを読み取ります。この形式は2026年9月27日まで機能します。移行ガイドでは、sonarperplexity/sonarに、sonar-prolowプリセット付きのperplexity/sonarに、ディープリサーチはhighプリセットにマッピングされています。search_domain_filtersearch_recency_filterオプションは、web_searchツール内のfiltersオブジェクトとして移動します。

ステップ5:キーを保存し、Apidogにリクエストを保存する

一度だけ機能するcurlはテストではありません。Apidogでキーをクラウドに保存せず、オンデマンドでリクエストを実行するために使用するセットアップを以下に示します。

環境を作成します。Perplexityという名前の環境を、次の2つの変数で追加します。base_urlは共有値としてhttps://api.perplexity.aiに設定し、PERPLEXITY_API_KEYは共有値をプレースホルダーとして残し、実際のキーはローカル値にのみ設定します。ローカル値はクライアントのキャッシュに存在し、チームメイトとは同期されません。これこそが重要な点です。Apidogの環境とシークレット変数に関するガイドでは、共有値とローカル値の分離について詳しく説明しています。

リクエストを構築します。新規リクエスト、POST {{base_url}}/v1/agent。ヘッダーAuthorization: Bearer {{PERPLEXITY_API_KEY}}を追加し、ボディタイプをJSONに設定し、上記のcurlと同じボディを貼り付けます。Perplexity環境を選択し、送信をクリックします。レスポンスパネルにoutput_textsearch_resultsブロックが表示されるはずです。

テストに変換します。3つのアサーションを追加します。ステータスコードは200$.statuscompletedと等しい、そして$.output_textは空ではない、とします。このリクエストをテストシナリオとして保存します。これで、チームの誰でもプロジェクトをプルし、自分のキーをローカル値に貼り付け、ワンクリックで設定を確認できます。キーをローテーションすることは、スクリプトをあちこち探すのではなく、1つのフィールドを編集するだけです。

まだお持ちでない場合は、無料でApidogをダウンロードしてください。無料プランは4ユーザーまで対応しており、小規模チームがプロジェクトを共有するのに十分です。

レート制限とリクエストの費用

Agent APIのレート制限は使用ティアに応じて変動し、ティアはレート制限ページによると、生涯のクレジット購入額によって設定されます。

ティア 購入クレジット 1秒あたりのリクエスト数 1分あたりのリクエスト数
0 $0 1 50
1 $50+ 3 150
2 $250+ 8 500
3 $500+ 17 1,000
4$1,000+ 33 4,000
5$5,000+ 33 8,000

制限はリーキーバケットアルゴリズムを使用しているため、制限までの短時間のバーストは許可されます。制限を超えるとAPIは429を返し、Retry-Afterヘッダーが返されます。拒否されたリクエストは請求されません。現在のティアは、コンソールの価格設定ページの「使用ティア」タブに表示されます。

価格設定については、ここでは1つの段落で十分です。価格ページには、Agent APIでのperplexity/sonarが入力トークン100万あたり0.25ドル、出力トークン100万あたり2.50ドル、さらにweb_search呼び出し1回あたり0.0025ドルと記載されています。レガシーなSonarチャット補完モデルは課金方法が異なり、sonarは入出力トークン100万あたり1ドル、さらに検索コンテキストサイズに応じてリクエスト1000回あたり5ドルから12ドルです。完全な内訳とプロアカウントの視点については、当社のPerplexity APIガイドを参照してください。

よくあるエラーとその対処法

401 Unauthorized(認証されていません)。可能性の高い順に3つの原因が考えられます。ヘッダーが間違っている(Authorization: Bearer <key>である必要があり、シェル変数は同じターミナルでエクスポートされている必要があります)、キーが取り消された、またはクレジット残高がゼロである、です。何かを再生成する前に、請求ページを確認してください。Python SDKでは、この場合にAuthenticationErrorが発生します。

400 Bad Request(不正なリクエスト)。通常、古い形式のボディが新しいエンドポイントに送信された場合です。例えば、inputではなくmessagesを使用したり、/v1/agentで裸のsonar-proモデルIDを使用したりした場合です。SDKでは、これをValidationErrorとして表示します。

404 Not Found(見つかりません)。パスが間違っています。/v1/agentはAgent APIであり、/v1/sonarはレガシーなチャット補完エンドポイントです。ドキュメントにはこれら以外は記載されていません。

429 Too Many Requests(リクエストが多すぎます)。ティアの制限に達しました。Retry-Afterヘッダーを読み取り、その時間待機してから、指数バックオフとジッターで再試行してください。持続的なスループットが必要な場合は、クレジットを購入することでティアを上げることができます。SDKのエラー処理ガイドには、RateLimitErrorのパターンが示されています。

500または503。サーバー側のエラーです。遅延を挟んで再試行してください。短い間隔でのリトライループは、レート制限を悪化させます。

よくある質問(FAQ)

無料のPerplexity APIキーはありますか?

無料ティアは文書化されていません。APIはプリペイドクレジット残高からの従量課金制であり、クレジットのないプロジェクトはブロックされます。perplexity/sonarと1回のウェブ検索での最初のリクエストの費用は1セント未満であるため、少額のチャージで多くのテストをカバーできます。

最初のリクエストにはどのモデルIDを使用すべきですか?

/v1/agentweb_searchツールとともにperplexity/sonarを使用してください。これは最も費用対効果の高いグラウンデッドオプションであり、移行ガイドで古いsonarおよびsonar-pro IDがマッピングされているものです。Perplexityにモデルと検索予算を選択させたい場合は、lowmediumなどのプリセットに切り替えてください。

検索結果のみが必要な場合でもAgent APIが必要ですか?

いいえ、必要ありません。個別のSearch APIは、モデルを実行せずにランク付けされた結果を返すため、独自のパイプラインにページを供給する場合には安価です。Perplexity Search APIのウォークスルーでは、リクエストの形式とフィルターを示しています。

ダウンタイムなしでキーをローテーションするにはどうすればよいですか?

同じプロジェクト内に2つ目のキーを作成し、古いキーが使用されていたすべての場所にそれをデプロイし、新しいキーでのトラフィックを確認してから、古いキーを取り消します。取り消しは永続的であるため、まずすべてのコンシューマを更新してください。キーのローテーションをスクリプト化したい場合は、Perplexityは/generate_auth_tokenおよび/revoke_auth_tokenエンドポイントも公開しています。

まとめ

サインインし、プロジェクトを作成し、クレジットを購入し、キーを生成し、perplexity/sonarを使用して/v1/agentにリクエストを1回送信します。これが全体の流れです。キーをApidogのローカル値として保存し、リクエストをテストとして保存すれば、チームの次のメンバーは数分で検証可能なセットアップを手に入れることができます。チャット補完エンドポイントでまだコードを使用している場合は、2026年9月27日までに移行してください。

ApidogでAPIデザイン中心のアプローチを取る

APIの開発と利用をよりシンプルなことにする方法を発見できる