NezhaGateNezhaGate
seedance-2.5-30s

Seedance 2.5 · 30s · API

POST https://nezhagate.com/v1/videos/generations

Seedance 2.5 · 30s 영상 생성(비동기): duration은 30초 중 하나(720P는 30초만 가능), 해상도 720P, 화면 비율 16:9 / 9:16 / 1:1 / 4:3 / 3:4. 이미지-투-비디오는 image를 넣으세요(참조 최대 9장). 작업 ID를 돌려주고(HTTP 202) GET /v1/videos/jobs/{id}를 status=succeeded가 될 때까지 폴링하면 결과가 data[0].url에 담깁니다. 건당 과금: $1.50(기본값 720P). 같은 등급 안에서는 가장 짧은 클립과 가장 긴 클립의 값이 같습니다. 실패 시 전액 환불합니다.

플레이그라운드에서 사용해 보기 →

인증

Header
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

콘솔에서 API 키를 만들면 시작할 수 있습니다.

요청 본문

파라미터타입필수설명
model string 예 모델 ID. 여기서는 seedance-2.5-30s입니다.
prompt string 예 영상의 내용, 카메라, 움직임을 설명하는 텍스트 프롬프트. 최대 5000 바이트(UTF-8. 한글 한 글자는 3바이트).
duration integer 아니오 길이는 30초 중 하나만 가능합니다(기본값 30). seconds로도 쓸 수 있습니다. 720P는 30초만 가능. 건당 과금이므로 길이가 가격을 바꾸지 않습니다.
resolution string 아니오 해상도: $1.50(기본값 720P). 가격은 길이가 아니라 해상도에 따라 달라집니다.
size string 아니오 화면 비율: 16:9 / 9:16 / 1:1 / 4:3 / 3:4(기본값 16:9). aspect_ratio로도 쓸 수 있습니다. 이 모델은 21:9를 지원하지 않습니다.
image string 아니오 이미지-투-비디오: 참조 이미지를 넣으세요(공개 URL, data: URI, base64). 텍스트-투-비디오라면 생략하세요.
images array 아니오 참조 이미지 여러 장. 최대 9장입니다. 상한을 넘으면 잘라내지 않고 거절합니다. reference_images로도 쓸 수 있습니다.

요청 예시

cURL
# 1) submit -> 202 {"id":"img_...","status":"queued"}
curl https://nezhagate.com/v1/videos/generations -H 'Authorization: Bearer YOUR_API_KEY' -H 'Content-Type: application/json' -d '{"model": "seedance-2.5-30s", "prompt": "a paper crane unfolding over a misty lake", "duration": 30, "resolution": "720P", "size": "16:9"}'
# image-to-video: also pass  "image": "https://example.com/ref.png"
# 2) poll every ~5s until status=succeeded, then read data[0].url
curl https://nezhagate.com/v1/videos/jobs/img_3f9a...c2 -H 'Authorization: Bearer YOUR_API_KEY'

응답

200 · JSON
{
  "id": "img_3f9a...c2",
  "object": "video.generation.job",
  "status": "queued",
  "model": "seedance-2.5-30s"
}

비동기 영상 작업 (제출 → 폴링)

제출하면 즉시 HTTP 202와 작업 ID가 돌아옵니다. status=succeeded가 될 때까지 폴링한 뒤 data[0].url(mp4 링크)을 읽으세요. 지정할 수 있는 길이, 해상도, 화면 비율은 위 파라미터 표에 있으며, image 파라미터를 넣으면 이미지-투-비디오가 됩니다.

curl · 제출 (텍스트-투-비디오)
curl https://nezhagate.com/v1/videos/generations -H 'Authorization: Bearer YOUR_API_KEY' -H 'Content-Type: application/json' -d '{"model": "seedance-2.5-30s", "prompt": "노을 속에서 서핑하는 고양이", "size": "16:9"}'
이미지-투-비디오: image 파라미터도 함께 보내세요(첫 프레임 참조 — 공개 URL, data: URI, base64 모두 가능).
실제 인물의 얼굴도 가릴 필요 없이 참조 이미지로 사용할 수 있습니다. 이미지 속 인물의 초상을 사용할 권리가 있는지 반드시 확인해 주세요.
응답 예시
{ "id": "img_3f9a...c2", "object": "video.generation.job", "status": "queued", "model": "seedance-2.5-30s" }
curl · 폴링
curl https://nezhagate.com/v1/videos/jobs/img_3f9a...c2 -H 'Authorization: Bearer YOUR_API_KEY'
응답 예시
{
  "id": "img_3f9a...c2",
  "object": "video.generation.job",
  "status": "succeeded",
  "model": "seedance-2.5-30s",
  "data": [{ "url": "https://img.nezhagate.com/i/9f86d081a8....mp4" }]
}

🕑 data[0].url은 저희 이미지 호스팅 링크로, 60일간 보관된 뒤 자동으로 삭제됩니다. 계속 쓰려면 다운로드해서 직접 운영하는 저장소나 CDN에 저장하세요.

건당 과금하며 실패 시 전액 환불합니다. 실패하거나 시간이 초과된 렌더링은 예치된 크레딧을 자동으로 돌려줍니다.

오류 코드

모든 오류 본문에는 error.message / error.type / error.code / error.param이 들어 있습니다. 분기는 code로 하세요. 전체 목록은 연동 가이드에 있습니다.

HTTPcode설명
401invalid_api_keyAPI 키가 없거나 유효하지 않음
402insufficient_quota잔액 부족 또는 키 한도 초과
400invalid_request지원하지 않는 모델 또는 파라미터
429rate_limit_exceeded업스트림 요청 한도 초과
502upstream_error모든 업스트림 경로가 실패