개발가이드

  • 개발가이드

Seedance 영상 생성 AI

텍스트·이미지·참조 소재로 최대 30초 영상을 만드는 Seedance 2.5 기반 생성 API

지원 API 요약

영상 작업은 접수한 뒤 상태를 조회하고, 완료되면 MP4 파일을 내려받는 흐름입니다. 취소 API는 제공하지 않으며, 실패하거나 처리 시간이 초과되면 예약된 포인트가 자동으로 전액 환불됩니다.

Method
API entry point
기능
성공 결과
POST
/rest/seedance/jobs
영상 작업 접수
HTTP 202와 job_id
GET
/rest/seedance/jobs/{job_id}
작업 상태 조회
HTTP 200과 현재 상태
GET
/rest/seedance/jobs/{job_id}/result
MP4 영상 다운로드(Range 지원)
<job_id>.mp4

1. 작업 접수

구분
내용
API entry point 소개
POST /rest/seedance/jobs
기능 소개
프롬프트와(필요 시) 입력 이미지·참조 영상을 전달해 새로운 영상 생성 작업을 접수합니다.
호출 방식
text 모드는 CL_AUTH_KEY와 JSON 본문을, image·reference 모드는 첨부 파일이 있으므로 multipart/form-data를 사용합니다.
호출 결과
접수 성공 시 HTTP 202를 반환하며 duration × 초당 포인트가 예약 차감됩니다. 완료 시 확정되고, 실패·시간 초과 시 전액 환불됩니다.
응답 결과
job_id, waiting 상태, 모델 정보와 예약 포인트를 반환합니다.
요청 파라미터
이름
타입
필수
설명
prompt
String
O*
영상 설명, 최대 2,000자. reference 모드에서 참조 파일을 1개 이상 첨부하면 생략 가능
mode
String
X
text | image | reference, 기본 text
duration
Integer
X
영상 길이(초), 4~30, 기본 5
aspect_ratio
String
X
16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive 중 하나, 기본 16:9. image 모드에서는 값을 지정해도 항상 adaptive로 처리됩니다(오류 아님)
resolution
String
X
480p | 720p | 1080p, 기본 720p. 모든 모드에서 사용 가능하며 해상도별로 초당 포인트가 다릅니다(아래 요금 참고, 높은 해상도일수록 비용이 커집니다)
audio
Boolean
X
오디오 생성 여부, 기본 true(정책 검수에서 오디오가 거부되면 작업이 실패하고 환불됩니다)
idempotency_key
String
X
같은 요청의 재전송으로 인한 중복 접수·과금을 막는 고유 키. 영문·숫자·_·-, 8~128자

tier, negative_prompt, seed, cfg_scale는 Seedance에서 지원하지 않으며 전달하면 APICK_VIDEO_OPTION_NOT_SUPPORTED로 거절됩니다.

파일 필드(multipart)
필드
모드
개수
설명
image
image
1개(필수)
첫 프레임으로 사용할 이미지
last_image
image
0~1개
마지막 프레임으로 사용할 이미지(선택)
reference_image
reference
0~30개
주체·스타일을 참조할 이미지
reference_video
reference
0~10개
동작을 참조할 영상. Seedance에서만 지원

이미지는 PNG·JPEG·WebP·BMP·TIFF·GIF, 300~6,000px, 종횡비 0.4~2.5, 30MB 이하만 허용합니다. 참조 영상은 MP4·MOV·WebM, 50MB 이하만 허용합니다. reference 모드에서 참조 파일을 하나도 첨부하지 않으면 prompt가 필수입니다.

호출 방식 — text 모드
curl -X POST "https://apick.app/rest/seedance/jobs" \
  -H "CL_AUTH_KEY: $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"prompt":"해 질 녘 해안 도로를 달리는 오픈카, 부드러운 카메라 팬","duration":5,"aspect_ratio":"16:9"}'
호출 방식 — image 모드(multipart)
curl -X POST "https://apick.app/rest/seedance/jobs" \
  -H "CL_AUTH_KEY: $API_KEY" \
  -F "mode=image" \
  -F "image=@first_frame.png" \
  -F "prompt=인물이 천천히 뒤돌아보며 미소짓는 장면" \
  -F "duration=5"
호출 방식 — 1080p 지정
curl -X POST "https://apick.app/rest/seedance/jobs" \
  -H "CL_AUTH_KEY: $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"prompt":"해 질 녘 해안 도로를 달리는 오픈카, 부드러운 카메라 팬","duration":5,"resolution":"1080p"}'
응답 결과
{
  "data": {
    "job_id": "7f7e43f578cd459db04696416435c789",
    "status": "waiting",
    "model": "seedance",
    "mode": "text",
    "tier": "standard",
    "duration": 5,
    "aspect_ratio": "16:9",
    "resolution": "720p",
    "audio": true,
    "point_per_second": 1250,
    "charged_point": 6250
  },
  "api": { "success": true, "cost": 6250 }
}

2. 상태 조회

구분
내용
API entry point 소개
GET /rest/seedance/jobs/{job_id}
기능 소개
접수한 작업의 현재 상태와 결과 다운로드 가능 여부를 확인합니다.
호출 방식
접수 응답의 job_id를 URL에 넣고 CL_AUTH_KEY를 전송합니다. 완료 전에는 5초 간격 조회를 권장합니다.
호출 결과
HTTP 200과 waiting, processing, completed, failed 중 하나를 반환합니다.
응답 결과
result_availableresult_expires_at으로 다운로드 가능 여부와 만료 시각을 확인합니다.
호출 방식
curl -sS "https://apick.app/rest/seedance/jobs/$JOB_ID" \
  -H "CL_AUTH_KEY: $API_KEY"
응답 결과 — 완료
{
  "data": {
    "job_id": "7f7e43f578cd459db04696416435c789",
    "status": "completed",
    "model": "seedance",
    "mode": "text",
    "tier": "standard",
    "duration": 5,
    "aspect_ratio": "16:9",
    "resolution": "720p",
    "audio": true,
    "point_per_second": 1250,
    "charged_point": 6250,
    "result_available": true,
    "result_expires_at": "2026-09-20T12:00:00.000Z"
  },
  "api": { "success": true, "cost": 0 }
}
응답 결과 — 실패
{
  "data": {
    "job_id": "7f7e43f578cd459db04696416435c789",
    "status": "failed",
    "result_available": false,
    "result_expires_at": null,
    "error": { "code": "APICK_VIDEO_GENERATION_FAILED", "message": "영상 생성에 실패했습니다. 포인트는 환불되었습니다." }
  },
  "api": { "success": true, "cost": 0 }
}

3. 결과 다운로드

구분
내용
API entry point 소개
GET /rest/seedance/jobs/{job_id}/result
기능 소개
완료된 작업의 최종 영상을 MP4 파일로 내려받습니다.
호출 방식
상태 응답의 result_availabletrue일 때 호출합니다. Range 헤더로 구간 다운로드를 지원합니다(HTTP 206).
호출 결과
HTTP 200 또는 206과 video/mp4 파일을 반환합니다. 완료 후 7일 동안 반복 다운로드할 수 있습니다.
응답 결과
<job_id>.mp4 파일이며 Content-Disposition으로 파일명을 안내합니다.
호출 방식
curl -sS "https://apick.app/rest/seedance/jobs/$JOB_ID/result" \
  -H "CL_AUTH_KEY: $API_KEY" \
  -o "$JOB_ID.mp4"

요금

등급·해상도
초당 포인트
5초 예시
480p
560P
2,800P
720p
1,250P
6,250P
1080p
2,810P
14,050P

접수 시 duration × 초당 포인트가 예약 차감됩니다(resolution에 따라 초당 단가가 다릅니다). 완료되면 그대로 확정되고, 실패하거나 처리 시간이 초과되면 예약된 포인트가 전액 환불됩니다. 접수 후에는 취소할 수 없습니다.

오류 코드

코드
HTTP
원인
APICK_VIDEO_AUTH_FAILED
401
인증에 실패했습니다.
APICK_VIDEO_PAYMENT_REQUIRED
403
최소 1회 결제 후 이용할 수 있습니다.
APICK_VIDEO_POINTS_INSUFFICIENT
402
사용 가능한 포인트가 부족합니다.
APICK_VIDEO_INVALID_REQUEST
400
요청 내용을 확인해 주세요.
APICK_VIDEO_PROMPT_REQUIRED
400
prompt를 입력해 주세요.
APICK_VIDEO_MODE_NOT_SUPPORTED
400
이 모델에서는 지원하지 않는 mode입니다.
APICK_VIDEO_DURATION_INVALID
400
duration 값이 허용 범위를 벗어났습니다.
APICK_VIDEO_SOURCE_REQUIRED
400
이 mode에는 입력 파일이 필요합니다.
APICK_VIDEO_SOURCE_INVALID
400
입력 파일 형식이나 크기를 확인해 주세요.
APICK_VIDEO_TOO_MANY_ACTIVE_JOBS
429
동시에 진행할 수 있는 작업 수를 초과했습니다.
APICK_VIDEO_CONTENT_REJECTED
422
요청한 영상을 생성할 수 없습니다. 프롬프트·입력 파일 또는 생성된 오디오가 정책(저작권·안전) 검수에서 거부된 경우이며, 예약 포인트는 전액 환불됩니다. audio=false로 재시도하면 오디오 정책 거부는 피할 수 있습니다.
APICK_VIDEO_RATE_LIMITED
429
현재 요청이 많습니다. 잠시 후 다시 시도해 주세요.
APICK_VIDEO_TEMPORARILY_UNAVAILABLE
503
현재 영상 서비스를 이용할 수 없습니다. 잠시 후 다시 시도해 주세요.
APICK_VIDEO_TIMEOUT
408
처리 시간이 초과됐습니다. 포인트는 환불되었습니다.
APICK_VIDEO_GENERATION_FAILED
500
영상 생성에 실패했습니다. 포인트는 환불되었습니다.
APICK_VIDEO_JOB_NOT_FOUND
404
작업을 찾을 수 없습니다.
APICK_VIDEO_JOB_CONFLICT
409
현재 작업 상태에서는 요청을 처리할 수 없습니다.
APICK_VIDEO_RESULT_EXPIRED
410
결과 보관 기간이 만료되었습니다.

MCP

MCP 도구로도 동일하게 사용할 수 있습니다. seedance_jobs_create로 작업을 접수하고 seedance_jobs_status로 상태를 조회합니다. 영상 파일은 MCP 응답 크기 제한 때문에 도구로 직접 전달하지 않으며, 상태 조회 응답의 result_url로 REST 다운로드 경로를 안내합니다. 자세한 내용은 MCP 연동 가이드/mcp/ai를 확인하세요.

업로드 용량 제한: 100MB
multipart/form-data 요청에 포함된 입력 이미지·참조 영상의 합계는 최대 100MB입니다. 이미지는 PNG·JPEG·WebP, 영상은 MP4·MOV·WebM을 지원하며 모델별 해상도·종횡비 제약은 가이드의 파라미터 표를 따릅니다.
제한을 초과하면 HTTP 413과 REQUEST_TOO_LARGE 오류가 반환되며 과금되지 않습니다.
현재 페이지 북마크