Lurus API は OpenAI API 形式と完全に互換性があり、OpenAI に対応した任意の SDK やツールでそのまま呼び出せます。
Lurus API を使う理由
OpenAI 互換
すべてのエンドポイントのパスとセマンティクスが OpenAI に揃っており、SDK は base_url を差し替えるだけでそのまま利用可能
完全なエラーコード
各エラーに code + message + 推奨アクションが付与され、自動処理が容易
多様な認証
Bearer Token / PAT / JWT に対応し、スクリプトから企業 SSO まで全方位をカバー
モデルルーティングとリトライ
モデル名に応じて上流チャネルへ自動ルーティングし、失敗時は予備へ自動切り替え
接続の 3 ステップ
base URL を
https://hub.lurus.cn/v1に向けます。リクエストヘッダーに
Authorization: Bearer sk-your-api-keyを付与します(API Key を取得)。任意の OpenAI SDK でリクエストを送信します。ビジネスコードの変更は不要です。下記の SDK サポート を参照してください。
Base URL
https://hub.lurus.cn/v1認証方式
すべての API リクエストは Header に API Key を付与する必要があります:
Authorization: Bearer sk-your-api-key認証は API Key だけではありません
利用可能なエンドポイント
モデル一覧の取得
/v1/modelsモデル一覧の取得/v1beta/modelsGemini 形式で取得OpenAI形式(Chat)
/v1/chat/completionsチャット対話の作成OpenAI形式(Responses)
/v1/responsesレスポンスの作成 (OpenAI Responses API)/v1/responses/compact対話の圧縮 (OpenAI Responses API)画像生成
/v1/images/generations画像の生成(qwen-image)/v1/images/edits画像の編集(qwen-image-edit)動画生成
/v1/videos動画の作成 /v1/videos/{task_id}動画タスクのステータス取得 /v1/videos/{task_id}/content動画コンテンツの取得/kling/v1/videos/text2videoKling テキストから動画生成/kling/v1/videos/text2video/{task_id}Kling テキストから動画生成タスクのステータス取得/kling/v1/videos/image2videoKling 画像から動画生成/kling/v1/videos/image2video/{task_id}Kling 画像から動画生成タスクのステータス取得/jimeng/即夢の動画生成/v1/video/generations動画生成タスクの作成/v1/video/generations/{task_id}動画生成タスクのステータス取得Claude形式(Messages)
/v1/messagesClaude チャットGemini形式
/v1beta/models/{model}:generateContentGemini 画像(Nano Banana)/v1/engines/{model}/embeddingsGemini 埋め込み(Embeddings)OpenAI形式(Embeddings)
/v1/embeddingsテキスト埋め込みの作成テキスト補完(Completions)
/v1/completionsテキスト補完の作成OpenAI音声(Audio)
/v1/audio/transcriptions音声の文字起こし/v1/audio/translations音声の翻訳/v1/audio/speechテキスト読み上げリランク(Rerank)
/v1/rerankドキュメントのリランクModerations
/v1/moderationsコンテンツ審査Realtime
/v1/realtimeリアルタイム WebSocket 接続リクエスト形式
すべてのリクエストは JSON 形式を使用します:
POST /v1/chat/completions HTTP/1.1
Host: hub.lurus.cn
Content-Type: application/json
Authorization: Bearer sk-your-api-key
{
"model": "deepseek-chat",
"messages": [
{"role": "user", "content": "Hello!"}
]
}レスポンス形式
各フィールドの型と必須かどうかは データ構造リファレンス / Schema を参照してください(OpenAPI 仕様から自動同期され、ゲートウェイの実装と一致します)。
成功レスポンス
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1677858242,
"model": "deepseek-chat",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Hello! How can I help you today?"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 10,
"completion_tokens": 12,
"total_tokens": 22
}
}エラーレスポンス
{
"error": {
"code": "invalid_api_key",
"message": "Invalid API key provided",
"type": "authentication_error"
}
}レート制限
| 制限の種類 | デフォルト値 | 説明 |
|---|---|---|
| RPM (リクエスト/分) | 60 | 1 分あたりの最大リクエスト数 |
| TPM (Token/分) | 100,000 | 1 分あたりの最大 Token 数 |
| 同時リクエスト | 10 | 同時に進行する最大リクエスト数 |
制限を超えると 429 Too Many Requests エラーが返されます。対処方法は エラー処理 を参照してください。
SDK サポート
Python (公式 OpenAI SDK)
pip install openaifrom openai import OpenAI
client = OpenAI(
base_url="https://hub.lurus.cn/v1",
api_key="sk-your-api-key"
)Node.js
npm install openaiimport OpenAI from 'openai';
const client = new OpenAI({
baseURL: 'https://hub.lurus.cn/v1',
apiKey: 'sk-your-api-key'
});Go
import "github.com/sashabaranov/go-openai"
config := openai.DefaultConfig("sk-your-api-key")
config.BaseURL = "https://hub.lurus.cn/v1"
client := openai.NewClientWithConfig(config)cURL
curl https://hub.lurus.cn/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-your-api-key" \
-d '{"model": "deepseek-chat", "messages": [{"role": "user", "content": "Hi"}]}'特殊機能
ゲートウェイ拡張機能
ストリーミングレスポンス
stream: true を設定すると Server-Sent Events が有効になり、Token ごとに返却
モデルルーティング
モデル名によって対応する上流チャネルへ自動ルーティングし、基盤の設定を意識する必要なし
自動リトライ
リクエスト失敗時に予備チャネルへ自動切り替え(複数設定されている場合)
ストリーミングレスポンス
stream: true を設定すると Server-Sent Events のストリーミングレスポンスが有効になります:
{
"model": "deepseek-chat",
"messages": [...],
"stream": true
}完全なストリーミングデータ形式と Token ごとの処理については Chat Completions — ストリーミングレスポンス を参照してください。
モデルルーティング
モデル名によって対応する上流チャネルへ自動的にルーティングし、基盤の設定を意識する必要はありません。
自動リトライ
リクエスト失敗時に予備チャネルへ自動的に切り替えます(複数設定されている場合)。