메인 콘텐츠로 건너뛰기

Raw HTTP Quickstart

직접적인 HTTP 예제가 필요할 때 이 가이드를 사용하세요. Node.js 또는 Bun으로 개발 중이라면, 대신 Node.js SDK quickstart부터 시작하세요.

1. 업로드 대상 생성

curl -X POST https://api.youka.io/ko/api/v1/uploads \
  -H "Authorization: Bearer yk_..." \
  -H "Content-Type: application/json" \
  -d '{
    "filename": "song.mp3",
    "contentType": "audio/mpeg",
    "contentLength": 12345678
  }'
반환된 uploadUrl로 파일 바이트를 업로드하세요.

2. 프로젝트 생성

curl -X POST https://api.youka.io/ko/api/v1/projects \
  -H "Authorization: Bearer yk_..." \
  -H "Idempotency-Key: create-project-song-1" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Artist - Song",
    "inputFileId": "file_123",
    "lyricsSource": {
      "type": "align",
      "lyrics": "First line\nSecond line\n...",
      "syncModel": "musicai-alignment",
      "language": "en"
    },
    "splitModel": "mdx23c"
  }'

3. 작업 폴링

curl https://api.youka.io/ko/api/v1/tasks/task_123 \
  -H "Authorization: Bearer yk_..."
작업이 종료 상태(terminal)이 되면, output에 해당 작업의 핵심 결과 ID가 포함됩니다.

4. 프로젝트 상태 조회

curl https://api.youka.io/ko/api/v1/projects/proj_123 \
  -H "Authorization: Bearer yk_..."
여기에는 stems, alignments, exports, 그리고 활성 프로젝트 설정을 포함한 장기 유지 프로젝트 상태가 반환됩니다.

5. 내보내기 생성

curl -X POST https://api.youka.io/ko/api/v1/projects/proj_123/exports \
  -H "Authorization: Bearer yk_..." \
  -H "Idempotency-Key: export-song-1" \
  -H "Content-Type: application/json" \
  -d '{
    "resolution": "1080p",
    "quality": "high"
  }'
그다음 반환된 작업을 폴링하거나, 내보내기를 직접 조회하세요:
curl https://api.youka.io/ko/api/v1/exports/export_123 \
  -H "Authorization: Bearer yk_..."