
ᠠᠯᡳᠨ ᡠᠨᡩᡝᡵᡝᠮᡝ. “video”, “FLUX” ᠠᡶᡳ “webhooks” ᠪᡝ ᠪᠠᡳ᠌ᠯᠠ.
ᡩᠠᠯᡳᠨ ᠪᡝ ᡠᠯᡥᠠᠮᠪᡳ…
alibaba/qwen-image-3/edit
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/alibaba/qwen-image-3/edit?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Change the sign above the door to read \"Open Daily 8-20\" in the same lettering style and color, keep everything else unchanged.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_msc9ak2dbu4cu59zvf0c2ftb/0-RBrxxuL8Z-3AAI916Qh9o_hi2fj8yl.png"
]
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.com/v1";
const headers = {
"Authorization": "Bearer " + process.env.DOITONG_API_KEY,
"Content-Type": "application/json",
};
// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/alibaba/qwen-image-3/edit?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "Change the sign above the door to read \"Open Daily 8-20\" in the same lettering style and color, keep everything else unchanged.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_msc9ak2dbu4cu59zvf0c2ftb/0-RBrxxuL8Z-3AAI916Qh9o_hi2fj8yl.png"
]
}),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);
// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
import os
import requests
API = "https://api.doitong.com/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"prompt": "Change the sign above the door to read \"Open Daily 8-20\" in the same lettering style and color, keep everything else unchanged.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_msc9ak2dbu4cu59zvf0c2ftb/0-RBrxxuL8Z-3AAI916Qh9o_hi2fj8yl.png",
],
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/alibaba/qwen-image-3/edit", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])
# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
# 1. Connect once (Claude Code; Cursor, VS Code, Claude Desktop: https://doitong.com/mnc/developers/docs/mcp)
claude mcp add --transport http doitong-models https://api.doitong.com/v1/mcp \
--header "Authorization: Bearer $DOITONG_API_KEY"
# 2. Your agent calls the "run" tool with:
{
"model_id": "alibaba/qwen-image-3/edit",
"input": {
"prompt": "Change the sign above the door to read \"Open Daily 8-20\" in the same lettering style and color, keep everything else unchanged.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_msc9ak2dbu4cu59zvf0c2ftb/0-RBrxxuL8Z-3AAI916Qh9o_hi2fj8yl.png"
]
}
}
Qwen Image 3 Edit ᠮᠣᠳᡝᠯ (alibaba/qwen-image-3/edit) ᠪᡝ Doitong API ᠵᠠᠯᡳᠨᡩᡝ ᠠᠰᡠᠮᠪᡳ. ᠠᡤᡝᠨᡨᡳ ᡩᠠᡳᠯᠠᠨ: https://doitong.com/mnc/developers/models/alibaba/qwen-image-3/edit.md
POST https://api.doitong.com/v1/run/alibaba/qwen-image-3/edit?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"prompt": "Change the sign above the door to read \"Open Daily 8-20\" in the same lettering style and color, keep everything else unchanged.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_msc9ak2dbu4cu59zvf0c2ftb/0-RBrxxuL8Z-3AAI916Qh9o_hi2fj8yl.png"
]
}
ᡝᡵᡝᠮᡝ ᠪᡠᠮᡝᠨᡳ ᠠᠨᠠᠮᡝ "queued" ᡳᠨᡠ "running" ᠪᡝ, GET https://api.doitong.com/v1/requests/REQUEST_ID?wait=20 ᠪᡝ ᠠᠨᠠᠮᡝ "succeeded" ᠪᡝᠴᡳ ᠠᠰᡠᠮᠪᡳ; ᡶᡳᠯᡝ ᠪᡝ outputs[].url ᠪᡝᠴᡳ ᠣᠨᡩᠣᠮᡝ. POST https://api.doitong.com/v1/quote/alibaba/qwen-image-3/edit ᠪᡝ ᡝᠮᡠ ᠪᡠᠶᡝᠮᡝ ᠪᡝ ᠠᠰᡠᠮᠪᡳᡩᡝ ᠵᠠᠯᡤᠠᠨ ᠪᡝ ᠶᠠᠪᡠᠮᠪᡳ ᠰᡳᠨᡳ ᠠᠮᡤᠠ ᠠᠰᡠᠮᠪᡳ ᠣᠯᡥᠣᠮᡝ.
ᡝᠨᡳ ᠵᠠᠯᡳᠨ: $0.075 75 API ᠺᠷᡝᡩᡳᠲ ᡝᡵᡝ ᠵᠠᠯᡳᠨᡩᡝ ᠠᠰᡠᠮᠪᡳ
ᠰᡳᠨᡳ ᠵᠠᠮᡠᠰᡳᠨ API ᠵᡳᡵᡤᠠ. ᡝᠯᡝ ᡝᠨᡩᡝ ᡳᠯᡤᠠᠮᠪᡳ ᡝᡵᡝ ᠮᡠᠨᡩᡝ ᡴᠣᡩᡝ ᡩᠠᠮᡠ ᠮᡝᠨᡩᡝᡵᡝ ᠪᠠᡩᡝᠯᡝᠨ ᠠᠮᡪᡳ ᡳᠨᡠ API ᠵᡳᡵᡤᠠ ᡩᡝᠪᡨᡝᡵᡝ ᡩᡝ ᠠᡴᡠ᠉ ᡳᠨᡠ ᡝᡵᡝᠩᡤᡝ ᠠᠮᠪᠠᠨ ᠮᡠᠨᡩᡝ ᠪᡝ ᠠᠰᡠᡵᠠᠮᠪᡳ: ᠮᡠᡵᡝ ᡩᠠᠮᡠ ᠪᡠᠶᡝᡵᡝ ᠪᠠᡩᡝᠯᡝᠨ ᡩᡝ ᠰᡳᠨᡩᡝᠮᡝ ᠠᠪᡠᠮᡝ ᠰᠠᠮᡪᡳ᠉
ᠵᠠᡴᡠᠨᡳ ᠵᡠᠯᡝ ᡩᡝᡵᡤᡳ ᡩᡝᠪᡝᠰᡠᠮᡝ ᠵᡠᠯᡤᡝ ᠪᡠᠶᡝᠮᡝ᠈ ᡳᠨᡳ ᡤᡳᠰᡠᠨ ᠪᠠᡳ ᡝᠨᡝᠩᡤᡳ ᠠᠮᠪᡳ
/run/alibaba/qwen-image-3/edit?wait=20
ᠵᠠᠯᡳᠨ → $0.075
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/alibaba/qwen-image-3/edit?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Change the sign above the door to read \"Open Daily 8-20\" in the same lettering style and color, keep everything else unchanged.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_msc9ak2dbu4cu59zvf0c2ftb/0-RBrxxuL8Z-3AAI916Qh9o_hi2fj8yl.png"
]
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.com/v1";
const headers = {
"Authorization": "Bearer " + process.env.DOITONG_API_KEY,
"Content-Type": "application/json",
};
// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/alibaba/qwen-image-3/edit?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "Change the sign above the door to read \"Open Daily 8-20\" in the same lettering style and color, keep everything else unchanged.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_msc9ak2dbu4cu59zvf0c2ftb/0-RBrxxuL8Z-3AAI916Qh9o_hi2fj8yl.png"
]
}),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);
// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
import os
import requests
API = "https://api.doitong.com/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"prompt": "Change the sign above the door to read \"Open Daily 8-20\" in the same lettering style and color, keep everything else unchanged.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_msc9ak2dbu4cu59zvf0c2ftb/0-RBrxxuL8Z-3AAI916Qh9o_hi2fj8yl.png",
],
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/alibaba/qwen-image-3/edit", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])
# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "run",
"arguments": {
"model_id": "alibaba/qwen-image-3/edit",
"input": {
"prompt": "Change the sign above the door to read \"Open Daily 8-20\" in the same lettering style and color, keep everything else unchanged.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_msc9ak2dbu4cu59zvf0c2ftb/0-RBrxxuL8Z-3AAI916Qh9o_hi2fj8yl.png"
]
},
"wait_seconds": 20
}
}
}
ᡳᠨᡝ ᠵᠠᠯᠠᠨ ᡝᡵᡝ ᠪᡠᡵᡝᠪᡝᡵᡳ ᡩᡝ ᠪᡳᠮᡝ᠈ Doitong API ᡩᡝ ᠵᡝᠯᡤᡳ ᡩᠠᡵᠠᠮᡝ᠈ Remember ᠵᡠᠯᡝᠮᡝ ᡤᡳᠯᠠᠮᡝ localStorage ᡩᡝ ᠰᡠᠯᡝᠮᡝ ᠪᡳᠮᡝ API ᠵᠠᠯᠠᠨ ᠠᠪᠠᠮᡝ
Qwen Image 3 ᡳ ᡩᡠᠯᠠᠮᡝ ᡠᠯᡥᡳᠨ ᡩᡝ ᡝᠮᡠ ᠴᡳ ᡳᠯᠠᠨ ᡩᡝ ᠣᠴᡳ ᠵᡠᠯᡤᡝᠨ ᡠᠯᡥᡳᠨ (ᡠᠯᡥᡳᠨ ᡳ ᡩᡠᠯᡝ 384 ᠴᡳ 2048 px) ᠵᡠᠯᡤᡝᠨ ᡩᡝ ᠠᠮᠠᠯᠠ ᡳᠯᡳ ᠪᡳᠰᡳᡵᡝ ᠪᡝᠶᡝ ᡩᡝ ᠵᠠᠯᠠᠨ ᠪᡳᠰᡳᡵᡝ ᡤᡝᠯᡳ ᠪᡝ ᠠᠰᡠᡵᡝ ᠵᠣᠯᠣᠪᠣᠨ ᡩᡝ ᡳᠯᡳ 1, ᡳᠯᡳ 2 ᡳᠯᡳ ᡳᠯᡳ 3 ᠰᡝᠮᡝ ᠵᠠᠯᠠᠨ ᠵᠠᠯᠠᠨ ᠪᡳᠰᡳᡵᡝ ᠵᠣᠯᠣᠪᠣᠨ ᠠᠪᡠᠯᠠᠮᠪᡳ. ᠰᡳᠨᡝ ᡳᠯᡳ ᡠᠯᡥᡳᠨ ᡩᡝ ᡠᡥᡝᡵᡳ ᡥᡝᡵᡤᡝᠨ ᡩᡝ ᡠᠯᡥᡳᠨ ᠵᠠᠯᠠᠨ ᡩᡝ ᠠᠰᡠᡵᡝ ᡩᠠᠮᡠ ᡠᠯᡥᡳᠨ ᡩᡝ ᠠᡤᠠᠮᡝ ᠠᠰᡠᡵᡝ ᡩᠠᠮᡠ ᠵᠣᠯᠣᠪᠣᠨ ᡩᡝ ᠣᠴᡳ ᡠᠯᡥᡳᠨ ᡩᡝ ᠪᡳᠰᡳᡵᡝ ᡩᡝ ᠠᠮᠪᠠ ᠣᠮᡤᠣᠯᠣᠨ. ᡠᠯᡥᡳᠨ ᡳ ᡩᡠᠯᡝ ᠪᡝ ᡠᠨᡝᡥᡝ ᠣᠵᠣᡵᠣ ᡩᡝ ᠨᡠᠯᡥᡝᠮᡝ ᠪᠠᠶᠠᠨ ᠣᠮᡝ ᠠᠯᡳᠨ ᡠᠯᡥᡳᠨ ᠠᠪᠠᠯᠠᠮᠪᡳ, ᡳᠯᡳ ᡩᠠᠯᠵᡳᠨ ᡩᡝ 2K ᡩᠣᠰᡳᠨ ᠵᠠᠯᠠᠨ ᠪᡳᠰᡳᡵᡝ ᡩᡝ ᠣᠴᡳ ᠵᠠᠯᠠᠨ ᡩᡝ ᠵᡠᠯᡤᡝᠨ ᠵᠠᠯᠠᠨ ᡩᡝ ᠰᡳᠨᡝ ᡝᠮᡠ ᡩᡝ ᠵᡠᠯᡤᡝᠨ ᠵᠠᠯᠠᠨ.
ᠵᠠᡴᡠᠨᡳ ᡤᡳᠰᡠᠨ ᠵᡝᠯᡤᡳ ᠠᠪᠠᠮᠪᡳ᠈ ᠨᡝᠮᡝ ᠮᡠᠰᡝ ᡠᠯᠠᠮᠪᡳ ᠵᠠᡴᡠᠨᡳ ᡤᡳᠰᡠᠨ
promptᡴᠠᠷᠠᡴᡡ
negative_promptᠵᡠᠯᡝ
image_sizeᠵᡠᠯᡝ
enable_prompt_expansionᠵᡠᠯᡝ
seedᠵᡠᠯᡝ
num_imagesᠵᡠᠯᡝ
num_outputs
output_formatᠵᡠᠯᡝ
image_urlsᡴᠠᠷᠠᡴᡡ
images
ᠪᡠᠮᠪᡳᠯᡝᠰᡝ ᡝᠮᡠ ᡤᡝᠮᡠᠨᡳ https:// URL᠈ 10 MB ᡩᡝ ᡩᡝᠷᡤᡳ data: URI ᠵᡝᡵᡤᡳ ᡝᠮᡝ᠈ ᡳᠨᡝ ᠪᡠᠮᠪᡳᠯᡝᠰᡝᠨᡳ file_url ᠠᠪᠠᠮᠪᡳ ᠪᡠᠮᠪᡳ
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "alibaba/qwen-image-3/edit",
"status": "succeeded",
"created_at": "2026-10-20T12:00:00Z",
"started_at": "2026-10-20T12:00:02Z",
"completed_at": "2026-10-20T12:00:09Z",
"queue_position": null,
"cost": {
"credits": 75,
"usd": "0.075",
"charged": 75,
"refunded": 0
},
"input": {
"prompt": "Change the text on the sneaker's side to read \"RUN\" in bold letters",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_sneaker_ad.jpg"
]
},
"output": {
"images": [
{
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"content_type": "image/jpeg",
"file_name": "0-output.jpeg",
"file_size": 1843200
}
],
"seed": 42
},
"outputs": [
{
"type": "image",
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"content_type": "image/jpeg",
"file_size": 1843200,
"width": 1024,
"height": 768,
"stored": true
}
],
"error": null,
"metrics": {
"inference_seconds": 6.8
},
"urls": {
"self": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
"cancel": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
}
}
AI ᠠᡤᡝᠨᡨᡳ ᡠᠴᡠᠷᡳ᠈ ᡝᡵᡝ ᡩᡝᠪᡝᡵᡳ Markdown ᠰᡳᠨᡩᠠᡵᡳ https://doitong.com/mnc/developers/models/alibaba/qwen-image-3/edit.md. ᡝᡵᡝ ᠮᠣᡩᡝᠯ ᠵᠠᡴᡠᠨ ᠰᡠᠯᡠᠮᡝ https://doitong.com/developers/llms.txt