FLUX.1 Kontext [pro]
Интеграция
flux-pro/kontext
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/v1/run/flux-pro/kontext?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Restore and colorize this image. Remove any scratches or imperfections.",
"image": "https://content.doitong.com/dev-api/2026/10/21/req_nwh4ychmr6vyovvas0hhcxcx/0-dNCNdO5QkD7jDyRi24Z8s_L3lpa0jm.png"
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.ru/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-pro/kontext?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "Restore and colorize this image. Remove any scratches or imperfections.",
"image": "https://content.doitong.com/dev-api/2026/10/21/req_nwh4ychmr6vyovvas0hhcxcx/0-dNCNdO5QkD7jDyRi24Z8s_L3lpa0jm.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.ru/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"prompt": "Restore and colorize this image. Remove any scratches or imperfections.",
"image": "https://content.doitong.com/dev-api/2026/10/21/req_nwh4ychmr6vyovvas0hhcxcx/0-dNCNdO5QkD7jDyRi24Z8s_L3lpa0jm.png",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/flux-pro/kontext", 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/ru/developers/docs/mcp)
claude mcp add --transport http doitong-models https://api.doitong.ru/v1/mcp \
--header "Authorization: Bearer $DOITONG_API_KEY"
# 2. Your agent calls the "run" tool with:
{
"model_id": "flux-pro/kontext",
"input": {
"prompt": "Restore and colorize this image. Remove any scratches or imperfections.",
"image": "https://content.doitong.com/dev-api/2026/10/21/req_nwh4ychmr6vyovvas0hhcxcx/0-dNCNdO5QkD7jDyRi24Z8s_L3lpa0jm.png"
}
}
Вызовите модель FLUX.1 Kontext [pro] (flux-pro/kontext) через Doitong API. Документация для агентов: https://doitong.com/ru/developers/models/flux-pro/kontext.md
POST https://api.doitong.ru/v1/run/flux-pro/kontext?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"prompt": "Restore and colorize this image. Remove any scratches or imperfections.",
"image": "https://content.doitong.com/dev-api/2026/10/21/req_nwh4ychmr6vyovvas0hhcxcx/0-dNCNdO5QkD7jDyRi24Z8s_L3lpa0jm.png"
}
Если статус ответа — "queued" или "running", выполняйте опрос GET https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20, пока он не станет "succeeded"; файлы находятся в outputs[].url. POST https://api.doitong.ru/v1/quote/flux-pro/kontext с тем же телом возвращает точную цену до запуска.
Этот запрос: 0,04 $ 40 API-кредитов · ≈ 4,22 ₽ Запустить на этой странице
Ваш новый API-ключ. Он отображается только сейчас и уже вставлен в код и поле API-ключа ниже. Храните его в секрете: никогда не помещайте его в код, выполняемый в браузере.
Примеры
ПромптRestore and colorize this image. Remove any scratches or imperfections.
Сформировать запрос
Элементы управления сгенерированы из схемы модели. Код и цена обновляются при изменении параметров.
/run/flux-pro/kontext?wait=20
стоимость → 0,04 $
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/v1/run/flux-pro/kontext?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Restore and colorize this image. Remove any scratches or imperfections.",
"image": "https://content.doitong.com/dev-api/2026/10/21/req_nwh4ychmr6vyovvas0hhcxcx/0-dNCNdO5QkD7jDyRi24Z8s_L3lpa0jm.png"
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.ru/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-pro/kontext?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "Restore and colorize this image. Remove any scratches or imperfections.",
"image": "https://content.doitong.com/dev-api/2026/10/21/req_nwh4ychmr6vyovvas0hhcxcx/0-dNCNdO5QkD7jDyRi24Z8s_L3lpa0jm.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.ru/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"prompt": "Restore and colorize this image. Remove any scratches or imperfections.",
"image": "https://content.doitong.com/dev-api/2026/10/21/req_nwh4ychmr6vyovvas0hhcxcx/0-dNCNdO5QkD7jDyRi24Z8s_L3lpa0jm.png",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/flux-pro/kontext", 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-pro/kontext",
"input": {
"prompt": "Restore and colorize this image. Remove any scratches or imperfections.",
"image": "https://content.doitong.com/dev-api/2026/10/21/req_nwh4ychmr6vyovvas0hhcxcx/0-dNCNdO5QkD7jDyRi24Z8s_L3lpa0jm.png"
},
"wait_seconds": 20
}
}
}
Запустить этот запрос
Ваш ключ хранится в этом браузере: он отправляется только в Doitong API и сохраняется в localStorage только при включении параметра «Запомнить». Получить API-ключ
Создано на Doitong
Публичные работы сообщества Doitong, созданные с помощью FLUX.1 Kontext. Повторно используйте промпт одним нажатием.
Close-up portrait seorang wanita berkulit pucat berdiri setengah tubuh di dalam air berwarna lembut kebiruan, dikelilingi bunga teratai berkelopak penuh yang bermekaran indah di permukaan air. Rambutnya pirang pucat tersanggul longgar dengan beberapa helaian tipis jatuh alami membingkai sisi...
Close-up portrait seorang wanita berkulit pucat berdiri setengah tubuh di dalam air berwarna lembut kebiruan, dikelilingi bunga teratai berkelopak penuh yang bermekaran indah di permukaan air. Rambutnya pirang pucat tersanggul longgar dengan beberapa helaian tipis jatuh alami membingkai sisi...
Prompt Details Seorang wanita berkulit pucat berdiri setengah tubuh di dalam air berwarna lembut kebiruan, dikelilingi bunga teratai berkelopak penuh yang bermekaran indah di permukaan air. Rambutnya pirang pucat tersanggul longgar dengan beberapa helaian tipis jatuh alami membingkai sisi...
Seorang wanita berkulit pucat berdiri setengah tubuh di dalam air berwarna lembut kebiruan, dikelilingi bunga teratai berkelopak penuh yang bermekaran indah di permukaan air. Rambutnya pirang pucat tersanggul longgar dengan beberapa helaian tipis jatuh alami membingkai sisi wajahnya. Ia memeluk...
"Potret sinematik ultra-realistis close-up seorang anak laki-laki kecil (balita) yang sangat menggemaskan dengan mata cokelat besar yang ekspresif, rambut hitam berantakan yang tebal, mengenakan kaus putih kerah henley. Dia berpose dengan kedua tangan terkatup di depan dada, menunjukkan senyum...
"Potret sinematik ultra-realistis close-up seorang anak laki-laki kecil (balita) yang sangat menggemaskan dengan mata cokelat besar yang ekspresif, rambut hitam berantakan yang tebal, mengenakan kaus putih kerah henley. Dia berpose dengan kedua tangan terkatup di depan dada, menunjukkan senyum...
"Potret sinematik ultra-realistis close-up seorang anak laki-laki kecil (balita) yang sangat menggemaskan dengan mata cokelat besar yang ekspresif, rambut hitam berantakan yang tebal, mengenakan kaus putih kerah henley. Dia berpose dengan kedua tangan terkatup di depan dada, menunjukkan senyum...
Foto sinematik hiper-realistis resolusi tinggi menampilkan seorang pria muda Indonesia dengan tubuh ramping dan proporsional, rambut hitam pendek agak acak, mengenakan jaket kulit hitam, celana riding fit, dan sepatu motor. Ia sedang melakukan aksi freestyle ekstrem dengan motor sport 500cc...
Foto sinematik hiper-realistis resolusi tinggi menampilkan seorang pria muda Indonesia dengan tubuh ramping dan proporsional, rambut hitam pendek agak acak, mengenakan jaket kulit hitam dan celana riding fit. Ia sedang bersiap melakukan freestyle menggunakan motor sport 500cc berwarna merah,...
О FLUX.1 Kontext [pro]
FLUX.1 Kontext редактирует одно входное изображение по короткой инструкции, оставляя остальную часть изображения нетронутой, что делает модель надёжной для итеративной ретуши, вариантов товара и замены текста на вывесках. Можно принудительно задать новое соотношение сторон, расширить промпт или зафиксировать сид. До четырёх результатов за запрос.
Параметры
Передавайте либо каноническое имя, либо исходное имя, но не оба. Канонические имена
promptобязательно
seedнеобязательно
guidance_scaleнеобязательно
num_imagesнеобязательно
num_outputs
output_formatнеобязательно
safety_toleranceнеобязательно
enhance_promptнеобязательно
aspect_ratioнеобязательно
image_urlобязательно
image
Параметры файлов принимают общедоступный https:// URL, data: URI размером до 10 MB или file_url загруженного файла. Файлы
Результат
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "flux-pro/kontext",
"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": 40,
"usd": "0.04",
"charged": 40,
"refunded": 0
},
"input": {
"prompt": "Change the sneaker color to bright red, keep everything else the same",
"image": "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,
"width": 1024,
"height": 768
}
],
"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://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
"cancel": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
}
}
Поля результата
- images
- array of object {url, content_type, file_name, file_size, width, height}Информация о файлах сгенерированных изображений.
- timings
- object
- seed
- integerСид генерации изображения, включая случайно выбранное значение, если во входных данных сид не указан; в противном случае повторяет переданное значение.
- has_nsfw_concepts
- array of booleanПоказывает, присутствуют ли в сгенерированных изображениях концепции NSFW.
- prompt
- stringПромпт, используемый при генерации изображения.
Другие варианты FLUX.1 Kontext
Другие модели: Редактирование изображений
Для AI-агентов: эта страница в формате Markdown доступна по адресу https://doitong.com/ru/developers/models/flux-pro/kontext.md. Все модели и руководства: https://doitong.com/developers/llms.txt






