Skip to main content
有些金库只有在发行方或协议授权后才接受存入,例如通过白名单、合规检查或签名许可。Composer API 支持存入这些许可制金库。在准备交易时,Composer 会检查产品的授权要求,并在需要时获取授权数据、将其纳入存入调用,从而遵守而非绕过产品的访问控制。
Composer 不执行 KYC 或 AML 检查,不为用户办理准入,也不授予访问权限。资格规则和准入流程仍由发行方或协议以及作为集成方的你负责。

可用范围

  • 支持的金库向所有集成方开放。 支持的许可制金库中列出的金库可通过 Composer API 使用,无需额外开通金库权限。Composer API 的常规认证要求仍然适用,参见快速入门。
  • 每个新的许可制产品都需要先由 LI.FI 集成。 不同产品的授权机制不同,因此 LI.FI 必须先集成其授权服务,才能将存入路由至该产品。如需提供尚未列出的许可制金库,请联系 LI.FI 团队。

各方职责

存入流程如何运作

  1. 在需要时引导用户完成准入。 当产品有要求时,将用户引导至发行方的准入流程。有些产品根据钱包筛查结果授权,无需单独的准入步骤。
  2. 请求存入。 将流程发送至 POST /compose,提供用户的真实地址、资金资产和目标金库。流程和输入绑定方式参见构建 Flow。不要使用占位地址:Composer 根据该地址推导用户的执行代理,并针对相应地址评估授权。
  3. Composer 检查资格并处理授权。 Composer 检查是否允许该笔存入,并获取准备交易所需的授权数据。如果产品拒绝存入,Composer 会返回错误。对于支持现有权限的产品,Composer 可以使用有效权限,无需请求新签名。授权对象由产品决定,可能是用户的执行代理,而非用户的钱包。授权形式(例如签名或权限授予)也由产品决定。
  4. Composer 准备交易。 Composer 将所需的授权数据纳入存入调用,与兑换等资金操作组合,并模拟结果。HTTP 200 响应表示准备阶段的授权要求已满足,不一定表示刚刚签发了新授权。没有单独的资格字段可供读取。
  5. 执行并展示结果。 用户签署并提交交易,执行代理执行调用,协议在存入过程中验证授权。对于延迟结算的产品,应将份额交付与资金交易分开跟踪。
授权数据可能有时效限制或只能使用一次。应在用户准备签署时请求新交易,而不是保存已准备好的 calldata 留待日后提交。
执行代理和编译流水线的工作方式参见执行模型。

处理结果

授权发生在 Composer 准备交易期间,因此授权遭拒或获取失败时,POST /compose 会返回 ComposeError,不会生成 calldata。 原始 HTTP 错误响应中的字段为 error.kind 和 error.message。后者供人阅读,可以展示或记录,但不要通过匹配文本进行程序判断。HTTP 206 响应同样包含 success: false,并携带部分结果数据。参见 Allow-revert 模式。

与 RWA 路由的关系

存入代币化现实世界资产可能受到三个独立层面的影响: 因此,不同 API 的结果形式不同。LI.FI quote API 拒绝许可制资产时,会返回无路由结果及原因;Composer API 则返回 resolution_rejected 错误。LI.FI API 的资格检查和合作方 RWA 政策参见现实世界资产。

支持的许可制金库

以下许可制金库可通过 Composer API 使用。随着产品增加,覆盖范围也会变化。当前路由覆盖范围参见支持的协议与链。

Nest

Nest 金库的份额代币在所列各链上使用相同地址。

Maple Syrup

Maple 检查的是执行代理的出借方权限,而非用户钱包的权限。如果代理已经获授权,Composer 会使用现有权限,不再请求新签名。否则,Composer 会获取签名并准备授权加存入调用;代理尚未获授权时,单笔交易只能存入一个 Syrup 池。权限可能被撤销,因此准备后续交易时会再次检查。

添加许可制金库

联系 LI.FI 团队

请告知你希望提供或分发哪个许可制金库、需要支持哪些链,以及发行方如何授权存入。我们会与你和发行方共同确定授权集成的范围。