DrawNew.comPOST /api/v1/generate · GET /api/v1/tasks
Публичные эндпоинты для пакетной интеграции и интеграции с агентами. Аутентификация с помощью API-ключа, уже привязанного к вашей учётной записи — отдельный токен не требуется.
/api/v1/generateОтправляет задачу в upstream-провайдер изображений и немедленно возвращает task_ids. Чтобы получить результирующее изображение, вы можете (A) опрашивать GET /v1/tasks/:id самостоятельно, или (B) просто открыть сайт — вкладка Создание изображений той же учётной записи автоматически подхватит задачу и сохранит результаты в «Мои работы».
curl -X POST https://www.drawnew.com/api/v1/generate \
-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"]
}| Поле | Тип | Обязательное | По умолчанию | Описание |
|---|---|---|---|---|
| prompt | string | ✓ | — | Промпт генерации |
| model | string | gpt-image-2 | ID модели (см. ниже) | |
| mode | text | edit | fusion | text | text=текст в изображение; edit=редактирование одного изображения; fusion=слияние нескольких изображений | |
| aspect | string | 1:1 | Соотношение сторон: 1:1, 2:3, 3:2, 3:4, 4:3, 9:16, 16:9, 21:9, … | |
| imageSize | 1K | 2K | 4K | 2K | Разрешение вывода | |
| count | number | 1 | Количество изображений (ограничено моделью) | |
| imageUrls | string[] | [] | URL референсных изображений для edit / fusion |
| model | Название | Поддерживаемые режимы |
|---|---|---|
| gpt-image-2 | GPT Image 2 | text, edit |
| pro | Nano Banana Pro | text, edit |
| flash2 | Nano Banana 2 | text, edit |
| flash | Nano Banana | text, edit |
| HTTP | error.type | Когда |
|---|---|---|
| 400 | invalid_request | Тело не является JSON, промпт пуст, модель неизвестна или модель не поддерживает режим |
| 401 | unauthorized | Отсутствует заголовок Authorization или неверный формат |
| 401 | invalid_api_key | API-ключ не найден в user_keys |
| 403 | no_credits | Месячная квота исчерпана. Обновите тариф на https://drawnew.com/pricing |
/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{
"task_id": "task_abc123",
"status": "completed",
"progress": 100,
"imageUrl": "https://files.example.com/generated/xxx.png"
}/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"{
"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" }
]
}| HTTP | error.type | Когда |
|---|---|---|
| 400 | invalid_request | Отсутствует параметр ids или более 20 ids |
| 401 | unauthorized | Отсутствует заголовок Authorization или неверный формат |
| 401 | invalid_api_key | API-ключ не найден в user_keys |
/api/v1/uploadСерверная загрузка изображения с публичного URL и его размещение на CDN upstream, возвращая стабильный URL. Передайте результат в imageUrls generate_image. Максимум 25 МБ на изображение; принимается png / jpeg / webp / gif / bmp.
curl -X POST https://www.drawnew.com/api/v1/upload \
-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
}Для 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-конфигурацию вашего клиента — и всё.
Путь: ~/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"]
}
}
}