# ステータスコード

> WayinVideo API の HTTP ステータスコードとレスポンス形式。

## ステータスコード

API は標準的な HTTP ステータスコードを使用します。

---

## 200 OK

リクエストが成功しました。レスポンスボディは JSON 形式で、`data` フィールドにペイロードが含まれます。

```json
{"data": {"project_id": "prj06928fdjqqaza", "name": "Sample project name", "status": "SUCCEEDED"}}
```

---

## 400 Bad Request

クライアント側のエラー — 無効なパラメーター、非対応の動画フォーマット、その他の入力問題です。`message` フィールドを確認して、リクエストを修正してから再試行してください。

| フィールド | 型 | 説明 |
|----------|-----|------|
| `trace_id` | string | 診断・サポート用の一意の識別子 |
| `message` | string | 人間が読めるエラーの説明 |

```json
{"message": "the error message", "trace_id": "the_trace_id"}
```

---

## API ユニット不足

アカウントの API ユニットがタスクの送信に足りない場合、API は **400 Bad Request** を返します。タスクは作成されず、ユニットも消費されません。ボディは `message` と `trace_id` です。

```json
{
  "message": "Your API units are insufficient. Please purchase more to continue: https://wayin.ai/wayinvideo/api-dashboard",
  "trace_id": "the_trace_id"
}
```

料金は [料金・請求](https://wayin.ai/ja/api-docs/pricing/) にあります。

---

## 500 Internal Server Error

サーバー側のエラーです。問題が続く場合は `trace_id` をサポートにお伝えください。

```json
{"message": "the error message", "trace_id": "the_trace_id"}
```

---

## 403 Forbidden

認証に失敗しました（無効または欠落している API キー）。レスポンスに含まれるフィールド：`timestamp`、`status`、`error`、`path`。

```json
{"timestamp": "2026-03-13T07:58:46.156+00:00", "status": 403, "error": "Forbidden", "path": "/api/v2/clips"}
```

---

## 429 Too Many Requests

レート制限または同時実行制限を超えました。403 と同じ形式です。

```json
{"timestamp": "2026-03-10T15:52:01.610+00:00", "status": 429, "error": "Too Many Requests", "path": "/api/v2/clips/results/prjxxx"}
```

制限値については [レート制限](https://wayin.ai/ja/api-docs/rate-limits/) をご覧ください。
