1inch swap API调用报错500 cannot find path for [token]问题咨询
1inch swap接口报错排查方案
报错核心说明
cannot find path报错的本质是1inch路由系统无法为你指定的交易对、交易金额匹配到可行的兑换路径。即使对应代币可以在/tokens接口返回列表中查询到,也不代表当前存在满足你请求参数的有效兑换路由,具体问题点如下:
- 源代币地址填写错误
你需要执行的是sUSD兑换操作,但请求中填写的fromTokenAddress=0x6b175474e89094c44da98b954eedeac495271d0f为以太坊主网DAI的合约地址,以太坊主网sUSD的正确合约地址为0x57Ab1ec28D129707052df4dF418D58a2D46d5f51,地址填写错误会导致交易对匹配异常,无法找到兑换路径。 - 目标代币地址填写错误
你请求中填写的toTokenAddress=0x5e74c9036fb86bd7ecdcb084a0673efc32ea31cb不属于以太坊主网的ETH或WETH地址:- 以太坊主网原生ETH在1inch接口中的固定标识地址为
0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE - 以太坊主网WETH的合约地址为
0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
填写非目标链对应代币地址会直接触发路径查找失败。
- 以太坊主网原生ETH在1inch接口中的固定标识地址为
- 交易金额参数单位错误
1inch接口的amount参数要求传入对应代币最小精度单位的数值,sUSD的小数精度为6位,你直接传入amount=10相当于仅请求兑换0.00001枚sUSD,交易金额过小无法覆盖兑换手续费,也会触发路径查找失败。如果需要兑换10枚sUSD,该参数值应填写为10000000。 - 接口版本过旧
你使用的v3.0版本1inch接口已经停止维护,路由系统的流动性数据不再更新,也会出现有效交易无法找到路径的问题,建议切换为目前官方维护的v4/v5版本接口。
修正后的请求示例(以兑换10 sUSD到WETH为例)
curl -X GET "https://api.1inch.exchange/v5.0/1/swap?fromTokenAddress=0x57Ab1ec28D129707052df4dF418D58a2D46d5f51&toTokenAddress=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&amount=10000000&fromAddress=0x52bc44d5378309ee2abf1539bf71de1b7d7be3b5&slippage=1" -H "accept: application/json"
内容的提问来源于stack exchange,提问作者Yehuda Yefet
相关产品推荐
相关产品推荐

