# KyberSwap路线与编码不一致：核routeSummary、期限和RFQ复用

整理：链小知（AI 辅助）
资料核对日期：2026-10-14
引用地址：https://lianxiaozhi.com/tools/guides/kyberswap-route-summary-build-freshness-check
难度：进阶
核验方式：官方文档整理，未执行真实账户操作

从已有APIv1记录对齐选中的完整路线、构建参数与编码，分开路线缓存建议、deadline和RFQ nonce。

## 使用工具
- [KyberSwap](https://lianxiaozhi.com/tools/kyberswap) · [官方入口](https://kyberswap.com/)

## 前置条件
- 准备已有脱敏请求与响应，保留接口版本、链、币合约、小数位、金额原字符串及时间；缺权限或执行结果的材料明确留待核。

## 1. 先辨原端点、模式与权限

把原材料的host、chain路径及方法记下来：APIv1 GET /routes只取route预览，POST /route/build编码；旧非版本/route/encode是单请求模型。beta /api/v1/swap虽然也单请求且可带RFQ，却仅限网关白名单客户，不能当随意查询的预览替代。

EVM规范写新网关api.kyberswap.com/swap/每请求带X-Api-Key，旧aggregator-api base仍限流可用；首页no key概述与此并存。原X-Client-Id用于标识及限频，规范GET/POST必填标签也不同；保留原许可，不由同名header推定鉴权成功。

核对结果：版本、host、route/build或beta形状和权限分别标记；缺材料未补成可调用。
依据：[KyberSwap：当前产品与公开接入说明](https://docs.kyberswap.com/)
依据：[KyberSwap：EVM路线、构建、网关与错误字段](https://docs.kyberswap.com/developer-guide/aggregator-api/aggregator-api-specification/evm-swaps)
依据：[KyberSwap：路线与编码的两阶段方法](https://docs.kyberswap.com/developer-guide/aggregator-api/how-to-guides/execute-a-swap-with-the-aggregator-api)

## 2. 核选中路线与编码输入是否同一份

对既有GET结果保存routeSummary完整对象及routerAddress，核tokenIn/tokenOut地址和amountIn最小单位字符串。routeSummary虽可读，也包含routeID、checksum、timestamp、route与extraFee；POST要求原样带回，不可只抄预估amountOut后重建。

POST另加sender与recipient；sender是输入币转出方，recipient是输出接收方，origin可记录真实用户。不要把三个角色或routeSummary里的池地址全写成同一个地址。材料缺完整原routeSummary、链/币或接收人时，结论停在无法对应。

核对结果：完整routeSummary与所选GET路线对应，原路由地址、输入资产/数量及参与方角色未被重建或混用。
依据：[KyberSwap：EVM路线、构建、网关与错误字段](https://docs.kyberswap.com/developer-guide/aggregator-api/aggregator-api-specification/evm-swaps)
依据：[KyberSwap：路线与编码的两阶段方法](https://docs.kyberswap.com/developer-guide/aggregator-api/how-to-guides/execute-a-swap-with-the-aggregator-api)

## 3. 分开路线新鲜度、执行截止与重复执行

规范建议不缓存GET路线超过5–10秒，过久需重新获得路线；这是文档建议的新鲜度窗口，不能把原timestamp存在就当仍有效。POST的deadline是Unix秒、默认加20分钟且不能在过去，它约束执行截止，并不把旧报价重新变新。

beta说明同一calldata不保证多次执行，RFQ nonce可拒绝重复。对旧记录保留routeID、requestId和取得时间，不把前一笔编码直接配给新交易或新金额。只有预览需求时不要将beta调用当替代，本教程只核已有记录。

核对结果：路线取得时间、执行deadline及RFQ重复风险分开；旧编码没有被写成可重复执行的当前路线。
依据：[KyberSwap：EVM路线、构建、网关与错误字段](https://docs.kyberswap.com/developer-guide/aggregator-api/aggregator-api-specification/evm-swaps)

## 4. 核滑点、费用单位和Gas含义

POST slippageTolerance单位bps，10为0.1%，0.1为0.001%，未填默认0；普通范围0至2000，ignoreCappedSlippage=true会取消该上限，不以示例true作为默认建议。不要与其他产品百分比参数直接共用数值。

GET feeAmount要连同isInBps、chargeFeeBy和feeReceiver解释：isInBps=true时10是0.1%，false时10是10个token最小单位；currency_in/out决定收费币侧，空chargeFeeBy表示不按该参数收费。gasInclude只影响选路时是否计Gas，gasPrice是wei，不免实际网络费。平台无Swap协议费与外部集成费、positive slippage/dust可同时存在。

核对结果：滑点bps、费用百分比或绝对整数、收费币侧和Gas参与选路分别对应原字段。
依据：[KyberSwap：EVM路线、构建、网关与错误字段](https://docs.kyberswap.com/developer-guide/aggregator-api/aggregator-api-specification/evm-swaps)
依据：[KyberSwap：按产品区分费用](https://docs.kyberswap.com/getting-started/fee-schedule)

## 5. 按原返回阶段定位失败和未知

先分HTTP状态与JSON code：文档成功示例HTTP200但code=0；requestId供debug，不是交易成功凭证。原4001为query格式、4002为body格式、4005/4007分别费用超过输入/输出、4008无route、4010无合格pool、4011币不存在，422例为该网络未配置WETH；只在原错误对应时使用，别给缺失错误补码。

POST返回data.data是编码hexstring，routerAddress与transactionValue是发送对象和原生value材料；不能拿amountIn无条件充当原生value。enableGasEstimation仅为估算/检测潜在回滚的配置，不保证链上成功。缺实际结果时完成的是GET路线、POST编码、参与方及错误对照，不写已成交或已到账。

核对结果：HTTP/业务code、查询/构建阶段和交易结果各自留证；无实际结果未从编码推成功。
依据：[KyberSwap：EVM路线、构建、网关与错误字段](https://docs.kyberswap.com/developer-guide/aggregator-api/aggregator-api-specification/evm-swaps)
依据：[KyberSwap：路线与编码的两阶段方法](https://docs.kyberswap.com/developer-guide/aggregator-api/how-to-guides/execute-a-swap-with-the-aggregator-api)

## 常见错误
- 不要把同名字段、旧demo或其他API单位照搬进当前版本。
- 报价/编码、费用估计与实际执行结果分别留证；未知不补零或成功。

## 完成检查
- 得到版本、单位、角色、原错误与结果缺项的对照；官方方法已核，当前账户和实际执行结果依原材料确认。

## 相关知识

## 官方依据
- [KyberSwap：当前产品与公开接入说明](https://docs.kyberswap.com/)
- [KyberSwap：EVM路线、构建、网关与错误字段](https://docs.kyberswap.com/developer-guide/aggregator-api/aggregator-api-specification/evm-swaps)
- [KyberSwap：路线与编码的两阶段方法](https://docs.kyberswap.com/developer-guide/aggregator-api/how-to-guides/execute-a-swap-with-the-aggregator-api)
- [KyberSwap：按产品区分费用](https://docs.kyberswap.com/getting-started/fee-schedule)
