Skip to main content
本文は Nano Banana Images API の接続と使用について説明します。このインターフェースは二つの機能をサポートしています:画像生成(generate)画像編集(edit)

申請プロセス

使用する前に、XHuoAPI プラットフォームで Nano Banana Images API にアクセスし、Acquire をクリックして開通を申請してください。初回申請では通常、無料の利用枠が利用可能です。開通が完了したら、プラットフォームで API を呼び出すための Bearer Token を取得できます。

インターフェース概要

  • Base URLhttps://api.xhuoapi.ai/v1
  • エンドポイントPOST /nano-banana/images
  • 認証方式:HTTP ヘッダーに authorization: Bearer {token} を含める
  • リクエストヘッダー
    • accept: application/json
    • content-type: application/json
  • アクション(action)
    • generate:テキストプロンプトに基づいて画像を生成
    • edit:指定された画像に基づいて編集
  • モデル(model)(オプション):
    • nano-banana(デフォルト):Gemini 2.5 Flash Image に基づき、高速で低コスト
    • nano-banana-2:Gemini 3.1 Flash Image Preview に基づき、Pro レベルの品質 + Flash スピード
    • nano-banana-pro:Gemini 3 Pro Image Preview に基づき、最高品質
  • 非同期コールバック:オプションで、callback_url を通じてタスク完了通知と結果を受信

クイックスタート:画像生成(action=generate

最小必須パラメータactionprompt プロンプトに基づいて直接画像を生成したい場合は、actiongenerate に設定し、明確な prompt を提供してください。

リクエスト例(cURL)

リクエスト例(Python)

成功返却例

フィールド説明

  • success:今回のリクエストが成功したかどうか。
  • task_id:タスク ID。
  • trace_id:トレース ID、問題の調査に役立ちます。
  • data[]:結果リスト。
    • prompt:生成に使用されたプロンプト(エコー)。
    • image_url:生成された画像の直接リンク URL。
注:/nano-banana/images では actionprompt のみで画像を生成できます。

画像編集(action=edit

既存の画像に基づいて編集したい場合は、actionedit に設定し、image_urls で編集対象の画像リンクリスト(1枚または複数枚)を渡し、同時に編集目標を説明する prompt を提供してください。 例えば、ここで人物の写真と服の写真を提供し、その人物にその服を着せる場合、画像リンクを同時に渡し、アクションを edit に指定します。URL は HTTP URL で、https または http プロトコルの公開アクセス可能なリンクである必要があります。また、Base64 エンコードされた画像(例:data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAVGCAMAAAA6u2FyAAADAFBMVEXq6uwdHCEeHyMdHS....)も使用できます。

リクエスト例(cURL)

リクエスト例(Python)

成功返却例

フィールド説明

  • image_urls[]:編集対象の画像 URL リスト(必ず公開アクセス可能である必要があります)。複数枚を渡すことができ、サービスはこれらの素材と prompt を組み合わせて編集を完了します。
  • その他のフィールドは「画像生成」の返却と同様です。

非同期コールバック(オプション、推奨)

生成または編集には一定の時間がかかる場合があります。長時間接続がリソースを占有しないように、callback_urlを使用してWebhookコールバックを利用することをお勧めします:
  1. リクエストボディにcallback_urlを追加します。例えば、あなたのサーバーのWebhookアドレス(公開アクセス可能で、POST JSONをサポートする必要があります)。
  2. APIは即座にtask_idを含むレスポンス(または基本的な結果を含む)を返します。
  3. タスクが完了すると、プラットフォームはPOST方式で完全なJSONをcallback_urlに送信します。task_idを使用してリクエストと結果を関連付けることができます。
コールバックペイロードの例(フィールド構造は同期成功の返却と一致):

エラーハンドリング

呼び出しが失敗した場合、標準エラーフォーマットとトレースIDが返されます。一般的なエラーは以下の通りです:
  • 400 token_mismatched:リクエストが不正またはパラメータエラー。
  • 400 api_not_implemented:インターフェースが未実装(サポートに連絡してください)。
  • 401 invalid_token:認証失敗またはトークンが欠如。
  • 429 too_many_requests:リクエスト頻度が制限を超過。
  • 500 api_error:サーバーエラー。

エラーレスポンスの例


パラメータ対照と注意事項

  • 必須actionprompt
  • 編集専用image_urls(配列、少なくとも1項目)
  • オプションmodel(デフォルトはnano-banananano-banana-2またはnano-banana-proも選択可能)、aspect_ratio(アスペクト比、例:1:116:9)、resolution(解像度、例:1K2K4K)、callback_url(非同期コールバック用)
  • ヘッダーauthorization: Bearer {token}を必ず提供;acceptapplication/jsonに設定することを推奨
  • 画像の可アクセス性image_urlsは公開アクセス可能な直リンク(HTTP/HTTPS)でなければならず、HTTPSの使用を推奨
  • 冪等性とトレースtask_idtrace_idを保持し、障害調査と結果の関連付けを容易にすること