Skip to content

Latest commit

 

History

History
441 lines (327 loc) · 22.8 KB

File metadata and controls

441 lines (327 loc) · 22.8 KB

การอ้างอิง API

🌐 Languages: 🇺🇸 English | 🇧🇷 Português (Brasil) | 🇪🇸 Español | 🇫🇷 Français | 🇮🇹 Italiano | 🇷🇺 Русский | 🇨🇳 中文 (简体) | 🇩🇪 Deutsch | 🇮🇳 हिन्दी | 🇹🇭 ไทย | 🇺🇦 Українська | 🇸🇦 العربية | 🇯🇵 日本語 | 🇻🇳 Tiếng Việt | 🇧🇬 Български | 🇩🇰 Dansk | 🇫🇮 Suomi | 🇮🇱 עברית | 🇭🇺 Magyar | 🇮🇩 Bahasa Indonesia | 🇰🇷 한국어 | 🇲🇾 Bahasa Melayu | 🇳🇱 Nederlands | 🇳🇴 Norsk | 🇵🇹 Português (Portugal) | 🇷🇴 Română | 🇵🇱 Polski | 🇸🇰 Slovenčina | 🇸🇪 Svenska | 🇵🇭 Filipino

ข้อมูลอ้างอิงที่สมบูรณ์สำหรับตำแหน่งข้อมูล OmniRoute API ทั้งหมด


สารบัญ


เสร็จสิ้นการแชท

POST /v1/chat/completions
Authorization: Bearer your-api-key
Content-Type: application/json

{
  "model": "cc/claude-opus-4-6",
  "messages": [
    {"role": "user", "content": "Write a function to..."}
  ],
  "stream": true
}

ส่วนหัวที่กำหนดเอง

ส่วนหัว ทิศทาง คำอธิบาย
X-OmniRoute-No-Cache ขอ ตั้งค่าเป็น true เพื่อข้ามแคช
X-OmniRoute-Progress ขอ ตั้งค่าเป็น true สำหรับกิจกรรมความคืบหน้า
Idempotency-Key ขอ ปุ่ม Dedup (หน้าต่าง 5s)
X-Request-Id ขอ คีย์สำรองสำรอง
X-OmniRoute-Cache ตอบกลับ HIT หรือ MISS (ไม่ใช่สตรีมมิ่ง)
X-OmniRoute-Idempotent ตอบกลับ true หากขจัดข้อมูลซ้ำซ้อน
X-OmniRoute-Progress ตอบกลับ enabled หากติดตามความคืบหน้าบน

การฝัง

POST /v1/embeddings
Authorization: Bearer your-api-key
Content-Type: application/json

{
  "model": "nebius/Qwen/Qwen3-Embedding-8B",
  "input": "The food was delicious"
}

ผู้ให้บริการที่มีอยู่: Nebius, OpenAI, Mistral, Together AI, ดอกไม้ไฟ, NVIDIA

# List all embedding models
GET /v1/embeddings

การสร้างภาพ

POST /v1/images/generations
Authorization: Bearer your-api-key
Content-Type: application/json

{
  "model": "openai/dall-e-3",
  "prompt": "A beautiful sunset over mountains",
  "size": "1024x1024"
}

ผู้ให้บริการที่มีอยู่: OpenAI (DALL-E), xAI (Grok Image), Together AI (FLUX), Fireworks AI

# List all image models
GET /v1/images/generations

รายการรุ่น

GET /v1/models
Authorization: Bearer your-api-key

→ Returns all chat, embedding, and image models + combos in OpenAI format

จุดสิ้นสุดความเข้ากันได้

วิธีการ เส้นทาง รูปแบบ
โพสต์ /v1/chat/completions OpenAI
โพสต์ /v1/messages มานุษยวิทยา
โพสต์ /v1/responses การตอบสนองของ OpenAI
โพสต์ /v1/embeddings OpenAI
โพสต์ /v1/images/generations OpenAI
รับ /v1/models OpenAI
โพสต์ /v1/messages/count_tokens มานุษยวิทยา
รับ /v1beta/models ราศีเมถุน
โพสต์ /v1beta/models/{...path} ราศีเมถุนสร้างเนื้อหา
โพสต์ /v1/api/chat โอลามา

เส้นทางของผู้ให้บริการเฉพาะ

POST /v1/providers/{provider}/chat/completions
POST /v1/providers/{provider}/embeddings
POST /v1/providers/{provider}/images/generations

คำนำหน้าผู้ให้บริการจะถูกเพิ่มอัตโนมัติหากไม่มี โมเดลที่ไม่ตรงกันส่งคืน 400


แคชความหมาย

# Get cache stats
GET /api/cache

# Clear all caches
DELETE /api/cache

ตัวอย่างการตอบกลับ:

{
  "semanticCache": {
    "memorySize": 42,
    "memoryMaxSize": 500,
    "dbSize": 128,
    "hitRate": 0.65
  },
  "idempotency": {
    "activeKeys": 3,
    "windowMs": 5000
  }
}

แดชบอร์ดและการจัดการ

การรับรองความถูกต้อง

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/auth/login โพสต์ เข้าสู่ระบบ
/api/auth/logout โพสต์ ออกจากระบบ
/api/settings/require-login รับ/ใส่ ต้องสลับการเข้าสู่ระบบ

การจัดการผู้ให้บริการ

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/providers รับ/โพสต์ รายชื่อ / สร้างผู้ให้บริการ
/api/providers/[id] รับ/วาง/ลบ จัดการผู้ให้บริการ
/api/providers/[id]/test โพสต์ การเชื่อมต่อผู้ให้บริการทดสอบ
/api/providers/[id]/models รับ รายชื่อรุ่นของผู้ให้บริการ
/api/providers/validate โพสต์ ตรวจสอบการกำหนดค่าผู้ให้บริการ
/api/provider-nodes* ต่างๆ การจัดการโหนดผู้ให้บริการ
/api/provider-models รับ/โพสต์/ลบ โมเดลที่กำหนดเอง

กระแส OAuth

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/oauth/[provider]/[action] ต่างๆ OAuth เฉพาะผู้ให้บริการ

การกำหนดเส้นทางและการกำหนดค่า

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/models/alias รับ/โพสต์ นามแฝงโมเดล
/api/models/catalog รับ ทุกรุ่นตามผู้ให้บริการ + ประเภท
/api/combos* ต่างๆ การจัดการคำสั่งผสม
/api/keys* ต่างๆ การจัดการคีย์ API
/api/pricing รับ ราคารุ่น

การใช้งานและการวิเคราะห์

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/usage/history รับ ประวัติการใช้งาน
/api/usage/logs รับ บันทึกการใช้งาน
/api/usage/request-logs รับ บันทึกระดับคำขอ
/api/usage/[connectionId] รับ การใช้งานต่อการเชื่อมต่อ

การตั้งค่า

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/settings รับ/ใส่ การตั้งค่าทั่วไป
/api/settings/proxy รับ/ใส่ การกำหนดค่าพร็อกซีเครือข่าย
/api/settings/proxy/test โพสต์ ทดสอบการเชื่อมต่อพร็อกซี
/api/settings/ip-filter รับ/ใส่ รายการ IP ที่อนุญาต/รายการบล็อก
/api/settings/thinking-budget รับ/ใส่ งบประมาณโทเค็นการใช้เหตุผล
/api/settings/system-prompt รับ/ใส่ พร้อมท์ระบบโกลบอล

การตรวจสอบ

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/sessions รับ การติดตามเซสชันที่ใช้งานอยู่
/api/rate-limits รับ ขีดจำกัดอัตราต่อบัญชี
/api/monitoring/health รับ ตรวจสุขภาพ
/api/cache รับ/ลบ สถิติแคช / ล้าง

สำรองและส่งออก/นำเข้า

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/db-backups รับ แสดงรายการข้อมูลสำรองที่มีอยู่
/api/db-backups ใส่ สร้างการสำรองข้อมูลด้วยตนเอง
/api/db-backups โพสต์ กู้คืนจากข้อมูลสำรองเฉพาะ
/api/db-backups/export รับ ดาวน์โหลดฐานข้อมูลเป็นไฟล์ .sqlite
/api/db-backups/import โพสต์ อัปโหลดไฟล์ .sqlite เพื่อแทนที่ฐานข้อมูล
/api/db-backups/exportAll รับ ดาวน์โหลดข้อมูลสำรองแบบเต็มเป็นไฟล์ .tar.gz

คลาวด์ซิงค์

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/sync/cloud ต่างๆ การดำเนินการซิงค์บนคลาวด์
/api/sync/initialize โพสต์ เริ่มต้นการซิงค์
/api/cloud/* ต่างๆ การจัดการคลาวด์

เครื่องมือ CLI

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/cli-tools/claude-settings รับ สถานะ Claude CLI
/api/cli-tools/codex-settings รับ สถานะ Codex CLI
/api/cli-tools/droid-settings รับ สถานะ Droid CLI
/api/cli-tools/openclaw-settings รับ สถานะ OpenClaw CLI
/api/cli-tools/runtime/[toolId] รับ รันไทม์ CLI ทั่วไป

การตอบกลับของ CLI ได้แก่: installed, runnable, command, commandPath, runtimeMode, reason

ความยืดหยุ่นและขีดจำกัดอัตรา

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/resilience รับ/ใส่ รับ/อัปเดตโปรไฟล์ความยืดหยุ่น
/api/resilience/reset โพสต์ รีเซ็ตเบรกเกอร์วงจร
/api/rate-limits รับ สถานะขีดจำกัดอัตราต่อบัญชี
/api/rate-limit รับ การกำหนดค่าขีดจำกัดอัตราทั่วโลก

เอวาลส์

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/evals รับ/โพสต์ แสดงรายการชุด eval / ดำเนินการประเมินผล

นโยบาย

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/policies รับ/โพสต์/ลบ จัดการนโยบายการกำหนดเส้นทาง

การปฏิบัติตาม

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/compliance/audit-log รับ บันทึกการตรวจสอบการปฏิบัติตามข้อกำหนด (N สุดท้าย)

v1beta (เข้ากันได้กับราศีเมถุน)

จุดสิ้นสุด วิธีการ คำอธิบาย
/v1beta/models รับ รายการรุ่นในรูปแบบราศีเมถุน
/v1beta/models/{...path} โพสต์ ราศีเมถุน generateContent ปลายทาง

ตำแหน่งข้อมูลเหล่านี้สะท้อนรูปแบบ API ของ Gemini สำหรับไคลเอนต์ที่คาดหวังความเข้ากันได้ของ Gemini SDK ดั้งเดิม

API ภายใน / ระบบ

จุดสิ้นสุด วิธีการ คำอธิบาย
/api/init รับ การตรวจสอบการเริ่มต้นแอปพลิเคชัน (ใช้ในการรันครั้งแรก)
/api/tags รับ แท็กโมเดลที่เข้ากันได้กับ Ollama (สำหรับลูกค้า Ollama)
/api/restart โพสต์ ทริกเกอร์การรีสตาร์ทเซิร์ฟเวอร์อย่างสง่างาม
/api/shutdown โพสต์ ทริกเกอร์การปิดระบบเซิร์ฟเวอร์อย่างสง่างาม

หมายเหตุ: ตำแหน่งข้อมูลเหล่านี้ถูกใช้ภายในโดยระบบหรือเพื่อความเข้ากันได้กับไคลเอ็นต์ Ollama โดยทั่วไปแล้วจะไม่ถูกเรียกโดยผู้ใช้ปลายทาง


การถอดเสียง

POST /v1/audio/transcriptions
Authorization: Bearer your-api-key
Content-Type: multipart/form-data

ถอดเสียงไฟล์เสียงโดยใช้ Deepgram หรือ AssemblyAI

คำขอ:

curl -X POST http://localhost:20128/v1/audio/transcriptions \
  -H "Authorization: Bearer your-api-key" \
  -F "file=@recording.mp3" \
  -F "model=deepgram/nova-3"

คำตอบ:

{
  "text": "Hello, this is the transcribed audio content.",
  "task": "transcribe",
  "language": "en",
  "duration": 12.5
}

ผู้ให้บริการที่รองรับ: deepgram/nova-3, assemblyai/best

รูปแบบที่รองรับ: mp3, wav, m4a, flac, ogg, webm


ความเข้ากันได้ของ Ollama

สำหรับลูกค้าที่ใช้รูปแบบ API ของ Ollama:

# Chat endpoint (Ollama format)
POST /v1/api/chat

# Model listing (Ollama format)
GET /api/tags

คำขอจะได้รับการแปลโดยอัตโนมัติระหว่าง Ollama และรูปแบบภายใน


มาตรระยะไกล

# Get latency telemetry summary (p50/p95/p99 per provider)
GET /api/telemetry/summary

คำตอบ:

{
  "providers": {
    "claudeCode": { "p50": 245, "p95": 890, "p99": 1200, "count": 150 },
    "github": { "p50": 180, "p95": 620, "p99": 950, "count": 320 }
  }
}

งบประมาณ

# Get budget status for all API keys
GET /api/usage/budget

# Set or update a budget
POST /api/usage/budget
Content-Type: application/json

{
  "keyId": "key-123",
  "limit": 50.00,
  "period": "monthly"
}

รุ่นที่มีจำหน่าย

# Get real-time model availability across all providers
GET /api/models/availability

# Check availability for a specific model
POST /api/models/availability
Content-Type: application/json

{
  "model": "claude-sonnet-4-5-20250929"
}

คำขอดำเนินการ

  1. ลูกค้าส่งคำขอไปที่ /v1/*
  2. ตัวจัดการเส้นทางเรียก handleChat, handleEmbedding, handleAudioTranscription หรือ handleImageGeneration
  3. โมเดลได้รับการแก้ไขแล้ว (ผู้ให้บริการโดยตรง/โมเดลหรือนามแฝง/คอมโบ)
  4. ข้อมูลรับรองที่เลือกจากฐานข้อมูลท้องถิ่นพร้อมการกรองความพร้อมใช้งานของบัญชี
  5. สำหรับการแชท: handleChatCore — การตรวจจับรูปแบบ การแปล การตรวจสอบแคช การตรวจสอบค่าเดิม
  6. ผู้ดำเนินการของผู้ให้บริการส่งคำขออัปสตรีม
  7. การตอบสนองถูกแปลกลับเป็นรูปแบบไคลเอนต์ (แชท) หรือส่งคืนตามสภาพ (การฝัง/รูปภาพ/เสียง)
  8. บันทึกการใช้งาน/การบันทึก
  9. การใช้ทางเลือกสำรองจะมีผลกับข้อผิดพลาดตามกฎคอมโบ

การอ้างอิงสถาปัตยกรรมแบบเต็ม: link


การรับรองความถูกต้อง

  • เส้นทางแดชบอร์ด (/dashboard/*) ใช้คุกกี้ auth_token
  • การเข้าสู่ระบบใช้แฮชรหัสผ่านที่บันทึกไว้ สำรองไปที่ INITIAL_PASSWORD
  • requireLogin สลับได้ผ่าน /api/settings/require-login
  • เส้นทาง /v1/* เป็นทางเลือกที่ต้องใช้คีย์ Bearer API เมื่อ REQUIRE_API_KEY=true