POST
/api/projects
프로젝트 생성
프레임 생성 전에 프로젝트 레코드를 생성합니다. 엔드포인트 전반에서 사용하는 projectId를 반환합니다.
{
"title": "Product teaser",
"textPrompt": "Hero stands on cliff at dawn",
"description": "Keep outfit consistent with uploaded still"
}API 레퍼런스
Supabase 세션 토큰으로 인증합니다. 모든 응답은 { success: boolean, data, error } 형태를 사용해 UI 일관성을 유지합니다.
/api/projects
프레임 생성 전에 프로젝트 레코드를 생성합니다. 엔드포인트 전반에서 사용하는 projectId를 반환합니다.
{
"title": "Product teaser",
"textPrompt": "Hero stands on cliff at dawn",
"description": "Keep outfit consistent with uploaded still"
}/api/projects/generate/first-frame
AI 생성을 시작합니다. projectId와 선택적 레퍼런스 이미지 경로가 필요합니다.
{
"projectId": "<projectId>",
"referenceImagePath": "projects/ref.png"
}/api/projects/generate/:step?predictionId=<id>&projectId=<id>
예측 결과를 폴링합니다. 단계: first-frame, last-frame, video.
대시보드에서 웹훅 URL을 구성합니다. 이벤트는 언제든 회전 가능한 HMAC 시크릿으로 서명됩니다.
generation.succeeded
프레임 또는 영상 처리가 완료됨.
generation.failed
Replicate 또는 내부 큐에서 오류가 반환됨. payload.error를 확인한 뒤 재시도하세요.
project.created
메타데이터가 Supabase에 저장되었음을 확인(CRM 동기화에 유용).