Chuyển đến nội dung chính
XPNCORE

Tương thích OpenAI · Anthropic · Gemini

Tài liệu API XPNCORE

Chỉ cần một Base URL, một khóa API và một model ID. Dùng được SDK OpenAI, Anthropic và Gemini.

Base URL

https://api.xpncore.com/v1

Thêm đường dẫn endpoint phía sau, ví dụ /chat/completions.

Tổng quan nhanh

Đừng ghi cứng model ID. Gọi GET /v1/models bằng khóa API của bạn để lấy danh sách model bạn được dùng.

Xác thực bằng Bearer

Chỉ cần một header Authorization.

Có giới hạn rõ ràng

Giới hạn theo khóa API, gói và số dư ví.

Streaming (SSE)

Trả từng phần, kết thúc bằng [DONE].

Xác thực

Gửi khóa API dạng Bearer token trong mọi request.
HTTP header
Authorization: Bearer YOUR_API_KEY

Endpoint

Mọi endpoint XPNCORE đang hỗ trợ.
  • POST
    /v1/chat/completions

    Tạo chat completion tương thích với OpenAI.

  • POST
    /v1/combo

    Báo giá, gọi song song và tổng hợp một yêu cầu qua nhiều model.

  • GET
    /v1/models

    Liệt kê các model mà khóa API hiện tại được dùng.

  • GET
    /v1/models/*model

    Lấy thông tin một model mà khóa API hiện tại được dùng.

  • POST
    /v1/embeddings

    Tạo vector embedding từ văn bản đầu vào.

  • POST
    /v1/messages

    Tạo message theo đặc tả tương thích với Anthropic.

  • POST
    /v1/messages/count_tokens

    Ước tính số token đầu vào của một request Anthropic Messages mà không gửi đi và không tính phí.

  • POST
    /v1/completions

    Tạo text completion theo đặc tả cũ.

  • POST
    /v1/images/generations

    Sinh ảnh từ lời nhắc văn bản.

  • POST
    /v1/images/edits

    Chỉnh sửa ảnh từ ảnh đầu vào và lời nhắc.

  • POST
    /v1/images/variations

    Tạo các biến thể từ một ảnh tải lên.

  • POST
    /v1/audio/speech

    Sinh âm thanh giọng nói từ văn bản.

  • POST
    /v1/audio/transcriptions

    Chuyển âm thanh thành văn bản.

  • POST
    /v1/audio/translations

    Dịch nội dung âm thanh sang văn bản tiếng Anh.

  • GET
    /v1/realtime

    docs.endpoint.realtime.summary

  • POST
    /v1/rerank

    Xếp hạng lại tài liệu theo mức độ phù hợp với truy vấn.

  • POST
    /v1/moderations

    Phân loại nội dung đầu vào có nguy cơ không an toàn.

  • POST
    /v1/search

    Tìm kiếm web cho một truy vấn qua model hỗ trợ tìm kiếm.

  • POST
    /v1/web/fetch

    Đọc nội dung một trang web từ URL qua model hỗ trợ tải trang.

  • GET
    /v1beta/models

    Liệt kê model qua đặc tả tương thích với Gemini.

  • POST
    /v1beta/models/*path

    Tạo nội dung qua đặc tả tương thích với Gemini.

  • POST
    /v1/responses

    Tạo response theo đặc tả OpenAI Responses.

  • POST
    /v1/responses/compact

    Rút gọn ngữ cảnh hội thoại của Responses.

  • POST
    /v1/videos

    Tạo video từ lời nhắc hoặc ảnh, rồi hỏi trạng thái và tải về.

Code mẫu

Chọn endpoint và ngôn ngữ; mọi code mẫu đều đọc khóa API từ biến môi trường.
POST /v1/chat/completions
curl https://api.xpncore.com/v1/chat/completions \
  -H "Authorization: Bearer $XPNCORE_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{"model":"gpt-4o-mini","messages":[{"role":"user","content":"Hello"}]}'

Thử trực tiếp

Request gửi thẳng từ trình duyệt; khóa API chỉ lưu tạm trong tab này.
208 / 32.768 byte

Response

Response sẽ xuất hiện tại đây.

Headers

Chưa có header.

Phản hồi và lỗi

Bạn nhận được gì, khi có và không có stream.

200

JSON tương thích OpenAI với choices, usage và model.

200 SSE

Mỗi data event mang choices[].delta.content; [DONE] báo đã xong.

4xx / 5xx

Lỗi kèm message rõ ràng: xác thực, quyền, hạn mức, dữ liệu không hợp lệ hoặc model tạm lỗi.

200 · application/json
{
  "id": "chatcmpl_...",
  "object": "chat.completion",
  "model": "provider/model",
  "choices": [{
    "index": 0,
    "message": { "role": "assistant", "content": "Hello" },
    "finish_reason": "stop"
  }],
  "usage": { "prompt_tokens": 12, "completion_tokens": 4, "total_tokens": 16 }
}
200 · text/event-stream
data: {"object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"Hel"}}]}

data: {"object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"lo"}}]}

data: [DONE]

Giới hạn

Các giới hạn áp dụng cho mọi request.
Kích thước request
Tối đa 2 MiB (Anthropic Messages và Responses: 32 MiB)
Thời gian chờ
Tùy model; dùng stream=true cho câu trả lời dài
Streaming
stream=false JSON · stream=true text/event-stream · [DONE]
Tìm model
GET /v1/models theo từng khóa API
Giới hạn tốc độ
Theo khóa API và gói đang dùng

Sẵn sàng gửi request?

Trình hướng dẫn thiết lập giúp bạn tạo khóa API; Playground cho gửi thử request ngay trên trình duyệt.