DrawNew.comDrawNew.com

API 레퍼런스

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

배치 및 에이전트 통합을 위한 공개 엔드포인트. 귀하의 계정에 이미 발급된 API 키로 인증합니다 — 별도의 토큰이 필요하지 않습니다.

인증

Authorization 헤더에 API 키를 포함하십시오. 키는 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

생성 작업 만들기

작업을 상위 이미지 제공자에 제출하고 즉시 task_ids를 반환합니다. 생성된 이미지를 얻으려면 (A) 직접 GET /v1/tasks/:id를 폴링하거나 (B) 웹사이트를 열면 됩니다. 동일 계정의 Image Creation 탭이 작업을 자동으로 가져와 "My Works"에 결과를 저장합니다.

요청

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-2모델 id (아래 참조)
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[][]edit / fusion용 참조 이미지 URLs

사용 가능한 모델

model이름지원 모드
gpt-image-2GPT Image 2text, edit
proNano Banana Protext, edit
flash2Nano Banana 2text, edit
flashNano Bananatext, edit

오류

HTTPerror.type발생 조건
400invalid_request본문이 JSON이 아님, 프롬프트가 비어 있음, 모델 불명 또는 모델이 모드를 지원하지 않음
401unauthorizedAuthorization 헤더가 없거나 형식이 잘못됨
401invalid_api_keyuser_keys에서 API 키를 찾을 수 없음
403no_credits월 할당량을 소진했습니다. https://drawnew.com/pricing에서 요금제 업그레이드
GET/api/v1/tasks/{task_id}

단일 작업 폴링

상위 작업 상태를 반환합니다. status는 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

다중 작업 폴링

라운드트립 및 인증 조회를 절약하기 위해 한 번의 호출로 여러 작업을 폴링합니다. 결과는 입력 ids와 동일한 순서로 반환됩니다. 요청당 최대 20개 ids.

요청

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_requestids 매개변수가 없거나 20개 이상의 ids
401unauthorizedAuthorization 헤더가 없거나 형식이 잘못됨
401invalid_api_keyuser_keys에서 API 키를 찾을 수 없음
POST/api/v1/upload

참조 이미지 업로드 (edit / fusion용)

서버 사이드에서 공개 URL에서 이미지를 가져와 상위 CDN에 다시 호스팅하고 안정적인 URL을 반환합니다. 결과를 generate_image의 imageUrls에 전달하십시오. 이미지당 최대 25MB. 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

계정 등급 / 상태 조회

이메일, 등급(trial / starter / standard / pro) 및 상위 키가 구성되어 있는지 여부를 반환합니다. 고비용 모델을 사용할 수 있는지 판단해야 하는 에이전트에 유용합니다.

요청

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를 사용하는 가장 쉬운 방법은 npm에서 @drawnew/mcp-server로 게시된 공식 MCP 서버입니다. stdio를 통해 6개의 도구(generate_image, get_task, batch_get_tasks, upload_reference_image, list_my_generations, get_account_status)를 노출하며 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에 기록됩니다. 동일 계정이 다음에 웹사이트의 Image Creation 탭을 열면 프론트엔드가 폴링을 인계하고 results를 generations / generation_images에 저장하며 "My Works" 및 자산 라이브러리에 나타납니다. UI에 표시되지 않는 순수 fire-and-forget을 원하는 경우 전용 호출 계정을 사용하십시오.
  • 서버 측 크레딧 확인 — 월 할당량을 소진하면 API가 HTTP 403, error.type=no_credits를 반환합니다.
  • 권장 폴링 간격: 2-5초. 배치 엔드포인트는 호출당 최대 20개 ids를 허용합니다.
  • API 키를 클라이언트 코드에 절대 포함하지 마십시오. 자체 백엔드에서만 사용하십시오.
© 2026 DrawNew.com. All rights reserved.