AIモデル向けx402 API:リクエストごとにUSDCで支払い
RunAPIは従量課金(1回ごとの課金)のエンドポイントでx402決済に対応しています。エージェントは通常のリクエストを送り、402の見積もりを受け取り、ウォレットで署名するだけで結果を取得できます。アカウントもAPI keyも前払いクレジットも不要です。
curl -i -X POST "https://runapi.ai/api/v1/z_image/text_to_image" \ -H 'Content-Type: application/json' \ --data @request.json # HTTP/2 402# PAYMENT-REQUIRED: <base64 JSON with accepts: scheme, network, asset, amount, payTo>
- 155 x402で支払えるリソース
- Base 決済ネットワーク
- USDC 支払い資産
- 0 必要なAPI keyの数
リクエストから結果までの4ステップ
-
キーなしでリクエストを送る
API keyを付けて送るときと同じJSONボディをPOSTします。ただしAuthorizationヘッダーは付けません。
-
402の見積もりを読む
RunAPIは402を返し、PAYMENT-REQUIREDヘッダーに正確な金額、資産、ネットワーク、受取人を記載します。見積もりの有効期間は300秒です。
-
署名して再送する
x402 v2クライアントがエージェントのウォレットでEIP-3009の承認に署名し、PAYMENT-SIGNATUREヘッダーを付けてリクエストを再送します。
-
タスクをポーリングする
RunAPIは支払いを決済してタスクを開始し、PAYMENT-RESPONSEの領収書と結果取得用のpoll_urlを付けて200を返します。
支払い前に知っておくこと
登録不要、APIキー不要
支払うウォレットがそのまま唯一のIDになります。アカウント作成、キーの保管、残高のチャージは不要です。
ガス代不要のUSDC支払い
支払者がEIP-3009の承認に署名し、Coinbase CDPのfacilitatorが送金を実行します。ウォレットに必要なのはUSDCだけで、ETHは不要です。
結果の取得
メディア系のタスクの多くは非同期で完了します。200レスポンスには、読み取り専用のタスクアクセストークン付きのpoll_urlが含まれます。このトークンで開けるのは該当タスクのみで、タスク完了から30日間有効です。
タスクが失敗した場合
x402には返金の仕組みが組み込まれていません。支払い済みのタスクが失敗状態で終了した場合、RunAPIは受け取った全額の返金義務を記録し、その後オペレーターが別途USDC送金で支払元のウォレットに返金します。返金は自動では行われません。
対象となるエンドポイント
x402は1回あたりの価格が固定されたRESTエンドポイントで利用できます。LLMエンドポイントを含め、トークン数・秒数・文字数で課金されるモデルは、引き続きAPI keyとクレジットが必要です。MCPサーバーはx402決済に対応していません。
API keyも引き続き使えます
x402は追加の支払い手段です。有効なAPI keyを送るリクエストはこれまでどおりアカウントのクレジットを使用し、無効なキーのリクエストには支払い見積もりではなく401が返ります。
やり取りの実例
このレスポンスを、エージェントのウォレットに接続した任意のx402 v2クライアントに渡します。署名と再送はクライアントが処理します。
request = {method: "POST", url: task_url, json: payload}response = x402_client.send(request, wallet: agent_wallet)# The x402 v2 client reads PAYMENT-REQUIRED, signs an EIP-3009# authorization, and replays the request with PAYMENT-SIGNATURE.response.status # => 200response.headers["PAYMENT-RESPONSE"] # settlement receiptresponse.json["poll_url"] # read-only task result URL
価格の例
現在x402に対応している一部モデルの、1回あたりの最低価格です。価格はライブのモデルカタログから取得しており、各402見積もりにはそのリクエストの正確な金額が記載されます。
| モデル | エンドポイント | 1回あたりの価格 |
|---|---|---|
| Z Image Text to image z-image | POST /api/v1/z_image/text_to_image | $0.01 |
| Flux Text to image flux-2-klein | POST /api/v1/flux/text_to_image | $0.03 |
| Suno Stitch audio suno-v4 | POST /api/v1/suno/stitch_audio | $0.01 |
| Suno Stitch audio suno-v4.5 | POST /api/v1/suno/stitch_audio | $0.01 |
| Recraft Upscale image recraft-crisp-upscale | POST /api/v1/recraft/upscale_image | $0.01 |
| Recraft Remove background recraft-remove-background | POST /api/v1/recraft/remove_background | $0.01 |
支払いの詳細
RunAPIはx402 v2のexactスキームに従い、以下の値のみを受け付けます。それ以外の値は、RunAPIがfacilitatorに決済を依頼する前に拒否されます。
| ネットワーク | Base mainnet(eip155:8453) |
|---|---|
| 資産 | USDC、コントラクト 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913、小数点以下6桁 |
| Facilitator | Coinbase CDP |
| 承認方式 | EIP-3009。支払者に必要なのはUSDCのみで、ガス代用のETHは不要 |
| 上限 | 1リクエストあたり最大10 USDC。見積もりは300秒で失効 |
x402に関するよくある質問
x402とは何ですか?
x402は、HTTPの402 Payment Requiredステータスコードを基盤としたオープンな決済プロトコルです。サーバーが支払い条件付きで402を返し、クライアントが署名済みのステーブルコイン承認で支払い、リクエストを再送します。x402 Foundationが管理しています。
x402で支払うにはRunAPIのアカウントが必要ですか?
いいえ。支払いを行うウォレットがそのまま身元になります。RunAPIは最初の決済が成功した後にのみ内部のウォレットプロファイルを作成し、メールアドレスやAPI keyを求めることはありません。
x402のfacilitatorは何をしますか?
facilitatorは署名済みの支払いを検証し、Base上でUSDCの送金を実行します。RunAPIはCoinbase CDPのfacilitatorを使用しているため、支払者がガス代を負担する必要はありません。
1リクエストの料金はいくらですか?
各エンドポイントには1回あたりの固定価格があります。署名する前に402見積もりで正確なUSDC金額を確認でき、現在の価格はモデルカタログに掲載されています。
エージェントはx402 BazaarでRunAPIを見つけられますか?
各402見積もりには、入力スキーマと例を含むBazaarのディスカバリー宣言が含まれているため、x402クライアントやディレクトリがエンドポイントを掲載できます。
支払い後、タスク開始前にリクエストが失敗したらどうなりますか?
バリデーションに失敗したリクエストは支払いの決済前に拒否されるため、料金は発生しません。決済後にタスクが失敗した場合は、全額の返金義務が記録されます。