APIドキュメント
XHuoAPI は OpenAI と完全互換の API を提供し、500 以上の主要 AI モデルに対応します。
Base URL
https://api.xhuoapi.ai
クイックスタート
- コンソール でアカウントを登録
- コンソールで API キーを取得
- Base URL を
https://api.xhuoapi.aiに変更 - API の呼び出しを開始
認証
すべてのリクエストで HTTP ヘッダーに API キーを含める必要があります:
Authorization: Bearer YOUR_API_KEY
⚠️ セキュリティ注意:API キーをクライアント側のコードに公開しないでください。自社バックエンド経由でリクエストを中継することを推奨します。
チャット補完
チャット補完リクエストを作成します。すべての主要モデルに対応。
POST
/v1/chat/completions
リクエストパラメータ
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
model |
string | ✅ | モデル名(例:gpt-4o) |
messages |
array | ✅ | 会話メッセージのリスト |
temperature |
number | ❌ | サンプリング温度(0-2)、デフォルト 1 |
max_tokens |
integer | ❌ | 生成する最大トークン数 |
stream |
boolean | ❌ | ストリーミング出力の有無、デフォルト false |
リクエスト例
curl https://api.xhuoapi.ai/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "gpt-4o",
"messages": [
{
"role": "user",
"content": "こんにちは、自己紹介をしてください"
}
],
"temperature": 0.7
}'
レスポンス例
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1677652288,
"model": "gpt-4o",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "こんにちは!私はAIアシスタントです..."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 12,
"completion_tokens": 20,
"total_tokens": 32
}
}
モデル一覧
利用可能なすべてのモデル一覧を取得します。
GET
/v1/models
リクエスト例
curl https://api.xhuoapi.ai/v1/models \
-H "Authorization: Bearer YOUR_API_KEY"
人気モデル
gpt-4o
OpenAI の最新マルチモーダルモデル
claude-3-5-sonnet-20241022
Anthropic Claude 3.5 Sonnet
gemini-2.0-flash-exp
Google Gemini 2.0 Flash
deepseek-chat
DeepSeek V3 チャットモデル
ストリーミング
stream: true を設定すると、生成内容をリアルタイムで受信できます。
リクエスト例
curl https://api.xhuoapi.ai/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "gpt-4o",
"messages": [{"role": "user", "content": "ジョークを言って"}],
"stream": true
}'
レスポンス形式
ストリーミングレスポンスは Server-Sent Events (SSE) 形式で、各行は data: で始まります:
data: {"id":"chatcmpl-123","choices":[{"delta":{"content":"こん"}}]}
data: {"id":"chatcmpl-123","choices":[{"delta":{"content":"にちは"}}]}
data: [DONE]
エラー処理
API は標準的な HTTP ステータスコードでリクエスト結果を示します。
| ステータスコード | 説明 |
|---|---|
200 |
リクエスト成功 |
400 |
リクエストパラメータが不正 |
401 |
API キーが無効または未指定 |
429 |
レート制限を超過 |
500 |
サーバー内部エラー |
エラーレスポンス例
{
"error": {
"message": "Invalid API key",
"type": "invalid_request_error",
"code": "invalid_api_key"
}
}
コード例
Python
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.xhuoapi.ai/v1"
)
response = client.chat.completions.create(
model="gpt-4o",
messages=[
{"role": "user", "content": "こんにちは"}
]
)
print(response.choices[0].message.content)
Node.js
import OpenAI from 'openai';
const client = new OpenAI({
apiKey: 'YOUR_API_KEY',
baseURL: 'https://api.xhuoapi.ai/v1'
});
const response = await client.chat.completions.create({
model: 'gpt-4o',
messages: [{ role: 'user', content: 'こんにちは' }]
});
console.log(response.choices[0].message.content);
cURL
curl https://api.xhuoapi.ai/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "gpt-4o",
"messages": [{"role": "user", "content": "こんにちは"}]
}'