Thoth API
← Trang chủ

Hướng dẫn nhanh

Kết nối vào API tương thích OpenAI & Anthropic chỉ trong vài phút.

1. Lấy API key

Mở Telegram, bắt đầu trò chuyện với bot, rồi vào mục API Key trong Mini App để tạo key mới. Key chỉ hiển thị một lần — hãy sao chép và lưu lại ngay.

Mở bot trên Telegram

2. Base URL & xác thực

Base URL

text
https://thoth.rezlabs.io

Xác thực

Gửi API key qua header Authorization: Bearer sk-.... Header x-api-key: sk-... cũng được chấp nhận như một lựa chọn thay thế.

Không chia sẻ key hoặc commit vào mã nguồn công khai — bất kỳ ai có key đều dùng được API dưới tên bạn.

3. Chat Completions (tương thích OpenAI)

POST /v1/chat/completions tương thích với OpenAI Chat Completions API — dùng trực tiếp với hầu hết client/SDK hiện có.

Không streaming

curl
curl https://thoth.rezlabs.io/v1/chat/completions \
  -H "Authorization: Bearer sk-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-latest",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

Streaming (SSE)

curl
curl https://thoth.rezlabs.io/v1/chat/completions \
  -H "Authorization: Bearer sk-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-latest",
    "stream": true,
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

4. Models & Messages

Danh sách model

GET /v1/models trả về các model mà API key của bạn được phép dùng, tuỳ theo channel đã được gán.

curl
curl https://thoth.rezlabs.io/v1/models \
  -H "Authorization: Bearer sk-..."

Anthropic Messages

POST /v1/messages theo định dạng Anthropic Messages API gốc — dùng trực tiếp với Claude Code hoặc SDK Anthropic.

curl
curl https://thoth.rezlabs.io/v1/messages \
  -H "Authorization: Bearer sk-..." \
  -H "Content-Type: application/json" \
  -H "anthropic-version: 2023-06-01" \
  -d '{
    "model": "claude-sonnet-latest",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "Hello!"}]
  }'
Header anthropic-version là tuỳ chọn; nếu không gửi, hệ thống mặc định 2023-06-01.

5. SDK mẫu

Dùng thẳng SDK openai chính thức hoặc fetch — chỉ cần đổi base_url/URL và api_key.

Python (openai SDK)

python
from openai import OpenAI

client = OpenAI(
    base_url="https://thoth.rezlabs.io/v1",
    api_key="sk-...",
)

resp = client.chat.completions.create(
    model="claude-sonnet-latest",
    messages=[{"role": "user", "content": "Hello!"}],
)
print(resp.choices[0].message.content)

JavaScript (fetch)

javascript
const res = await fetch("https://thoth.rezlabs.io/v1/chat/completions", {
  method: "POST",
  headers: {
    "Authorization": "Bearer sk-...",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    model: "claude-sonnet-latest",
    messages: [{ role: "user", content: "Hello!" }],
  }),
});
const data = await res.json();
console.log(data.choices[0].message.content);

6. Model khả dụng

Bảng dưới là ví dụ minh hoạ các model phổ biến — danh sách thật phụ thuộc channel được gán cho từng API key.

Model Nhà cung cấp Ghi chú
claude-opus-latestClaude (Anthropic)Năng lực cao nhất, phù hợp tác vụ phức tạp
claude-sonnet-latestClaude (Anthropic)Cân bằng tốc độ/chất lượng, dùng hằng ngày
claude-haiku-latestClaude (Anthropic)Nhanh, chi phí thấp, tác vụ đơn giản
gpt-5.5OpenAI (Codex)Dòng GPT mới nhất, hỗ trợ reasoning
grok-4xAIGrok, mạnh về ngữ cảnh dài
Xem danh sách đầy đủ (theo key của bạn) qua GET /v1/models

7. Rate limit & lưu ý

Mỗi API key có thể bị giới hạn theo số request/phút, số request đồng thời, hoặc Budget tổng — tuỳ cấu hình được quản trị viên gán.

  • 401 Unauthorized — key sai hoặc thiếu header xác thực.
  • 403 Forbidden — key chưa được gán channel/model tương ứng.
  • 429 Too Many Requests — vượt rate limit hoặc Budget, hãy giảm tốc độ gửi request và thử lại sau.
← Về trang chủ