Nano Banana Pro API
Google Gemini を搭載した Nano Banana Pro モデルの完全な API リファレンスです。
モデルバリアント {#}
この API は 2 つのモデルバリアントをサポートしています:
クイック比較
サポートされているアスペクト比
両モデルとも 11 のアスペクト比をサポートしています:
16:9(デフォルト)、9:16、1:1、3:2、2:3、4:3、3:4、4:5、5:4、21:9、9:21
Nano Banana Pro(テキストから画像)
エンドポイント
POST /api/v1/image/task
認証
Authorization: Bearer YOUR_API_KEY
リクエストパラメータ
必須
注意: width:height の比率は次のいずれかである必要があります:"21:9"、"9:21"、"16:9"、"9:16"、"4:3"、"3:4"、"3:2"、"2:3"、"1:1"
リクエスト例
const response = await fetch('https://api.flaq.ai/api/v1/image/task', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model_name: 'nano-banana-pro',
prompt: 'A serene mountain landscape at sunset',
width: 16,
height: 9,
resolution: '2k'
})
});
const { data } = await response.json();
const taskId = data.task_id;
const pollResponse = await fetch(
`https://api.flaq.ai/api/v1/image/${taskId}`,
{
headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
}
);
const result = await pollResponse.json();
console.log(result.data.task_result.images[0].url);
Nano Banana Pro Edit(画像編集)
エンドポイント
POST /api/v1/image/task
リクエストパラメータ
必須
注意: width:height の比率は次のいずれかである必要があります:"21:9"、"9:21"、"16:9"、"9:16"、"4:3"、"3:4"、"3:2"、"2:3"、"1:1"
単一画像編集の例
{
model_name: 'nano-banana-pro-edit',
prompt: 'Change the sky to sunset colors',
width: 16,
height: 9,
resolution: '2k',
image_url_list: ['https://example.com/image.jpg']
}
複数画像合成の例
{
model_name: 'nano-banana-pro-edit',
prompt: 'Combine these images into a cohesive landscape',
width: 16,
height: 9,
resolution: '2k',
image_url_list: ['https://example.com/image1.jpg', 'https://example.com/image2.jpg', 'https://example.com/image3.jpg']
}
レスポンス形式
初期レスポンス
両モデルともポーリング用の task_id を返します:
{
"code": 0,
"data": {
"task_id": "{task_id}",
"task_status": "submitted",
"response_url": "https://api.flaq.ai/api/v1/image/{task_id}"
},
"message": "success"
}
ポーリングレスポンス
/api/v1/image/{taskId} をポーリングしてステータスを確認します:
{
"code": 0,
"data": {
"task_id": "{task_id}",
"task_status": "succeed",
"task_status_msg": null,
"response_url": "https://api.flaq.ai/api/v1/image/{task_id}",
"task_result": {
"credit": 0.0997,
"images": [
{
"url": "https://example.com/generated-image.jpeg"
}
]
}
},
"message": "success"
}
ステータス値
submitted: タスクが受け付けられました
processing: 生成処理中
succeed: 生成が正常に完了しました
failed: 生成に失敗しました
エラーハンドリング
一般的なエラー
無効な解像度
{
"code": 400,
"message": "Resolution must be one of: 1k, 2k, 4k"
}
無効なアスペクト比
{
"code": 400,
"message": "Ratio must be one of: 16:9, 9:16, 1:1, 3:2, 2:3, 4:3, 3:4, 4:5, 5:4, 21:9, 9:21"
}
画像 URL の欠落(編集モード)
{
"code": 400,
"message": "image_url_list is required for nano-banana-pro-edit"
}
ベストプラクティス
テキストから画像生成のヒント
- 具体的に記述する: 被写体、スタイル、照明、構図の詳細を含める
- 解像度を賢く選択する: 2K がデフォルトでコスト効率が良く、最高品質には 4K を使用
- アスペクト比の選択: 用途に応じて比率を選択(Web には 16:9、モバイルには 9:16)
- プロンプトの品質: より詳細なプロンプトは一般的により良い結果を生み出します
画像編集のヒント
- 明確な指示: 何を変更するかを具体的に記述する
- 複数画像の合成: 1 回のリクエストで最大 14 枚の画像を組み合わせることができます
- 解像度のマッチング: 出力解像度は入力と異なる場合があります
- プロンプトのガイダンス: 変更内容だけでなく、望ましい結果を説明する
使用例
商品写真
{
model_name: 'nano-banana-pro',
prompt: 'Professional product shot of luxury watch on marble surface',
width: 4,
height: 3,
resolution: '4k'
}
複数画像コラージュ
{
model_name: 'nano-banana-pro-edit',
image_url_list: [
'photo1.jpg',
'photo2.jpg',
'photo3.jpg'
],
prompt: 'Create a seamless collage with these vacation photos',
width: 16,
height: 9,
resolution: '2k'
}
画像強化
{
model_name: 'nano-banana-pro-edit',
image_url_list: ['photo.jpg'],
prompt: 'Enhance colors and add dramatic lighting',
width: 1,
height: 1,
resolution: '2k'
}