DrawNew.comDrawNew.com

Справочник API

POST /api/v1/generate · GET /api/v1/tasks

Публичные эндпоинты для пакетной интеграции и интеграции с агентами. Аутентификация с помощью API-ключа, уже привязанного к вашей учётной записи — отдельный токен не требуется.

Аутентификация

Включите ваш API-ключ в заголовок Authorization. Ключ — это тот же, что назначен вашей учётной записи в user_keys (предоставляется DrawNew после активации вашего плана). Неверный ключ возвращает 401.

HEADER
Authorization: Bearer <your_api_key>
401 RESPONSE
{ "error": { "type": "invalid_api_key", "message": "Invalid API key" } }
POST/api/v1/generate

Создание задачи генерации

Отправляет задачу в upstream-провайдер изображений и немедленно возвращает task_ids. Чтобы получить результирующее изображение, вы можете (A) опрашивать GET /v1/tasks/:id самостоятельно, или (B) просто открыть сайт — вкладка Создание изображений той же учётной записи автоматически подхватит задачу и сохранит результаты в «Мои работы».

Запрос

curl -X POST https://www.drawnew.com/api/v1/generate \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "A serene Japanese garden in autumn",
    "model": "flash",
    "mode": "text",
    "aspect": "16:9",
    "imageSize": "2K",
    "count": 1
  }'

Ответ

{
  "task_ids": ["task_abc123"],
  "email": "you@example.com"
}

Параметры тела

ПолеТипОбязательноеПо умолчаниюОписание
promptstringПромпт генерации
modelstringgpt-image-2ID модели (см. ниже)
modetext | edit | fusiontexttext=текст в изображение; edit=редактирование одного изображения; fusion=слияние нескольких изображений
aspectstring1:1Соотношение сторон: 1:1, 2:3, 3:2, 3:4, 4:3, 9:16, 16:9, 21:9, …
imageSize1K | 2K | 4K2KРазрешение вывода
countnumber1Количество изображений (ограничено моделью)
imageUrlsstring[][]URL референсных изображений для edit / fusion

Доступные модели

modelНазваниеПоддерживаемые режимы
gpt-image-2GPT Image 2text, edit
proNano Banana Protext, edit
flash2Nano Banana 2text, edit
flashNano Bananatext, edit

Ошибки

HTTPerror.typeКогда
400invalid_requestТело не является JSON, промпт пуст, модель неизвестна или модель не поддерживает режим
401unauthorizedОтсутствует заголовок Authorization или неверный формат
401invalid_api_keyAPI-ключ не найден в user_keys
403no_creditsМесячная квота исчерпана. Обновите тариф на https://drawnew.com/pricing
GET/api/v1/tasks/{task_id}

Опрос одной задачи

Возвращает статус задачи upstream. Статус — один из: queued / in_progress / completed / failed. completed добавляет поле imageUrl; failed добавляет поле error.

Запрос

curl https://www.drawnew.com/api/v1/tasks/task_abc123 \
  -H "Authorization: Bearer <your_api_key>"

Ответ

{
  "task_id": "task_abc123",
  "status": "completed",
  "progress": 100,
  "imageUrl": "https://files.example.com/generated/xxx.png"
}
GET/api/v1/tasks?ids=t1,t2

Опрос нескольких задач

Опрашивает множество задач за один вызов для экономии round-trips и проверок аутентификации. Результаты возвращаются в том же порядке, что и входные id. Максимум 20 id за запрос.

Запрос

curl "https://www.drawnew.com/api/v1/tasks?ids=task_abc,task_def,task_ghi" \
  -H "Authorization: Bearer <your_api_key>"

Ответ

{
  "tasks": [
    { "task_id": "task_abc", "status": "completed", "progress": 100, "imageUrl": "https://..." },
    { "task_id": "task_def", "status": "in_progress", "progress": 60 },
    { "task_id": "task_ghi", "status": "failed", "progress": 0, "error": "model overloaded" }
  ]
}

Ошибки опроса

HTTPerror.typeКогда
400invalid_requestОтсутствует параметр ids или более 20 ids
401unauthorizedОтсутствует заголовок Authorization или неверный формат
401invalid_api_keyAPI-ключ не найден в user_keys
POST/api/v1/upload

Загрузка референсного изображения (для edit / fusion)

Серверная загрузка изображения с публичного URL и его размещение на CDN upstream, возвращая стабильный URL. Передайте результат в imageUrls generate_image. Максимум 25 МБ на изображение; принимается png / jpeg / webp / gif / bmp.

Запрос

curl -X POST https://www.drawnew.com/api/v1/upload \
  -H "Authorization: Bearer <your_api_key>" \
  -H "Content-Type: application/json" \
  -d '{"source_url": "https://example.com/cat.png"}'

Ответ

{
  "url": "https://files.example.com/uploads/abc123.png",
  "filename": "cat.png",
  "content_type": "image/png",
  "bytes": 524288
}
GET/api/v1/history?page=1&limit=20

Список истории генераций учётной записи

Возвращает прошлые генерации, привязанные к этому API-ключу, от самой новой к самой старой. Пагинация через page (начинается с 1) и limit (макс. 50).

Запрос

curl "https://www.drawnew.com/api/v1/history?page=1&limit=20" \
  -H "Authorization: Bearer <your_api_key>"

Ответ

{
  "items": [
    {
      "id": "tsk_img_xxx",
      "prompt": "a cat in autumn",
      "model": "flash",
      "mode": "text",
      "aspect": "16:9",
      "imageSize": "2K",
      "imageCount": 1,
      "images": ["https://..."],
      "refs": [],
      "createdAt": 1777461252000
    }
  ],
  "total": 42,
  "page": 1,
  "limit": 20,
  "total_pages": 3
}
GET/api/v1/user/status

Получение уровня/статуса учётной записи

Возвращает email, уровень (trial / starter / standard / pro) и настроен ли upstream-ключ. Полезно для агентов при принятии решения о возможности использования дорогой модели.

Запрос

curl https://www.drawnew.com/api/v1/user/status \
  -H "Authorization: Bearer <your_api_key>"

Ответ

{
  "email": "you@example.com",
  "tier": "pro",
  "has_key": true
}

Использование через MCP (Claude Desktop / Cursor / Cline)

Для LLM-агентов самый простой способ использовать DrawNew — через официальный MCP-сервер, опубликованный как @drawnew/mcp-server на npm. Он предоставляет 6 инструментов (generate_image, get_task, batch_get_tasks, upload_reference_image, list_my_generations, get_account_status) через stdio и работает с любым MCP-совместимым клиентом. Добавьте приведённый ниже фрагмент в MCP-конфигурацию вашего клиента — и всё.

Конфигурация Claude Desktop

Путь: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) · %APPDATA%\Claude\claude_desktop_config.json (Windows)

{
  "mcpServers": {
    "drawnew": {
      "command": "npx",
      "args": ["-y", "@drawnew/mcp-server"],
      "env": {
        "DRAWNEW_API_KEY": "<your_api_key>"
      }
    }
  }
}

Примечания

  • Результаты автоматически привязываются к учётной записи, которой принадлежит этот API-ключ — отправленная задача записывается в pending_tasks; когда та же учётная запись в следующий раз откроет вкладку Создание изображений на сайте, фронтенд возьмёт на себя опрос, сохранит результаты в generations / generation_images, и они появятся в «Моих работах» и библиотеке ресурсов. Если вам нужен чистый fire-and-forget без отображения в интерфейсе, выделите отдельную учётную запись для вызовов.
  • Проверка кредитов на сервере — если месячная квота исчерпана, API возвращает HTTP 403 с error.type=no_credits.
  • Рекомендуемый интервал опроса: 2–5 секунд. Пакетный эндпоинт принимает максимум 20 id за вызов.
  • Никогда не встраивайте ваш API-ключ в клиентский код. Используйте его только с вашего собственного бэкенда.
© 2026 DrawNew.com. All rights reserved.