Быстрый старт
Первая генерация за пару минут: получите ключ, отправьте запрос и заберите результат.
Шаг 1. Получите ключ
- Зарегистрируйтесь и пополните баланс в кабинете, в разделе Баланс.
- На странице API ключи нажмите «Выпустить ключ». Ключ начинается с
ag_и показывается один раз — сразу сохраните его. - Положите ключ в переменную окружения — все примеры в документации берут его оттуда:
Терминал
export APIGRID_KEY="ag_…"Шаг 2. Создайте задачу
Отправьте POST /v1/tasks: в model — ID модели, в input — её параметры. Для примера сгенерируем картинку в Nano Banana 2:
curl -X POST https://api.apigrid.cloud/v1/tasks \
-H "Authorization: Bearer $APIGRID_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "nano-banana-2",
"input": {
"prompt": "Бумажный кораблик на озере на закате, мягкий свет",
"aspect_ratio": "16:9",
"resolution": "1k"
}
}'Ответ приходит сразу, со статусом 202. Цена уже списана с баланса — она в поле price:
Ответ
{
"id": "7e70388cf461f88d7149b1077e4ad098",
"object": "task",
"model": "nano-banana-2",
"status": "queued",
"output": null,
"error": null,
"price": {
"amount": "3.360000",
"currency": "RUB",
"refunded": false
},
"created_at": "2026-10-15T09:12:04.512Z",
"started_at": "2026-10-15T09:12:04.880Z",
"completed_at": null
}Какие параметры есть у модели и что они значат — на её странице в разделе Модели и параметры.
Шаг 3. Получите результат
Проще всего — опрашивать задачу запросом GET /v1/tasks/{id}, пока статус не станет completed или failed:
import os
import time
import requests
API = "https://api.apigrid.cloud/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['APIGRID_KEY']}"}
task_id = "7e70388cf461f88d7149b1077e4ad098"
while True:
task = requests.get(f"{API}/tasks/{task_id}", headers=HEADERS).json()
if task["status"] in ("completed", "failed"):
break
time.sleep(3) # картинке хватит 3 с, для видео берите 10–15 с
if task["status"] == "completed":
for f in task["output"]["files"]:
print(f["kind"], f["url"])
else:
print("Ошибка:", task["error"]["message"]) # деньги уже вернулись на балансГотовая задача выглядит так:
Ответ
{
"id": "7e70388cf461f88d7149b1077e4ad098",
"object": "task",
"model": "nano-banana-2",
"status": "completed",
"output": {
"urls": [
"https://tempfile.aiquickdraw.com/…/image.jpg"
],
"files": [
{
"url": "https://tempfile.aiquickdraw.com/…/image.jpg",
"kind": "image"
}
]
},
"error": null,
"price": {
"amount": "3.360000",
"currency": "RUB",
"refunded": false
},
"created_at": "2026-10-15T09:12:04.512Z",
"started_at": "2026-10-15T09:12:04.880Z",
"completed_at": "2026-10-15T09:12:31.877Z"
}В рабочем приложении удобнее не опрашивать, а получать результат на свой сервер: передайте webhook_url при создании задачи — см. Вебхуки.