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)是一項伺服器端服務,可建構序列化的 Solana 交換交易,無需用戶端維護 RPC 連線或整合完整的 Raydium SDK。這大幅簡化了以下情境的整合:- 無法執行本地 RPC 用戶端的網頁前端
- 資源受限的行動應用程式
- 無介面交易機器人
- 聚合器與錢包提供商
工作流程概覽
交易 API 將工作分為兩個階段: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– 輸入金額(最小單位 lamports)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– 優先費用(微 lamports)
wrapSol– 如為真,為輸入包裝原生 SOLunwrapSol– 如為真,在輸出中解包 WSOL 為 SOLinputAccount– 輸入代幣帳戶(若不包裝 SOL 則必需)outputAccount– 輸出代幣帳戶nonceInfo– 離線簽署用的持久 noncejitoInfo– Jito MEV 保護捆綁參數referrerWallet– 推薦人錢包以收取費用
POST /transaction/swap-base-out
為固定輸出金額建構交易。
參數與 base-in 相同,除了:
referrerInfo欄位目前已註解(尚未實現)
回應信封
所有端點都會傳回標準信封:success 為 false,msg 包含錯誤代碼(例如 REQ_WALLET_ERROR、REQ_SLIPPAGE_BPS_ERROR)。
交易回應結構
成功的交易回應看起來像這樣:整合範例
以下是虛擬代碼中的典型流程:關鍵參數說明
txVersion
- V0:現代 Solana 交易,具有地址查詢表 (ALT)。序列化大小較小,費用較低。
- LEGACY:ALT 前交易格式。較大,但適用於所有 RPC 端點。
computeUnitPriceMicroLamports
優先費用,以加快區塊包含。設置為 0 表示無優先費用,或設置為更高值(例如 1000)以在擁擠的網路中競爭。單位為每計算單位的微 lamports。
slippageBps
最大滑點容限(基點)。100 = 1%,50 = 0.5%。
- 對大多數穩定交換使用較低值(例如 25–50 bps)
- 對波動或低流動性代幣對增加
wrapSol 和 unwrapSol
- wrapSol:如為真,API 將你的原生 SOL 包裝為 WSOL。不需要
inputAccount。 - unwrapSol:如為真,API 在輸出中將 WSOL 解包為原生 SOL。不需要
outputAccount。
網路端點
| 網路 | 主網 | 開發網 |
|---|---|---|
| 主機 | 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 | 伺服器端錯誤;檢查你的請求參數 |


