
OpenRouter API入門:1つのAPIで主要AIモデルを使う
OpenRouter APIの入門ガイド。APIキーの作成、最初のリクエスト、モデルのスラッグとバリアント、ストリーミング、レート制限とフォールバック、さらにマルチモーダルの選択肢まで解説します。
APIキーは1つ、エンドポイントは1つ、その先に数百の言語モデル。 これが OpenRouter API の売りです。OpenAI のスキーマをそのまま話すため、ほとんどのアプリはベースURLを変えるだけで導入できます。このガイドでは、ゼロから本番投入できるAPI呼び出しまでを解説します。
この記事で学べること:
-
キーを作成し、curl・Python・TypeScript で最初のリクエストを送る
-
モデルスラッグ(
vendor/model)を読み解き、:free、:nitro、:floorなどのバリアントを使う -
ストリーミング、レート制限、複数モデルのフォールバックを扱う
-
プラットフォームのコストを把握し、マルチモーダルゲートウェイが適する場面を知る

OpenRouter の仕組み
モデルカタログ
OpenRouter には OpenAI、Anthropic、Google、Meta、Mistral、DeepSeek、Qwen などの数百のモデルが掲載されており、各モデルページにトークン単価とコンテキスト仕様が記載されています [1]。
リクエストの流れ
リクエストは統合エンドポイントに届き、ルーターがそのモデルのアップストリームプロバイダーを選択して(多くのモデルには複数あります)実行し、レスポンスを OpenAI 形式に正規化します。デフォルトでは、プロバイダー選択は価格と可用性のバランスを取ります [2]。
コスト
推論はプロバイダーの定価そのままで課金され、上乗せはありません。プラットフォームはクレジット購入時に 5.5%(最低 $0.80) の手数料を課し、無料モデルは 1日50リクエスト($10+ のクレジットを購入済みなら1日1,000)に制限されます [3]。
クイックスタート
1. アカウントとキーを作成
サインアップし、少額のクレジットパックを購入し(無料枠の上限引き上げも解放されます)、ダッシュボードでキーを発行します。キーはベアラートークンなので、必ずサーバーサイドで管理しましょう。
2. curl で最初のリクエスト
curl https://openrouter.ai/api/v1/chat/completions \
-H "Authorization: Bearer $OPENROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-5.2",
"messages": [{"role": "user", "content": "Hello from the unified API"}]
}'
3. Python と TypeScript
公式の OpenAI SDK がそのまま使えます:
from openai import OpenAI
client = OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key="sk-or-...",
)
resp = client.chat.completions.create(
model="google/gemini-2.5-pro",
messages=[{"role": "user", "content": "Three taglines for a coffee app"}],
)
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://openrouter.ai/api/v1",
apiKey: process.env.OPENROUTER_API_KEY,
});
モデルスラッグとバリアント
スラッグの読み方
モデルIDは vendor/model-name 形式で、例えば anthropic/claude-sonnet-4.5 や deepseek/deepseek-chat です。モデルページに表示されている文字列が、そのままAPIが期待する文字列です。
サフィックスのバリアント
| バリアント | 効果 |
|---|---|
:free | 無料枠。厳格な日次上限があり、SLAなし |
:nitro | プロバイダーをスループット順にソート — 速度にお金を払う |
:floor | プロバイダーを価格順にソート — 最安値から |
バリアントはルーティングのヒントであり、別の重みではありません — 同じモデルで、プロバイダー選択が異なるだけです [2]。
モデルの選び方
カタログを価格・コンテキストウィンドウ・モダリティで絞り込み、自分のタスクでベンチマークしましょう。現実的なステップは、:free バリアントでプロトタイプを作り、中位モデルでリリースし、難しい10%のリクエストにはフロンティアモデルを残しておくことです。
本番運用の注意点
ストリーミング
"stream": true を設定して server-sent events を受け取ります — OpenAI のストリーミング仕様と同一なので、既存のストリーミングUIコードはそのまま動きます。
レート制限とリトライ
制限は固定ティアではなくクレジット残高に応じてスケールします。429 が返ったら指数バックオフでリトライしましょう。無料モデルは 1日 50/1,000 の上限を前提に設計してください [3]。
フォールバック
優先順位付きの models 配列を渡すと、エラーやレート制限の際にルーターがサーバーサイドで次のモデルを再試行します [4]:
{
"model": "openai/gpt-5.2",
"models": ["anthropic/claude-sonnet-4.5", "deepseek/deepseek-chat"],
"messages": [{ "role": "user", "content": "..." }]
}
言語モデルだけでは足りなくなったら
OpenRouter が統合するのはテキストです。ロードマップに「商品画像を生成する」や「動画クリップを追加する」と書かれた瞬間、ベンダーごとの個別統合に逆戻りします — ゲートウェイがそれらのモダリティをネイティブにカバーしていない限り。
メディアモデルまで含む統合API
APIMart は同じワンキー方式を、チャット、画像(GPT-Image-2)、動画(Sora 2、Kling、Veo)、音声(Suno)にわたる 500+ のモデルに適用しています。
定価ではなく定価以下の料金
モデルはおおよそ公式価格より20%安く提供され、モデルごとの定価と割引価格は料金ページで公開されています — 手数料を別途計算する必要はありません。
同じコードでそのまま移行
エンドポイントは OpenAI 互換なので、上のクイックスタートはベースURLとキーを変えるだけで動きます。モデルレジストリとフォールバックロジックはそのまま引き継げます。
まとめ
OpenAI SDK を統合エンドポイントに向け、モデルは vendor/model スラッグで参照し、コストや速度が重要なら :floor や :nitro を使い、本番前に models フォールバック配列を追加しましょう。そして実際のコストは定価に 5.5% のチャージ手数料を加えたものであることをお忘れなく [3]。アプリに画像・動画・音声も必要なら、最初からそれらをカバーするゲートウェイで始めましょう。
モデルマーケットで使いたいモデルを選ぶ
APIMart のモデルマーケットでチャット、画像、動画モデルを試し、統一 API でモデルの能力をすばやく体験できます。