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

# API 概要

> Base URL、認証、ヘッダー、レスポンス慣例のまとめです。

YouRouter は単一ゲートウェイでモデル API を提供します。多くの統合は OpenAI 互換の Chat Completions から始めるのが最短です。

## Base URL

```text theme={null}
https://api.yourouter.ai/v1
```

OpenAI 互換 API とプロバイダー固有のモデル API はこの Base URL を使用します。動画タスクと Custom Search は個別の Base path を使います。

## エンドポイントファミリー

| ファミリー         | Base path                                  | 用途                                                                          |
| ------------- | ------------------------------------------ | --------------------------------------------------------------------------- |
| モデル API       | `https://api.yourouter.ai/v1`              | Chat Completions、Embeddings、Anthropic Messages、Google `generateContent` パス。 |
| 動画タスク         | `https://api.yourouter.ai/api/v3`          | Ark のテキストから動画生成、画像から動画生成タスクの作成とポーリング。                                       |
| Custom Search | `https://api.yourouter.ai/customsearch/v1` | Google Programmable Search 互換のウェブ検索。                                        |

## 認証

YouRouter API キーを Bearer トークンとして送ります。

```bash theme={null}
Authorization: Bearer <YOUROUTER_API_KEY>
```

JSON リクエストでは次も必要です。

```bash theme={null}
Content-Type: application/json
```

<Warning>
  API キーはサーバーサイド、バックエンド、CI、社内ツールなど信頼できる場所でのみ使用してください。ブラウザやモバイルに埋め込まないでください。
</Warning>

## 最初のリクエスト

```bash theme={null}
curl https://api.yourouter.ai/v1/chat/completions \
  -H "Authorization: Bearer $YOUROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o",
    "messages": [
      {
        "role": "user",
        "content": "Reply with exactly: connected"
      }
    ]
  }'
```

生成されたテキストは次のフィールドから読み取ります。

```text theme={null}
choices[0].message.content
```

## 主要概念

| 概念        | 使い方                                                                                 |
| --------- | ----------------------------------------------------------------------------------- |
| モデル選択     | リクエストボディの `model` フィールドを設定します。                                                      |
| マルチモーダル   | `messages[].content` にテキストと画像の content block を送るか、プロバイダー固有のマルチモーダルエンドポイントを使用します。    |
| 自動ルーティング  | `vendor` ヘッダーを省略するか、`vendor: auto` を送ります。                                           |
| 固定ルーティング  | `vendor: openai`、`vendor: anthropic`、`vendor: google`、またはその他の対応プロバイダーを送ります。         |
| ストリーミング   | `stream: true` を設定し、Server-Sent Events の増分 chunk として受信します。                          |
| ネイティブ API | Anthropic 互換の呼び出しには `/messages`、Gemini 互換の呼び出しには Google `generateContent` パスを使用します。 |

## 主なエンドポイント

| エンドポイント                                             | 目的                                          |
| --------------------------------------------------- | ------------------------------------------- |
| `POST /chat/completions`                            | OpenAI 互換のテキストおよび画像入力モデル呼び出し。多くの統合で推奨されます。  |
| `POST /embeddings`                                  | 対応する embedding モデルでテキスト埋め込みを生成します。          |
| `POST /messages`                                    | Anthropic Messages 互換のモデル呼び出し。              |
| `POST /projects/.../models/{model}:generateContent` | Google Gemini `generateContent` 互換のモデル呼び出し。 |
| `POST /api/v3/contents/generations/tasks`           | タスク型の動画生成呼び出し。                              |

## ステータスコード

| ステータス | 意味                             |
| ----- | ------------------------------ |
| `200` | リクエストが成功しました。                  |
| `400` | リクエストボディ、モデル、またはパラメータ形式が不正です。  |
| `401` | API キーが未指定、または無効です。            |
| `429` | プロバイダーのレート制限、または同時実行制限に達しました。  |
| `500` | ゲートウェイまたは上流プロバイダーが内部エラーを返しました。 |

基本形は [Create Chat Completion](/ja/api-reference/chat/create)。画像と動画は [マルチモーダル](/ja/guides/multimodal) を参照してください。
