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

# プロジェクトの作成

> 動画または音声ファイルをアップロードし、翻訳を開始せずにプロジェクトを作成します

# プロジェクトの作成

動画または音声ファイルをアップロードして新しいプロジェクトを作成します。APIは文字起こしのみを開始します（翻訳やリップシンクは行われません）。後でVoiceCheapアプリでプロジェクトを開いて翻訳をトリガーするか、[プロジェクト詳細の取得](/docs/ja/api-reference/project-details)を使用してプロジェクトの状態を確認できます。

## 同時実行制限

このエンドポイントは`POST /v1/translate`と同じ同時実行制限を共有しており、アカウントごとに最大10件の翻訳が進行可能です。制限に達した場合、リクエストは`CONCURRENT_TRANSLATION_LIMIT_REACHED`（HTTP 429）を返します。

## リクエスト

このエンドポイントはファイルアップロードを伴う`multipart/form-data`を受け付けます。

### ヘッダー

<ParamField header="x-api-key" type="string" required>
  VoiceCheap APIキー。[app.voicecheap.ai/page-api](https://app.voicecheap.ai/page-api)から取得してください。
</ParamField>

### ボディパラメータ

<ParamField body="file" type="file" required>
  アップロードする動画または音声ファイル。

  **サポートされている動画形式：** `video/mp4`、`video/quicktime`、`video/x-matroska`、`video/webm`、`video/mpeg`

  **サポートされている音声形式：** `audio/mpeg`、`audio/wav`、`audio/mp4`、`audio/x-m4a`、`audio/flac`、`audio/ogg`、`audio/aac`、`audio/webm`

  **プランごとの最大ファイルサイズ：** Beginner 5 GB、Starter 10 GB、Creator 20 GB、Pro 30 GB、Scale 40 GB、およびEnterprise 60 GB。
</ParamField>

<ParamField body="targetLanguage" type="string" required>
  このプロジェクトに関連付けるターゲット言語。小文字である必要があります。

  **許可される値（70以上）：** `afrikaans`、`albanian`、`amharic`、`arabic`、`armenian`、`assamese`、`azerbaijani`、`basque`、`belarusian`、`bengali`、`bosnian`、`bulgarian`、`catalan`、`croatian`、`czech`、`danish`、`dutch`、`english`、`british english`、`estonian`、`finnish`、`french`、`french canadian`、`galician`、`german`、`greek`、`gujarati`、`hebrew`、`hindi`、`hungarian`、`icelandic`、`indonesian`、`irish`、`italian`、`japanese`、`kannada`、`kazakh`、`khmer`、`korean`、`lao`、`latvian`、`lithuanian`、`macedonian`、`malay`、`malayalam`、`mandarin`、`marathi`、`mongolian`、`nepali`、`norwegian`、`persian`、`polish`、`portuguese`、`brazilian portuguese`、`punjabi`、`romanian`、`russian`、`serbian`、`slovak`、`slovenian`、`spanish`、`swahili`、`swedish`、`tagalog`、`tamil`、`telugu`、`thai`、`turkish`、`ukrainian`、`urdu`、`vietnamese`、`welsh`、`yoruba`、`zulu`
</ParamField>

<ParamField body="originalLanguage" type="string">
  ISO言語コードを使用したコンテンツのソース言語（例：`en`、`es`、`fr`、`de`、`ja`、`zh`）。

  <Warning>
    **強く推奨：自動検出のために空のままにしてください。**

    言語コードが正しいこと、および有効なISO形式であることを100%確信している場合にのみ、このパラメータを指定してください。不適切な言語コードは文字起こしの失敗を引き起こします。当社の自動検出は80以上の言語をサポートしており、非常に高精度です。
  </Warning>

  **デフォルト：** `auto-detect`
</ParamField>

<ParamField body="projectName" type="string">
  プロジェクトのカスタム名。ダッシュボードでプロジェクトを識別するのに便利です。

  **デフォルト：** 指定がない場合はプロジェクトIDが使用されます。
</ParamField>

<ParamField body="webhookUrl" type="string">
  このプロジェクトの[webhookイベント](/docs/ja/api-reference/webhooks)を受信するhttpsエンドポイント。
  アカウントに設定されたエンドポイントを上書きします。

  **デフォルト：** 設定されている場合は、アカウントのwebhookエンドポイント。
</ParamField>

<ParamField body="numberOfSpeakers" type="string">
  `auto-detect`、または`1`から`32`までの整数。既知の話者数を指定すると、話者分離（ダイアライゼーション）が向上する場合があります。

  **デフォルト：** `auto-detect`
</ParamField>

<ParamField body="brandVocabulary" type="string">
  リクエスト固有の名前、ブランド、頭字語、または専門用語のJSON文字列配列。これらの用語は、保存されたアカウントまたはチームの用語集とマージされます。

  ```json theme={null}
  ["VoiceCheap", "SmartSync", "ITC Global"]
  ```
</ParamField>

<ParamField body="removeFillerWords" type="boolean">
  文字起こし中に一般的なフィラーワードを削除します。

  **デフォルト：** `true`
</ParamField>

<ParamField body="sourceSrt" type="string">
  既存のソース言語のSRT文字起こしファイル。提供される場合、`originalLanguage`は`auto-detect`ではなく明示的な言語コードである必要があります。
</ParamField>

このエンドポイントは、プロジェクト作成と文字起こし開始専用です。字幕、音声クローニング、音声分離、背景音声などの翻訳オプションは、`POST /v1/translate`によって処理されます。

## リクエスト例

```bash theme={null}
curl -X POST "https://api.voicecheap.ai/v1/projects" \
  -H "x-api-key: YOUR_API_KEY" \
  -F "file=@/path/to/video.mp4" \
  -F "targetLanguage=french" \
  -F "projectName=Launch Demo" \
  -F "numberOfSpeakers=2" \
  -F 'brandVocabulary=["VoiceCheap","SmartSync"]' \
  -F "removeFillerWords=true"
```

## レスポンス例

```json theme={null}
{
  "success": true,
  "message": "Project created. Transcription started.",
  "projectId": "project_123",
  "projectName": "Launch Demo",
  "targetLanguage": "french",
  "status": "processing"
}
```

## エラー

| ステータス | コード                                    | 説明                                   |
| ----- | -------------------------------------- | ------------------------------------ |
| 400   | `FILE_REQUIRED`                        | リクエストにファイルが含まれていません                  |
| 400   | `INVALID_FILE_TYPE`                    | アップロードされたファイル形式はサポートされていません          |
| 400   | `DURATION_DETECTION_FAILED`            | アップロードされたファイルの長さを検出できませんでした          |
| 400   | `INVALID_MULTIPART_REQUEST`            | マルチパートフォームデータが不正であるか、フィールド制限を超えています  |
| 400   | `INVALID_BRAND_VOCABULARY`             | リクエスト固有の用語集エントリが無効です                 |
| 400   | `INVALID_SOURCE_SRT`                   | 提供されたソースSRTが不正です                     |
| 400   | `SOURCE_LANGUAGE_REQUIRED_FOR_SRT`     | sourceSrtには明示的なoriginalLanguageが必要です |
| 400   | `VIDEO_TOO_LONG`                       | メディアの長さがユーザーのプラン制限を超えています            |
| 413   | `FILE_TOO_LARGE`                       | アップロードされたファイルがユーザーのプラン制限を超えています      |
| 401   | `MISSING_API_KEY`                      | APIキーが必要です                           |
| 401   | `INVALID_API_KEY_FORMAT`               | APIキーは`vc_`で始まる必要があります               |
| 401   | `INVALID_API_KEY`                      | 提供されたAPIキーは無効です                      |
| 403   | `API_ACCESS_REQUIRED`                  | このアカウントにはAPIアクセスが必要です                |
| 403   | `SUBSCRIPTION_REQUIRED`                | APIアクセスには有料サブスクリプションが必要です            |
| 429   | `RATE_LIMIT_EXCEEDED`                  | リクエストが多すぎます（制限：1分間に10リクエスト）          |
| 429   | `CONCURRENT_TRANSLATION_LIMIT_REACHED` | 進行中の翻訳が多すぎます（制限：同時に10件の翻訳）           |
| 500   | `INTERNAL_ERROR`                       | 予期しないサーバーエラー                         |
