Pool API

Tài liệu API cho dev

Base URL: https://mark.klink.lol · Mọi request cần header Authorization: Bearer <API key>

POST 1. Tạo lượt mới /api/jobs

Content-Type: application/json

{
  "capability": "image | video | img2video | longvideo",
  "input": { "prompt": "Mô tả chi tiết thứ bạn muốn tạo" }
}

→ 202 {"job_id": "abc123..."}

GET 2. Xem trạng thái lượt /api/jobs/<job_id>

→ {"job_id": "...", "status": "queued | running | done | failed",
    "result": {"url": "https://...", "expires_at": "...", "bytes": 12345}}

Poll mỗi vài giây cho tới khi status là done hoặc failed. File kết quả tồn tại 48 giờ — hãy tải về sớm.

3. Các loại lượt

4. Tham số input chi tiết

Mọi tham số nằm trong object input:

Tham sốÁp dụngMô tả
promptTất cảMô tả chi tiết thứ bạn muốn tạo. Bắt buộc.
refsimage, video, img2videoẢnh tham chiếu (nhân vật, bối cảnh, phong cách). Danh sách tối đa 10 mục, mỗi mục là URL chuỗi hoặc object {"name": "...", "url": "..."} — tên không được trùng nhau trong 1 lượt. Ví dụ:
"refs": [{"name": "nhanvat-chinh", "url": "https://.../anh1.jpg"}, "https://.../anh2.jpg"]
image_urlimg2videoURL ảnh đầu vào để biến thành video. Bắt buộc với img2video.
duration_seclongvideoThời lượng video mong muốn (giây), tối đa 60.
clipsvideoSố clip ~10s ghép lại trong 1 lượt (mặc định 1).
aspectvideo, img2videoTỉ lệ khung hình yêu cầu, vd "16:9" hoặc "9:16". File kết quả sai tỉ lệ sẽ bị từ chối để render lại.
max_retriesTất cảSố lần tự thử lại khi gặp lỗi tạm thời (0–5).

Ví dụ: tạo ảnh có ảnh tham chiếu nhân vật

POST /api/jobs
{
  "capability": "image",
  "input": {
    "prompt": "Chân dung cô gái trong vườn hoa anh đào, phong cách anime",
    "refs": [
      {"name": "nhanvat", "url": "https://example.com/nhanvat.jpg"}
    ]
  }
}

Ví dụ: img2video từ 1 ảnh có sẵn

POST /api/jobs
{
  "capability": "img2video",
  "input": {
    "prompt": "Mây trôi nhẹ, hoa rơi trong gió",
    "image_url": "https://example.com/phong-canh.jpg",
    "aspect": "16:9"
  }
}

5. Mã lỗi

Ví dụ (curl)

curl -s -X POST https://mark.klink.lol/api/jobs \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"capability":"image","input":{"prompt":"Mèo cam bên cửa sổ lúc hoàng hôn"}}'