GPT Image 2.5 Edit
Integreren
openai/gpt-image-2.5/flare/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/openai/gpt-image-2.5/flare/edit?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Same sneaker, but on a snowy mountain trail in daylight",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_sneaker_ad.jpg"
],
"quality": "medium"
}'
# 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/openai/gpt-image-2.5/flare/edit?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "Same sneaker, but on a snowy mountain trail in daylight",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_sneaker_ad.jpg"
],
"quality": "medium"
}),
});
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": "Same sneaker, but on a snowy mountain trail in daylight",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_sneaker_ad.jpg",
],
"quality": "medium",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/openai/gpt-image-2.5/flare/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/nl/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": "openai/gpt-image-2.5/flare/edit",
"input": {
"prompt": "Same sneaker, but on a snowy mountain trail in daylight",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_sneaker_ad.jpg"
],
"quality": "medium"
}
}
Roep het GPT Image 2.5 Edit-model (openai/gpt-image-2.5/flare/edit) aan via de Doitong API. Documentatie voor agents: https://doitong.com/nl/developers/models/openai/gpt-image-2.5/flare/edit.md
POST https://vit.doitong.com/api/v1/run/openai/gpt-image-2.5/flare/edit?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"prompt": "Same sneaker, but on a snowy mountain trail in daylight",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_sneaker_ad.jpg"
],
"quality": "medium"
}
Als de responsstatus "queued" of "running" is, poll dan GET https://vit.doitong.com/api/v1/requests/REQUEST_ID?wait=20 totdat deze "succeeded" is; de bestanden staan in outputs[].url. POST https://vit.doitong.com/api/v1/quote/openai/gpt-image-2.5/flare/edit met dezelfde body retourneert de exacte prijs vóór de uitvoering.
Deze request: ≈$ 0,12 120 API-tegoed Op deze pagina uitvoeren
Je nieuwe API-sleutel. Deze wordt alleen nu getoond en staat al in de code en in het onderstaande API-sleutelveld. Houd deze geheim: zet deze nooit in code die in een browser wordt uitgevoerd.
Je eerste resultaat komt hier
Bouw hieronder een request en voer die uit met je API-sleutel. Uitvoer wordt naar onze opslag gekopieerd en voor altijd of 7 dagen gratis bewaard.
Een aanvraag samenstellen
Besturingselementen worden gegenereerd op basis van het modelschema. De code en de prijs worden bijgewerkt terwijl je ze wijzigt.
/run/openai/gpt-image-2.5/flare/edit?wait=20
prijsopgave → $ 0,12
# 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/openai/gpt-image-2.5/flare/edit?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Same sneaker, but on a snowy mountain trail in daylight",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_sneaker_ad.jpg"
],
"quality": "medium"
}'
# 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/openai/gpt-image-2.5/flare/edit?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "Same sneaker, but on a snowy mountain trail in daylight",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_sneaker_ad.jpg"
],
"quality": "medium"
}),
});
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": "Same sneaker, but on a snowy mountain trail in daylight",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_sneaker_ad.jpg",
],
"quality": "medium",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/openai/gpt-image-2.5/flare/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": "openai/gpt-image-2.5/flare/edit",
"input": {
"prompt": "Same sneaker, but on a snowy mountain trail in daylight",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_sneaker_ad.jpg"
],
"quality": "medium"
},
"wait_seconds": 20
}
}
}
Deze request uitvoeren
Je sleutel blijft in deze browser: hij wordt alleen naar de Doitong API verzonden en alleen in localStorage opgeslagen als je Onthouden aanvinkt. API-sleutel ophalen
Over GPT Image 2.5 Edit
De bewerkingsmodus van GPT Image 2.5: beschrijf de wijziging en geef maximaal 16 referentieafbeeldingen door, optioneel met een masker dat beperkt waar het model mag schilderen. Ondersteunt transparante achtergronden, vijf kwaliteitsniveaus en maximaal tien resultaten per aanvraag.
Parameters
Stuur de canonieke naam of de oorspronkelijke naam, niet beide. Canonieke namen
promptverplicht
image_urlsverplicht
images
mask_urloptioneel
mask
image_sizeoptioneel
backgroundoptioneel
qualityoptioneel
num_imagesoptioneel
num_outputs
output_formatoptioneel
output_compressionoptioneel
Bestandsparameters accepteren een openbare https:// URL, een data: URI tot 10 MB of de file_url van een upload. Bestanden
Uitvoer
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "openai/gpt-image-2.5/flare/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": 120,
"usd": "0.12",
"charged": 120,
"refunded": 0
},
"input": {
"prompt": "Same sneaker, but on a snowy mountain trail in daylight",
"images": [
"https://content.doitong.com/images/showcase/v3/gen_sneaker_ad.jpg"
],
"quality": "medium"
},
"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
}
]
},
"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"
}
}
Velden van de uitvoer
- images
- array of object {url, content_type, file_name, file_size, width, height}Afbeeldingen die door het model zijn geproduceerd.
Andere varianten van GPT Image 2.5
Meer modellen: Afbeelding bewerken
Voor AI-agents: deze pagina als Markdown staat op https://doitong.com/nl/developers/models/openai/gpt-image-2.5/flare/edit.md. Alle modellen en handleidingen: https://doitong.com/developers/llms.txt










