はじめに

クイックスタート

Bearer トークン、JSON リクエストボディ、2 つの本番エンドポイント create と check を使って Nano Banana API をすぐに始められます。

必要なもの

  • A利用可能なクレジットがある Nano Banana アカウント
  • API キーダッシュボードで作成した API キー

API キーを取得

サインインして API キーページ を開き、キー名を入力して「作成」をクリックします。キーはすぐにコピーしてください。完全なキーは一度しか表示されません。

HTTP リクエストヘッダーを設定

ベース URL

HTTPS
https://nanobanana.io
HTTP
Authorization: Bearer sk_live_your_api_key
Content-Type: application/json

クイックスタート

JSON ペイロードを送信して非同期生成タスクを作成します。返された task_id を保存し、タスクの状態確認に使用します。

POST /api/v1/create
curl -X POST https://nanobanana.io/api/v1/create \
  -H "Authorization: Bearer sk_live_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "nano-banana-2",
  "input": {
    "prompt": "未来的なバナナ型カメラを写したシネマティックな商品写真",
    "aspect_ratio": "1:1",
    "resolution": "1k"
  }
}'
レスポンス
{
  "data": {
    "task_id": "d0a8d9f2-5e01-4c5d-9f40-38d197a1c617",
    "model": "nano-banana-2",
    "status": "processing",
    "credits": 20
  }
}

タスクを作成

モデル ID と input オブジェクトを送信して非同期生成タスクを作成します。このエンドポイントはタスクがキューに追加されたことを返すもので、最終メディア結果の完了までは待機しません。

POST/api/v1/create

認証

フィールド
必須
説明と制約
Authorizationstring必須
API キーをリクエストヘッダーの Bearer トークンとして渡します。例: Authorization: Bearer sk_live_your_api_key

リクエストボディ

application/json
フィールド
必須
説明と制約
modelstring必須
公開モデル ID。API セクションに掲載されているモデルを使用してください。例: nano-banana-2。
inputobject必須
生成用入力。空ではない prompt を含める必要があります。その他の入力フィールドはモデルごとに異なります。画像、アスペクト比、長さ、解像度、生成数などのフィールドを送信する前に、対象モデルのドキュメントを確認してください。
JSON
{
  "model": "nano-banana-2",
  "input": {
    "prompt": "未来的なバナナ型カメラを写したシネマティックな商品写真",
    "aspect_ratio": "1:1",
    "resolution": "1k"
  }
}

作成レスポンス

application/json

成功時のレスポンスには、タスク ID、モデル ID、キュー状態、このタスク用に確保されたクレジット数が含まれます。

HTTP 201
{
  "data": {
    "task_id": "d0a8d9f2-5e01-4c5d-9f40-38d197a1c617",
    "model": "nano-banana-2",
    "status": "processing",
    "credits": 20
  }
}

タスク状態を取得

返されたタスク ID を使い、タスクが完了または失敗するまでこのエンドポイントをポーリングしてください。最新状態を確認するため、5 秒ごとのポーリングを推奨します。

POST/api/v1/check

リクエストボディ

application/json
フィールド
必須
説明と制約
task_idstring必須
POST /api/v1/create が返すタスク ID。この ID を使ってタスク状態と最終結果 URL を取得します。
JSON
{
  "task_id": "d0a8d9f2-5e01-4c5d-9f40-38d197a1c617"
}

ステータスレスポンス

application/json

処理が完了すると、レスポンスに最終結果 URL とタイミングメタデータが含まれます。タスクがまだ実行中の場合、data null.

HTTP 200
{
  "id": "adc0e6ec-9c12-44fc-b45f-112187766c3",
  "created_at": 1788652800,
  "model": "nano-banana-2",
  "status": "completed",
  "data": {
    "results": [
      "https://cdn.nanobanana.io/api/predictions/example.mp4"
    ],
    "processing_time": 48
  }
}