Documentation Index
Fetch the complete documentation index at: https://docs.raydium.io/llms.txt
Use this file to discover all available pages before exploring further.
このページは AI による自動翻訳です。すべての内容は英語版を正とします。英語版を表示 →
トランザクション API とは
Raydium トランザクション API(Route V2)は、クライアントが RPC 接続を維持したり Raydium SDK 全体をバンドルしたりすることなく、シリアライズされた Solana スワップトランザクションを構築するサーバー側サービスです。以下の統合を大幅に簡素化します。- ローカル RPC クライアントを実行できない Web フロントエンド
- リソースが限定されたモバイルアプリケーション
- ヘッドレストレーディングボット
- アグリゲーターとウォレットプロバイダー
ワークフロー概要
トランザクション API は関心を 2 つのフェーズに分けます。1. コンピュートフェーズ:クォートを取得
/compute/swap-base-in または /compute/swap-base-out を呼び出して、現在のプール状態に基づいて予想されるスワップ出力(または必要な入力)を受け取ります。このエンドポイントは読み取り専用で、署名は必要ありません。
- 予想される出力量
- ルートの詳細(どのプールとリクイディティソースが使用されているか)
- プライスインパクト
2. トランザクションフェーズ:構築して署名
コンピュートレスポンスを取得したら、それを(ウォレットと設定とともに)/transaction/swap-base-in または /transaction/swap-base-out に渡します。
- 署名する準備ができた Base64 エンコードされたバージョン化トランザクション
- アドレスルックアップテーブルアドレス(txVersion=V0 の場合のみ)
- トランザクションをデコード
- ユーザーのキーペアで署名
- 任意の Solana RPC を通じてブロードキャスト
- 確認を待機
コンピュートエンドポイント
GET /compute/swap-base-in
ユースケース:ユーザーが入力量を指定し、出力を計算します。
必須クエリパラメータ:
inputMint– 送信するトークンのミントアドレスoutputMint– 必要なトークンのミントアドレスamount– ラムポートでの入力量(最小単位)slippageBps– 最大許容スリッページをベーシスポイントで指定(0~10000)txVersion–V0またはLEGACY
referrerBps– リファラー権限がある場合、リファラー手数料として収集する出力のベーシスポイント
GET /compute/swap-base-out
ユースケース:ユーザーが必要な出力を指定し、必要な入力を計算します。
必須クエリパラメータ:
inputMint、outputMint、amount(必要な出力)、slippageBps、txVersion
トランザクションエンドポイント
POST /transaction/swap-base-in
固定入力量のトランザクションを構築します。
必須ボディ:
wallet– 署名するウォレットアドレスswapResponse– コンピュートレスポンスオブジェクト全体txVersion– トランザクションバージョンcomputeUnitPriceMicroLamports– マイクロラムポート単位のプライオリティ手数料
wrapSol– true の場合、入力用のネイティブ SOL をラップunwrapSol– true の場合、出力で WSOL をネイティブ SOL にアンラップinputAccount– 入力用のトークンアカウント(SOL をラップしない場合は必須)outputAccount– 出力用のトークンアカウントnonceInfo– オフライン署名用の Durable NoncejitoInfo– Jito MEV 保護バンドルパラメータreferrerWallet– 手数料収集用のリファラーウォレット
POST /transaction/swap-base-out
固定出力量のトランザクションを構築します。
base-in と同じパラメータ、ただし以下の例外:
referrerInfoフィールドは現在コメントアウトされています(まだ実装されていません)
レスポンスエンベロープ
すべてのエンドポイントは標準エンベロープを返します。success は false で、msg にはエラーコード(例:REQ_WALLET_ERROR、REQ_SLIPPAGE_BPS_ERROR)が含まれます。
トランザクションレスポンス形状
成功したトランザクションレスポンスは以下のような形になります。統合例
疑似コードの典型的なフローは以下の通りです。キーパラメータの説明
txVersion
- V0:アドレスルックアップテーブル(ALT)を使用した最新の Solana トランザクション。シリアライズサイズが小さく、手数料が低い。
- LEGACY:ALT 以前のトランザクション形式。サイズが大きいですが、すべての RPC エンドポイントで機能します。
computeUnitPriceMicroLamports
ブロック включぬ取を高速化するプライオリティ手数料。プライオリティ手数料なしの場合は 0、またはネットワークが混雑している場合は競争するためにより高い値(例:1000)を設定します。単位はコンピュートユニットあたりのマイクロラムポート。
slippageBps
最大スリッページ許容度をベーシスポイント単位で指定。100 = 1%、50 = 0.5%。
- ほとんどの安定したスワップに低い値(例:25~50 bps)を使用
- 変動性が高いまたは流動性が低いペアの場合は増加させる
wrapSol と unwrapSol
- wrapSol:
trueの場合、API がネイティブ SOL を WSOL にラップします。inputAccountは不要です。 - unwrapSol:
trueの場合、API が出力 WSOL をネイティブ SOL にアンラップします。outputAccountは不要です。
false の場合は、明示的なトークンアカウントを提供する必要があります。
ネットワークエンドポイント
| ネットワーク | Mainnet | Devnet |
|---|---|---|
| ホスト | transaction-v1.raydium.io | transaction-v1-devnet.raydium.io |
| プロトコル | HTTPS | HTTPS |
エラーコード
一般的なエラーメッセージ:| コード | 意味 |
|---|---|
REQ_SLIPPAGE_BPS_ERROR | スリッページが無効または範囲外 |
REQ_INPUT_MINT_ERROR | 入力ミントアドレスが無効 |
REQ_OUTPUT_MINT_ERROR | 出力ミントアドレスが無効 |
REQ_AMOUNT_ERROR | 金額が有効な数値ではない |
REQ_TX_VERSION_ERROR | txVersion は V0 または LEGACY である必要があります |
REQ_WALLET_ERROR | ウォレットアドレスが無効 |
REQ_INPUT_ACCOUT_ERROR | 入力トークンアカウントが見つからないか無効 |
REQ_OUTPUT_ACCOUT_ERROR | 出力トークンアカウントが見つからないか無効 |
UNKNOWN_ERROR | サーバー側エラー。リクエストパラメータを確認してください |


