トップ / クイックスタート
Apimane API クイックスタート
5 分で動かす最短ガイド。既存の OpenAI / Anthropic SDK の base_url を 1 行差し替えるだけ (翻訳は DeepL v2 互換の JSON API) で、Claude / GPT / Gemini / Mistral / Grok / Groq の 8 社 25 種類以上のモデルを 1 本のキーで利用開始できます。
登録フォーム でメール確認・規約同意・決済情報のご登録まで進むと、決済直後に
sk-cons-... 形式のキーが発行されます (決済時に初月の月額基本料 ¥1,000 (税込 ¥1,100) を申し受けます。API 利用料は原価 + 5.5% マークアップを月末にご請求します)。決済後の画面とご案内メールから受け取れます (キーは一度だけ表示されるので必ず保存してください)。🚀 キーを受け取ったら — 最初の 4 手
API キーを受け取った直後に何をすればよいかを、最短の 4 手でまとめます。まず接続先とキーを設定し、最小コストで疎通を確認してから、ご自身が使う開発ツールの設定へ進む流れです。1 リクエストが返れば準備は完了です。
- 1. キーの受領を確認する
LP の登録フォームでメール確認・規約同意・決済情報のご登録まで進むと、決済直後に sk-cons-... 形式の API キーが発行されます (決済時に初月の月額基本料 ¥1,000 (税込 ¥1,100) を申し受けます。API 利用料は原価 + 5.5% マークアップを月末にご請求します)。決済後の画面からそのままブラウザで受け取れるほか、ご案内メールにも受け取り用リンクが届きます。キーは一度しか表示されないので必ず保存し、sk-cons- で始まっていることをご確認ください。 - 2. キーを環境変数に保存する (コードに直書きしない)
キーはコードに直書きせず環境変数に入れます (流出防止)。① 自分のスクリプトなら export APIMANE_API_KEY="sk-cons-..." で保存し、コードから読み込みます。② プロジェクトでは .env に書いて .gitignore で除外します。なお各 SDK・ツールに渡す変数名はツール側の指定に従います (例: openai / Aider は OPENAI_API_KEY、Claude Code は ANTHROPIC_AUTH_TOKEN。詳細は下の「ツール別 設定ガイド」)。キーの安全な扱いは下の「API キーの安全な扱い」を参照。 - 3. 最小コストで疎通を確認する
まず /healthz で稼働確認し、次に /v1/chat/completions へ model: claude-sonnet-4-6 と短い messages を 1 回だけ投げて応答が返ることを確認します (具体的なコマンドは下の「5 分で動かす最短手順」)。推論系モデルを使う場合は max_tokens を 256 以上に。 - 4. 自分が使うツールの設定へ進む
下の「対応ツール早見表」で対応状況を確認し、該当ツールの設定手順へ進みます。Claude Code は ANTHROPIC_BASE_URL、Cline / Continue.dev など OpenAI 互換ツールは base_url を https://api.apimane.co.jp/v1 に差し替え、API キーに sk-cons-、モデル名を指定するだけです (接続先 URL は、OpenAI 互換は末尾 /v1、Claude Code・Anthropic SDK・翻訳は /v1 を付けず https://api.apimane.co.jp 直です)。
🔐 API キーの安全な扱い
sk-cons- で始まるキーは、各 AI プロバイダのキーと同じ「秘密情報」です。流出すると第三者に利用料を発生させられるため、次の点にご注意ください。
- キーをソースコードやチャットに直書きしない。環境変数 (例
APIMANE_API_KEY。SDK・ツールによってはOPENAI_API_KEY/ANTHROPIC_AUTH_TOKEN) か.envに置き、.envは.gitignoreで除外する。 - ブラウザ (フロントエンド) にキーを置かない。サーバー側、または各開発ツールの設定欄から使う。
- 流出・誤コミットの疑いがあれば、すぐ
info@apimane.co.jpへ連絡してキーを失効・再発行 (ローテーション) する。 - 部署・社員ごとに別々のキーを発行すると、予算上限や利用状況をダッシュボードで分けて把握できます (Zero-PII 設計のため、当社は社員の氏名・メール等は保持しません)。
🎯 5 分で動かす最短手順
Step 1. API ベース URL
本番 API ベース URL:
https://api.apimane.co.jp
動作確認は /healthz で:
curl -s https://api.apimane.co.jp/healthz
# → {"ok":true,"ts":1718409600000,"version":"v2"}
# DB/KV 込みの詳細死活: https://api.apimane.co.jp/healthz?deep=1 → {"ok":true,...,"checks":{"db":"ok","kv":"ok"}}Step 2. SDK の base_url を差し替え
既存の OpenAI / Anthropic SDK の base_url (または api_base) を 1 行差し替えるだけ (翻訳は DeepL v2 互換の JSON API)。下記 SDK 別コード例を参照。
Step 3. 動作確認
下記コード例の sk-cons-... を実際のキーに置き換えて実行 → 応答が返れば完了。
📦 SDK 別の最短コード例
Python (openai SDK)
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["APIMANE_API_KEY"], # export APIMANE_API_KEY="sk-cons-..."
base_url="https://api.apimane.co.jp/v1", # ← この 1 行だけ追加
)
# Claude を呼ぶ
resp = client.chat.completions.create(
model="claude-sonnet-4-6",
messages=[{"role": "user", "content": "こんにちは"}],
)
print(resp.choices[0].message.content)
# GPT を呼ぶ (同じキーで切替)
resp = client.chat.completions.create(
model="gpt-5.4",
messages=[{"role": "user", "content": "こんにちは"}],
)TypeScript / Node.js (openai SDK)
import OpenAI from "openai";
const client = new OpenAI({
apiKey: "sk-cons-xxx-xxxxxxxxxxxxxxxxxxxxxxxxx",
baseURL: "https://api.apimane.co.jp/v1", // ← 差し替え
});
const resp = await client.chat.completions.create({
model: "gemini-2.5-pro", // Claude / GPT / Gemini / Mistral / Grok / Groq を model 指定で切替
messages: [{ role: "user", content: "こんにちは" }],
});
console.log(resp.choices[0].message.content);Python (anthropic SDK)
Anthropic 公式 SDK でも、ネイティブ /v1/messages エンドポイントが使えます。
from anthropic import Anthropic
client = Anthropic(
api_key="sk-cons-xxx-xxxxxxxxxxxxxxxxxxxxxxxxx",
base_url="https://api.apimane.co.jp", # ← 差し替え
)
resp = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
messages=[{"role": "user", "content": "こんにちは"}],
)
print(resp.content[0].text)TypeScript (翻訳 — JSON 互換)
翻訳は DeepL API v2 互換の /v2/translate に JSON ボディ (text は配列、target_lang 必須) を送ります。deepl-node SDK は既定で form 形式を送るため、現状そのままでは接続できません。下記のように fetch で JSON を送ってください。
// /v2/translate に JSON を POST (text は配列、target_lang 必須)
const resp = await fetch("https://api.apimane.co.jp/v2/translate", {
method: "POST",
headers: {
"Authorization": "Bearer sk-cons-xxx-xxxxxxxxxxxxxxxxxxxxxxxxx",
"Content-Type": "application/json",
},
body: JSON.stringify({ text: ["Hello world"], target_lang: "JA" }),
});
const data = await resp.json();
console.log(data.translations[0].text); // 翻訳結果
// プロバイダ切替: body に provider: "google-translate" (既定 deepl)curl (生のリクエスト)
# OpenAI 互換 (Claude / GPT / Gemini / Mistral / Grok / Groq を切替)
curl -s https://api.apimane.co.jp/v1/chat/completions \
-H "Authorization: Bearer sk-cons-xxx-xxxxxxxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-4-6",
"messages": [{"role": "user", "content": "こんにちは"}]
}'
# 翻訳 (JSON ボディ。text は配列、target_lang は必須)
curl -s https://api.apimane.co.jp/v2/translate \
-H "Authorization: Bearer sk-cons-xxx-xxxxxxxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"text": ["Hello world"], "target_lang": "JA"}'
# プロバイダ切替は body に "provider": "google-translate" (既定 deepl)🧩 お使いのツール別 設定ガイド
Apimane は専用アプリのインストールは不要です。お使いのツールの「接続先 (Base URL)」を Apimane に向け、API キーを sk-cons-... に変えるだけで使えます。まず下の早見表で対応状況をご確認ください。
対応ツール早見表
下表の記号: ○ = そのまま対応 / △ = 一部機能のみ / × = 接続先を変えられず非対応
| ツール | 対応 | 設定の要点 |
|---|---|---|
| Claude Code / Anthropic SDK | ○ | ANTHROPIC_BASE_URL を Apimane に向ける |
| Cline / Roo Code (VS Code) | ○ | 「OpenAI Compatible」で Base URL を差し替え |
| Continue.dev (VS Code / JetBrains) | ○ | config.yaml に apiBase を設定 |
| Aider (CLI) | ○ | OPENAI_API_BASE + model に openai/ 接頭辞 |
| LangChain / Vercel AI SDK / LlamaIndex 等 | ○ | 各 SDK の base_url を差し替え |
| Dify (LLM アプリ基盤) | ○ | OpenAI-API-compatible で endpoint を指定 |
| LibreChat / Open WebUI (社内 UI) | ○ | custom endpoint に Base URL + キー |
| Cursor | △ | チャットは可。Tab 補完 / Composer 等は不可 |
| ChatGPT.com / Claude.ai / Gemini Web / Copilot 個人版 | × | 接続先を変えられず差し込み不可 (サブスク型) |
info@apimane.co.jp までお問い合わせください。Claude Code / Anthropic SDK
- 環境変数で接続先を Apimane に向けます。一時的に試すならシェルで export ANTHROPIC_BASE_URL="https://api.apimane.co.jp"、export ANTHROPIC_AUTH_TOKEN="sk-cons-..." を設定してから claude を起動します (Anthropic 互換のため /v1/messages は CLI/SDK が自動付与。base URL に /v1 は付けません)。
- 毎回有効にするには ~/.claude/settings.json の env ブロックに記載します (下記の例)。
- Claude Code は Sonnet / Opus / Haiku の各ティアを呼ぶため、ANTHROPIC_DEFAULT_SONNET_MODEL / OPUS / HAIKU を Apimane のモデル名に合わせておくと、背景の小型モデル呼び出しも解決できます。
- claude を起動し、簡単な指示で疎通を確認します。設定変更後は再起動してください (環境変数は起動時に一度だけ読まれます)。
~/.claude/settings.json:
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.apimane.co.jp",
"ANTHROPIC_AUTH_TOKEN": "sk-cons-...",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-6",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-4-8",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4-5"
}
}
# またはシェルで:
# export ANTHROPIC_BASE_URL="https://api.apimane.co.jp"
# export ANTHROPIC_AUTH_TOKEN="sk-cons-..."
# claudeCline (VS Code 拡張)
- VS Code で Cline を開き、設定パネル (歯車 ⚙️) を開きます。
- API Provider のドロップダウンで「OpenAI Compatible」を選びます (無印の「OpenAI」ではなく必ず「OpenAI Compatible」)。
- Base URL に https://api.apimane.co.jp/v1 を入力します (末尾 /v1 まで)。
- API Key に Apimane のキー sk-cons-... を貼ります。
- Model 欄に使いたいモデル名を指定します (例 claude-sonnet-4-6 / gpt-5.4 / gemini-2.5-pro)。Apimane は GET /v1/models 対応のため自動取得される版もありますが、出ない場合は ID を手入力します。
- 保存して簡単なタスクを依頼し、応答が返ることを確認します。
API Provider: OpenAI Compatible Base URL: https://api.apimane.co.jp/v1 API Key: sk-cons-... Model: claude-sonnet-4-6 (gpt-5.4 / gpt-4o-mini / gemini-2.5-pro 等に変更可)
Roo Code (VS Code 拡張 / Cline 派生)
- VS Code 左サイドバーで Roo Code パネルを開き、設定 (歯車) → Providers / プロバイダ設定を開きます。
- API Provider で「OpenAI Compatible」を選択します (推奨。Claude を含む全社を 1 設定で切替可能)。
- Base URL に https://api.apimane.co.jp/v1 を入力します (末尾 /v1 まで)。
- API Key に Apimane のキー sk-cons-... を貼り付けます。
- Model に Apimane のモデル ID (例 claude-sonnet-4-6 / gpt-5.4) を指定します。ドロップダウンに出ない場合は ID を直接入力します。
API Provider: OpenAI Compatible Base URL: https://api.apimane.co.jp/v1 API Key: sk-cons-... Model: claude-sonnet-4-6 (gpt-5.4 / gemini-2.5-pro 等に変更可)
Continue.dev (VS Code / JetBrains)
- 設定ファイル ~/.continue/config.yaml を開きます (無ければ新規作成。Windows は %USERPROFILE% 配下の .continue フォルダ)。
- models: ブロックに Apimane 用のモデルを追記します。provider: openai を指定し、apiBase に https://api.apimane.co.jp/v1、apiKey に sk-cons-...、model に使いたいモデル名を設定します。
- roles: に chat と edit を入れると、チャット / インライン編集で使えます。複数モデルを使う場合は - name: を増やして model 名だけ変えます (apiBase / apiKey は使い回し可)。
- ファイルを保存すると Continue が自動で再読込します。サイドパネルのモデル選択で追加したモデルに切り替えます。
- 短いメッセージを送り、応答が返れば成功です (401 はキー、接続エラーは apiBase 末尾の /v1 を確認)。
models:
- name: Apimane Claude Sonnet
provider: openai # OpenAI 互換として接続
model: claude-sonnet-4-6 # gpt-5.4 / gpt-4o-mini / gemini-2.5-pro 等に変更可
apiBase: https://api.apimane.co.jp/v1
apiKey: sk-cons-... # 平文を避けたい場合は secrets 参照に
roles:
- chat
- editAider (CLI ペアプログラマ)
- Aider をインストールします (例 pip install aider-chat)。
- 接続先 URL を環境変数で設定します: export OPENAI_API_BASE=https://api.apimane.co.jp/v1
- API キーを設定します: export OPENAI_API_KEY=sk-cons-...
- 起動時にモデル名へ必ず openai/ 接頭辞を付けます: aider --model openai/claude-sonnet-4-6 (これで Apimane の OpenAI 互換エンドポイントへルーティングされます。モデルを変えるだけで各社切替)。
export OPENAI_API_BASE=https://api.apimane.co.jp/v1 export OPENAI_API_KEY=sk-cons-... aider --model openai/claude-sonnet-4-6 # 1 行で: # aider --openai-api-base https://api.apimane.co.jp/v1 --openai-api-key sk-cons-... --model openai/claude-sonnet-4-6
Cursor一部機能のみ
- Cursor を開き Settings を表示します (Mac は Cmd+, / Win は Ctrl+,)。左メニューの「Models」を選びます。
- 「Override OpenAI Base URL」欄に https://api.apimane.co.jp/v1 を入力します (/v1 まで含める。Cursor が末尾に /chat/completions を自動付与します)。
- 「OpenAI API Key」欄に Apimane のキー sk-cons-... を貼り付けます (ラベルは OpenAI ですが、上で指定した URL へ送られます)。「Verify」ボタンが出る場合は押して保存します。
- 「+ Add Model」でモデル名を手入力します (例 claude-sonnet-4-6 / gpt-4o-mini)。既定一覧に無いモデルは手動追加が必要です。
- チャットパネル (Cmd/Ctrl+L) でそのモデルを選んで動作確認します。
Settings → Models: Override OpenAI Base URL = https://api.apimane.co.jp/v1 OpenAI API Key = sk-cons-... + Add Model = claude-sonnet-4-6 (任意のモデル ID を手入力)
LangChain / Vercel AI SDK / LlamaIndex などフレームワーク
- OpenAI 互換なので、各 SDK の base URL 指定 (base_url / baseURL / apiBase) を https://api.apimane.co.jp/v1 に差し替えます。
- API キーに Apimane のキー sk-cons-... を渡します (各 SDK の api_key / apiKey 引数、または環境変数)。
- model に Apimane のモデル名 (例 claude-sonnet-4-6 / gpt-5.4 / gemini-2.5-pro) を指定します。モデルを変えるだけで各社切替できます。
- 短いプロンプトを 1 回投げて応答が返ることを確認します。
# Python — LangChain
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(base_url="https://api.apimane.co.jp/v1", api_key="sk-cons-...", model="claude-sonnet-4-6")
# Python — LlamaIndex
from llama_index.llms.openai_like import OpenAILike
llm = OpenAILike(api_base="https://api.apimane.co.jp/v1", api_key="sk-cons-...", model="claude-sonnet-4-6")
// TypeScript — Vercel AI SDK
import { createOpenAICompatible } from "@ai-sdk/openai-compatible";
const apimane = createOpenAICompatible({ name: "apimane", baseURL: "https://api.apimane.co.jp/v1", apiKey: "sk-cons-..." });
// model: apimane("claude-sonnet-4-6")Dify (LLM アプリ基盤)
- 「設定 → モデルプロバイダー」を開き、一覧に「OpenAI-API-compatible」が無ければ Marketplace から同プラグインをインストールします。
- 「OpenAI-API-compatible」の「モデルを追加 (Add Model)」をクリックします。
- Model Type=LLM、Model Name に Apimane のモデル名 (例 claude-sonnet-4-6 / gpt-4o-mini)、API Key に sk-cons-... を入力します。
- API endpoint URL に https://api.apimane.co.jp/v1 を入力します (末尾 /v1 まで。/chat/completions は付けない)。
- Model context size / Upper bound for max tokens を使うモデルの値に合わせ、保存します。
Model Type: LLM Model Name: claude-sonnet-4-6 API Key: sk-cons-... API endpoint URL: https://api.apimane.co.jp/v1 (末尾 /v1 まで、/chat/completions は付けない)
LibreChat (セルフホスト型 ChatGPT 風 UI)
- librechat.yaml をプロジェクトルートに用意し、先頭に version を記載します。Docker 利用時は docker-compose.override.yml の volume で librechat.yaml をマウントします。
- .env に APIMANE_KEY=sk-cons-... を追加します (キーは YAML に直書きせず env 参照に)。
- librechat.yaml の endpoints.custom に Apimane を 1 エントリ追加します (name=Apimane、apiKey=env 参照、baseURL=https://api.apimane.co.jp/v1。/v1 まで)。
- models.default に配るモデルを列挙します (例 claude-sonnet-4-6 / gpt-5.4 / gemini-2.5-pro / apimane-auto)。
- 保存後 LibreChat を再起動します。UI のエンドポイント選択に Apimane が出れば成功です。
version: 1.2.8 # お使いの LibreChat のスキーマ版に合わせる
endpoints:
custom:
- name: "Apimane"
apiKey: "${APIMANE_KEY}"
baseURL: "https://api.apimane.co.jp/v1"
models:
default: ["claude-sonnet-4-6", "gpt-5.4", "gemini-2.5-pro", "apimane-auto"]
fetch: true
modelDisplayLabel: "Apimane"
# .env 側: APIMANE_KEY=sk-cons-...Open WebUI (セルフホスト型 UI)
- 管理者アカウントで開き、右上アイコンから「管理者設定 (Admin Settings)」→「接続 (Connections)」→「OpenAI」を開きます。
- 「接続を追加 (+ Add Connection)」をクリックします。
- 「URL」欄に https://api.apimane.co.jp/v1 を入力します (末尾 /v1 まで)。
- 「API Key」欄に Apimane のキー sk-cons-... を貼り付けます。
- 「保存 (Save)」をクリックします。Apimane は GET /v1/models 対応のためモデル一覧が自動取得されます。
場所: 管理者設定 → 接続 (Connections) → OpenAI → 接続を追加 URL: https://api.apimane.co.jp/v1 API Key: sk-cons-... (自動取得されない場合) Model IDs に claude-sonnet-4-6 等を手動追加
📋 利用可能なモデル一覧
GET /v1/models で取得できます。下表は代表モデルの抜粋。コンテキスト窓・正確な単価は各プロバイダ公式ページを参照。LLM (6 プロバイダ)
| モデル ID | プロバイダ | 用途 |
|---|---|---|
claude-opus-4-8 | Anthropic | 最上位クラス・推論・コード生成 |
claude-sonnet-4-6 | Anthropic | バランス型 (デフォルト推奨) |
claude-haiku-4-5 | Anthropic | 高速・低コスト |
gpt-5.5 | OpenAI | 最新フラッグシップ (推論系) |
gpt-5.4 / gpt-5.4-mini / gpt-5.4-nano | OpenAI | 標準 / 低コスト / 低単価帯 (推論系) |
gpt-4o / gpt-4o-mini | OpenAI | 汎用 / 低コスト |
gemini-2.5-pro | 超大コンテキスト・マルチモーダル | |
gemini-2.5-flash / gemini-2.5-flash-lite | 高速 / 低単価帯 | |
gemini-3.5-flash / gemini-3.1-flash-lite | Gemini 3 世代 (高速) | |
gpt-oss-20b / gpt-oss-120b | Groq | 西側 OSS (20B 超高速・低単価帯 / 120B 汎用・推論あり) |
mistral-large-2512 | Mistral | EU・GDPR 準拠 (現行 Large 3) |
mistral-medium-3-5 / mistral-small-2603 | Mistral | 中位 / 軽量 |
codestral-2508 / devstral-2512 | Mistral | コード特化 |
grok-4.3 | xAI | リアルタイム情報 (grok-4 は別名で同一) |
gpt-5.x / gemini-2.5-* / grok-4.3 等) は思考トークンを消費するため、max_tokens を小さく (例 20) すると思考だけで使い切り content が空になることがあります。max_tokens は 256 以上を推奨します。翻訳 (2 プロバイダ)
| プロバイダ ID | 強み | 課金単位 |
|---|---|---|
deepl (デフォルト) | 翻訳の品質に定評 | char (USD 25/M chars) |
google-translate | 110+ 言語対応・低コスト | char (USD 20/M chars) |
プロバイダ指定の方法は /v2/translate リクエストで provider=deepl または provider=google-translate を送信。デフォルトは DeepL です。
🎚️ Smart Routing を使う (任意機能)
リクエストごとに最適なモデルを当社が自動選択する補助機能です。既定はオフ、有効化するときだけヘッダーを指定します。
| 指定方法 | 効果 |
|---|---|
model: "apimane-auto" | モードに応じた自動モデル選定 (ヘッダーなしでも有効化) |
X-Apimane-Smart-Routing: on | Smart Routing を有効化 (フェイルオーバー / Context Window 自動切替が効く) |
X-Apimane-Mode: cheapest | balanced | fastest | 選定基準。cheapest (既定) = 推定コスト最小 / balanced = タスク種別 × 入力長の品質帯を満たす最安 / fastest = 速度系クラス優先 |
X-Apimane-Task: chat | summary | code | translate | reasoning | balanced のタスク種別を明示。省略時はキーワード + 入力長で推定 (判定はメモリ上で即破棄) |
明示モデル指定は常に優先: X-Apimane-Smart-Routing: on でも model に具体名 (例 gpt-4o) を指定したら、そのモデルが使われます。例外は次の 2 つ:
- Context Window 自動切替: 入力 (prompt + max_tokens の保守見積り) が指定モデルの context window を超える場合、対応可能なモデルへ自動切替
- フェイルオーバー: 上流が 5xx 連続 3 回 / 30 秒タイムアウト / 429 のとき、別プロバイダの同等品質帯モデルへ自動切替 + リトライ。切替時は応答に
X-Apimane-Fallback: trueが付きます (切替は当社の運用監視に記録されます)
フォールバック順序の顧客指定 — models 配列
自動選定に任せず、切替先の順序をお客様が指定できます (OpenRouter 互換セマンティクス):
{ "models": ["claude-sonnet-4-6", "gpt-5.4", "gemini-3.5-flash"], "messages": [...] }- 先頭から試行し、失敗で次へ。課金は実際に応答したモデル基準
models指定時はmodelフィールド・自動選定より常に優先- グループポリシー外・未知のモデルはスキップ (全滅時のみ 400
models_all_excluded+ 理由一覧) - 最大 8 件
リクエスト単価上限 — X-Apimane-Max-Cost-JPY
リクエスト 1 件の上限を日本円で指定できます (小数可):
X-Apimane-Max-Cost-JPY: 50
- 推定最大コスト (入力単価 × プロンプト + 出力単価 × max_tokens、当日 TTM レートで円換算) が上限を超える場合、実行前に 400
per_request_budget_exceeded— 上流に届かないため課金は一切発生しません model: "apimane-auto"と併用すると「上限内で一番良いモデルを自動で選ぶ」動作になります
curl -s https://api.apimane.co.jp/v1/chat/completions \
-H "Authorization: Bearer sk-cons-xxx-..." \
-H "Content-Type: application/json" \
-H "X-Apimane-Smart-Routing: on" \
-H "X-Apimane-Mode: balanced" \
-H "X-Apimane-Max-Cost-JPY: 50" \
-d '{"model": "apimane-auto", "messages": [{"role": "user", "content": "..."}], "max_tokens": 1024}'📨 レスポンスヘッダー (透明性情報)
/v1/chat/completions の応答には以下のヘッダーが含まれます。
| ヘッダー | 内容 | 付与範囲 |
|---|---|---|
x-request-id | リクエスト識別子 (サポート問い合わせ用) | 全エンドポイント |
X-Apimane-Model-Used | 実際に使われたモデル ID | /v1/chat/completions |
X-Apimane-Provider | プロバイダ (anthropic / openai / google / mistral / xai / groq) | /v1/chat/completions |
X-Apimane-Cost-Jpy-Milli | このリクエストの課金額 (JPY × 1000) | /v1/chat/completions 非ストリーミング |
X-Apimane-Cost-Usd-Micro | このリクエストの原価 (USD micro、検算用) | /v1/chat/completions 非ストリーミング |
X-Apimane-Fallback | フェイルオーバー発動時のみ "true" (X-Apimane-Fallback-From に切替元) | Smart Routing 有効リクエスト |
Cost ヘッダーは ストリーミング応答 (stream:true) には付与されません — 終端 (usage 受信後) まで未確定のためです。ストリーミング時のコストはダッシュボードでご確認ください。🚨 よくあるエラーと初期トラブルシュート
| HTTP | エラーコード | 主因 | 対応 |
|---|---|---|---|
| 401 | invalid_api_key | キー間違い / 失効 | キーを再確認、sk-cons- で始まっているか |
| 404 | model_not_found | モデル名タイポ / 未提供モデル | GET /v1/models と一致するか確認 (単一 model 指定の未知名は既定モデルへ自動フォールバック) |
| 400 | models_all_excluded | models 配列の候補が全滅 (未知 / グループ外 / stream 非対応) | 応答の理由一覧で確認、対応モデルに変更 |
| 400 | per_request_budget_exceeded | X-Apimane-Max-Cost-JPY 上限超 (推定) | 上限を引き上げる、または max_tokens を絞る |
| 429 | monthly_cap_exceeded / org_monthly_cap_exceeded | 月次予算の上限に到達 (キー / 組織。retry-after 付き) | ダッシュボードで上限を確認・調整 (待っても解消しないため上限調整 or 翌月まで) |
| 429 | rate_limit_per_minute / rate_limit_exceeded | 毎分リクエスト上限 (当社側) / 上流プロバイダのレート制限 | 数十秒待って再試行 (retry-after 参照)。上流 429 は Smart Routing 有効時に自動フォールバック |
| 5xx | upstream_error | プロバイダ側障害 | 別モデルを指定して再試行 (Smart Routing 有効時は自動フォールバック) |
✅ 疎通できたら次に
最初の応答が返ったら、次はこちらへ:
- モデルを切り替える → 利用可能なモデル (同じキーで model 名を変えるだけ)
- 自動選定・予算上限を使う → Smart Routing (
apimane-auto/ リクエスト単価上限など) - コスト・使用モデルを確認する → レスポンスヘッダー / ダッシュボード
- つまずいたら → エラー対応
❓ サポート・問い合わせ
- お申し込み: 登録フォーム 経由でお申し込みください
- 技術質問・障害連絡:
info@apimane.co.jp(受付は随時。初回応答 SLA はプランに応じ営業日対応、詳細は特定商取引法に基づく表示をご確認ください) - セキュリティ詳細: Trust Center をご覧ください
※ 本ページは Apimane API の公開クイックスタートです。最新の更新内容・新機能は トップページ「ロードマップ」セクションをご確認ください。
