Nano Banana
google/nano-banana-edit Лёгкая и быстрая модель Google: генерация по тексту и редактирование фото по инструкции.
Цена: $0.02 за изображение · неудачные задачи — $0 · ~1.5 мин
Результат

Здесь появится результат.
Обычно это занимает ~1.5 мин.
Ответ recordInfo (data):
Запустите задачу, чтобы увидеть JSON.
Замени фон на ночной неоновый город
1. Создать задачу POST /api/v1/jobs/createTask
curl -X POST https://ai.aimixmedia.site/api/v1/jobs/createTask \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: order-123" \
-d '{
"model": "google/nano-banana-edit",
"callBackUrl": "https://your-app.example/callback",
"input": {
"prompt": "Замени фон на ночной неоновый город",
"image_urls": [
"https://example.com/photo.jpg"
],
"aspect_ratio": "1:1",
"output_format": "png"
}
}'import time, requests
API = "https://ai.aimixmedia.site/api/v1"
HEADERS = {"Authorization": "Bearer YOUR_API_KEY"}
task = requests.post(f"{API}/jobs/createTask", headers=HEADERS, json={
"model": "google/nano-banana-edit",
"callBackUrl": "https://your-app.example/callback",
"input": {
"prompt": "Замени фон на ночной неоновый город",
"image_urls": [
"https://example.com/photo.jpg"
],
"aspect_ratio": "1:1",
"output_format": "png"
}
}).json()
task_id = task["data"]["taskId"]
while True:
info = requests.get(f"{API}/jobs/recordInfo", headers=HEADERS, params={"taskId": task_id}).json()["data"]
if info["state"] in ("success", "fail"):
break
time.sleep(4)
print(info["state"], info.get("resultJson") or info.get("failMsg"))const API = "https://ai.aimixmedia.site/api/v1";
const headers = { Authorization: "Bearer YOUR_API_KEY", "Content-Type": "application/json" };
const { data } = await fetch(`${API}/jobs/createTask`, {
method: "POST", headers,
body: JSON.stringify({
"model": "google/nano-banana-edit",
"callBackUrl": "https://your-app.example/callback",
"input": {
"prompt": "Замени фон на ночной неоновый город",
"image_urls": [
"https://example.com/photo.jpg"
],
"aspect_ratio": "1:1",
"output_format": "png"
}
}),
}).then((r) => r.json());
let info;
do {
await new Promise((r) => setTimeout(r, 4000));
info = (await fetch(`${API}/jobs/recordInfo?taskId=${data.taskId}`, { headers }).then((r) => r.json())).data;
} while (!["success", "fail"].includes(info.state));
console.log(info.state, info.resultJson ?? info.failMsg);
Ответ: {"code":200,"msg":"success","data":{"taskId":"task_..."}}. callBackUrl и Idempotency-Key необязательны.
2. Статус и результат GET /api/v1/jobs/recordInfo
curl "https://ai.aimixmedia.site/api/v1/jobs/recordInfo?taskId=TASK_ID" \
-H "Authorization: Bearer YOUR_API_KEY"
data.state: waiting | queuing | generating | success | fail. При успехе data.resultJson — строка JSON с resultUrls.
3. Загрузить фото (необязательно) POST /api/v1/files/upload
curl -X POST https://ai.aimixmedia.site/api/v1/files/upload \
-H "Authorization: Bearer YOUR_API_KEY" -F "file=@photo.jpg"
Возвращает data.url — передайте его в input.image_urls. Подойдут и любые публичные https-ссылки.
Параметры input
| Поле | Тип | Значения |
|---|---|---|
prompt * | string | до 5000 символов |
image_urls * | string[] (URL) | до 10 URL |
aspect_ratio | string | 1:1 | 9:16 | 16:9 | 3:4 | 4:3 | 3:2 | 2:3 | 5:4 | 4:5 | 21:9 | auto · по умолч. 1:1 |
output_format | string | png | jpeg · по умолч. png |

Редактирование фото по текстовой инструкции (ID google/nano-banana-edit): замена фона, одежды, стиля, объединение нескольких изображений. Нужен минимум один референс (до 10).
Цена
Image to Image · google/nano-banana-edit | $0.02 |
Text to Image · google/nano-banana | $0.02 |
| Задача завершилась ошибкой | $0 (авто-возврат) |
| Повтор с тем же Idempotency-Key | $0 |
Хранение
Результаты хранятся 30 дней, история запусков — бессрочно. Скачайте важные файлы заранее.
ID модели для API: google/nano-banana-edit · алиасы: nano-banana-edit