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

# クイックスタート

> 5分で SinanCode API を始めましょう

## ステップ 1：API キーを取得

[API キー管理ページ](https://sinancode.com/dashboard/keys) にアクセスして API キーを作成します。

1. SinanCode アカウントにログイン
2. Dashboard → API Keys に移動
3. 「新しいキーを作成」をクリック
4. 生成された API キーを保存（安全に保管してください、一度しか表示されません）

## ステップ 2：API リクエストを送信

すべての API リクエストには HTTP ヘッダーでの認証が必要です：

```bash theme={null}
Authorization: Bearer YOUR_API_KEY
```

### 基本的なリクエスト例

Imagen4 を使用して画像を生成する完全な例：

```bash theme={null}
curl -X POST https://api.sinancode.com/v1/generate/k/imagen4 \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "a beautiful sunset over the mountains",
    "aspect_ratio": "16:9",
    "num_images": 1
  }'
```

**レスポンス例：**

```json theme={null}
{
  "task_id": "01234567-89ab-cdef-0123-456789abcdef"
}
```

## ステップ 3：タスクステータスを確認

AI モデルの生成には時間がかかるため、ほとんどの API は非同期で動作します。返された `task_id` を使用してタスクステータスを確認します：

```bash theme={null}
curl -X GET https://api.sinancode.com/v1/tasks/01234567-89ab-cdef-0123-456789abcdef \
  -H "Authorization: Bearer YOUR_API_KEY"
```

**レスポンス例：**

```json theme={null}
{
  "id": "01234567-89ab-cdef-0123-456789abcdef",
  "status": "completed",
  "result": [
    "https://storage.example.com/generated-image.jpg"
  ]
}
```

### タスクステータスの説明

* `pending` - タスクはキューに入っています
* `processing` - 生成中
* `completed` - 生成完了
* `failed` - 生成失敗

## 人気モデル クイックリファレンス

### 画像生成モデル

#### Imagen 4

* **エンドポイント**: `POST /generate/k/imagen4`
* **特徴**: Google の最新画像生成モデル、優れた品質
* **パラメータ**: `prompt`, `aspect_ratio`, `num_images`, `seed`

#### Midjourney

* **エンドポイント**: `POST /generate/k/midjourney-txt2img`
* **特徴**: 強いアーティスティックスタイル、クリエイティブデザインに最適
* **パラメータ**: `prompt`, `aspectRatio`, `version`, `stylization`

#### Flux Kontext

* **エンドポイント**: `POST /generate/k/flux-kontext`
* **特徴**: 中国語プロンプトをサポート、自動翻訳機能付き
* **パラメータ**: `prompt`, `aspect_ratio`, `model`, `enable_translation`

### 動画生成モデル

#### Sora 2

* **エンドポイント**: `POST /generate/k/sora2-text-to-video`
* **特徴**: OpenAI の動画生成モデル
* **パラメータ**: `prompt`, `aspect_ratio`, `n_frames`

#### Veo 3

* **エンドポイント**: `POST /generate/k/veo3-text-to-video`
* **特徴**: Google の動画生成モデル、画像から動画への変換をサポート
* **パラメータ**: `prompt`, `aspectRatio`, `model`

## 完全なコード例

### Python 例

```python theme={null}
import requests
import time

API_KEY = "your_api_key_here"
BASE_URL = "https://api.sinancode.com/v1"

# タスクを作成
response = requests.post(
    f"{BASE_URL}/generate/k/imagen4",
    headers={
        "Authorization": f"Bearer {API_KEY}",
        "Content-Type": "application/json"
    },
    json={
        "prompt": "a futuristic cityscape at sunset",
        "aspect_ratio": "16:9",
        "num_images": 1
    }
)

task_id = response.json()["task_id"]
print(f"タスク作成成功、ID: {task_id}")

# タスクステータスをポーリング
while True:
    status_response = requests.get(
        f"{BASE_URL}/tasks/{task_id}",
        headers={"Authorization": f"Bearer {API_KEY}"}
    )

    task = status_response.json()
    status = task["status"]

    print(f"タスクステータス: {status}")

    if status == "completed":
        print(f"生成完了！画像 URL: {task['result'][0]}")
        break
    elif status == "failed":
        print(f"生成失敗: {task.get('error_msg', 'Unknown error')}")
        break

    time.sleep(2)  # 2秒待ってリトライ
```

### JavaScript/TypeScript 例

```javascript theme={null}
const API_KEY = "your_api_key_here";
const BASE_URL = "https://api.sinancode.com/v1";

async function generateImage() {
  // タスクを作成
  const createResponse = await fetch(`${BASE_URL}/generate/k/imagen4`, {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${API_KEY}`,
      "Content-Type": "application/json"
    },
    body: JSON.stringify({
      prompt: "a serene mountain landscape",
      aspect_ratio: "16:9",
      num_images: 1
    })
  });

  const { task_id } = await createResponse.json();
  console.log(`タスク作成成功、ID: ${task_id}`);

  // タスクステータスをポーリング
  while (true) {
    const statusResponse = await fetch(`${BASE_URL}/tasks/${task_id}`, {
      headers: { "Authorization": `Bearer ${API_KEY}` }
    });

    const task = await statusResponse.json();
    console.log(`タスクステータス: ${task.status}`);

    if (task.status === "completed") {
      console.log(`生成完了！画像 URL: ${task.result[0]}`);
      break;
    } else if (task.status === "failed") {
      console.log(`生成失敗: ${task.error_msg}`);
      break;
    }

    await new Promise(resolve => setTimeout(resolve, 2000)); // 2秒待機
  }
}

generateImage();
```

## 次のステップ

* 📖 [完全な API ドキュメントを見る](/ja/api-reference/introduction) - 利用可能な全モデルとパラメータを確認

## よくある質問

### どのモデルを選べばいいですか？

* **品質重視**: Imagen 4 Ultra, Midjourney v7
* **速度重視**: Imagen 4 Fast, Nano Banana
* **中国語プロンプト**: Flux Kontext, Tongyi Wanxiang
* **動画生成**: Sora 2 Pro, Veo 3

### レート制限はありますか？

各 API キーにはサブスクリプションプランに応じたレート制限があります。制限を超えると `429 Too Many Requests` エラーが返されます。

サポートが必要ですか？[sinancode.com](https://sinancode.com) で技術サポートチームにお問い合わせください。
