YUYU_C1 圖生圖
YUYU_C1 用範本(preset_name)決定圖片的風格,可以放參考圖,並用 quality 調整畫質。
POST /api/tasks/image-generation
X-Api-Key: sk-live-xxxx
Content-Type: application/json
Idempotency-Key: 選填,見下方說明
完整範例
images 要放 base64 格式的 data URI,支援 PNG、JPEG、WebP。範例中省略了實際的 base64 內容:
curl -X POST https://yuyuvideo.com/api/tasks/image-generation \
-H "X-Api-Key: sk-live-xxxx" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: order-20260716-00043" \
-d '{
"model": "YUYU_C1",
"prompt": "a woman smiling at the camera, studio lighting",
"images": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..."],
"preset_name": "some_preset",
"quality": "high",
"payload": { "external_order_id": "order-20260716-00043" },
"callback_url": "https://example.com/webhooks/yuyu-image"
}'
建立成功會回傳 201 Created 和任務資料。這時任務還在排隊,files 是空的。credits 是這次扣除的積分,範例中的數字僅供參考:
{
"public_id": "01K1M2N3P4Q5R6S7T8V9W0XY13",
"type": 2,
"status": 0,
"credits": 10,
"params": {
"model": "YUYU_C1",
"prompt": "a woman smiling at the camera, studio lighting",
"images": ["data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..."],
"preset_name": "some_preset",
"quality": "high",
"payload": { "external_order_id": "order-20260716-00043" },
"callback_url": "https://example.com/webhooks/yuyu-image"
},
"error_code": null,
"error_message": null,
"created_at": "2026-07-16T08:00:00.000000Z",
"finished_at": null,
"files_expire_at": null,
"files_expired": false,
"files": []
}
接下來如何查詢進度、下載圖片,請見〈任務查詢與取件〉。
參數表
| 欄位 | 型別 | 必填 | 說明 |
|---|---|---|---|
model |
string | 是 | 填 YUYU_C1 |
prompt |
string | 否 | 圖片描述,最多 10000 字 |
images |
string[] | 否 | 參考圖,最多放 4 張,但只會使用前 2 張。格式為 base64 data URI(data:image/{png|jpeg|webp};base64,...) |
preset_name |
string | 是 | 範本名稱,見下方說明 |
quality |
string | 是 | 畫質:low / mid / high |
seed |
— | 否 | 不支援,帶了會回傳 422 |
resolution |
— | 否 | 不支援,帶了會回傳 422 |
payload |
object | 否 | 自訂資料,例如你的訂單編號。系統不會讀取或修改,查詢任務和 Webhook 通知時會原樣帶回 |
callback_url |
string | 否 | 任務結束時要通知的網址,需以 https:// 開頭,最多 2000 字。詳見〈回呼(Webhook)〉 |
preset_name 說明
共 48 種範本:anal_griping / bath_towel / bikini / blowjob_69 / blowjob_grand_slam / blowjob_pov / blowjob_sideview / bondage / breast_milk / bunny_suit / chain_leash / come_fuck_me / cum_on_body / cum_on_face / cunnilingus / custom / doggystyle_pov / doggystyle_sideview / fingering / handjob / jk_uniform / legsup / leopard_bikini / lingerie / masturbation / missionary_condoms / missionary_pov / missionary_sideview / remix_blowjob / remix_cowgirl / remix_doggystyle / remix_dress / remix_hold_dick / remix_kiss / remix_pronebone / remix_suck / remix_wear / remix_yoga / ride_on_dildo / sipping_condoms / squatting_cowgirl / tattoo / tentacles / titjob / topless / undress / used / xray。
建立任務時不會檢查範本名稱。如果填了不存在的範本,任務仍會建立成功(201),但之後會處理失敗,並自動退回積分。
model 填了不存在的模型會回傳 422:Unknown model alias: {model}。
表格沒有列出的參數(age_declared 除外,詳見〈生成前年齡檢查〉)帶了會回傳 422,不會被忽略。
Idempotency-Key
用來避免重複建立任務。在 header 帶上一組自訂字串,建議用你系統裡的訂單編號這類不會重複的值:
Idempotency-Key: order-20260711-00043
用同一把 API 金鑰、同一個 Idempotency-Key,在短時間內重複送出請求,只會建立一筆任務,也只扣一次積分。之後的重複請求會回傳 200 OK 和原本那筆任務。
不帶這個 header 的話,每次請求都會建立新任務。
錯誤情境
| 狀態碼 | 原因 | 回應內容 |
|---|---|---|
422 |
參數有誤,例如缺少必填欄位、型別錯誤、images 超過 4 張 |
errors 欄位會列出每個欄位的錯誤原因 |
422 |
model 填了不存在的模型 |
{ "message": "Unknown model alias: {model}" } |
402 |
積分不足 | { "message": "Insufficient credits to complete this charge." } |
429 |
排隊中的圖片任務太多 | { "message": "Too many pending tasks of this type; please retry later." }。可以依回應的 Retry-After header 決定多久後再試 |
| — | 範本名稱不存在 | 建立成功(201),但任務之後會失敗(status = 30),並自動退回積分 |
扣款規則請見〈積分與計費〉。