本页内容由 AI 自动翻译,所有内容以英文版本为准。查看英文版 →
transaction-v1.raydium.io(以及 api-v3.raydium.io 上的某些镜像路径)上的一组轻量级端点,可在一次往返中报价交换、构建已签名的 Solana 事务并返回。这正是 Raydium UI 使用的接口。当你想要 Raydium 路由但不想打包 TS SDK 时,使用它 — 适用于后端、Blinks 处理程序、Telegram 机器人、第三方应用。
何时使用交易 API vs SDK
| 你想要… | 使用 |
|---|---|
| 将交换集成到无法打包 npm 包的后端中(如 Python 机器人、Go 服务、Rust 服务) | 交易 API |
| 在社交帖子中渲染交换 Blink | 交易 API |
| 构建一个字节数很重要的浏览器应用 | 交易 API |
| 在另一个 Solana 程序中嵌入路由逻辑(CPI) | 都不用 — 使用 sdk-api/rust-cpi |
| 构建一个功能完整的 DEX 类客户端,包含自定义路由预览、图表覆盖层、优先级费启发式算法 | TS SDK |
| 需要确定的离线报价而不需要网络往返 | TS SDK(带本地池状态) |
三个端点
1. GET /compute/swap-base-in
给定一个输入金额,选择一条路由并返回报价。
id 字段是一个不透明的报价句柄,传递给下一个端点。报价的有效期约为 30 秒;超过该时间后,需要重新报价。
2. GET /compute/swap-base-out
反向形式:「我想精确收到 N 个输出;告诉我所需的输入。」
swap-base-in;amount 字段的语义相反。
3. POST /transaction/swap-base-in 和 /transaction/swap-base-out
获取第 1 步的报价并返回已签名的版本化事务:
最小化端到端示例(Python)
路由和池选择
交易 API 路由跨所有 Raydium 程序(CPMM、CLMM、AMM v4)并为报价的大小选择最佳执行。特征:- 支持多跳。 SOL→USDC 交换可以通过 wSOL→JUP→USDC 路由,如果这样更便宜的话。
- 不支持单程序多池拆分。 单个报价恰好通过一条路径;如果你想跨池拆分大小,在客户端执行(两个报价,两个事务)。
- 稳定 vs 集中。 路由器在链内流动性充足时优先使用 CLMM,对于长尾对则回退到 CPMM。
- AMM v4 包含。 AMM v4 池被包含在路由中,但仅当它们提供比 CPMM/CLMM 替代方案更好的定价时才被选择。
推荐人参数
在计算端点上追加&referrer=<wallet_pubkey> 以从交换中获得 1% 的推荐费。参见 user-flows/referrals-and-blinks 了解语义。当出现时:
- 报价响应中的
referrerAmount是将路由到推荐人的绝对金额(以输入薄荷为单位)。 - 最终事务包含对推荐人 ATA 的额外 SPL 代币转账。
优先级费
构建请求中的computeUnitPriceMicroLamports 设置返回事务的优先级费。经验法则:
50_000(0.00005 lamports/CU × 200k CU ≈ 0.00001 SOL):最少,在非拥堵时刻很好。200_000:中等拥堵。1_000_000:严重拥堵。
getRecentPrioritizationFees,然后传递中位数。参见 integration-guides/priority-fee-tuning。
事务版本
"V0"返回一个版本化的(MessageV0)事务,具有常见账户的查找表。更小,更快。推荐。"LEGACY"返回一个旧式事务。更大;仅在你的钱包/基础设施不处理 V0 时使用。
错误形状
API 返回 HTTP 200,success: false 用于逻辑错误,HTTP 4xx/5xx 用于传输/基础设施错误。
常见逻辑错误:
"No route found"— 此大小的两个薄荷之间没有路径。减少amount或重新考虑对。"Insufficient liquidity"— 路由存在但会超过slippageBps。扩大滑点。"Quote expired"—swapResponse超过 30 秒。重新报价。"Unsupported mint"— 薄荷不在 Raydium 的范围内(未列出,或在已弃用的程序上)。
速率限制
- 报价端点: 每 IP 每分钟 120 个请求。
- 构建端点: 每 IP 每分钟 60 个请求(服务器上成本更高)。
- 超过限制返回 HTTP 429,带
Retry-After标头。
集成商的架构模式
接下来去哪里
sdk-api/typescript-sdk— 具有相同底层程序的更丰富的编程接口。sdk-api/rest-api— 读端点(池信息、薄荷信息)补充交易 API 的写端。user-flows/swap— 端到端 UI 交换流。integration-guides/aggregator— 跨许多 DEX 路由的聚合器模式。
transaction-v1.raydium.io实时端点。- Raydium UI 网络选项卡检查(相同的使用接口)。

