Ephemeral SPL Token Program
オンチェーンの Ephemeral SPL Token プログラム
プライベート決済サンプル
プライベート決済アプリと API フローのサンプルを見る
概要
Ephemeral SPL Token API は、Solana と MagicBlock ephemeral rollups をまたいで、入金、送金、出金、swap、mint 初期化用の未署名 SPL token トランザクションを構築します。残高と mint 初期化状態の照会、stealth pool、プライベートデータを読み取るための bearer token を発行するウォレットの challenge/login フローも提供します。正式な公開リファレンスは payments.magicblock.app/reference です。メタ
- ヘルス - API の健全性と可用性を確認する
- トランザクションを送信 - 署名済みトランザクションを base layer または ephemeral RPC に送信する
認証
SPL
- SPL Token を入金 - Solana から ephemeral rollup への未署名入金トランザクションを構築する
- SPL Token を送金 - 未署名の公開またはプライベート SPL 送金を構築する
- SPL Token を出金 - Solana へ戻す未署名出金トランザクションを構築する
- Ephemeral ATA の委任を解除 - mint に対するウォレットの eATA を委任解除する未署名トランザクションを構築する
- Mint を初期化 - mint 用の validator-scoped transfer queue を初期化する未署名トランザクションを構築する
- Transfer Queue Crank を実行 - mint の transfer queue を検証し、crank を 1 回強制的に試行する
- 残高 - アドレスの base-chain SPL token 残高を取得する
- プライベート残高 - アドレスの ephemeral-rollup SPL token 残高を取得する(認証が必要)
- Mint の初期化状態 - mint に validator-scoped transfer queue が ephemeral RPC 上で存在するか確認する
Stealth Pool
- Stealth Pool を作成 - プライベート送金用の送信先 key に handle をマッピングする(認証が必要)
- Stealth Pool の状態を取得 - handle の stealth pool が存在するか確認する
Swap
- Swap クォート - 2 つの SPL mint 間の swap クォートを取得する
- Swap - 未署名の swap トランザクションを構築する(公開パススルー、またはスケジュール済み送金付きのプライベート)
MCP
- MCP - stateless Streamable HTTP MCP endpoint にアクセスする
認証フロー
Private Ephemeral Rollup 内のプライベートデータを読み取るエンドポイントには bearer トークンが必要です:GET /v1/spl/challenge?pubkey=<wallet>がchallenge文字列を返す- ウォレットが challenge に署名する
POST /v1/spl/loginに{ pubkey, challenge, signature }を送るとtokenが返る/v1/spl/private-balance(必須) と Private Ephemeral Rollup への接続が必要な/v1/spl/transferリクエスト (オプション) でAuthorization: Bearer <token>を渡す
レスポンス形式
トランザクション構築エンドポイントが成功すると、未署名トランザクションのペイロードが返されます:- API を呼び出す
transactionBase64をデコードする- 必要に応じてクライアント側でトランザクションを調整する
- 必要なウォレットで署名する
sendToで指定された RPC ("base"または"ephemeral") に送信する

