# クリップエクスポート API

> AI クリッピングとモーメント検索の既存クリップを、新しい字幕スタイルやレンダリング設定でエクスポートまたは再エクスポートします。

## クリップエクスポート API

[AI クリッピング](https://wayin.ai/ja/api-docs/ai-clipping/) または [モーメント検索](https://wayin.ai/ja/api-docs/find-moments/) タスクをすでに作成しており、後からクリップをレンダリングしたい場合や、異なる字幕スタイル・アスペクト比・AI フック・その他の設定で再エクスポートしたい場合にこの API を使います。

`project_id` には以下のエンドポイントが返した元のタスク ID を指定します：
- `POST /api/v2/clips`
- `POST /api/v2/clips/find-moments`

---

## エクスポートタスクの送信

```
POST https://wayinvideo-api.wayin.ai/api/v2/clips/export
```

### リクエストボディ

| パラメータ | 型 | 必須 | デフォルト | 説明 |
|----------|-----|------|----------|------|
| `project_id` | string | はい | — | 元の AI クリッピングまたはモーメント検索のタスク ID。 |
| `clip_indices` | integer[] | いいえ | `null` | エクスポートするクリップのインデックス。省略した場合はすべてのクリップ。 |
| `target_lang` | string | いいえ | `null` | 字幕の目標言語。`null` の場合は元のタスクの言語を使用。 |
| `resolution` | string | いいえ | `SD_480` | 出力解像度：`SD_480`、`HD_720`、`FHD_1080`、`QHD_2K`、`UHD_4K`。 |
| `enable_caption` | boolean | いいえ | `false` | アニメーション字幕を追加。 |
| `caption_display` | string | いいえ | `original` | 字幕モード：`both`、`original`、`translation`。 |
| `cc_style_tpl` | string | いいえ | `temp-7` | 字幕スタイルテンプレート ID。 |
| `enable_ai_hook` | boolean | いいえ | `false` | AI 生成の注目テキストを追加。 |
| `ai_hook_script_style` | string | いいえ | `serious` | フックテキストのスタイル。 |
| `ai_hook_position` | string | いいえ | `beginning` | 位置：`beginning`、`end`。 |
| `ai_hook_keywords` | string | いいえ | `null` | AI フックテキストを方向付けるオプションのキーワード。 |
| `ai_hook_text_duration` | integer | いいえ | `null` | フックテキストオーバーレイの表示時間（ミリ秒）。 |
| `enable_ai_reframe` | boolean | いいえ | `false` | AI リフレームを有効化。 |
| `ratio` | string | `enable_ai_reframe` が `true` のとき必須 | — | アスペクト比：`RATIO_9_16`、`RATIO_1_1`、`RATIO_4_5`、`RATIO_16_9`。 |

```bash
curl -X POST https://wayinvideo-api.wayin.ai/api/v2/clips/export \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-wayinvideo-api-version: v2" \
  -d '{"project_id": "proj_abc123", "clip_indices": [0, 2], "resolution": "UHD_4K", "enable_caption": true, "enable_ai_reframe": true, "ratio": "RATIO_9_16"}'
```

```json
{"data": {"export_task_id": "export_task_xyz789", "name": "sample export task", "status": "CREATED"}}
```

---

## エクスポート結果の取得

```
GET https://wayinvideo-api.wayin.ai/api/v2/clips/export/{taskId}
```

```bash
curl -X GET https://wayinvideo-api.wayin.ai/api/v2/clips/export/export_task_xyz789 \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-wayinvideo-api-version: v2"
```

```json
{"data": {"export_task_id": "export_task_xyz789", "status": "SUCCEEDED",
          "expire_at": 1775831883112, "cost_usage": 48.0,
          "clips": [{"idx": 0, "title": "sample title", "begin_ms": 15000, "end_ms": 75000,
                     "score": 81, "export_link": "https://cdn.example.com/export/clip_001.mp4"}]}}
```
