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). 같은 등급 안에서는 가장 짧은 클립과 가장 긴 클립의 값이 같습니다. 실패 시 전액 환불합니다.
플레이그라운드에서 사용해 보기 →인증
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로도 쓸 수 있습니다. |
요청 예시
# 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'응답
{
"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 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"}'{ "id": "img_3f9a...c2", "object": "video.generation.job", "status": "queued", "model": "seedance-2.5-30s" }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로 하세요. 전체 목록은 연동 가이드에 있습니다.
| HTTP | code | 설명 |
|---|---|---|
| 401 | invalid_api_key | API 키가 없거나 유효하지 않음 |
| 402 | insufficient_quota | 잔액 부족 또는 키 한도 초과 |
| 400 | invalid_request | 지원하지 않는 모델 또는 파라미터 |
| 429 | rate_limit_exceeded | 업스트림 요청 한도 초과 |
| 502 | upstream_error | 모든 업스트림 경로가 실패 |