ブログに戻る
BananaBanana Teamapix402agents

x402 AI生成API:アカウント不要・呼び出しごとの都度払い

x402で画像、動画、音声を生成:エージェントがBase上のUSDCで呼び出しごとに直接支払い。登録やAPIキーは不要、料金は$0.03から。

x402 AI生成API:アカウント不要・呼び出しごとの都度払い

x402は、長年使われていなかったHTTPステータスコード402を実用的なペイウォールに変えるオープンな決済プロトコルです。サーバーがリクエストに対して機械可読な請求条件とともに 402 Payment Required を返し、クライアントがステーブルコインの送金承認に署名してリクエストを再送すると結果を受け取れます。アカウント登録も、APIキーの発行も、月額サブスクリプションも不要です。Coinbaseは2026年4月にこのプロトコルをLinux Foundationに移管し、x402 Foundationが本格始動した時点で、AWS、Google、Stripe、Visa、Mastercardなど40の加盟組織が参画しています。もはや単なる実験的な技術ではありません。

要約: BananaBananaのx402エンドポイントは https://bananabanana.pro/api/x402 です。{ "tool": "...", "arguments": {...} } をPOSTし、その引数に対する正確な料金が記載された402レスポンスを受け取り、Base上のUSDCで支払ってリクエストを再送します。画像は$0.03から、動画は$0.30から、音声合成は200文字ごとに$0.01です。画像と音声はファイルが正常に生成された場合のみ課金されます。

画像、フィルムリール、スピーカーを排出する自動販売機に小さなロボットがコインを投入している様子、エディトリアルイラスト

この最後の一文こそ、x402に関する多くの解説が見落としている重要なポイントです。料金を請求すること自体は難しくありません。生成に失敗したリクエストから料金を徴収しない仕組みこそ、ソフトウェア設計の腕の見せ所です。

決済の具体的な流れ

手順は4ステップのみで、そのうち3つはHTTPクライアントが自動で処理します:

  1. エージェントが通常のJSON POSTリクエストを送信します。支払いヘッダーは付けません。
  2. サーバーが accepts 配列を含む 402 を返します。支払い要件には最小単位での金額、受取先アドレス、USDCコントラクト、チェーン、有効期限が含まれます。
  3. クライアントはその金額に対して EIP-3009 送金承認に署名し、Base64エンコードして X-PAYMENT ヘッダーにセットします。
  4. 同じリクエストをヘッダー付きで再送します。サーバーは署名をファシリテーターに渡して検証し、生成処理を実行したのち、ファシリテーターにオンチェーン決済を依頼します。

署名自体はブロックチェーンのトランザクションではありません。ネットワークにブロードキャストされるまでは実際の送金にならないオフチェーンの認可情報です。これにより、「まず検証、次に生成、最後に決済」という2段階の設計が成り立ちます。

実務上のポイント:仕様v2ではヘッダー名が PAYMENT-SIGNATUREPAYMENT-RESPONSE に改称されていますが、現在の多くのクライアントは依然として X-PAYMENT を送信しており、当サーバーでもこれを受理しています。公式TypeScript SDKを利用している場合、この違いを意識する必要はありません。

エージェントと有料API間の4段階のリクエストサイクルを示すダイアグラム風イラスト、エディトリアルスタイル

各ツールの料金

料金は生成ごとに計算され、署名を行う前に提示されます。正確な金額は引数によって決まるため(4K画像は1K画像より高価になります)、402レスポンスはあなたの具体的なリクエストを見積もります。

ツールモデル料金
generate_imageNano Banana 2 Lite$0.03(1Kのみ)
generate_imageNano Banana 2$0.03 – $0.13(512〜4K)
generate_imageNano Banana Pro$0.11 – $0.20(1K〜4K)
generate_videoGemini Omni Flash1秒あたり$0.10、3〜10秒、音声付き
generate_videoVeo 3.1 ファミリー1クリップあたり$0.10 – $4.40
generate_speechGemini Flash TTS開始200文字あたり$0.01

Omniでの音声付き3秒クリップは$0.30です。実用的な動画生成モデルの中で最も手軽な選択肢です。Veoはさらに精細な表現が可能ですが、8秒の1080p音声付き動画では初期ドラフトとしては費用が高くなります。

最新の料金カタログは直接確認できます:GET https://bananabanana.pro/api/x402 を実行すると、支払いを伴わずに全カタログが無料で返されます。

小さな額縁入りの絵やフィルムストリップの形状の横に並べられたサイズの異なるコイン、エディトリアルイラスト

最初から最後までの2つのリクエスト

以下は、署名ステップ(お使いのx402クライアントライブラリが担当する部分)を除いたcurlによる一連の流れです。

# 1. 見積もりリクエスト。支払いヘッダーなし:料金明細を取得。
curl -s -X POST https://bananabanana.pro/api/x402 \
  -H 'Content-Type: application/json' \
  -d '{"tool":"generate_image","arguments":{"prompt":"a paper boat on still water at dawn","model":"nano-banana-pro","resolution":"2048"}}'
{
  "x402Version": 1,
  "error": "Payment required: $0.11 for generate_image.",
  "accepts": [{
    "scheme": "exact",
    "network": "base",
    "maxAmountRequired": "110000",
    "resource": "https://bananabanana.pro/api/x402",
    "payTo": "0x7c0e9abd1c48380e27ab5bfced1be54f23ce773f",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "maxTimeoutSeconds": 300,
    "extra": { "name": "USD Coin", "version": "2" }
  }]
}

1本の線上に並ぶ2つの封筒:1つ目は南京錠が付いて戻り、2つ目は封蝋が押されて開いたフレームを通過する

パラメータに署名し、ヘッダーを付けて再送すると、2回目のレスポンスで生成されたファイルが届きます:

{
  "paid_usd": 0.11,
  "result": {
    "status": "completed",
    "images": [{ "url": "https://bananabanana.pro/api/files/..." }]
  }
}

自作のx402サーバーを構築する開発者向けに2つの重要事項:maxAmountRequired は最小単位で指定します。USDCは小数点以下6桁のため、$0.11は 110000 になります。また、extra.name はUSDCコントラクトの name() が返す値と完全に一致させる必要があります(Base mainnetでは USD Coin、Base Sepoliaでは USDC)。これはEIP-712のdomain separatorの計算に使用されるため、不一致があると明確なエラー理由なしに署名検証が失敗します。

動画生成の仕組み:事前決済と失敗時の返金トークン

画像と音声は1回のHTTPリクエスト内で生成が完了します(検証 → 生成 → 決済)。決済はファイルが正常に作成された場合のみ行われます。コンテンツフィルターで弾かれたりタイムアウトした場合は署名がオンチェーンに送信されないため、利用者の負担はありません。

一方、動画は仕組みが異なります。VeoやOmniでのレンダリングには1分から10分かかり、HTTP接続を維持し続けることはできません。またGoogle側で開始されたタスクはキャンセルできません(Googleの interactions.cancel メソッドは 501 UNIMPLEMENTED を返します)。そのため、動画は最初に事前決済を行って job_id を受け取り、無料のエンドポイントをポーリングして結果を取得します。

決済済みの動画がモデレーションで拒否された場合はどうなるでしょうか?

全額分の返金トークン(refund token、bb_rf_… 形式、90日間有効)が発行され、次回以降のリクエスト時に refund_token パラメータとして使用できます。$1.30の動画がフィルターで停止した場合、次のリクエストは$1.30引きになります。新しいリクエストの料金がトークン額より少ない場合、差額は新しいトークンとして返還されます。

これはオンチェーンでのUSDC返金ではありません。当サーバーは秘密鍵を保持しておらず、外部への出金トランザクションを実行できないためです(入金の受領と拒否のみ可能)。x402サービスのセキュリティ設計として、サーバー上に秘密鍵を置かないことは堅牢な保護策となります。

この動画はx402エンドポイント経由で$0.30で生成されました:Gemini Omni Flashモデル、長さ3秒、ガラス水槽の中で水に広がるインクの連続ショット、柔らかいサイドライト、低い部屋の環境音というプロンプトです。音声はモデルによって直接合成されています。

エージェントがエンドポイントを発見する仕組み

エージェントがURLを直接把握している場合、ディスカバリは不要です。その他のエージェント向けに、当サービスは /.well-known/x402(および /.well-known/x402.json)でマニフェストを公開しています。

マニフェストには、各ツールが支払い要件、CAIP-2形式のチェーンID、受取アドレス、ファシリテーターとともにリソースとして記載されています。マニフェストの accepts ブロックにはツールの最低価格が記載されており、エージェントが誤って上限額を支払ってしまうのを防ぎます。

エージェントディレクトリは空のPOSTリクエストを送信してエンドポイントを探索します。当サーバーはこれに対してツールの呼び出し手順を含む 402 で応答します。

引き出しが1つ開いて光るエンドポイントラベルが現れているカード式目録、エディトリアルイラスト

x402と通常アカウントの比較

同じ部屋へと続く2つのドア:1つはコインを持った機械のアームで開けられ、もう1つは鍵を持った手で開けられている

どちらの方法でも同じ生成モデルに接続できます。エージェントの運用形態に合わせて選択してください。

項目x402アカウント(MCPまたはWeb)
セットアップ残高のあるウォレットメール登録、その後にAPIキーまたはOAuth
呼び出しごと署名、直接支払い前払い残高から引き落とし
入金ボーナスなし$50+で5%、$100+で10%、クーポンでさらに10%
生成履歴保持されない完全な履歴と再利用可能なjob ID
動画編集利用不可edit_video、対話形式での微調整
最適な用途単発の呼び出し、完全自律型エージェント継続的な作業、費用管理、反復生成

入金ボーナスは大きな利点です:プロモコードを適用して$100を入金すると$120の残高が付与され(実質17%の割引)、アカウント残高を持たないx402にはこの仕組みがありません。一方で、ウォレットを持つ自律型エージェントはメールアドレスを必要とせず、1往復のリクエストですぐに生成を開始できます。

アカウント経由での利用をご希望の場合、MCPサーバーはClaude Code、Cursor、VS Codeに対応しており、Webジェネレーターはブラウザから直接ご利用いただけます。

よくある質問

支払いにCoinbaseアカウントは必要ですか?

いいえ。Baseネットワーク上のUSDCを保有する任意のEVMウォレットで支払いが可能です。決済処理はファシリテーターが行うため、ファシリテーターへの登録も不要です。

生成がコンテンツフィルターでブロックされた場合はどうなりますか?

画像と音声の場合、ファイルが正常に生成された段階でのみ決済が行われるため、費用は一切発生しません。動画の場合は次回以降のリクエストに使える全額分の返金トークンが発行されます。

サポートされているチェーンとトークンは何ですか?

Baseメインネット上のUSDC(スキームは exact)です。/.well-known/x402 のマニフェストにCAIP-2チェーンIDとトークンのコントラクトアドレスが記載されています。

x402で生成した動画を編集できますか?

x402経由では編集できません。編集機能はアカウントに紐づく生成履歴を利用します(MCPの edit_video)。x402では常に新しい動画を一から生成できます。

提示された見積もり価格の有効期限はどのくらいですか?

署名の有効期限はデフォルトで300秒(maxTimeoutSeconds パラメータ)です。基本料金はサイト上の価格表に準拠しており、セッション中に変更されることはありません。

稼働中のエンドポイントで$0.03の画像生成をお試しください。クライアントがEIP-3009認可に署名できれば、わずか4行のコードで画像を取得できます。

apix402agents