
Nema podudaranja. Pokušajte s pojmovima „video”, „FLUX” ili „webhooks”.
Učitavanje modela…
flux/dev
# 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/flux/dev?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A lighthouse keeper'\''s cottage on a windswept cliff at blue hour, warm light glowing from small square windows, waves breaking far below, long-exposure sea mist, moody cinematic landscape photograph, 35mm, rich detail.",
"num_outputs": 1
}'
# 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/flux/dev?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "A lighthouse keeper's cottage on a windswept cliff at blue hour, warm light glowing from small square windows, waves breaking far below, long-exposure sea mist, moody cinematic landscape photograph, 35mm, rich detail.",
"num_outputs": 1
}),
});
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": "A lighthouse keeper's cottage on a windswept cliff at blue hour, warm light glowing from small square windows, waves breaking far below, long-exposure sea mist, moody cinematic landscape photograph, 35mm, rich detail.",
"num_outputs": 1,
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/flux/dev", 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/hr/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": "flux/dev",
"input": {
"prompt": "A lighthouse keeper's cottage on a windswept cliff at blue hour, warm light glowing from small square windows, waves breaking far below, long-exposure sea mist, moody cinematic landscape photograph, 35mm, rich detail.",
"num_outputs": 1
}
}
Pozovite model FLUX.1 [dev] (flux/dev) putem Doitong API-ja. Dokumentacija za agente: https://doitong.com/hr/developers/models/flux/dev.md
POST https://vit.doitong.com/api/v1/run/flux/dev?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"prompt": "A lighthouse keeper's cottage on a windswept cliff at blue hour, warm light glowing from small square windows, waves breaking far below, long-exposure sea mist, moody cinematic landscape photograph, 35mm, rich detail.",
"num_outputs": 1
}
Ako je status odgovora "queued" ili "running", dohvaćajte GET https://vit.doitong.com/api/v1/requests/REQUEST_ID?wait=20 dok ne bude "succeeded"; datoteke se nalaze u outputs[].url. POST https://vit.doitong.com/api/v1/quote/flux/dev s istim tijelom vraća točnu cijenu prije pokretanja.
Ovaj zahtjev: 0,025 $ 25 API kredita Pokreni na ovoj stranici
Vaš novi API ključ. Prikazuje se samo sada i već je u kodu i u polju za API ključ u nastavku. Čuvajte ga kao tajnu: nikad ga nemojte stavljati u kod koji se izvršava u pregledniku.
Kontrole se generiraju iz sheme modela. Kôd i cijena ažuriraju se dok ih mijenjate.
/run/flux/dev?wait=20
cijena → 0,025 $
# 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/flux/dev?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A lighthouse keeper'\''s cottage on a windswept cliff at blue hour, warm light glowing from small square windows, waves breaking far below, long-exposure sea mist, moody cinematic landscape photograph, 35mm, rich detail.",
"num_outputs": 1
}'
# 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/flux/dev?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "A lighthouse keeper's cottage on a windswept cliff at blue hour, warm light glowing from small square windows, waves breaking far below, long-exposure sea mist, moody cinematic landscape photograph, 35mm, rich detail.",
"num_outputs": 1
}),
});
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": "A lighthouse keeper's cottage on a windswept cliff at blue hour, warm light glowing from small square windows, waves breaking far below, long-exposure sea mist, moody cinematic landscape photograph, 35mm, rich detail.",
"num_outputs": 1,
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/flux/dev", 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": "flux/dev",
"input": {
"prompt": "A lighthouse keeper's cottage on a windswept cliff at blue hour, warm light glowing from small square windows, waves breaking far below, long-exposure sea mist, moody cinematic landscape photograph, 35mm, rich detail.",
"num_outputs": 1
},
"wait_seconds": 20
}
}
}
Vaš ključ ostaje u ovom pregledniku: šalje se samo Doitong API-ju i sprema u localStorage samo ako označite Zapamti. Nabavite API ključ
FLUX model s 12 milijardi parametara i destiliranom kontrolom, s potpunim rasporedom uzorkovanja (zadano 28 koraka, podesivo od 1 do 50) i podesivom skalom usmjeravanja. Prati detaljne promptove i prikazuje šake, lica i kratak tekst osjetno bolje od varijante schnell, uz višu cijenu. Unaprijed postavljene ili prilagođene veličine, do četiri slike po zahtjevu, JPEG ili PNG izlaz.
Pošaljite kanonski naziv ili izvorni naziv, ne oba. Kanonski nazivi
promptobavezno
image_sizeneobavezno
num_inference_stepsneobavezno
seedneobavezno
guidance_scaleneobavezno
num_imagesneobavezno
num_outputs
output_formatneobavezno
accelerationneobavezno
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "flux/dev",
"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": 25,
"usd": "0.025",
"charged": 25,
"refunded": 0
},
"input": {
"prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field, telephoto lens",
"image_size": "landscape_4_3",
"num_outputs": 1
},
"output": {
"images": [
{
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
"width": 1024,
"height": 768,
"content_type": "image/jpeg"
}
],
"timings": {},
"seed": 42,
"has_nsfw_concepts": [
false
],
"prompt": "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"
}
}
Za AI agente: ova je stranica u Markdownu dostupna na https://doitong.com/hr/developers/models/flux/dev.md. Svi modeli i vodiči: https://doitong.com/developers/llms.txt