Перейти к содержимому
API Reference

Результат генерации

GET /v1/requests/{request_id} — забрать результат.

Заберите готовый результат генерации с ссылками на медиа.

Песочница

GET
/v1/requests/{request_id}
Authorization<token>

API-ключ в заголовке Authorization со схемой Bearer:

Authorization: Bearer clipia_live_xxxxxxxxxxxxxxxxxxxxxx

Передавайте полную строку, включая префикс схемы Bearer и пробел. Также принимаются Authorization: Key <ключ> и заголовок X-Api-Key: <ключ> — выбирайте удобную схему. Ключ создаётся в личном кабинете (Настройки → API-ключи) и показывается один раз. Формат: clipia_live_… (боевой), clipia_test_… (песочница).

Sandbox / тестовый режим. Ключ с префиксом clipia_test_… работает в песочнице: submit не списывает кредиты и не запускает реальную генерацию — он мгновенно возвращает status: COMPLETED с детерминированным mock-результатом (фиксированный sample-ассет на media.clipia.ai). Поле cost показывает расчётную стоимость, но она не списывается. Вебхуки приходят тем же подписанным механизмом (HMAC-SHA256). Режим предназначен для отладки интеграции до подключения боевого ключа.

In: header

Path Parameters

request_idstringrequired

Идентификатор запроса генерации, полученный при submit.

Formatuuid

Response Body

curl -X GET "https://api.clipia.ai/v1/requests/764cabcf-b745-4b3e-ae38-1200304cf45b"

{
  "request_id": "764cabcf-b745-4b3e-ae38-1200304cf45b",
  "status": "COMPLETED",
  "model": "nano-banana-2",
  "output": {
    "images": [
      {
        "url": "https://media.clipia.ai/works/8f3a1c7e.png",
        "width": 1024,
        "height": 1024
      }
    ]
  },
  "cost": 12,
  "created_at": "2026-06-01T12:00:00Z",
  "completed_at": "2026-06-01T12:00:18Z"
}

{
  "request_id": "764cabcf-b745-4b3e-ae38-1200304cf45b",
  "status": "IN_PROGRESS",
  "queue_position": null,
  "progress": 70,
  "logs": []
}

{
  "error": {
    "type": "invalid_request_error",
    "code": "invalid_api_key",
    "message": "API-ключ отсутствует, неверный или отозван."
  }
}

{
  "error": {
    "type": "invalid_request_error",
    "code": "not_found",
    "message": "Запрос с таким идентификатором не найден."
  }
}

{
  "error": {
    "type": "invalid_request_error",
    "code": "rate_limit_exceeded",
    "message": "Превышен лимит запросов. Повторите позже."
  }
}

GET /v1/requests/:id возвращает результат генерации с полем output (код 200), когда статус терминальный (COMPLETED / FAILED / CANCELED), либо 202 пока запрос ещё в очереди или выполняется. Все медиа-URL ведут на CDN media.clipia.ai.

GET/v1/requests/:id

Запрос

Prop

Type

curl https://api.clipia.ai/v1/requests/764cabcf-b745-4b3e-ae38-1200304cf45b \
  -H "Authorization: Bearer $CLIPIA_KEY"
const result = await clipia.queue.result('764cabcf-b745-4b3e-ae38-1200304cf45b');

// Пока генерация выполняется, API отдаёт 202 → result.pending === true.
if (result.pending) {
  console.log('ещё в работе:', result.status);
} else {
  console.log(result.output?.images?.[0]?.url);
}
result = client.result("764cabcf-b745-4b3e-ae38-1200304cf45b")

# Пока генерация выполняется, API отдаёт 202 → result.pending == True.
if result.pending:
    print("ещё в работе:", result.status)
else:
    print(result.output["images"][0]["url"])

Результат для изображения

{
  "request_id": "764cabcf-b745-4b3e-ae38-1200304cf45b",
  "status": "COMPLETED",
  "model": "nano-banana-2",
  "output": {
    "images": [
      { "url": "https://media.clipia.ai/works/8f3a1c7e.png", "width": 1024, "height": 1024 }
    ]
  },
  "cost": 12,
  "created_at": "2026-06-01T12:00:00Z",
  "completed_at": "2026-06-01T12:00:18Z"
}

Для изображений output.images — массив объектов с полями url, width, height. Каждый элемент содержит ссылку на готовый кадр; если модель отдаёт исходник полного качества, он доступен в original_url.

Результат для видео

{
  "request_id": "a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d",
  "status": "COMPLETED",
  "model": "seedance-2-fast-i2v",
  "output": {
    "video": {
      "url": "https://media.clipia.ai/works/a1b2c3d4.mp4",
      "width": 1280,
      "height": 720,
      "duration": 4
    }
  },
  "cost": 40,
  "created_at": "2026-06-01T12:00:00Z",
  "completed_at": "2026-06-01T12:00:42Z"
}

Для видео output.video — объект с полями url, width, height, duration.

Поля ответа

Prop

Type

Коды ответа

HTTPКогдаТело
200COMPLETEDрезультат с output
200FAILED{ request_id, status: "FAILED", error: { code, message }, cost: 0, ... }
200CANCELEDтерминальный ответ со статусом CANCELED
202IN_QUEUE / IN_PROGRESSтекущий статус — продолжайте опрашивать
404неизвестный request_idenvelope ошибки

202 — это нормально

Код 202 приходит только для нетерминальных статусов: задача ещё выполняется. Терминальные FAILED и CANCELED — это финальный ответ и приходят с кодом 200. При FAILED кредиты возвращены полностью, а error санитизирован.