> ## Documentation Index
> Fetch the complete documentation index at: https://docs.youka.io/llms.txt
> Use this file to discover all available pages before exploring further.

# 原始 HTTP 快速入门

> 使用 cURL 上传文件、创建项目、轮询任务，并导出已完成的卡拉 OK 输出。

# 原始 HTTP 快速入门

当你需要直接的 HTTP 示例时，请使用本指南。

如果你在 Node.js 或 Bun 中构建，请改为从 [Node.js SDK quickstart](/zh/sdk) 开始。

## 1. 创建上传目标

```bash theme={null}
curl -X POST https://api.youka.io/zh/api/v1/uploads \
  -H "Authorization: Bearer yk_..." \
  -H "Content-Type: application/json" \
  -d '{
    "filename": "song.mp3",
    "contentType": "audio/mpeg",
    "contentLength": 12345678
  }'
```

将文件字节上传到返回的 `uploadUrl`。

## 2. 创建项目

```bash theme={null}
curl -X POST https://api.youka.io/zh/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. 轮询任务

```bash theme={null}
curl https://api.youka.io/zh/api/v1/tasks/task_123 \
  -H "Authorization: Bearer yk_..."
```

当任务进入终态时，它的 `output` 会包含本次操作的关键结果 ID。

## 4. 读取项目状态

```bash theme={null}
curl https://api.youka.io/zh/api/v1/projects/proj_123 \
  -H "Authorization: Bearer yk_..."
```

这会返回长期存在的项目状态，包括 stems、对齐结果、导出项，以及当前启用的项目设置。

## 5. 创建导出

```bash theme={null}
curl -X POST https://api.youka.io/zh/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"
  }'
```

然后轮询返回的任务，或直接读取导出项：

```bash theme={null}
curl https://api.youka.io/zh/api/v1/exports/export_123 \
  -H "Authorization: Bearer yk_..."
```
