モデル一覧の取得
プラットフォームで現在利用可能なすべてのモデルを、モデル能力とモデルプロバイダーの2階層でグループ化して取得します。取得した modelId は、モデルの指定が必要な他のAPIで参照できます。
本APIはアカウント単位で60回/分のレート制限があります。プラットフォームのモデル一覧は頻繁に変わらないため、呼び出し側で結果をキャッシュすることを推奨します。
リクエストメソッド
GET
リクエストURL
https://api-${endpoint}.gptbots.ai/v1/model/list
リクエスト認証
本APIはアカウント単位の DevKey / DevSecret を使用し、HTTP基本認証で渡します:
Authorization: Basic base64(${DevKey}:${DevSecret})
DevKey と DevSecret を半角コロンで連結し、全体をBase64エンコードして先頭に Basic を付けます(半角スペースが1つ入ることに注意)。
DevKey / DevSecret の取得方法:コンソールにログインし、個人センター - アカウント - 開発者情報で**開発者識別子(DevKey)**と API DevSecret を確認できます。
⚠️ Agent単位の認証と混同しないでください:会話などのAPIは Agent の API Key(
Authorization: Bearer ${API Key})で認証しますが、本APIはアカウントの DevKey / DevSecret + Basic認証を使用します。両者は互換性がありません。Base64は暗号化ではなく可逆エンコードです。エンコード結果は平文パスワードと同様に扱い、コードリポジトリへのコミットや公開ドキュメントへの記載は避けてください。
リクエスト
リクエスト例
curl -X GET 'https://api-${endpoint}.gptbots.ai/v1/model/list' \
-H 'Authorization: Basic ${base64(DevKey:DevSecret)}'
リクエストヘッダー
| フィールド | タイプ | 説明 |
|---|---|---|
| Authorization | Basic base64({DevSecret}) | アカウント単位の DevKey / DevSecret によるHTTP Basic認証。認証情報は個人センター - アカウント - 開発者情報ページで取得してください。 |
リクエストパラメータ
なし。
レスポンス
レスポンス例
{
"code": 0,
"message": "OK",
"data": {
"CHAT": {
"OPEN_AI": [
{ "aiModelVersion": "gpt-4o", "modelId": "65f2c1a8d3b4e5f601234567" },
{ "aiModelVersion": "gpt-3.5-turbo", "modelId": "65f2c1a8d3b4e5f601234568" }
],
"ANTHROPIC_CLAUDE": [
{ "aiModelVersion": "claude-opus-4-8", "modelId": "65f2c1a8d3b4e5f601234569" }
]
},
"EMBEDDING": {
"OPEN_AI_EMB": [
{ "aiModelVersion": "text-embedding-3-large", "modelId": "65f2c1a8d3b4e5f60123456a" }
]
},
"RERANK": { },
"SPEECH2TEXT": { },
"TEXT2SPEECH": { },
"MODERATION": { },
"ANONYMIZATION": { }
}
}
成功時のレスポンス
| フィールド | タイプ | 説明 |
|---|---|---|
| code | int | 0 は成功、0以外はエラーコードを参照。 |
| message | string | 結果の説明。成功時は OK。 |
| data | JSON Object | モデルデータ。モデル能力、モデルプロバイダーの2階層でグループ化。詳細は下記参照。 |
| aiModelVersion | string | モデルバージョン名。例:gpt-4o。表示用。 |
| modelId | string | モデルバージョンID。他のAPIでモデルを参照する際にこの値を使用します。モデルバージョン名はプラットフォームの調整により変わる可能性があるため、modelId が安定した識別子です。 |
data の2階層構造
data
└── モデル能力 外層キー、7種類、固定順序
└── モデルプロバイダー 内層キー、例:OPEN_AI
└── [ モデル一覧 ]
外層キーはモデル能力で、以下の7種類に固定され、この順序で返されます:
| 能力 | 意味 |
|---|---|
| CHAT | 会話(大規模言語モデル) |
| EMBEDDING | ベクトル化 |
| RERANK | ベクトル再ランク |
| SPEECH2TEXT | 音声認識(ASR) |
| TEXT2SPEECH | 音声合成(TTS) |
| MODERATION | コンテンツ審査 |
| ANONYMIZATION | 匿名化 |
内層キーはモデルプロバイダー識別子です。CHAT を例にすると、OPEN_AI、AZURE、ANTHROPIC_CLAUDE、GEMINI、ALI_QWEN、DEEP_SEEK、KIMI、META_LLAMA、MISTRAL、ZHIPU_CHATGLM、HUNYUAN、ERINE、XAI_GROK、BYTEDANCE_SEED、SENSE などの値が返される可能性があります。他の能力ではプロバイダー識別子が異なります(例:EMBEDDING では OPEN_AI_EMB、JINA_EMB など)。
- ある能力に現在利用可能なモデルがない場合、その値は空オブジェクト
{}になります。キー自体は省略されず必ず出現するため、走査前に空チェックを行ってください。- プラットフォームはプロバイダーを追加・廃止することがあります。プロバイダー一覧をコードにハードコードせず、APIの実際の返却値を基準にしてください。
- プロバイダーとモデルはプラットフォームで設定された表示優先度順にソートされます。並び順は表示用の参考であり、業務ロジックの根拠にしないでください(例:「先頭がデフォルトモデル」など)。
エラー時のレスポンス
| フィールド | タイプ | 説明 |
|---|---|---|
| code | int | エラーコード。 |
| message | string | エラー詳細。 |
エラーコード
| Code | Message |
|---|---|
| 40101 | Authorization が空です |
| 40102 | Authorization の形式が不正です。Basic プレフィックス(スペースを含む)とBase64エンコードを確認してください |
| 40001 | リクエストがレート制限を超えました。本APIの制限は60回/分です |
| 50000 | サーバー内部エラー。しばらくしてから再試行してください |
