비디오 생성 API
비동기 비디오 생성 — 작업 생성·조회·목록·취소. 텍스트→비디오, 이미지→비디오 지원.
개요
비디오 생성은 비동기 작업입니다: POST /videos/generations 호출 시 작업 ID가 즉시 반환되며, GET /videos/generations/{id}로 status가 completed가 될 때까지 폴링한 후 video_url로 결과를 다운로드합니다.
지원 모델: seedance-1.5-pro, seedance-2.0 등. 최신 목록은 GET /videos/models로 가져오세요. 전체 스키마와 제약은 대화형 API 문서를 참조하세요.
GET https://api.alltoken.ai/v1/videos/models— 사용 가능한 비디오 모델 목록POST https://api.alltoken.ai/v1/videos/generations— 생성 작업 생성GET https://api.alltoken.ai/v1/videos/generations/{id}— 작업 상태 조회GET https://api.alltoken.ai/v1/videos/generations— 작업 목록POST https://api.alltoken.ai/v1/videos/generations/{id}/cancel— 작업 취소
비디오 모델 목록
$GET https://api.alltoken.ai/v1/videos/models사용 가능한 모든 비디오 생성 모델을 OpenAI 호환 형식으로 반환합니다.
| 1 | { |
| 2 | "object": "list", |
| 3 | "data": [ |
| 4 | { "id": "seedance-1.5-pro", "object": "model", "owned_by": "chat" }, |
| 5 | { "id": "seedance-2.0", "object": "model", "owned_by": "chat" } |
| 6 | ] |
| 7 | } |
작업 생성
$POST https://api.alltoken.ai/v1/videos/generations텍스트→비디오:
| 1 | { |
| 2 | "model": "seedance-1.5-pro", |
| 3 | "prompt": "A cat surfing on a rainbow", |
| 4 | "duration": 5, |
| 5 | "ratio": "16:9", |
| 6 | "resolution": "720p" |
| 7 | } |
이미지→비디오 (첫 프레임 가이드):
| 1 | { |
| 2 | "model": "seedance-1.5-pro", |
| 3 | "prompt": "The cat jumps forward", |
| 4 | "content": [ |
| 5 | { |
| 6 | "type": "image_url", |
| 7 | "image_url": { "url": "https://example.com/cat.png" }, |
| 8 | "role": "first_frame" |
| 9 | } |
| 10 | ], |
| 11 | "duration": 5 |
| 12 | } |
응답 (작업 생성됨, 상태 queued):
| 1 | { |
| 2 | "id": "vgen_01abc", |
| 3 | "status": "queued", |
| 4 | "model": "seedance-1.5-pro", |
| 5 | "input_type": "text", |
| 6 | "ratio": "16:9", |
| 7 | "resolution": "720p", |
| 8 | "duration": 5, |
| 9 | "created_at": "2026-04-27T10:00:00Z" |
| 10 | } |
요청 매개변수
model(필수) — 비디오 모델 ID (예:"seedance-1.5-pro")prompt(필수) — 비디오 내용 설명 텍스트content— 멀티모달 입력 배열 (이미지→비디오, 비디오 참조용). 각 항목은type(image_url/video_url/audio_url/draft_task)과role(first_frame/last_frame/reference_image/reference_video/reference_audio)을 포함ratio— 화면 비율:16:9/9:16/4:3/3:4/21:9/1:1/adaptiveduration— 비디오 길이(초).-1은 모델이 자동 결정resolution—480p/720p/1080pframes— 프레임 수 (duration보다 우선)generate_audio— 오디오 동시 생성 여부input_has_video- Set when the input content includes a video referenceseed— 난수 시드 (재현용)camera_fixed— 카메라 고정 여부watermark— 워터마크 추가 여부 (기본false)callback_url— 작업 완료 시 호출되는 URLreturn_last_frame— 마지막 프레임 URL 반환 여부 (이어쓰기용)service_tier—default/flexexecution_expires_after— 실행 만료 시간(초),3600-259200draft— 지원 모델에서 초안 작업 생성 또는 사용tools—web_search같은 선택적 도구 설정safety_identifier— 선택적 고정 안전 식별자, 최대 64자
작업 상태 조회
$GET https://api.alltoken.ai/v1/videos/generations/{id}작업 상세를 반환합니다. status가 completed가 되면 video_url로 비디오를 다운로드할 수 있습니다.
| 1 | { |
| 2 | "id": "vgen_01abc", |
| 3 | "status": "completed", |
| 4 | "model": "seedance-1.5-pro", |
| 5 | "video_url": "https://cdn.example.com/videos/vgen_01abc.mp4", |
| 6 | "video_url_expires_at": "2026-04-27T11:00:00Z", |
| 7 | "video_url_ttl": 3600, |
| 8 | "duration": 5, |
| 9 | "fps": 24, |
| 10 | "resolution": "720p", |
| 11 | "ratio": "16:9", |
| 12 | "usage": { |
| 13 | "completion_tokens": 256, |
| 14 | "total_tokens": 256 |
| 15 | }, |
| 16 | "created_at": "2026-04-27T10:00:00Z", |
| 17 | "completed_at": "2026-04-27T10:01:32Z" |
| 18 | } |
video_url은 사전 서명된 URL이며, video_url_ttl 초 후 만료됩니다. 만료 후에는 본 엔드포인트를 다시 호출하여 새 URL을 받을 수 있습니다.
작업 상태 값
queued— 큐 대기 중, GPU 리소스 대기processing— 모델이 생성 중completed— 완료,video_url사용 가능failed— 생성 실패, 상세는error필드expired—video_url이 만료되어 갱신되지 않음cancelled— 사용자가 취소
권장 폴링 간격: 2-5초. 대부분의 작업은 30-120초 내 완료되며, 고해상도 작업은 3-5분이 걸릴 수 있습니다.
작업 목록
$GET https://api.alltoken.ai/v1/videos/generations?limit=20&status=completed현재 사용자의 비디오 생성 작업을 페이지네이션으로 나열합니다. 쿼리 매개변수:
limit— 페이지 크기 (기본 20, 최대 100)status— 상태로 필터링 (queued/processing/completed/failed/expired/cancelled)
작업 취소
$POST https://api.alltoken.ai/v1/videos/generations/{id}/cancel아직 완료되지 않은 작업 (queued 또는 processing만)을 취소합니다. 이미 completed / cancelled 상태인 작업은 409 Conflict를 반환합니다.
오류 응답
400— 잘못된 요청 (예: prompt 비어있음, ratio 잘못됨)401— API Key가 잘못되었거나 누락402— 잔액 부족404— 작업 ID를 찾을 수 없음409— 작업 상태가 이 동작을 허용하지 않음 (예: 완료된 작업 취소)429— 속도 제한 초과