
لا توجد نتائج مطابقة. جرّب “video” أو “FLUX” أو “webhooks”.
جارٍ تحميل النماذج…
nano-banana-2/edit
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://vit.doitong.com/api/v1/run/nano-banana-2/edit?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Turn this photo into a 1:7 scale collectible figurine of the dog on a round clear acrylic base, standing on a tidy wooden desk with soft studio light; keep the dog'\''s pose, fur colors and expression.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_3yckkmcr3dayonfhigdeaiia/0-pz7p4ydjvjJmL__s7lK6p_L0WSl1GK.png"
],
"resolution": "1K"
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://vit.doitong.com/api/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://vit.doitong.com/api/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/nano-banana-2/edit?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "Turn this photo into a 1:7 scale collectible figurine of the dog on a round clear acrylic base, standing on a tidy wooden desk with soft studio light; keep the dog's pose, fur colors and expression.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_3yckkmcr3dayonfhigdeaiia/0-pz7p4ydjvjJmL__s7lK6p_L0WSl1GK.png"
],
"resolution": "1K"
}),
});
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://vit.doitong.com/api/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"prompt": "Turn this photo into a 1:7 scale collectible figurine of the dog on a round clear acrylic base, standing on a tidy wooden desk with soft studio light; keep the dog's pose, fur colors and expression.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_3yckkmcr3dayonfhigdeaiia/0-pz7p4ydjvjJmL__s7lK6p_L0WSl1GK.png",
],
"resolution": "1K",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/nano-banana-2/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/ar/developers/docs/mcp)
claude mcp add --transport http doitong-models https://vit.doitong.com/api/v1/mcp \
--header "Authorization: Bearer $DOITONG_API_KEY"
# 2. Your agent calls the "run" tool with:
{
"model_id": "nano-banana-2/edit",
"input": {
"prompt": "Turn this photo into a 1:7 scale collectible figurine of the dog on a round clear acrylic base, standing on a tidy wooden desk with soft studio light; keep the dog's pose, fur colors and expression.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_3yckkmcr3dayonfhigdeaiia/0-pz7p4ydjvjJmL__s7lK6p_L0WSl1GK.png"
],
"resolution": "1K"
}
}
استدعِ نموذج Nano Banana 2 Edit (nano-banana-2/edit) عبر Doitong API. توثيق الوكلاء: https://doitong.com/ar/developers/models/nano-banana-2/edit.md
POST https://vit.doitong.com/api/v1/run/nano-banana-2/edit?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"prompt": "Turn this photo into a 1:7 scale collectible figurine of the dog on a round clear acrylic base, standing on a tidy wooden desk with soft studio light; keep the dog's pose, fur colors and expression.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_3yckkmcr3dayonfhigdeaiia/0-pz7p4ydjvjJmL__s7lK6p_L0WSl1GK.png"
],
"resolution": "1K"
}
إذا كانت حالة الاستجابة "queued" أو "running"، فأرسل طلبات GET إلى https://vit.doitong.com/api/v1/requests/REQUEST_ID?wait=20 حتى تصبح "succeeded"؛ توجد الملفات في outputs[].url. يعيد POST https://vit.doitong.com/api/v1/quote/nano-banana-2/edit مع نفس النص الأساسي السعر الدقيق قبل التشغيل.
هذا الطلب: 0.08 $ 80 رصيد API تشغيله في هذه الصفحة
مفتاح API الجديد الخاص بك. يظهر الآن فقط، وهو مُدرج بالفعل في الشيفرة وفي حقل مفتاح API أدناه. احتفظ به سريًا: لا تضعه أبدًا في شيفرة تعمل في المتصفح.
تُنشأ عناصر التحكم من مخطط النموذج. يتحدّث الرمز والسعر عند تغييرها.
/run/nano-banana-2/edit?wait=20
عرض السعر → 0.08 $
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://vit.doitong.com/api/v1/run/nano-banana-2/edit?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Turn this photo into a 1:7 scale collectible figurine of the dog on a round clear acrylic base, standing on a tidy wooden desk with soft studio light; keep the dog'\''s pose, fur colors and expression.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_3yckkmcr3dayonfhigdeaiia/0-pz7p4ydjvjJmL__s7lK6p_L0WSl1GK.png"
],
"resolution": "1K"
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://vit.doitong.com/api/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://vit.doitong.com/api/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/nano-banana-2/edit?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "Turn this photo into a 1:7 scale collectible figurine of the dog on a round clear acrylic base, standing on a tidy wooden desk with soft studio light; keep the dog's pose, fur colors and expression.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_3yckkmcr3dayonfhigdeaiia/0-pz7p4ydjvjJmL__s7lK6p_L0WSl1GK.png"
],
"resolution": "1K"
}),
});
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://vit.doitong.com/api/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"prompt": "Turn this photo into a 1:7 scale collectible figurine of the dog on a round clear acrylic base, standing on a tidy wooden desk with soft studio light; keep the dog's pose, fur colors and expression.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_3yckkmcr3dayonfhigdeaiia/0-pz7p4ydjvjJmL__s7lK6p_L0WSl1GK.png",
],
"resolution": "1K",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/nano-banana-2/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": "nano-banana-2/edit",
"input": {
"prompt": "Turn this photo into a 1:7 scale collectible figurine of the dog on a round clear acrylic base, standing on a tidy wooden desk with soft studio light; keep the dog's pose, fur colors and expression.",
"images": [
"https://content.doitong.com/dev-api/2026/10/21/req_3yckkmcr3dayonfhigdeaiia/0-pz7p4ydjvjJmL__s7lK6p_L0WSl1GK.png"
],
"resolution": "1K"
},
"wait_seconds": 20
}
}
}
يبقى مفتاحك في هذا المتصفح: لا يُرسل إلا إلى Doitong API ويُحفظ في localStorage فقط إذا فعّلت خيار التذكّر. الحصول على مفتاح API
وضع التحرير في Nano Banana 2: مرّر الصور واصفًا التغيير، أو تخطَّ الصور وقدّم فيديو أو ملفًا صوتيًا أو PDF (بحد أقصى 15 MB لكل منها) كسياق للتوضيح. المخرجات من 0.5K إلى 4K، مع نسب أبعاد من 1:8 إلى 8:1، وبحث اختياري في الويب وتفكير عالٍ، وما يصل إلى أربع نتائج لكل طلب.
أرسل الاسم الأساسي أو الاسم الأصلي، وليس كليهما. الأسماء الأساسية
promptمطلوب
num_imagesاختياري
num_outputs
seedاختياري
aspect_ratioاختياري
output_formatاختياري
safety_toleranceاختياري
image_urlsاختياري
images
system_promptاختياري
resolutionاختياري
video_urlاختياري
video
audio_urlاختياري
audio
pdf_urlاختياري
limit_generationsاختياري
enable_web_searchاختياري
thinking_levelاختياري
تقبل معاملات الملفات عنوان URL عامًا يبدأ بـ https://، أو URI من نوع data: يصل حجمه إلى 10 MB، أو file_url لملف تم تحميله. الملفات
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "nano-banana-2/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": 80,
"usd": "0.08",
"charged": 80,
"refunded": 0
},
"input": {
"prompt": "Turn this night street scene into a sunny morning, keep the sneaker and the puddle reflections",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_sneaker_ad.jpg"
],
"resolution": "1K"
},
"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,
"width": 1024,
"height": 768
}
],
"description": "string"
},
"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://vit.doitong.com/api/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
"cancel": "https://vit.doitong.com/api/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
}
}
لوكلاء الذكاء الاصطناعي: تتوفر هذه الصفحة بصيغة Markdown على https://doitong.com/ar/developers/models/nano-banana-2/edit.md. جميع النماذج والأدلة: https://doitong.com/developers/llms.txt