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

Tổng quan

LemonData API tương thích với OpenAI, điều này có nghĩa là bạn có thể sử dụng OpenAI SDK chính thức chỉ với việc thay đổi base URL. Chúng tôi cũng hỗ trợ các định dạng yêu cầu gốc của AnthropicGemini.

Base URL

https://api.lemondata.cc

Xác thực

Tất cả các endpoint API đều yêu cầu xác thực bằng Bearer token:
Authorization: Bearer sk-your-api-key
Lấy API key của bạn từ Dashboard.
Về Interactive Playground: Playground trên trang tài liệu này chỉ dành cho mục đích minh họa và không hỗ trợ nhập API key. Để kiểm tra API, vui lòng sử dụng:
  • cURL - Sao chép các lệnh ví dụ và thay thế sk-your-api-key bằng key thực tế của bạn
  • Postman - Nhập OpenAPI spec của chúng tôi
  • SDK - Sử dụng OpenAI/Anthropic SDK với base URL của chúng tôi

Các Endpoint được hỗ trợ

Chat & Tạo văn bản

EndpointPhương thứcMô tả
/v1/chat/completionsPOSTChat completions tương thích với OpenAI
/v1/messagesPOSTMessages API tương thích với Anthropic
/v1/responsesPOSTOpenAI Responses API

Embeddings & Rerank

EndpointPhương thứcMô tả
/v1/embeddingsPOSTTạo text embeddings
/v1/rerankPOSTXếp hạng lại (Rerank) tài liệu

Hình ảnh

EndpointPhương thứcMô tả
/v1/images/generationsPOSTTạo hình ảnh từ văn bản
/v1/images/editsPOSTChỉnh sửa hình ảnh
/v1/images/generations/{id}GETĐường dẫn trạng thái tác vụ hình ảnh cho các phản hồi hình ảnh dựa trên tác vụ
Một số mô hình hình ảnh có thể trả về kết quả trực tiếp (inline), một số có thể trả về phản hồi dựa trên tác vụ, và một số có thể hoạt động theo cả hai cách tùy thuộc vào đường dẫn nhà cung cấp được điều hướng. Nếu phản hồi tạo bao gồm poll_url, hãy làm theo chính xác đường dẫn đó.

Âm thanh

EndpointPhương thứcMô tả
/v1/audio/speechPOSTChuyển đổi văn bản thành giọng nói (TTS)
/v1/audio/transcriptionsPOSTChuyển đổi giọng nói thành văn bản (STT)

Video

EndpointPhương thứcMô tả
/v1/videos/generationsPOSTTạo tác vụ tạo video
/v1/tasks/{id}GETLấy trạng thái tác vụ bất đồng bộ cho các công việc video
/v1/videos/generations/{id}GETĐường dẫn trạng thái tác vụ video tương thích với phiên bản cũ
Đối với các khách hàng mới, ưu tiên sử dụng /v1/tasks/{id} và làm theo poll_url được trả về bởi các phản hồi tạo. Chỉ giữ lại /v1/videos/generations/{id} để tương thích ngược.

Tác vụ bất đồng bộ (Async Tasks)

EndpointPhương thứcMô tả
/v1/tasks/{id}GETEndpoint trạng thái tác vụ bất đồng bộ thống nhất. Được khuyến nghị khi làm theo poll_url được trả về
Endpoint này không giới hạn ở video, âm nhạc và 3D. Một số tác vụ hình ảnh cũng có thể sử dụng /v1/tasks/{id} làm đường dẫn thăm dò (polling) chuẩn.

Âm nhạc

EndpointPhương thứcMô tả
/v1/music/generationsPOSTTạo tác vụ tạo âm nhạc
/v1/music/generations/{id}GETĐường dẫn trạng thái dành riêng cho âm nhạc
Đối với các khách hàng mới, hãy ưu tiên poll_url được trả về trước. Nếu bạn cần một endpoint trạng thái tác vụ cố định, hãy sử dụng /v1/tasks/{id}; giữ lại /v1/music/generations/{id} cho các đường dẫn tương thích dành riêng cho âm nhạc.

Tạo 3D

EndpointPhương thứcMô tả
/v1/3d/generationsPOSTTạo tác vụ tạo mô hình 3D
/v1/3d/generations/{id}GETĐường dẫn trạng thái dành riêng cho 3D
Đối với các khách hàng mới, hãy ưu tiên poll_url được trả về trước. Nếu bạn cần một endpoint trạng thái tác vụ cố định, hãy sử dụng /v1/tasks/{id}; giữ lại /v1/3d/generations/{id} cho các đường dẫn tương thích dành riêng cho 3D.

Mô hình (Models)

EndpointPhương thứcMô tả
/v1/modelsGETLiệt kê tất cả các mô hình có sẵn
/v1/models/{model}GETLấy thông tin mô hình cụ thể

Gemini (v1beta)

Hỗ trợ định dạng Google Gemini API gốc:
EndpointPhương thứcMô tả
/v1beta/models/{model}:generateContentPOSTTạo nội dung (định dạng Gemini)
/v1beta/models/{model}:streamGenerateContentPOSTTạo nội dung dạng stream (định dạng Gemini)
Các endpoint Gemini hỗ trợ xác thực qua tham số truy vấn ?key= bên cạnh Bearer token tiêu chuẩn.

Định dạng phản hồi

Tất cả các phản hồi đều tuân theo một định dạng nhất quán:

Phản hồi thành công

{
  "id": "chatcmpl-abc123",
  "object": "chat.completion",
  "created": 1234567890,
  "model": "gpt-4o",
  "choices": [...],
  "usage": {
    "prompt_tokens": 10,
    "completion_tokens": 20,
    "total_tokens": 30
  }
}

Tính minh bạch trong điều hướng (Routing)

Tất cả các phản hồi đều bao gồm trường _routing với thông tin kênh:
{
  "id": "chatcmpl-abc123",
  ...,
  "_routing": {
    "channel": {
      "id": "ch_xxx",
      "name": "channel-name",
      "provider": "openai",
      "channelType": "PLATFORM"
    },
    "cached": false,
    "retryCount": 0
  }
}
TrườngMô tả
channel.idĐịnh danh kênh được sử dụng
channel.providerNhà cung cấp thượng nguồn (openai, anthropic, v.v.)
channel.channelTypePLATFORM (LemonData) hoặc PRIVATE (BYOK)
cachedLiệu phản hồi có được cung cấp từ bộ nhớ đệm (cache) hay không
retryCountSố lần thử lại (nếu có)

Phản hồi lỗi

{
  "error": {
    "message": "Invalid API key provided",
    "type": "invalid_api_key",
    "code": "invalid_api_key"
  }
}

Giới hạn tốc độ (Rate Limits)

Giới hạn tốc độ dựa trên vai trò và có thể cấu hình bởi quản trị viên. Các giá trị mặc định:
Vai tròYêu cầu/phút
User60
Partner300
VIP1,000
Liên hệ bộ phận hỗ trợ để biết các giới hạn tốc độ tùy chỉnh. Các giá trị chính xác có thể thay đổi tùy theo cấu hình tài khoản.
Khi vượt quá giới hạn tốc độ, API sẽ trả về mã trạng thái 429 với header Retry-After cho biết thời gian cần chờ đợi.

Thông số kỹ thuật OpenAPI

OpenAPI Spec

Tải xuống thông số kỹ thuật OpenAPI 3.0 đầy đủ