Tham chiếu API
Endpoint, xác thực, định dạng tương thích, mã lỗi và giới hạn tần suất của ZetaAPI. Chuyển tiếp song song định dạng OpenAI và Anthropic — không cần đổi SDK.
Cập nhật 2026-04-17
Base URL
https://api.staging.cosmos-router.com
- Endpoint tương thích OpenAI nằm ở
/v1/* - Endpoint tương thích Anthropic là
/v1/messages - Hai định dạng dùng chung một API key
Xác thực
Mọi yêu cầu phải mang Authorization: Bearer sk-xxxxx:
curl https://api.staging.cosmos-router.com/v1/chat/completions \
-H "Authorization: Bearer sk-xxxxx" \
-H "Content-Type: application/json" \
-d '{"model": "gpt-4o", "messages": [{"role": "user", "content": "hi"}]}'
Định dạng Anthropic cũng nhận x-api-key (giống chính thức):
curl https://api.staging.cosmos-router.com/v1/messages \
-H "x-api-key: sk-xxxxx" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{"model": "claude-sonnet-4-6", "max_tokens": 1024, "messages": [{"role": "user", "content": "hi"}]}'
Tổng quan endpoint
| Endpoint | Giao thức | Ghi chú |
|---|---|---|
POST /v1/chat/completions | OpenAI | Hoàn tất hội thoại, hỗ trợ stream SSE |
POST /v1/completions | OpenAI | Hoàn tất văn bản kiểu cũ (mô hình cũ) |
POST /v1/embeddings | OpenAI | Vector embedding |
POST /v1/messages | Anthropic | Định dạng gốc của Claude, hỗ trợ prompt cache |
GET /v1/models | OpenAI | Danh sách mô hình khả dụng cho tài khoản |
Họ mô hình được hỗ trợ
- Claude:
claude-opus-4-8,claude-opus-4-7,claude-sonnet-4-6 - GPT:
gpt-5.5,gpt-5.3-chat,gpt-5.3-codex,gpt-5.2-codex,gpt-4o,o3,o4-mini - Gemini:
gemini-3-pro-preview,gemini-2.5-pro,gemini-3-flash-preview,gemini-flash-latest - DeepSeek / Qwen / Kimi / MiniMax và các mô hình mã nguồn mở, mô hình Trung Quốc khác
Mô hình và giá được cập nhật theo mỗi lần triển khai; danh sách trên chỉ mang tính đại diện. Danh sách mô hình đầy đủ và hệ số giá mới nhất lấy trang bảng giá làm chuẩn.
Phản hồi dạng stream (SSE)
Đặt "stream": true trong yêu cầu:
stream = client.chat.completions.create(
model="claude-sonnet-4-6",
messages=[{"role": "user", "content": "Viết quicksort bằng Python"}],
stream=True,
)
for chunk in stream:
print(chunk.choices[0].delta.content or "", end="", flush=True)
SSE trả về định dạng data: {...}\n\n và kết thúc bằng data: [DONE] — y hệt API chính thức của OpenAI / Anthropic.
Prompt Cache
Mô hình OpenAI
Tự động cache, không cần tham số thêm. Tiền tố lặp lại được tính theo giá cache-hit (50% giá đầu vào hoặc thấp hơn, tùy mô hình).
Claude (định dạng Anthropic)
Đánh dấu tường minh trên block system hoặc messages:
{
"model": "claude-sonnet-4-6",
"max_tokens": 1024,
"system": [
{
"type": "text",
"text": "Prompt hệ thống dài...",
"cache_control": { "type": "ephemeral" }
}
],
"messages": [...]
}
Tỷ lệ cache-hit là 10% giá đầu vào, giống chính thức. Xem đo chi phí Prompt Cache.
Mã lỗi
| HTTP | Code | Ý nghĩa | Gợi ý |
|---|---|---|---|
| 400 | invalid_request_error | Sai tham số (thiếu trường, sai định dạng, sai tên mô hình) | Kiểm tra body yêu cầu |
| 401 | authentication_error | Key không hợp lệ hoặc đã thu hồi | Tạo lại key |
| 402 | insufficient_quota | Không đủ số dư | Nạp tiền trong bảng điều khiển |
| 403 | permission_error | Key không có quyền với mô hình này | Kiểm tra quyền của key |
| 404 | not_found_error | Sai chính tả tên mô hình | Xem /v1/models |
| 429 | rate_limit_error | Chạm giới hạn tần suất | Thử lại với backoff lũy thừa |
| 500 | internal_error | Lỗi nội bộ nền tảng | Tính vào thống kê sự cố; có thể yêu cầu bồi thường theo quy tắc công khai |
| 502 / 503 | upstream_error | Sự cố thượng nguồn, đang chuyển kênh | Client có thể thử lại ngay |
| 504 | timeout_error | Thượng nguồn quá hạn | Client có thể thử lại ngay |
Body lỗi theo đúng định dạng OpenAI:
{
"error": {
"type": "invalid_request_error",
"message": "model 'gpt-4-vision' not found",
"code": null
}
}
Giới hạn tần suất
- Mặc định: 600 RPM / 300k TPM (theo key, không theo tài khoản)
- Người dùng doanh nghiệp hoặc dùng nhiều có thể xin nâng hạn mức trong bảng điều khiển
- Khi vượt, trả
429+ headerRetry-After(giây)
Tự động chuyển kênh khi sự cố
Khi độ khả dụng của kênh thượng nguồn giảm bất thường, nền tảng tự chuyển lưu lượng sang kênh dự phòng — phần lớn trường hợp client không nhận biết.
Bồi thường SLA được tính theo tháng dương lịch + nhóm SKU; hiện theo hình thức gửi yêu cầu (duyệt thủ công); cách gửi yêu cầu và các bậc xem Yêu cầu bồi thường dịch vụ (bối cảnh thiết kế: Quy tắc bồi thường như một sản phẩm).
Hỗ trợ SDK
- Python: SDK chính thức
openaivàanthropicdùng trực tiếp, chỉ đổibase_url - Node.js:
openai/@anthropic-ai/sdk, tương tự - Go / Rust / Java: bất kỳ thư viện tương thích OpenAI nào hỗ trợ base URL tùy chỉnh