GPT Image Sunburst API

Принимает текстовое описание и возвращает изображение. Разрешение 1K, 2K, 4K, 15 соотношений сторон, от 3:1 до 1:3, описание до 20 000 символов. Модель OpenAI, выпущена 4 ноября 2026 года.

Принимает изображение и текстовое указание и возвращает изменённое изображение. Разрешение 1K, 2K, 4K, 15 соотношений сторон, от 3:1 до 1:3, на вход до 15 изображений, описание до 20 000 символов. Модель OpenAI, выпущена 4 ноября 2026 года.

GPT Image 2.6 Sunburst API работает в России без VPN: один API ключ GEN202, оплата рублями с российской карты, цена до 11,7% ниже официальной.

Цены: 1K high — 10.4 кр. (5,2 ₽ · $0.0473), 2K high — 21.1 кр. (10,55 ₽ · $0.0959), 4K high — 35.2 кр. (17,6 ₽ · $0.16).

кр. — кредиты, покупаются за рубли.

Model

Статус

работает

Статус

работает

GPT Image Flare API

Принимает текстовое описание и возвращает изображение. Разрешение 1K, 2K, 4K, 15 соотношений сторон, от 3:1 до 1:3, описание до 20 000 символов. Модель OpenAI, выпущена 4 ноября 2026 года.

Принимает изображение и текстовое указание и возвращает изменённое изображение. Разрешение 1K, 2K, 4K, 15 соотношений сторон, от 3:1 до 1:3, на вход до 15 изображений, описание до 20 000 символов. Модель OpenAI, выпущена 4 ноября 2026 года.

GPT Image 2.6 Flare API работает в России без VPN: один API ключ GEN202, оплата рублями с российской карты, цена до 11,7% ниже официальной.

Цены: 1K high — 10.4 кр. (5,2 ₽ · $0.0473), 2K high — 21.1 кр. (10,55 ₽ · $0.0959), 4K high — 35.2 кр. (17,6 ₽ · $0.16).

кр. — кредиты, покупаются за рубли.

Model

Статус

работает

Статус

работает

Уровень модели

Песочница

Input

Войдите и получите 50 кредитов на тесты и любое использование сервиса. Без регистрации доступна одна генерация в 1K.

{
  "model": "gpt-image/2-6-sunburst-text-to-image",
  "input": {
    "prompt": "Рыжий кот в скафандре на фоне Земли, мягкий свет",
    "aspect_ratio": "auto",
    "resolution": "1K",
    "quality": "high"
  }
}
Output
пример генерации модели gpt-image-2-6-sunburst-text-to-image
{
  "code": 200,
  "msg": "success",
  "data": {
    "taskId": "cm8r4t0vk0001s60p2xq7f9ab",
    "model": "gpt-image/2-6-sunburst-text-to-image",
    "state": "success",
    "resultJson": "{\"resultUrls\":[\"https://gen202.com/assets/sample-gpt-image-2-6-sunburst.jpg\"]}",
    "failCode": "",
    "failMsg": "",
    "creditsConsumed": 10.4
  }
}
Input

Войдите и получите 50 кредитов на тесты и любое использование сервиса. Без регистрации доступна одна генерация в 1K.

{
  "model": "gpt-image/2-6-sunburst-image-to-image",
  "input": {
    "prompt": "Замени кота на собаку",
    "input_urls": [
      "https://gen202.com/assets/sample-gpt-image-2-6-sunburst.jpg"
    ],
    "aspect_ratio": "auto",
    "resolution": "1K",
    "quality": "high"
  }
}
Output
пример генерации модели gpt-image-2-6-sunburst-image-to-image
{
  "code": 200,
  "msg": "success",
  "data": {
    "taskId": "cm8r4t0vk0001s60p2xq7f9ab",
    "model": "gpt-image/2-6-sunburst-image-to-image",
    "state": "success",
    "resultJson": "{\"resultUrls\":[\"https://gen202.com/assets/sample-gpt-image-2-6-sunburst-edit.jpg\"]}",
    "failCode": "",
    "failMsg": "",
    "creditsConsumed": 12.8
  }
}
Input

Войдите и получите 50 кредитов на тесты и любое использование сервиса. Без регистрации доступна одна генерация в 1K.

{
  "model": "gpt-image/2-6-flare-text-to-image",
  "input": {
    "prompt": "Рыжий кот в скафандре на фоне Земли, мягкий свет",
    "aspect_ratio": "auto",
    "resolution": "1K",
    "quality": "high"
  }
}
Output
пример генерации модели gpt-image-2-6-flare-text-to-image
{
  "code": 200,
  "msg": "success",
  "data": {
    "taskId": "cm8r4t0vk0001s60p2xq7f9ab",
    "model": "gpt-image/2-6-flare-text-to-image",
    "state": "success",
    "resultJson": "{\"resultUrls\":[\"https://gen202.com/assets/sample-gpt-image-2-6-flare.jpg\"]}",
    "failCode": "",
    "failMsg": "",
    "creditsConsumed": 10.4
  }
}
Input

Войдите и получите 50 кредитов на тесты и любое использование сервиса. Без регистрации доступна одна генерация в 1K.

{
  "model": "gpt-image/2-6-flare-image-to-image",
  "input": {
    "prompt": "Замени кота на собаку",
    "input_urls": [
      "https://gen202.com/assets/sample-gpt-image-2-6-flare.jpg"
    ],
    "aspect_ratio": "auto",
    "resolution": "1K",
    "quality": "high"
  }
}
Output
пример генерации модели gpt-image-2-6-flare-image-to-image
{
  "code": 200,
  "msg": "success",
  "data": {
    "taskId": "cm8r4t0vk0001s60p2xq7f9ab",
    "model": "gpt-image/2-6-flare-image-to-image",
    "state": "success",
    "resultJson": "{\"resultUrls\":[\"https://gen202.com/assets/sample-gpt-image-2-6-flare-edit.jpg\"]}",
    "failCode": "",
    "failMsg": "",
    "creditsConsumed": 12.8
  }
}

Цена GPT Image 2.6

Генерация из текста. Цена за генерацию.

Вариант Скидка от официальной цены Наша цена
1K low $0.0247 −11,7% 4.8 кр. $0.02182,4 ₽
1K medium $0.0435 −10,1% 8.6 кр. $0.03914,3 ₽
1K high $0.0527 −10,3% 10.4 кр. $0.04735,2 ₽
1K xhigh $0.0937 −10,2% 18.5 кр. $0.08419,25 ₽
1K max $0.2107 −10% 41.7 кр. $0.189520,85 ₽
2K low $0.05 −10,1% 9.9 кр. $0.0454,95 ₽
2K medium $0.0883 −10,4% 17.4 кр. $0.07918,7 ₽
2K high $0.107 −10,4% 21.1 кр. $0.095910,55 ₽
2K xhigh $0.1903 −10,2% 37.6 кр. $0.170918,8 ₽
2K max $0.4282 −10,1% 84.7 кр. $0.38542,35 ₽
4K low $0.083 −10,2% 16.4 кр. $0.07458,2 ₽
4K medium $0.1468 −10,2% 29 кр. $0.131814,5 ₽
4K high $0.1779 −10,1% 35.2 кр. $0.1617,6 ₽
4K xhigh $0.3163 −10% 62.6 кр. $0.284531,3 ₽
4K max $0.7116 −10,1% 140.8 кр. $0.6470,4 ₽
SVG low 13.6 кр. $0.06186,8 ₽
SVG medium 18.7 кр. $0.0859,35 ₽
SVG high 21.2 кр. $0.096410,6 ₽
SVG xhigh 32.4 кр. $0.147316,2 ₽
SVG max 64.4 кр. $0.292732,2 ₽
GIF 2–8 кадров low 4.6 кр. $0.02092,3 ₽
GIF 2–8 кадров medium 8 кр. $0.03644 ₽
GIF 2–8 кадров high 9.7 кр. $0.04414,85 ₽
GIF 2–8 кадров xhigh 17.2 кр. $0.07828,6 ₽
GIF 2–8 кадров max 38.7 кр. $0.175919,35 ₽
GIF 9 кадров low 9.6 кр. $0.04364,8 ₽
GIF 9 кадров medium 17 кр. $0.07738,5 ₽
GIF 9 кадров high 20.6 кр. $0.093610,3 ₽
GIF 9 кадров xhigh 36.6 кр. $0.166418,3 ₽
GIF 9 кадров max 82.3 кр. $0.374141,15 ₽
GIF 10–12 кадров low 8.5 кр. $0.03864,25 ₽
GIF 10–12 кадров medium 15.1 кр. $0.06867,55 ₽
GIF 10–12 кадров high 18.2 кр. $0.08279,1 ₽
GIF 10–12 кадров xhigh 32.4 кр. $0.147316,2 ₽
GIF 10–12 кадров max 72.8 кр. $0.330936,4 ₽
GIF 13–16 кадров low 9.9 кр. $0.0454,95 ₽
GIF 13–16 кадров medium 17.4 кр. $0.07918,7 ₽
GIF 13–16 кадров high 21.1 кр. $0.095910,55 ₽
GIF 13–16 кадров xhigh 37.6 кр. $0.170918,8 ₽
GIF 13–16 кадров max 84.7 кр. $0.38542,35 ₽

В среднем на 10,3% ниже официальной цены поставщика. кр. — кредиты, покупаются за рубли.

Правка изображения. Цена за генерацию с одним изображением на входе. Изображений может быть до 15, каждое сверх первого добавляет доплату; итог округляется вниз до 0,1 кредита.

Вариант Скидка от официальной цены Наша цена
1K low $0.037 −10,3% 7.3 кр. $0.03323,65 ₽
1K medium $0.0558 −10,3% 11 кр. $0.055,5 ₽
1K high $0.065 −10,4% 12.8 кр. $0.05826,4 ₽
1K xhigh $0.1059 −10,3% 20.9 кр. $0.09510,45 ₽
1K max $0.223 −10,1% 44.1 кр. $0.200522,05 ₽
2K low $0.0623 −10,3% 12.3 кр. $0.05596,15 ₽
2K medium $0.1006 −10,1% 19.9 кр. $0.09059,95 ₽
2K high $0.1193 −10,1% 23.6 кр. $0.107311,8 ₽
2K xhigh $0.2026 −10% 40.1 кр. $0.182320,05 ₽
2K max $0.4404 −10% 87.2 кр. $0.396443,6 ₽
4K low $0.0953 −10,4% 18.8 кр. $0.08559,4 ₽
4K medium $0.1591 −10% 31.5 кр. $0.143215,75 ₽
4K high $0.1902 −10,1% 37.6 кр. $0.170918,8 ₽
4K xhigh $0.3285 −10,1% 65 кр. $0.295532,5 ₽
4K max $0.7239 −10% 143.3 кр. $0.651471,65 ₽
GIF 2–8 кадров low 7.9 кр. $0.03593,95 ₽
GIF 2–8 кадров medium 11.4 кр. $0.05185,7 ₽
GIF 2–8 кадров high 13.1 кр. $0.05956,55 ₽
GIF 2–8 кадров xhigh 20.6 кр. $0.093610,3 ₽
GIF 2–8 кадров max 42 кр. $0.190921 ₽
GIF 9 кадров low 13 кр. $0.05916,5 ₽
GIF 9 кадров medium 20.4 кр. $0.092710,2 ₽
GIF 9 кадров high 24 кр. $0.109112 ₽
GIF 9 кадров xhigh 39.9 кр. $0.181419,95 ₽
GIF 9 кадров max 85.6 кр. $0.389142,8 ₽
GIF 10–12 кадров low 11.9 кр. $0.05415,95 ₽
GIF 10–12 кадров medium 18.4 кр. $0.08369,2 ₽
GIF 10–12 кадров high 21.6 кр. $0.098210,8 ₽
GIF 10–12 кадров xhigh 35.7 кр. $0.162317,85 ₽
GIF 10–12 кадров max 76.2 кр. $0.346438,1 ₽
GIF 13–16 кадров low 12.3 кр. $0.05596,15 ₽
GIF 13–16 кадров medium 19.9 кр. $0.09059,95 ₽
GIF 13–16 кадров high 23.6 кр. $0.107311,8 ₽
GIF 13–16 кадров xhigh 40.1 кр. $0.182320,05 ₽
GIF 13–16 кадров max 87.2 кр. $0.396443,6 ₽
Каждое изображение на входе сверх первого $0.0123 −10,1% +2.43 кр. +$0.011+1,22 ₽

В среднем на 10,2% ниже официальной цены поставщика. кр. — кредиты, покупаются за рубли.

Генерация из текста. Цена за генерацию.

Вариант Скидка от официальной цены Наша цена
1K low $0.0247 −11,7% 4.8 кр. $0.02182,4 ₽
1K medium $0.0435 −10,1% 8.6 кр. $0.03914,3 ₽
1K high $0.0527 −10,3% 10.4 кр. $0.04735,2 ₽
1K xhigh $0.0937 −10,2% 18.5 кр. $0.08419,25 ₽
1K max $0.2107 −10% 41.7 кр. $0.189520,85 ₽
2K low $0.05 −10,1% 9.9 кр. $0.0454,95 ₽
2K medium $0.0883 −10,4% 17.4 кр. $0.07918,7 ₽
2K high $0.107 −10,4% 21.1 кр. $0.095910,55 ₽
2K xhigh $0.1903 −10,2% 37.6 кр. $0.170918,8 ₽
2K max $0.4282 −10,1% 84.7 кр. $0.38542,35 ₽
4K low $0.083 −10,2% 16.4 кр. $0.07458,2 ₽
4K medium $0.1468 −10,2% 29 кр. $0.131814,5 ₽
4K high $0.1779 −10,1% 35.2 кр. $0.1617,6 ₽
4K xhigh $0.3163 −10% 62.6 кр. $0.284531,3 ₽
4K max $0.7116 −10,1% 140.8 кр. $0.6470,4 ₽
SVG low 13.6 кр. $0.06186,8 ₽
SVG medium 18.7 кр. $0.0859,35 ₽
SVG high 21.2 кр. $0.096410,6 ₽
SVG xhigh 32.4 кр. $0.147316,2 ₽
SVG max 64.4 кр. $0.292732,2 ₽
GIF 2–8 кадров low 4.6 кр. $0.02092,3 ₽
GIF 2–8 кадров medium 8 кр. $0.03644 ₽
GIF 2–8 кадров high 9.7 кр. $0.04414,85 ₽
GIF 2–8 кадров xhigh 17.2 кр. $0.07828,6 ₽
GIF 2–8 кадров max 38.7 кр. $0.175919,35 ₽
GIF 9 кадров low 9.6 кр. $0.04364,8 ₽
GIF 9 кадров medium 17 кр. $0.07738,5 ₽
GIF 9 кадров high 20.6 кр. $0.093610,3 ₽
GIF 9 кадров xhigh 36.6 кр. $0.166418,3 ₽
GIF 9 кадров max 82.3 кр. $0.374141,15 ₽
GIF 10–12 кадров low 8.5 кр. $0.03864,25 ₽
GIF 10–12 кадров medium 15.1 кр. $0.06867,55 ₽
GIF 10–12 кадров high 18.2 кр. $0.08279,1 ₽
GIF 10–12 кадров xhigh 32.4 кр. $0.147316,2 ₽
GIF 10–12 кадров max 72.8 кр. $0.330936,4 ₽
GIF 13–16 кадров low 9.9 кр. $0.0454,95 ₽
GIF 13–16 кадров medium 17.4 кр. $0.07918,7 ₽
GIF 13–16 кадров high 21.1 кр. $0.095910,55 ₽
GIF 13–16 кадров xhigh 37.6 кр. $0.170918,8 ₽
GIF 13–16 кадров max 84.7 кр. $0.38542,35 ₽

В среднем на 10,3% ниже официальной цены поставщика. кр. — кредиты, покупаются за рубли.

Правка изображения. Цена за генерацию с одним изображением на входе. Изображений может быть до 15, каждое сверх первого добавляет доплату; итог округляется вниз до 0,1 кредита.

Вариант Скидка от официальной цены Наша цена
1K low $0.037 −10,3% 7.3 кр. $0.03323,65 ₽
1K medium $0.0558 −10,3% 11 кр. $0.055,5 ₽
1K high $0.065 −10,4% 12.8 кр. $0.05826,4 ₽
1K xhigh $0.1059 −10,3% 20.9 кр. $0.09510,45 ₽
1K max $0.223 −10,1% 44.1 кр. $0.200522,05 ₽
2K low $0.0623 −10,3% 12.3 кр. $0.05596,15 ₽
2K medium $0.1006 −10,1% 19.9 кр. $0.09059,95 ₽
2K high $0.1193 −10,1% 23.6 кр. $0.107311,8 ₽
2K xhigh $0.2026 −10% 40.1 кр. $0.182320,05 ₽
2K max $0.4404 −10% 87.2 кр. $0.396443,6 ₽
4K low $0.0953 −10,4% 18.8 кр. $0.08559,4 ₽
4K medium $0.1591 −10% 31.5 кр. $0.143215,75 ₽
4K high $0.1902 −10,1% 37.6 кр. $0.170918,8 ₽
4K xhigh $0.3285 −10,1% 65 кр. $0.295532,5 ₽
4K max $0.7239 −10% 143.3 кр. $0.651471,65 ₽
GIF 2–8 кадров low 7.9 кр. $0.03593,95 ₽
GIF 2–8 кадров medium 11.4 кр. $0.05185,7 ₽
GIF 2–8 кадров high 13.1 кр. $0.05956,55 ₽
GIF 2–8 кадров xhigh 20.6 кр. $0.093610,3 ₽
GIF 2–8 кадров max 42 кр. $0.190921 ₽
GIF 9 кадров low 13 кр. $0.05916,5 ₽
GIF 9 кадров medium 20.4 кр. $0.092710,2 ₽
GIF 9 кадров high 24 кр. $0.109112 ₽
GIF 9 кадров xhigh 39.9 кр. $0.181419,95 ₽
GIF 9 кадров max 85.6 кр. $0.389142,8 ₽
GIF 10–12 кадров low 11.9 кр. $0.05415,95 ₽
GIF 10–12 кадров medium 18.4 кр. $0.08369,2 ₽
GIF 10–12 кадров high 21.6 кр. $0.098210,8 ₽
GIF 10–12 кадров xhigh 35.7 кр. $0.162317,85 ₽
GIF 10–12 кадров max 76.2 кр. $0.346438,1 ₽
GIF 13–16 кадров low 12.3 кр. $0.05596,15 ₽
GIF 13–16 кадров medium 19.9 кр. $0.09059,95 ₽
GIF 13–16 кадров high 23.6 кр. $0.107311,8 ₽
GIF 13–16 кадров xhigh 40.1 кр. $0.182320,05 ₽
GIF 13–16 кадров max 87.2 кр. $0.396443,6 ₽
Каждое изображение на входе сверх первого $0.0123 −10,1% +2.43 кр. +$0.011+1,22 ₽

В среднем на 10,2% ниже официальной цены поставщика. кр. — кредиты, покупаются за рубли.

Вызов через API

POST https://api.gen202.com/api/v1/jobs/createTask
GET https://api.gen202.com/api/v1/jobs/recordInfo?taskId=…

Генерация занимает десятки секунд, поэтому изображение не приходит в ответ на запрос. Первый вызов ставит задачу и сразу отвечает её номером, второй по этому номеру отдаёт состояние задачи, а когда она готова — ссылку на результат. Ключ передаётся в обоих запросах заголовком Authorization: Bearer sk-… и выпускается в кабинете. На один ключ шлюз пропускает 30 постановок задачи и 300 запросов состояния в минуту.

Поля запроса

Значения проверяются до обращения к поставщику: поле не из списка модели или значение вне перечисления возвращают 422 и кредитов не тратят.

ПолеТипОбяз.Допустимые значения
model текст обязательное gpt-image/2-6-sunburst-text-to-image
input объект обязательное Параметры генерации — поля из таблицы ниже

Поля input

ПолеТипОбяз.Допустимые значения
prompt текст обязательное от 1 до 20 000 символов
resolution значение из списка опц. 1K · 2K · 4K · без него шлюз подставит 1K
quality значение из списка опц. low · medium · high · xhigh · max · без него шлюз подставит high
aspect_ratio значение из списка опц. auto · 1:1 · 3:2 · 2:3 · 4:3 · 3:4 · 5:4 · 4:5 · 16:9 · 9:16 · 2:1 · 1:2 · 21:9 · 9:21 · 3:1 · 1:3
background значение из списка опц. auto · opaque · transparent
complexity значение из списка опц. low · medium · high · без него шлюз подставит high
output_format значение из списка опц. png · svg · gif · без него шлюз подставит png
frame_count целое число опц. целое от 2 до 16
frame_duration_ms целое число опц. целое от 20 до 2 000

Поле output_format. Формат файла. png — обычное изображение. svg — векторный файл: линии и фигуры вместо точек. gif — анимация из нескольких кадров.

Поле frame_count. Модель рисует все кадры одним изображением — сеткой, как раскадровку, — потом нарезает его на кадры и собирает в GIF. Размер итогового кадра — до 512×512.

Поле frame_duration_ms. Короче кадр — кадры сменяются чаще: движение быстрее и плавнее, анимация короче. Длиннее кадр — кадры сменяются реже: движение медленнее и рывками, ближе к слайд-шоу, анимация длиннее.

Поля запроса

Значения проверяются до обращения к поставщику: поле не из списка модели или значение вне перечисления возвращают 422 и кредитов не тратят.

ПолеТипОбяз.Допустимые значения
model текст обязательное gpt-image/2-6-sunburst-image-to-image
input объект обязательное Параметры генерации — поля из таблицы ниже

Поля input

ПолеТипОбяз.Допустимые значения
prompt текст обязательное от 1 до 20 000 символов
input_urls список ссылок обязательное от 1 до 15 ссылок на изображение
resolution значение из списка опц. 1K · 2K · 4K · без него шлюз подставит 1K
quality значение из списка опц. low · medium · high · xhigh · max · без него шлюз подставит high
aspect_ratio значение из списка опц. auto · 1:1 · 3:2 · 2:3 · 4:3 · 3:4 · 5:4 · 4:5 · 16:9 · 9:16 · 2:1 · 1:2 · 21:9 · 9:21 · 3:1 · 1:3
background значение из списка опц. auto · opaque · transparent
complexity значение из списка опц. low · medium · high · без него шлюз подставит high
output_format значение из списка опц. png · gif · без него шлюз подставит png
frame_count целое число опц. целое от 2 до 16
frame_duration_ms целое число опц. целое от 20 до 2 000

Поле output_format. Формат файла. png — обычное изображение. gif — анимация по присланным изображениям.

Поле frame_count. Модель рисует все кадры одним изображением — сеткой, как раскадровку, — потом нарезает его на кадры и собирает в GIF. Размер итогового кадра — до 512×512.

Поле frame_duration_ms. Короче кадр — кадры сменяются чаще: движение быстрее и плавнее, анимация короче. Длиннее кадр — кадры сменяются реже: движение медленнее и рывками, ближе к слайд-шоу, анимация длиннее.

Ссылка на изображение принимается только полным адресом на http или https: не длиннее 2048 символов, на общедоступном сайте, без имени и пароля перед адресом и без порта, кроме 80 и 443. Относительный путь, а также адреса внутри сети — localhost, 127.0.0.1, 10.0.0.5, 192.168.1.2 — и имена без точки шлюз отклоняет ответом 422, к поставщику не обращаясь.

Ответ

Оба запроса отвечают одним конвертом: {"code":…,"msg":…,"data":…}, где code повторяет HTTP-статус, а полезное лежит в data. Тот же конверт приходит и при отказе — разбирать две формы ответа не нужно.

/api/v1/jobs/createTask

ПолеТипЧто в нём
data.taskId строка Номер задачи. Больше в ответе ничего нет и быть не может — работа только началась.

/api/v1/jobs/recordInfo

ПолеТипЧто в нём
data.taskId строка Номер задачи — тот же, что вернул createTask.
data.model строка Имя модели в том виде, в каком его прислал клиент.
data.state строка Состояние задачи: waiting, queuing, generating, success или fail.
data.param строка Параметры, с которыми задача создана, — строкой JSON внутри JSON.
data.resultJson строка Результат строкой JSON внутри JSON: {"resultUrls":["https://…"]} — разбирается вторым разбором. До завершения задачи — пустая строка.
data.failCode строка Код неудачи из таблицы ниже. У остальных задач — пустая строка.
data.failMsg строка Причина неудачи словами модели. Иначе пустая строка.
data.failComment строка Наш комментарий к словам модели, по-русски: что произошло. Есть не у всякой неудачи; иначе пустая строка.
data.costTime число Сколько задача заняла, миллисекунды. Пока не завершилась — null.
data.completeTime число Когда завершилась, миллисекунды эпохи Unix. Пока не завершилась — null.
data.createTime число Когда создана, миллисекунды эпохи Unix.
data.updateTime число Когда состояние менялось в последний раз, миллисекунды эпохи Unix.
data.creditsConsumed число Сколько кредитов списано. Ноль, пока задача не завершилась, и ноль у неудачной.

Состояния задачи

Состояние лежит в поле state ответа /api/v1/jobs/recordInfo. Первые три означают, что работа идёт: запрос надо повторить примерно через 3 секунды — чаще спрашивать нечего, столько же ждёт между опросами сам шлюз. Два последних состояния окончательные: после них задача не меняется.

stateЧто происходит
waiting Задача принята и стоит в очереди шлюза; поставщику она ещё не отправлена.
queuing Поставщик задачу принял и поставил в свою очередь.
generating Генерация идёт.
success Готово: ссылки на результат лежат в resultJson, в creditsConsumed — сколько списано.
fail Задача не удалась: причина в failCode и failMsg, удержанные кредиты возвращены целиком.

Задача идёт, пока модель не пришлёт результат или отказ. Причина неудачи приходит двумя полями: failCode из таблицы ниже и failMsg словами.

failCodeЧто произошло
501 Поставщик вернул отказ: генерация не удалась.
408 Модель не приняла задачу за 15 минут или не отвечала сутки.
404 Поставщик не знает такой задачи.
429 Поставщик отбил создание задачи по своему лимиту.
500 Поломка на нашей стороне; подробности остаются в журнале шлюза.

Слова модели в failMsg бывают непонятны, поэтому к части неудач шлюз добавляет поле failComment — наш комментарий по-русски о том, что произошло. У остальных неудач это поле пустое.

failMsg, примерfailComment
Image fetch failed. Модель не смогла скачать файл из нашего хранилища. Вероятно, это разовый сбой, повторите запрос. Если ошибка повторится — напишите в поддержку: hi@gen202.com
File type not supported По ссылке открывается страница сайта, а не файл. Загрузите сам файл или дайте прямую ссылку на него.
image #2: width and height must be between 300px and 6000px (got 262x377) (invalid_asset_material) Одна из картинок слишком маленькая. Seedance принимает картинки от 300 до 6000 пикселей по каждой стороне.
Seedance identified your task as video editing based on your prompt. Seedance понял запрос как редактирование присланного видео. В песочнице и чате выберите режим «Редактирование видео», в API поставьте пропорции adaptive и длительность −1.
Seedance identified your task as video extension based on your prompt. Seedance решил, что присланное видео нужно продлить. Для этого поставьте пропорции adaptive, а если продлевать не нужно — уберите эту просьбу из промта.
generate task timeout. Модель не успела создать результат и сама остановила задачу.
Internal Error Модель остановилась и не назвала причину. Возможно, она перегружена или временно недоступна. Или запрос отклонён из-за чувствительной темы: нагота и откровенные сцены, дети, известные люди, насилие, чужие персонажи и бренды.
The request failed because the input image may contain sensitive information. Модель отклонила загруженную картинку из-за чувствительной темы. Такие темы: нагота и откровенные сцены, дети, известные люди, насилие, чужие персонажи и бренды.
The generated content was filtered by the safety system. Модель отклонила запрос из-за чувствительной темы. Такие темы: нагота и откровенные сцены, дети, известные люди, насилие, чужие персонажи и бренды.
The model provider rejected or dropped the task creation request. Модель остановилась и не назвала причину. Возможно, она перегружена или временно недоступна. Или запрос отклонён из-за чувствительной темы: нагота и откровенные сцены, дети, известные люди, насилие, чужие персонажи и бренды.
No result from the provider within the task deadline. Модель либо не приняла задачу за 15 минут (у видео — за 60), либо не ответила за сутки.

Ссылка на готовый файл живёт 14 дней — столько его хранит поставщик. Файл, который нужен дольше, скачивайте к себе сразу после того, как задача пришла в состояние success.

Отказы

Тело отказа одно на все случаи: {"code":…,"msg":…,"data":null}. Задача, не дошедшая до результата, не тарифицируется — удержанные кредиты возвращаются целиком.

КодАдресКогда
400 /api/v1/jobs/createTask Тело запроса — не разбираемый JSON.
401 /api/v1/jobs/createTask Ключа нет в заголовке Authorization, либо он неверный или отключён.
402 /api/v1/jobs/createTask Свободных кредитов меньше, чем удерживается под задачу.
403 /api/v1/jobs/createTask Аккаунт заблокирован: вызовы модели, пополнение и загрузка файлов ему закрыты. Ключи при этом не отключены — запрет лежит на аккаунте.
413 /api/v1/jobs/createTask Тело запроса больше 512 КиБ.
415 /api/v1/jobs/createTask Тело отправлено не как application/json или заголовок Content-Type не передан.
422 /api/v1/jobs/createTask Поле model пустое или его имени нет в каталоге, input — не объект, поле не из списка модели либо значение вне её перечисления. В сообщении перечислено, что принимается. Тот же код — если во входе наша ссылка на готовый результат старше 14 дней: файла уже нет, его нужно загрузить заново. И если модель не может выполнить именно это сочетание полей: в сообщении сказано, что поменять, — например, другие файлы-образцы.
429 /api/v1/jobs/createTask Больше 30 запросов в минуту на один ключ, больше 50 незавершённых задач на аккаунте либо таймаут: за час 5 запросов к моделям этого вида отклонены из-за чувствительной темы, и запуск всех моделей этого вида приостановлен. У такого отказа в теле есть поле timeout с временем окончания паузы, а в заголовке Retry-After — секунды до него.
500 /api/v1/jobs/createTask Поломка на нашей стороне. Подробности остаются в журнале шлюза и наружу не уходят.
401 /api/v1/jobs/recordInfo Ключа нет в заголовке Authorization, либо он неверный или отключён.
404 /api/v1/jobs/recordInfo Задачи с таким номером нет или она создана другим аккаунтом.
422 /api/v1/jobs/recordInfo Параметр taskId не передан.
429 /api/v1/jobs/recordInfo Больше 300 запросов в минуту на один ключ.
500 /api/v1/jobs/recordInfo Поломка на нашей стороне. Подробности остаются в журнале шлюза и наружу не уходят.

Пример вызова

task.sh
# 1. Поставить задачу — в ответе придёт её номер
TASK=$(curl -s https://api.gen202.com/api/v1/jobs/createTask \
  -H "Authorization: Bearer sk-ваш-ключ" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image/2-6-sunburst-text-to-image",
    "input": {
      "prompt": "Рыжий кот в скафандре на фоне Земли, мягкий свет",
      "aspect_ratio": "auto",
      "resolution": "1K",
      "quality": "high"
    }
  }' | jq -r '.data.taskId')

# 2. Спрашивать состояние, пока задача не закончится: waiting, queuing и
#    generating означают «работа идёт», success и fail — окончательные
while true; do
  RECORD=$(curl -s "https://api.gen202.com/api/v1/jobs/recordInfo?taskId=$TASK" \
    -H "Authorization: Bearer sk-ваш-ключ")
  STATE=$(echo "$RECORD" | jq -r '.data.state')
  case "$STATE" in success|fail) break;; esac
  sleep 3
done

# 3. Забрать результат. Ссылка на файл лежит в resultJson — это строка JSON
#    внутри JSON, поэтому её разбирают вторым разбором (fromjson)
echo "$RECORD" | jq -r '.data |
  if .state == "fail"
  then "отказ \(.failCode): \(.failMsg)"
  else .resultJson | fromjson | .resultUrls[0]
  end'
task.py
import json
import time

import requests

headers = {"Authorization": "Bearer sk-ваш-ключ"}

# 1. Поставить задачу — в ответе придёт её номер
created = requests.post(
    "https://api.gen202.com/api/v1/jobs/createTask",
    headers=headers,
    json={
      "model": "gpt-image/2-6-sunburst-text-to-image",
      "input": {
        "prompt": "Рыжий кот в скафандре на фоне Земли, мягкий свет",
        "aspect_ratio": "auto",
        "resolution": "1K",
        "quality": "high"
      }
    },
).json()
task_id = created["data"]["taskId"]

# 2. Спрашивать состояние, пока задача не закончится: waiting, queuing и
#    generating означают «работа идёт», success и fail — окончательные
while True:
    task = requests.get(
        "https://api.gen202.com/api/v1/jobs/recordInfo",
        headers=headers,
        params={"taskId": task_id},
    ).json()["data"]
    if task["state"] in ("success", "fail"):
        break
    time.sleep(3)

# 3. Разобрать итог. У неудачи причина в failCode и failMsg
if task["state"] == "fail":
    raise SystemExit("отказ " + task["failCode"] + ": " + task["failMsg"])

# resultJson — строка JSON внутри JSON, поэтому разбор второй
result = json.loads(task["resultJson"])
print(result["resultUrls"][0])
print("списано кредитов:", task["creditsConsumed"])

Пример проходит весь путь: ставит задачу, повторяет запрос состояния раз в 3 секунды, пока задача не закончится, и разбирает ответ до ссылки на файл. Разборов два, потому что поле resultJson — строка JSON внутри JSON. В теле первого запроса стоят обязательные поля модели и значения из её перечислений, поэтому он проходит проверку шлюза как есть. Подставить остаётся только свой ключ. Пример на оболочке разбирает ответ через jq; на Python своего ничего не нужно, кроме requests.

Пример вызова

task.sh
# 1. Поставить задачу — в ответе придёт её номер
TASK=$(curl -s https://api.gen202.com/api/v1/jobs/createTask \
  -H "Authorization: Bearer sk-ваш-ключ" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image/2-6-sunburst-image-to-image",
    "input": {
      "prompt": "Замени кота на собаку",
      "input_urls": [
        "https://gen202.com/assets/sample-gpt-image-2-6-sunburst.jpg"
      ],
      "aspect_ratio": "auto",
      "resolution": "1K",
      "quality": "high"
    }
  }' | jq -r '.data.taskId')

# 2. Спрашивать состояние, пока задача не закончится: waiting, queuing и
#    generating означают «работа идёт», success и fail — окончательные
while true; do
  RECORD=$(curl -s "https://api.gen202.com/api/v1/jobs/recordInfo?taskId=$TASK" \
    -H "Authorization: Bearer sk-ваш-ключ")
  STATE=$(echo "$RECORD" | jq -r '.data.state')
  case "$STATE" in success|fail) break;; esac
  sleep 3
done

# 3. Забрать результат. Ссылка на файл лежит в resultJson — это строка JSON
#    внутри JSON, поэтому её разбирают вторым разбором (fromjson)
echo "$RECORD" | jq -r '.data |
  if .state == "fail"
  then "отказ \(.failCode): \(.failMsg)"
  else .resultJson | fromjson | .resultUrls[0]
  end'
task.py
import json
import time

import requests

headers = {"Authorization": "Bearer sk-ваш-ключ"}

# 1. Поставить задачу — в ответе придёт её номер
created = requests.post(
    "https://api.gen202.com/api/v1/jobs/createTask",
    headers=headers,
    json={
      "model": "gpt-image/2-6-sunburst-image-to-image",
      "input": {
        "prompt": "Замени кота на собаку",
        "input_urls": [
          "https://gen202.com/assets/sample-gpt-image-2-6-sunburst.jpg"
        ],
        "aspect_ratio": "auto",
        "resolution": "1K",
        "quality": "high"
      }
    },
).json()
task_id = created["data"]["taskId"]

# 2. Спрашивать состояние, пока задача не закончится: waiting, queuing и
#    generating означают «работа идёт», success и fail — окончательные
while True:
    task = requests.get(
        "https://api.gen202.com/api/v1/jobs/recordInfo",
        headers=headers,
        params={"taskId": task_id},
    ).json()["data"]
    if task["state"] in ("success", "fail"):
        break
    time.sleep(3)

# 3. Разобрать итог. У неудачи причина в failCode и failMsg
if task["state"] == "fail":
    raise SystemExit("отказ " + task["failCode"] + ": " + task["failMsg"])

# resultJson — строка JSON внутри JSON, поэтому разбор второй
result = json.loads(task["resultJson"])
print(result["resultUrls"][0])
print("списано кредитов:", task["creditsConsumed"])

Пример проходит весь путь: ставит задачу, повторяет запрос состояния раз в 3 секунды, пока задача не закончится, и разбирает ответ до ссылки на файл. Разборов два, потому что поле resultJson — строка JSON внутри JSON. В теле первого запроса стоят обязательные поля модели и значения из её перечислений, поэтому он проходит проверку шлюза как есть. Заменить в нём нужно два значения: свой ключ и ссылку на изображение — в примере стоит образец с нашего сайта. Пример на оболочке разбирает ответ через jq; на Python своего ничего не нужно, кроме requests.

POST https://api.gen202.com/api/v1/jobs/createTask
GET https://api.gen202.com/api/v1/jobs/recordInfo?taskId=…

Генерация занимает десятки секунд, поэтому изображение не приходит в ответ на запрос. Первый вызов ставит задачу и сразу отвечает её номером, второй по этому номеру отдаёт состояние задачи, а когда она готова — ссылку на результат. Ключ передаётся в обоих запросах заголовком Authorization: Bearer sk-… и выпускается в кабинете. На один ключ шлюз пропускает 30 постановок задачи и 300 запросов состояния в минуту.

Поля запроса

Значения проверяются до обращения к поставщику: поле не из списка модели или значение вне перечисления возвращают 422 и кредитов не тратят.

ПолеТипОбяз.Допустимые значения
model текст обязательное gpt-image/2-6-flare-text-to-image
input объект обязательное Параметры генерации — поля из таблицы ниже

Поля input

ПолеТипОбяз.Допустимые значения
prompt текст обязательное от 1 до 20 000 символов
resolution значение из списка опц. 1K · 2K · 4K · без него шлюз подставит 1K
quality значение из списка опц. low · medium · high · xhigh · max · без него шлюз подставит high
aspect_ratio значение из списка опц. auto · 1:1 · 3:2 · 2:3 · 4:3 · 3:4 · 5:4 · 4:5 · 16:9 · 9:16 · 2:1 · 1:2 · 21:9 · 9:21 · 3:1 · 1:3
background значение из списка опц. auto · opaque · transparent
complexity значение из списка опц. low · medium · high · без него шлюз подставит high
output_format значение из списка опц. png · svg · gif · без него шлюз подставит png
frame_count целое число опц. целое от 2 до 16
frame_duration_ms целое число опц. целое от 20 до 2 000

Поле output_format. Формат файла. png — обычное изображение. svg — векторный файл: линии и фигуры вместо точек. gif — анимация из нескольких кадров.

Поле frame_count. Модель рисует все кадры одним изображением — сеткой, как раскадровку, — потом нарезает его на кадры и собирает в GIF. Размер итогового кадра — до 512×512.

Поле frame_duration_ms. Короче кадр — кадры сменяются чаще: движение быстрее и плавнее, анимация короче. Длиннее кадр — кадры сменяются реже: движение медленнее и рывками, ближе к слайд-шоу, анимация длиннее.

Поля запроса

Значения проверяются до обращения к поставщику: поле не из списка модели или значение вне перечисления возвращают 422 и кредитов не тратят.

ПолеТипОбяз.Допустимые значения
model текст обязательное gpt-image/2-6-flare-image-to-image
input объект обязательное Параметры генерации — поля из таблицы ниже

Поля input

ПолеТипОбяз.Допустимые значения
prompt текст обязательное от 1 до 20 000 символов
input_urls список ссылок обязательное от 1 до 15 ссылок на изображение
resolution значение из списка опц. 1K · 2K · 4K · без него шлюз подставит 1K
quality значение из списка опц. low · medium · high · xhigh · max · без него шлюз подставит high
aspect_ratio значение из списка опц. auto · 1:1 · 3:2 · 2:3 · 4:3 · 3:4 · 5:4 · 4:5 · 16:9 · 9:16 · 2:1 · 1:2 · 21:9 · 9:21 · 3:1 · 1:3
background значение из списка опц. auto · opaque · transparent
complexity значение из списка опц. low · medium · high · без него шлюз подставит high
output_format значение из списка опц. png · gif · без него шлюз подставит png
frame_count целое число опц. целое от 2 до 16
frame_duration_ms целое число опц. целое от 20 до 2 000

Поле output_format. Формат файла. png — обычное изображение. gif — анимация по присланным изображениям.

Поле frame_count. Модель рисует все кадры одним изображением — сеткой, как раскадровку, — потом нарезает его на кадры и собирает в GIF. Размер итогового кадра — до 512×512.

Поле frame_duration_ms. Короче кадр — кадры сменяются чаще: движение быстрее и плавнее, анимация короче. Длиннее кадр — кадры сменяются реже: движение медленнее и рывками, ближе к слайд-шоу, анимация длиннее.

Ссылка на изображение принимается только полным адресом на http или https: не длиннее 2048 символов, на общедоступном сайте, без имени и пароля перед адресом и без порта, кроме 80 и 443. Относительный путь, а также адреса внутри сети — localhost, 127.0.0.1, 10.0.0.5, 192.168.1.2 — и имена без точки шлюз отклоняет ответом 422, к поставщику не обращаясь.

Ответ

Оба запроса отвечают одним конвертом: {"code":…,"msg":…,"data":…}, где code повторяет HTTP-статус, а полезное лежит в data. Тот же конверт приходит и при отказе — разбирать две формы ответа не нужно.

/api/v1/jobs/createTask

ПолеТипЧто в нём
data.taskId строка Номер задачи. Больше в ответе ничего нет и быть не может — работа только началась.

/api/v1/jobs/recordInfo

ПолеТипЧто в нём
data.taskId строка Номер задачи — тот же, что вернул createTask.
data.model строка Имя модели в том виде, в каком его прислал клиент.
data.state строка Состояние задачи: waiting, queuing, generating, success или fail.
data.param строка Параметры, с которыми задача создана, — строкой JSON внутри JSON.
data.resultJson строка Результат строкой JSON внутри JSON: {"resultUrls":["https://…"]} — разбирается вторым разбором. До завершения задачи — пустая строка.
data.failCode строка Код неудачи из таблицы ниже. У остальных задач — пустая строка.
data.failMsg строка Причина неудачи словами модели. Иначе пустая строка.
data.failComment строка Наш комментарий к словам модели, по-русски: что произошло. Есть не у всякой неудачи; иначе пустая строка.
data.costTime число Сколько задача заняла, миллисекунды. Пока не завершилась — null.
data.completeTime число Когда завершилась, миллисекунды эпохи Unix. Пока не завершилась — null.
data.createTime число Когда создана, миллисекунды эпохи Unix.
data.updateTime число Когда состояние менялось в последний раз, миллисекунды эпохи Unix.
data.creditsConsumed число Сколько кредитов списано. Ноль, пока задача не завершилась, и ноль у неудачной.

Состояния задачи

Состояние лежит в поле state ответа /api/v1/jobs/recordInfo. Первые три означают, что работа идёт: запрос надо повторить примерно через 3 секунды — чаще спрашивать нечего, столько же ждёт между опросами сам шлюз. Два последних состояния окончательные: после них задача не меняется.

stateЧто происходит
waiting Задача принята и стоит в очереди шлюза; поставщику она ещё не отправлена.
queuing Поставщик задачу принял и поставил в свою очередь.
generating Генерация идёт.
success Готово: ссылки на результат лежат в resultJson, в creditsConsumed — сколько списано.
fail Задача не удалась: причина в failCode и failMsg, удержанные кредиты возвращены целиком.

Задача идёт, пока модель не пришлёт результат или отказ. Причина неудачи приходит двумя полями: failCode из таблицы ниже и failMsg словами.

failCodeЧто произошло
501 Поставщик вернул отказ: генерация не удалась.
408 Модель не приняла задачу за 15 минут или не отвечала сутки.
404 Поставщик не знает такой задачи.
429 Поставщик отбил создание задачи по своему лимиту.
500 Поломка на нашей стороне; подробности остаются в журнале шлюза.

Слова модели в failMsg бывают непонятны, поэтому к части неудач шлюз добавляет поле failComment — наш комментарий по-русски о том, что произошло. У остальных неудач это поле пустое.

failMsg, примерfailComment
Image fetch failed. Модель не смогла скачать файл из нашего хранилища. Вероятно, это разовый сбой, повторите запрос. Если ошибка повторится — напишите в поддержку: hi@gen202.com
File type not supported По ссылке открывается страница сайта, а не файл. Загрузите сам файл или дайте прямую ссылку на него.
image #2: width and height must be between 300px and 6000px (got 262x377) (invalid_asset_material) Одна из картинок слишком маленькая. Seedance принимает картинки от 300 до 6000 пикселей по каждой стороне.
Seedance identified your task as video editing based on your prompt. Seedance понял запрос как редактирование присланного видео. В песочнице и чате выберите режим «Редактирование видео», в API поставьте пропорции adaptive и длительность −1.
Seedance identified your task as video extension based on your prompt. Seedance решил, что присланное видео нужно продлить. Для этого поставьте пропорции adaptive, а если продлевать не нужно — уберите эту просьбу из промта.
generate task timeout. Модель не успела создать результат и сама остановила задачу.
Internal Error Модель остановилась и не назвала причину. Возможно, она перегружена или временно недоступна. Или запрос отклонён из-за чувствительной темы: нагота и откровенные сцены, дети, известные люди, насилие, чужие персонажи и бренды.
The request failed because the input image may contain sensitive information. Модель отклонила загруженную картинку из-за чувствительной темы. Такие темы: нагота и откровенные сцены, дети, известные люди, насилие, чужие персонажи и бренды.
The generated content was filtered by the safety system. Модель отклонила запрос из-за чувствительной темы. Такие темы: нагота и откровенные сцены, дети, известные люди, насилие, чужие персонажи и бренды.
The model provider rejected or dropped the task creation request. Модель остановилась и не назвала причину. Возможно, она перегружена или временно недоступна. Или запрос отклонён из-за чувствительной темы: нагота и откровенные сцены, дети, известные люди, насилие, чужие персонажи и бренды.
No result from the provider within the task deadline. Модель либо не приняла задачу за 15 минут (у видео — за 60), либо не ответила за сутки.

Ссылка на готовый файл живёт 14 дней — столько его хранит поставщик. Файл, который нужен дольше, скачивайте к себе сразу после того, как задача пришла в состояние success.

Отказы

Тело отказа одно на все случаи: {"code":…,"msg":…,"data":null}. Задача, не дошедшая до результата, не тарифицируется — удержанные кредиты возвращаются целиком.

КодАдресКогда
400 /api/v1/jobs/createTask Тело запроса — не разбираемый JSON.
401 /api/v1/jobs/createTask Ключа нет в заголовке Authorization, либо он неверный или отключён.
402 /api/v1/jobs/createTask Свободных кредитов меньше, чем удерживается под задачу.
403 /api/v1/jobs/createTask Аккаунт заблокирован: вызовы модели, пополнение и загрузка файлов ему закрыты. Ключи при этом не отключены — запрет лежит на аккаунте.
413 /api/v1/jobs/createTask Тело запроса больше 512 КиБ.
415 /api/v1/jobs/createTask Тело отправлено не как application/json или заголовок Content-Type не передан.
422 /api/v1/jobs/createTask Поле model пустое или его имени нет в каталоге, input — не объект, поле не из списка модели либо значение вне её перечисления. В сообщении перечислено, что принимается. Тот же код — если во входе наша ссылка на готовый результат старше 14 дней: файла уже нет, его нужно загрузить заново. И если модель не может выполнить именно это сочетание полей: в сообщении сказано, что поменять, — например, другие файлы-образцы.
429 /api/v1/jobs/createTask Больше 30 запросов в минуту на один ключ, больше 50 незавершённых задач на аккаунте либо таймаут: за час 5 запросов к моделям этого вида отклонены из-за чувствительной темы, и запуск всех моделей этого вида приостановлен. У такого отказа в теле есть поле timeout с временем окончания паузы, а в заголовке Retry-After — секунды до него.
500 /api/v1/jobs/createTask Поломка на нашей стороне. Подробности остаются в журнале шлюза и наружу не уходят.
401 /api/v1/jobs/recordInfo Ключа нет в заголовке Authorization, либо он неверный или отключён.
404 /api/v1/jobs/recordInfo Задачи с таким номером нет или она создана другим аккаунтом.
422 /api/v1/jobs/recordInfo Параметр taskId не передан.
429 /api/v1/jobs/recordInfo Больше 300 запросов в минуту на один ключ.
500 /api/v1/jobs/recordInfo Поломка на нашей стороне. Подробности остаются в журнале шлюза и наружу не уходят.

Пример вызова

task.sh
# 1. Поставить задачу — в ответе придёт её номер
TASK=$(curl -s https://api.gen202.com/api/v1/jobs/createTask \
  -H "Authorization: Bearer sk-ваш-ключ" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image/2-6-flare-text-to-image",
    "input": {
      "prompt": "Рыжий кот в скафандре на фоне Земли, мягкий свет",
      "aspect_ratio": "auto",
      "resolution": "1K",
      "quality": "high"
    }
  }' | jq -r '.data.taskId')

# 2. Спрашивать состояние, пока задача не закончится: waiting, queuing и
#    generating означают «работа идёт», success и fail — окончательные
while true; do
  RECORD=$(curl -s "https://api.gen202.com/api/v1/jobs/recordInfo?taskId=$TASK" \
    -H "Authorization: Bearer sk-ваш-ключ")
  STATE=$(echo "$RECORD" | jq -r '.data.state')
  case "$STATE" in success|fail) break;; esac
  sleep 3
done

# 3. Забрать результат. Ссылка на файл лежит в resultJson — это строка JSON
#    внутри JSON, поэтому её разбирают вторым разбором (fromjson)
echo "$RECORD" | jq -r '.data |
  if .state == "fail"
  then "отказ \(.failCode): \(.failMsg)"
  else .resultJson | fromjson | .resultUrls[0]
  end'
task.py
import json
import time

import requests

headers = {"Authorization": "Bearer sk-ваш-ключ"}

# 1. Поставить задачу — в ответе придёт её номер
created = requests.post(
    "https://api.gen202.com/api/v1/jobs/createTask",
    headers=headers,
    json={
      "model": "gpt-image/2-6-flare-text-to-image",
      "input": {
        "prompt": "Рыжий кот в скафандре на фоне Земли, мягкий свет",
        "aspect_ratio": "auto",
        "resolution": "1K",
        "quality": "high"
      }
    },
).json()
task_id = created["data"]["taskId"]

# 2. Спрашивать состояние, пока задача не закончится: waiting, queuing и
#    generating означают «работа идёт», success и fail — окончательные
while True:
    task = requests.get(
        "https://api.gen202.com/api/v1/jobs/recordInfo",
        headers=headers,
        params={"taskId": task_id},
    ).json()["data"]
    if task["state"] in ("success", "fail"):
        break
    time.sleep(3)

# 3. Разобрать итог. У неудачи причина в failCode и failMsg
if task["state"] == "fail":
    raise SystemExit("отказ " + task["failCode"] + ": " + task["failMsg"])

# resultJson — строка JSON внутри JSON, поэтому разбор второй
result = json.loads(task["resultJson"])
print(result["resultUrls"][0])
print("списано кредитов:", task["creditsConsumed"])

Пример проходит весь путь: ставит задачу, повторяет запрос состояния раз в 3 секунды, пока задача не закончится, и разбирает ответ до ссылки на файл. Разборов два, потому что поле resultJson — строка JSON внутри JSON. В теле первого запроса стоят обязательные поля модели и значения из её перечислений, поэтому он проходит проверку шлюза как есть. Подставить остаётся только свой ключ. Пример на оболочке разбирает ответ через jq; на Python своего ничего не нужно, кроме requests.

Пример вызова

task.sh
# 1. Поставить задачу — в ответе придёт её номер
TASK=$(curl -s https://api.gen202.com/api/v1/jobs/createTask \
  -H "Authorization: Bearer sk-ваш-ключ" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image/2-6-flare-image-to-image",
    "input": {
      "prompt": "Замени кота на собаку",
      "input_urls": [
        "https://gen202.com/assets/sample-gpt-image-2-6-flare.jpg"
      ],
      "aspect_ratio": "auto",
      "resolution": "1K",
      "quality": "high"
    }
  }' | jq -r '.data.taskId')

# 2. Спрашивать состояние, пока задача не закончится: waiting, queuing и
#    generating означают «работа идёт», success и fail — окончательные
while true; do
  RECORD=$(curl -s "https://api.gen202.com/api/v1/jobs/recordInfo?taskId=$TASK" \
    -H "Authorization: Bearer sk-ваш-ключ")
  STATE=$(echo "$RECORD" | jq -r '.data.state')
  case "$STATE" in success|fail) break;; esac
  sleep 3
done

# 3. Забрать результат. Ссылка на файл лежит в resultJson — это строка JSON
#    внутри JSON, поэтому её разбирают вторым разбором (fromjson)
echo "$RECORD" | jq -r '.data |
  if .state == "fail"
  then "отказ \(.failCode): \(.failMsg)"
  else .resultJson | fromjson | .resultUrls[0]
  end'
task.py
import json
import time

import requests

headers = {"Authorization": "Bearer sk-ваш-ключ"}

# 1. Поставить задачу — в ответе придёт её номер
created = requests.post(
    "https://api.gen202.com/api/v1/jobs/createTask",
    headers=headers,
    json={
      "model": "gpt-image/2-6-flare-image-to-image",
      "input": {
        "prompt": "Замени кота на собаку",
        "input_urls": [
          "https://gen202.com/assets/sample-gpt-image-2-6-flare.jpg"
        ],
        "aspect_ratio": "auto",
        "resolution": "1K",
        "quality": "high"
      }
    },
).json()
task_id = created["data"]["taskId"]

# 2. Спрашивать состояние, пока задача не закончится: waiting, queuing и
#    generating означают «работа идёт», success и fail — окончательные
while True:
    task = requests.get(
        "https://api.gen202.com/api/v1/jobs/recordInfo",
        headers=headers,
        params={"taskId": task_id},
    ).json()["data"]
    if task["state"] in ("success", "fail"):
        break
    time.sleep(3)

# 3. Разобрать итог. У неудачи причина в failCode и failMsg
if task["state"] == "fail":
    raise SystemExit("отказ " + task["failCode"] + ": " + task["failMsg"])

# resultJson — строка JSON внутри JSON, поэтому разбор второй
result = json.loads(task["resultJson"])
print(result["resultUrls"][0])
print("списано кредитов:", task["creditsConsumed"])

Пример проходит весь путь: ставит задачу, повторяет запрос состояния раз в 3 секунды, пока задача не закончится, и разбирает ответ до ссылки на файл. Разборов два, потому что поле resultJson — строка JSON внутри JSON. В теле первого запроса стоят обязательные поля модели и значения из её перечислений, поэтому он проходит проверку шлюза как есть. Заменить в нём нужно два значения: свой ключ и ссылку на изображение — в примере стоит образец с нашего сайта. Пример на оболочке разбирает ответ через jq; на Python своего ничего не нужно, кроме requests.

GPT Image 2.6 Sunburst — базовая модель поколения GPT Image 2.6 от OpenAI, выпущенная 4 ноября 2026 года. OpenAI рассчитал её на подробные изображения и точную правку. Через GEN202 цена от 2,4 ₽ до 70,4 ₽ за генерацию, и её задают разрешение и уровень качества.

Что OpenAI говорит про GPT Image 2.6 Sunburst

В справочнике моделей OpenAI подписывает Sunburst как модель для генерации и правки подробных изображений. Брать её он советует для подробных композиций и для работы с правкой. Страница — карточка модели GPT-Image-2.6 Sunburst.

В объявлении о выпуске OpenAI связывает сильные стороны Sunburst с уровнем качества. На уровнях качества medium и high эта модель, по его словам, создаёт более качественные изображения и лучше сохраняет их согласованность от правки к правке. Страница — объявление OpenAI о выпуске Images 2.6.

Руководство по промтам называет Sunburst базовой моделью для работы, где нужно больше подробностей или точная правка. Страница — руководство OpenAI по промтам для изображений.

Слова OpenAI о GPT Image 2.6 Sunburst приведены по его страницам на 5 ноября 2026 года.

Как OpenAI советует выбирать между Sunburst и Flare

Sunburst нужен там, где изображение должно быть подробным, а правка точной. Flare нужен там, где важнее быстро получить результат и сделать ещё один заход.

Поля запроса, уровни качества и цена у обоих уровней модели общие, поэтому переход с одного на другой меняет только значение поля model.

  1. Начните с уровня модели под главную задачу. Если на первом месте время ответа, берите Flare. Если изображение должно выдержать строгие требования к подробностям, вёрстке или точности правки, берите Sunburst.
  2. Проверьте результат на своих запросах. Используйте промты и исходники из своей работы и смотрите те детали, от которых зависит, пойдёт ли изображение в дело.
  3. Если Sunburst подошёл, сравните его с Flare. Оставьте те же промты, исходники, размер и уровень качества, а затем сравните результат и время ответа.
Что сравниваемSunburstFlare
Как модель называет OpenAIБазовая модельМодель поменьше
Для какой работыПодробная работа и точная правкаБыстрая работа шаг за шагом
Наш тест: 1K, high, 1:150 секунд12 секунд

В нашем тесте 5 ноября 2026 года при разрешении 1K, качестве high и пропорции 1:1 Sunburst создал изображение за 50 секунд, а правку сделал за 51 секунду. Каждый режим запускали один раз.

Как выбрать уровень качества в GPT Image 2.6

Уровень качества — это поле quality со значениями low, medium, high, xhigh и max. По описанию OpenAI он определяет, сколько подробностей модель может прорисовать, например фактуру или мелкие буквы. Вместе с разрешением уровень качества задаёт цену, а без выбора стоит high.

Уровень качестваКогда подходит
lowЧерновик и быстрая проверка идеи
mediumОбычная работа: на этом уровне качества сделана большая часть примеров в руководстве OpenAI
highМелкий текст, подписи, графики и схемы
xhigh, maxСовет OpenAI для поколения 2.5: когда на более низких уровнях качества требование остаётся невыполненным

Удобный порядок такой: сначала проверьте на низком уровне качества, верно ли модель поняла задачу. Когда содержание и вёрстка устраивают, поднимите уровень качества и сравните результат при том же запросе.

Для поколения 2.5 OpenAI предупреждает, что результат на более высоком уровне качества зависит от запроса, а одно название уровня качества у разных моделей значит разное. Поэтому сравнивайте готовые изображения. Страница — руководство OpenAI по промтам.

Что такое сложность в GPT Image 2.6

Сложность — это настройка песочницы и API, поле complexity. Она задаёт, сколько модель планирует перед тем, как рисовать. Значения — low, medium и high, а без выбора стоит high.

Качество и сложность — разные настройки. Качество отвечает за то, насколько подробно прорисовано изображение, а сложность за то, сколько модель продумывает сцену заранее. На цену сложность не влияет.

ЗначениеКогда подходит
lowТочечная правка: заменить фон или вывеску и не трогать остальное
mediumСцена с несколькими предметами и условиями
highВ кадре много текста, сложная вёрстка или много связанных предметов; может работать дольше и изменить лишнее

Сравнивать значения OpenAI советует при одном уровне качества. Когда промт уже задаёт вёрстку, текст и стиль, разница между значениями может быть почти незаметной. Страница — раздел о сложности в руководстве OpenAI.

Что в поколении 2.6 сделано ради точной правки

В объявлении о выпуске OpenAI пишет, что изображения теперь можно дорабатывать точнее, а персонажи, товары и детали бренда лучше сохраняются от правки к правке.

Для большинства правок он советует низкую сложность вместе с тем уровнем качества, который нужен задаче. Затем проверяйте, что всё вокруг изменённой детали осталось на месте.

В нашем тесте правка «Замени кота на собаку» заменила кота и сохранила остальной кадр.

Если часть изображения должна остаться в точности прежней, OpenAI предлагает собрать одобренную правку поверх исходного файла в редакторе.

Официальное имя GPT Image 2.6 Sunburst

В API OpenAI этот уровень модели пишется как gpt-image-2.6-sunburst, а в его справочнике стоит имя GPT-Image-2.6 Sunburst. В объявлении о выпуске поколение названо Images 2.6.

Свой идентификатор в GEN202 собран из уровня модели и режима, поэтому у генерации и правки он разный. Оба идентификатора стоят в разделе «API» этой страницы.

Выпуски GPT Image 2.6 Sunburst и дата анонса

В таблице собрано имя уровня модели у OpenAI, дата выхода, что вошло в выпуск и какое имя указывать в запросе к GEN202.

Имя у OpenAIДата по анонсуЧто появилосьИмя для поля model
GPT‑Image‑2.6 Sunburst4 ноября 2026Генерация для подробной работы и настройка сложностиgpt-image/2-6-sunburst-text-to-image
GPT‑Image‑2.6 Sunburst, правка4 ноября 2026Правка присланного изображенияgpt-image/2-6-sunburst-image-to-image

В журнале изменений API выпуск обоих уровней модели стоит под датой 4 ноября, и та же дата подписана на объявлении. Страница — журнал изменений API OpenAI.

Как перейти на GPT Image 2.6 с прошлого поколения

OpenAI предлагает переходить по шагам, и ниже этот порядок пересказан коротко.

  1. Соберите образцы. Возьмите типичные промты, исходники и готовые результаты. Добавьте трудные случаи: правки, точный текст, форму товара, прозрачный фон.
  2. Начните с того же уровня модели. С GPT Image 2.5 Sunburst переходите на 2.6 Sunburst, а с 2.5 Flare на 2.6 Flare. Если вы работаете на GPT Image 2 и она справляется, начните с Flare, а если на сложной задаче её не хватает, начните с Sunburst.
  3. Сравните при одинаковых условиях. Оставьте тот же промт, исходники, размер и уровень качества, а значение сложности в первом сравнении не меняйте.
  4. Меняйте по одной настройке. Меняйте либо качество, либо сложность, повторяйте запрос и считайте, как часто результат подходит и сколько времени это занимает.
  5. Переводите работу частями. Отдайте новой модели небольшую долю работы, смотрите на время ответа, сбои и повторы, а затем расширяйте эту долю.

В GEN202 смена поколения меняет значение поля model, а рядом появляются поля quality и complexity. Без поля quality запрос идёт на уровне качества high, и цена 1K остаётся прежней: 5,2 ₽, как у GPT Image 2.5 Sunburst.

Прошлое поколение работает как прежде на своей странице — GPT Image 2.5.

Что проверить в готовом изображении

OpenAI советует сверить результат с заданием по короткому списку.

  • Каждое слово читается и совпадает с нужным текстом.
  • Подписи и связи на схеме совпадают с заданием.
  • Лица, форма товара, ярлыки и детали исходников остались прежними.
  • Правка затронула только то, что вы просили изменить.
  • В файле с прозрачным фоном действительно есть прозрачные точки.

В перечне ограничений своих моделей OpenAI называет ещё согласованность повторяющихся персонажей и точную расстановку в строгой вёрстке. Сложный запрос, по его словам, может выполняться до двух минут. Перечень стоит в руководстве по генерации изображений.

Надписи в кадре GPT Image 2.6 Sunburst

Текст для кадра пишите в кавычках и указывайте, где он стоит и каким шрифтом набран. Редкое слово или название бренда можно разобрать по буквам, а лишний текст попросите не добавлять.

OpenAI советует назвать, сколько раз надпись должна появиться. Для мелкого текста, плотной информации и нескольких шрифтов он предлагает сравнить уровни качества medium и high.

В перечне ограничений OpenAI пишет, что точное место надписи и её чёткость всё ещё могут даваться модели трудно. Поэтому готовую надпись проверяйте на полном размере файла.

Одна покупка на оба уровня модели GPT Image 2.6

Один ключ GEN202 и один баланс открывают и Sunburst, и Flare вместе с остальным каталогом.

Вкладка на этой странице и значение поля model в коде переключают один и тот же уровень модели. Порядок входа, пополнения и выпуска ключа собран на странице GPT Image API.

GIF в GPT Image 2.6 Sunburst

Кроме изображения и вектора Sunburst делает анимацию GIF. В запросе для этого ставится output_format со значением gif, а в песочнице выбирается результат «Анимация (GIF)». Каждый кадр в GEN202 — до 512×512 точек.

Число кадров задаёт поле frame_count: от 2 до 16, без него 9. Длительность одного кадра задаёт поле frame_duration_ms: от 20 до 2 000 миллисекунд, без него 200. Оба поля описаны в руководстве OpenAI по генерации изображений.

В промте OpenAI советует назвать героя, его движение и то, как анимация повторяется по кругу. Чтобы повтор шёл плавно, задайте позу, в которую герой вернётся в конце, и скажите, двигается ли камера. Пример стоит в руководстве OpenAI по промтам.

В этом примере Sunburst сделал анимацию из 9 кадров по 200 миллисекунд, и один круг длится 1,8 секунды.

Чтобы анимация опиралась на ваши изображения, OpenAI советует присылать их в режиме правки. В GEN202 так можно приложить до 15 изображений за запрос.

Все кадры модель рисует на одном листе, поэтому цена GIF зависит от числа кадров и уровня качества, а длительность кадра на неё не влияет. При качестве high анимация из 9 кадров стоит 10,3 ₽.

Цена кадра GPT Image 2.6 Sunburst и что на неё влияет

Цену изображения задают разрешение и уровень качества, а у GIF вместо разрешения её задаёт число кадров. Пропорция и сложность на сумму не влияют, а у обоих уровней модели суммы одинаковые.

Правка стоит дороже генерации: в цену уровня качества уже входит один исходник, а каждый следующий добавляет доплату. Все суммы стоят в таблице цен.

Пополнения на 500 ₽ хватает на 208 генераций GPT Image 2.6 Sunburst по самой низкой цене модели и на 7 по самой высокой. Приветственных кредитов, которые начисляются при первом входе, хватает на 10 генераций GPT Image 2.6 Sunburst по низкой цене.

Правка GPT Image 2.6 Sunburst в несколько заходов

Следующий шаг начинается с прошлого результата: его отправляют как исходник, просят одно изменение и заново перечисляют, что должно остаться. За один запрос можно прислать до 15 исходников.

Отсылка вроде «в том же стиле, что раньше» работает, но важные условия OpenAI советует повторять, как только изображение начало меняться. Сравнивайте варианты до того, как добавлять новые указания: так видно, какое изменение помогло.

После нескольких правок проверяйте и последний результат, и промежуточные.

Предмет на прозрачном фоне из присланного снимка

Чтобы получить товар со снимка на прозрачном фоне, пришлите снимок, выберите в поле background значение transparent и попросите в промте отдельный предмет без сцены.

OpenAI советует перечислить всё лишнее: сплошную подложку, шахматку, сцену и тень. Рядом назовите то, что нужно сохранить: форму товара и читаемость ярлыка.

При каждой следующей правке того же файла требование о прозрачном фоне повторяйте заново.

GPT-Image-2.6 Sunburst в справочнике моделей OpenAI

Как купить доступ к GPT Image 2.6 Sunburst API в России, чем платить и как выпустить ключ, подробно написано на странице GPT Image API — порядок один для всех моделей каталога.

GPT Image 2.6 Sunburst API из России

Работать из России можно без VPN, а платить — рублями с карты российского банка. Прямой доступ идёт через биллинг поставщика, и счёт он выставляет в долларах. GEN202 стоит между вами и поставщиком: расчёты с ним наши, вы платите российскому продавцу.

GPT Image 2.6 Sunburst — базовый уровень модели поколения 2.6 в семействе GPT Image. В API самого OpenAI он называется gpt-image-2.6-sunburst.

Официальный канал OpenAI — видео «GPT-Image-2.6: Faster image generation with Flare and Sunburst» от 4 ноября 2026 года, идёт полторы минуты.

Вопросы и ответы

Как вызвать GPT Image 2.6 Sunburst через API из России?
Обычным запросом на api.gen202.com. Это адрес GEN202, а не адрес OpenAI, и VPN для обращения к нему не нужен. Поле model принимает идентификатор режима: генерация из текста (gpt-image/2-6-sunburst-text-to-image), правка изображения (gpt-image/2-6-sunburst-image-to-image). Порядок из двух запросов с примерами кода разобран в документации.
Сколько стоит GPT Image 2.6 Sunburst
Цена за генерацию GPT Image 2.6 Sunburst — генерация из текста — от 4.8 кр. (2,4 ₽ · $0.0218) в 1K low до 140.8 кр. (70,4 ₽ · $0.64) в 4K max; правка изображения — от 7.3 кр. (3,65 ₽ · $0.0332) в 1K low до 143.3 кр. (71,65 ₽ · $0.6514) в 4K max с одним исходником, а с 15 исходниками до 177.3 кр. (88,65 ₽ · $0.8059). Цена известна до запуска, и столько же спишется, а задача, завершившаяся ошибкой, не тарифицируется.
Нужны ли VPN и иностранная карта для GPT Image 2.6 Sunburst
Нет, не нужны ни то, ни другое: запрос к GPT Image 2.6 Sunburst уходит на наш адрес, а не на адрес OpenAI, и договариваться с OpenAI клиенту не о чем. Оплата рублями с карты российского банка.
Что GPT Image 2.6 Sunburst принимает на вход
Обязательные поля запроса. Генерация из текста: prompt — от 1 до 20 000 символов. Правка изображения: prompt — от 1 до 20 000 символов; input_urls — от 1 до 15 ссылок на изображение. Остальные поля необязательны.
Как подключить GPT Image 2.6 Sunburst API и сделать первый вызов
Войти на сайт и выпустить ключ в кабинете: при первом входе начисляется 50 кредитов, а сам ключ открывает и GPT Image 2.6 Sunburst, и остальной каталог. Ни договора с OpenAI, ни его собственного ключа клиенту не нужно. Дальше идут два запроса: первый ставит задачу с идентификатором gpt-image/2-6-sunburst-text-to-image в поле model и отвечает её номером, второй по этому номеру отдаёт состояние задачи и ссылку на результат.

Цена GPT Image 2.6 Sunburst рядом с другими моделями

Цена за одно изображение в 1K с настройками по умолчанию. Модели стоят по дате выхода: выше GPT Image 2.6 Sunburst те, что вышли позже, ниже те, что раньше.

Модель Цена, 1K Разница в цене Вышла
GPT Image 2.6 Sunburst $0.04735,2 ₽ эта модель 4 ноября 2026
GPT Image 2.6 Flare $0.04735,2 ₽ та же цена 4 ноября 2026
Nano Banana 2.1 $0.03183,5 ₽ на 33% дешевле 6 октября 2026
GPT Image 2.5 Sunburst $0.04735,2 ₽ та же цена 8 сентября 2026
GPT Image 2.5 Flare $0.04735,2 ₽ та же цена 8 сентября 2026
Grok Imagine Image 2.0 $0.03593,95 ₽ на 24% дешевле 7 августа 2026
Seedream 5 Pro $0.06056,65 ₽ на 28% дороже 8 июля 2026
GPT Image 2 $0.077,7 ₽ на 48% дороже 21 апреля 2026
Nano Banana 2 $0.06557,2 ₽ на 38% дороже 26 февраля 2026
Seedream 5 Lite $0.04364,8 ₽ на 8% дешевле 13 февраля 2026
Nano Banana Pro $0.127314 ₽ на 169% дороже 20 ноября 2025

Отдельная страница сравнения — Nano Banana 2 или GPT Image 2.

GPT Image 2.6 Flare — модель поменьше из поколения GPT Image 2.6 от OpenAI, вышедшая 4 ноября 2026 года вместе с Sunburst. OpenAI рассчитал её на работу, где важнее всего время ответа. Цена через GEN202 — от 2,4 ₽ до 70,4 ₽ за генерацию, и складывается она из разрешения и уровня качества.

Что OpenAI говорит про GPT Image 2.6 Flare

В справочнике моделей Flare подписан как модель для генерации и правки при быстрой работе шаг за шагом. OpenAI предлагает её для интерактивной работы с изображениями. Страница — карточка модели GPT-Image-2.6 Flare.

В объявлении о выпуске OpenAI сравнивает поколение с прежним так: «Images 2.6 generates images 50% faster than before». Перевод наш: «Images 2.6 создаёт изображения на 50% быстрее, чем раньше». При уровне качества low Flare, по его словам, может справиться всего за шесть секунд. Страница — объявление о выпуске Images 2.6.

Там же сказано, что у Flare стала лучше вёрстка плакатов, товарных изображений и других профессиональных материалов.

Руководство по промтам называет Flare моделью поменьше для работы, где скорость важнее всего. Страница — руководство по промтам для GPT Image 2.6.

Слова OpenAI о GPT Image 2.6 Flare приведены по его страницам на 5 ноября 2026 года.

Для чего OpenAI предлагает GPT Image 2.6 Flare

Flare подходит для работы, где результат смотрят сразу и тут же просят следующее изменение.

Рядом на этой же странице стоит GPT Image 2.6 Sunburst — уровень модели для подробной работы. Он переключается вкладкой выше, а в запросе меняется только значение поля model.

Что изменилось против GPT Image 2.5

Среди перемен OpenAI называет в объявлении о выпуске более высокую скорость, лучшую вёрстку у Flare, более высокую согласованность правок у Sunburst и настройку сложности.

Что сравниваемGPT Image 2.5GPT Image 2.6
От чего зависит цена в GEN202РазрешениеРазрешение или число кадров GIF, уровень качества, число исходников
Уровень качества в запросе к GEN202—low, medium, high, xhigh и max
Сложность в запросе к GEN202—low, medium и high
Пропорций на выбор815

Обе новые настройки есть только в запросах к 2.6: выбранный уровень качества входит в цену, а сложность на неё не влияет.

Чем GPT Image 2.6 Flare отличается от Sunburst

Flare — модель поменьше: её берут, когда важнее всего быстро получить результат. Sunburst — базовая модель: её берут, когда нужно больше подробностей или точная правка.

В нашем тесте 5 ноября 2026 года при 1K, качестве high и пропорции 1:1 Flare ответил за 12 секунд и на генерации, и на правке, а Sunburst за 50 и 51 секунду. Каждый уровень модели и режим запускали один раз.

Поля, уровни качества, разрешения, пропорции и цена у обоих уровней модели общие, а в запросе меняется только значение поля model. Оба идентификатора показаны в разделе «API».

Выбор OpenAI советует проверять на своей задаче. Если Sunburst подошёл, отправьте те же промты и исходники во Flare и сравните результат и время ответа.

Качество и сложность в GPT Image 2.6 Flare

Уровень качества решает, сколько подробностей модель прорисует, а сложность решает, сколько она планирует перед тем, как рисовать. Уровень качества влияет на цену, сложность на цену не влияет.

Для черновиков и быстрых проверок начинают с low. Для мелких надписей и плотного текста сравнивают medium и high. Уровни качества xhigh и max OpenAI для поколения 2.5 советует оставлять на случай, когда более низких уровней качества не хватает.

Сложность выбирается в песочнице и в API, поле complexity. Значение low подходит для точечной правки, когда нужно заменить фон или вывеску и не трогать остальное. Значение high помогает, когда в кадре много текста, сложная вёрстка или много связанных предметов, но может работать дольше и изменить лишнее. Без выбора стоит high.

В нашем тесте при 1K, уровне качества low, сложности low и прозрачном фоне Flare ответил за 6 секунд. Это один запуск.

Официальное имя GPT Image 2.6 Flare и как оно пишется в запросе

В справочнике OpenAI этот уровень модели называется GPT-Image-2.6 Flare, а в запросе к его API пишется gpt-image-2.6-flare.

Объявление вышло под именем продукта, Images 2.6, а модели в API получили свои имена. Так же было у поколения 2.5: объявление называлось ChatGPT Images 2.5.

В GEN202 в поле model идёт свой идентификатор, и у генерации с правкой он разный. Точное написание стоит в разделе «API» и в документации.

Выпуски GPT Image 2.6 Flare и дата анонса

Оба уровня модели вышли в один день. Ниже показано, как Flare называется у OpenAI и каким именем вызывается через GEN202.

Имя у OpenAIДата по анонсуЧто появилосьИмя для поля model
GPT‑Image‑2.6 Flare4 ноября 2026Быстрая генерация и настройка сложностиgpt-image/2-6-flare-text-to-image
GPT‑Image‑2.6 Flare, правка4 ноября 2026Правка присланного изображенияgpt-image/2-6-flare-image-to-image

Объявление подписано датой «November 4, 2026». Та же дата стоит у выпуска в журнале изменений API.

Что GPT Image 2.6 Flare принимает на вход

В запросе обязателен промт длиной до 20 000 символов. Рядом можно выбрать уровень качества, сложность, разрешение, фон и одну из 15 пропорций или значение auto. В правке к этому добавляются исходники, до 15 за один запрос.

Все пределы и значения полей стоят в таблице раздела «API». Изображение приходит файлом PNG. Размеры ниже взяты из файлов нашего теста.

РазрешениеФайл при квадратном кадре
1K1024 × 1024
2K2048 × 2048
4K2880 × 2880

Как составить описание для GPT Image 2.6 Flare

Описание, оно же промт, пишется обычными словами. Порядок ниже пересказывает руководство OpenAI для этого поколения.

  1. Начните с того, что нужно получить. Назовите предмет и назначение: фотография товара, рекламный макет, схема. Сразу укажите композицию и важные условия расположения.
  2. Опишите то, что будет видно. Назовите материалы, свет, цвета и вид изображения. Если нужна фотография, напишите об этом прямо и опишите кадрирование и фактуру.
  3. Опишите людей и действия. Укажите, как человек попадает в кадр, куда он смотрит и как держит предмет.
  4. Подпишите исходники. Назовите каждый исходник по номеру и по роли: предмет, стиль, одежда, фон. Скажите, что откуда перенести.
  5. Отделите изменение от условий. В правке пишите, что поменять только эту деталь, и перечисляйте то, что должно остаться: лицо, форму, вёрстку, свет, подписи.
  6. Уточняйте по одному изменению. Отправляйте прошлый результат как исходник, просите одно изменение и повторяйте условия, если изображение начало меняться.

Прозрачный фон в GPT Image 2.6

Фон выбирается полем background: transparent даёт прозрачный фон, opaque обычный, а при auto выбирает модель. Для прозрачного фона описывайте в промте один предмет без сцены и окружения.

OpenAI тоже советует просить отдельный предмет и прозрачный фон вместе. В нашем тесте такой запрос дал прозрачный фон у обоих уровней модели, а запрос со сценой, «на фоне Земли», вернул обычный фон.

Прозрачность проверяйте по самому файлу: в нём должны быть настоящие прозрачные точки. Нарисованная шахматка прозрачностью не считается. При следующей правке того же изображения условие о прозрачном фоне повторяют.

Анимация GIF в GPT Image 2.6 Flare

Flare отдаёт результат и короткой анимацией, файлом GIF из нескольких кадров. В песочнице для этого есть кнопка «Анимация (GIF)», а в API — значение gif у поля output_format.

Кадров в анимации бывает от 2 до 16, и каждый показывается от 20 до 2 000 миллисекунд. Если эти поля не задавать, шлюз поставит 9 кадров по 200 миллисекунд. Размер кадра — до 512×512 точек.

Плавный повтор, по совету OpenAI, выходит тогда, когда герой в конце движения возвращается в начальную позу, а промт прямо говорит, стоит ли камера на месте.

Если анимация должна опираться на ваши изображения, их присылают в режиме правки. Так GIF устроен и в API самого OpenAI, об этом написано в его руководстве по генерации.

Модель рисует кадры на одном листе и берёт плату за лист целиком. Поэтому от 2 до 8 кадров стоят одинаково: при качестве medium это 4 ₽. Все варианты GIF стоят в разделе «Цены».

Доступ к GPT Image 2.6 Flare из России

У OpenAI перед работой с моделями GPT Image может потребоваться проверка организации в консоли разработчика. Ключ GEN202 работает сразу после выпуска.

Генерация и правка обоих уровней модели открываются одним ключом и списываются с одного баланса. Как войти, пополнить баланс и выпустить ключ, написано на странице GPT Image API.

Сколько изображений выходит из пополнения у GPT Image 2.6 Flare

Пополнения на 500 ₽ хватает на 208 генераций GPT Image 2.6 Flare по самой низкой цене модели и на 7 по самой высокой. Приветственных кредитов, которые начисляются при первом входе, хватает на 10 генераций GPT Image 2.6 Flare по низкой цене. Цена одной генерации GPT Image 2.6 Flare зависит от выбранных разрешения и уровня качества.

Оплата идёт за каждое изображение, и сумма видна до запуска.

Как устроена правка в GPT Image 2.6 Flare

К запросу прикладывают ссылки на изображения в поле input_urls, до 15 за раз, а промт говорит, что с ними сделать.

Этому режиму обязательно нужны ссылки на исходники, остальные поля те же, что у генерации. В цену уровня качества входит один исходник, а каждый следующий добавляет доплату.

В нашем тесте запрос «Замени кота на собаку» заменил кота и сохранил остальной кадр. Правка в 2K без заданной пропорции при квадратном исходнике вернула файл 2048 × 2048.

Как удержать в GPT Image 2.6 Flare то, что должно остаться прежним

Рядом с изменением перечислите, что остаётся на месте, например черты лица и расположение предметов. Для одной детали начинайте с низкой сложности.

OpenAI отдельно советует назвать то, что нужно исключить, например лишний текст, логотипы и водяные знаки. После правки проверьте, что вокруг изменённой детали всё осталось на месте.

GPT-Image-2.6 Flare в справочнике моделей OpenAI

Как купить доступ к GPT Image 2.6 Flare API в России, чем платить и как выпустить ключ, подробно написано на странице GPT Image API — порядок один для всех моделей каталога.

GPT Image 2.6 Flare API из России

Работать из России можно без VPN, а платить — рублями с карты российского банка. Прямой доступ идёт через биллинг поставщика, и счёт он выставляет в долларах. GEN202 стоит между вами и поставщиком: расчёты с ним наши, вы платите российскому продавцу.

GPT Image 2.6 Flare входит в семейство GPT Image как уровень модели поменьше из поколения 2.6. Сам OpenAI пишет его имя так: gpt-image-2.6-flare.

Официальный канал OpenAI — видео «GPT-Image-2.6: Faster image generation with Flare and Sunburst» от 4 ноября 2026 года, идёт полторы минуты.

Вопросы и ответы

Как вызвать GPT Image 2.6 Flare через API из России?
Обычным запросом на api.gen202.com. Это адрес GEN202, а не адрес OpenAI, и VPN для обращения к нему не нужен. Поле model принимает идентификатор режима: генерация из текста (gpt-image/2-6-flare-text-to-image), правка изображения (gpt-image/2-6-flare-image-to-image). Порядок из двух запросов с примерами кода разобран в документации.
Сколько стоит GPT Image 2.6 Flare
Цена за генерацию GPT Image 2.6 Flare — генерация из текста — от 4.8 кр. (2,4 ₽ · $0.0218) в 1K low до 140.8 кр. (70,4 ₽ · $0.64) в 4K max; правка изображения — от 7.3 кр. (3,65 ₽ · $0.0332) в 1K low до 143.3 кр. (71,65 ₽ · $0.6514) в 4K max с одним исходником, а с 15 исходниками до 177.3 кр. (88,65 ₽ · $0.8059). Цена известна до запуска, и столько же спишется, а задача, завершившаяся ошибкой, не тарифицируется.
Нужны ли VPN и иностранная карта для GPT Image 2.6 Flare
Нет, не нужны ни то, ни другое: запрос к GPT Image 2.6 Flare уходит на наш адрес, а не на адрес OpenAI, и договариваться с OpenAI клиенту не о чем. Оплата рублями с карты российского банка.
Что GPT Image 2.6 Flare принимает на вход
Обязательные поля запроса. Генерация из текста: prompt — от 1 до 20 000 символов. Правка изображения: prompt — от 1 до 20 000 символов; input_urls — от 1 до 15 ссылок на изображение. Остальные поля необязательны.
Как подключить GPT Image 2.6 Flare API и сделать первый вызов
Войти на сайт и выпустить ключ в кабинете: при первом входе начисляется 50 кредитов, а сам ключ открывает и GPT Image 2.6 Flare, и остальной каталог. Ни договора с OpenAI, ни его собственного ключа клиенту не нужно. Дальше идут два запроса: первый ставит задачу с идентификатором gpt-image/2-6-flare-text-to-image в поле model и отвечает её номером, второй по этому номеру отдаёт состояние задачи и ссылку на результат.

Цена GPT Image 2.6 Flare рядом с другими моделями

Цена за одно изображение в 1K с настройками по умолчанию. Модели стоят по дате выхода: выше GPT Image 2.6 Flare те, что вышли позже, ниже те, что раньше.

Модель Цена, 1K Разница в цене Вышла
GPT Image 2.6 Sunburst $0.04735,2 ₽ та же цена 4 ноября 2026
GPT Image 2.6 Flare $0.04735,2 ₽ эта модель 4 ноября 2026
Nano Banana 2.1 $0.03183,5 ₽ на 33% дешевле 6 октября 2026
GPT Image 2.5 Sunburst $0.04735,2 ₽ та же цена 8 сентября 2026
GPT Image 2.5 Flare $0.04735,2 ₽ та же цена 8 сентября 2026
Grok Imagine Image 2.0 $0.03593,95 ₽ на 24% дешевле 7 августа 2026
Seedream 5 Pro $0.06056,65 ₽ на 28% дороже 8 июля 2026
GPT Image 2 $0.077,7 ₽ на 48% дороже 21 апреля 2026
Nano Banana 2 $0.06557,2 ₽ на 38% дороже 26 февраля 2026
Seedream 5 Lite $0.04364,8 ₽ на 8% дешевле 13 февраля 2026
Nano Banana Pro $0.127314 ₽ на 169% дороже 20 ноября 2025

Отдельная страница сравнения — Nano Banana 2 или GPT Image 2.