WAN3 Developer Platform

이미지와 영상을 하나의 API로.

사용 가능한 모델을 조회하고, 소유한 자료를 안전하게 업로드하며, 공통 멱등 키로 제출하고 WAN3 저장소에서 결과를 받으세요.

/models

런타임 모델 조회

/uploads

소유 자료 검증

/generations

이미지·영상 통합 작업

첫 생성

curl https://wan3.net/api/v1/generations \
  -H "Authorization: Bearer $WAN3_API_KEY" \
  -H "Idempotency-Key: video-job-001" \
  -H "Content-Type: application/json" \
  -d '{"model":"wan3","input":{"type":"text-to-video","workflow":"t2v","prompt":"A paper dragon crossing an orange-lit city","duration":5,"resolution":"720p","aspect_ratio":"16:9"}}'
OpenAPI 3.1MarkdownIdempotency-Key requiredNo browser CORS keys

WAN3 Agent Skills · v1.0.0

이미지·영상 생성 Skills 다운로드

Skills는 WAN3 API 키로 플랫폼을 호출합니다. 내부 인증 정보는 서버에만 보관됩니다.

unzip wan3-agent-skills-v1.0.0.zip
export WAN3_API_KEY=wan3_live_...
# Copy wan3-image-generation or wan3-video-generation into your agent's skills directory.

텍스트로 이미지 생성

curl https://wan3.net/api/v1/generations \
  -H "Authorization: Bearer $WAN3_API_KEY" \
  -H "Idempotency-Key: image-job-001" \
  -H "Content-Type: application/json" \
  -d '{"model":"nano-banana","input":{"type":"text-to-image","prompt":"A ceramic fox in a quiet studio","aspect_ratio":"1:1"}}'

Node.js

const response = await fetch("https://wan3.net/api/v1/generations", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.WAN3_API_KEY}`,
    "Idempotency-Key": "video-job-001",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    model: "wan3",
    input: { type: "text-to-video", workflow: "t2v", prompt: "A paper dragon crossing a city", duration: 5, resolution: "720p" },
  }),
});
console.log(await response.json());

Python

import os, requests

response = requests.post(
    "https://wan3.net/api/v1/generations",
    headers={
        "Authorization": f"Bearer {os.environ['WAN3_API_KEY']}",
        "Idempotency-Key": "image-job-001",
    },
    json={"model": "nano-banana", "input": {"type": "text-to-image", "prompt": "A ceramic fox"}},
    timeout=30,
)
print(response.json())

소유 자료 업로드

# 1. Reserve: POST /api/v1/uploads with file_name, file_type, file_size
# 2. PUT bytes to data.upload_url with every data.required_headers value
# 3. Complete: POST /api/v1/uploads/{reservation_id}/complete
# 4. Pass the returned opaque media id in input.media_ids

상태 조회

curl https://wan3.net/api/v1/generations/{generation_id} \
  -H "Authorization: Bearer $WAN3_API_KEY"

안정적인 오류 계약

codeHTTPmeaning
invalid_request400Request fields or owned media are invalid
unauthorized401API key is invalid, expired, or revoked
insufficient_credits402Account balance cannot fund the task
forbidden403The key does not have the required scope
not_found404The owned generation or media was not found
idempotency_conflict409The key was reused with another public request
rate_limited429Retry after the Retry-After interval
provider_rejected502The task was rejected and exposes no upstream details
service_busy503Retry safely with the same Idempotency-Key

API 키는 한 번만 표시되며 서버에 보관해야 합니다. 네트워크 재시도에는 같은 Idempotency-Key를 사용하고 새 작업에만 새 키를 사용하세요. 모델은 GET /models, 사용량은 GET /usage로 확인합니다.