> ## Documentation Index
> Fetch the complete documentation index at: https://docs.li.fi/llms.txt
> Use this file to discover all available pages before exploring further.

# API 参数

> Composer 如何使用标准 LI.FI API 参数，包括工具识别、滑点和路由过滤。

当 `toToken` 被设置为[受支持协议](/composer/protocols-and-chains)的代币地址时，Composer 会自动激活。除标准的 LI.FI 报价参数外，无需任何额外参数。

***

## `toToken` 如何触发 Composer

当 `toToken` 对应一个受支持的 vault/质押/存入代币时，LI.FI 的路由引擎会自动：

1. 将其识别为一条 Composer 路由
2. 找到获取底层资产的最优路径（交换、桥接，或两者兼有）
3. 编译 Composer 指令（eDSL → 字节码）
4. 模拟完整的执行路径
5. 返回一个可直接签署的 `transactionRequest`

***

## 与 Composer 相关的参数

这些参数是标准 `GET /quote` 和 `POST /advanced/routes` 端点的一部分。它们并非 Composer 特有，但在构建 Composer 集成时尤为相关。

| 参数               | 类型        | 必填 | 说明                                                             |
| ---------------- | --------- | -- | -------------------------------------------------------------- |
| `fromChain`      | number    | 是  | 源链 ID（例如 `1` 表示 Ethereum，`8453` 表示 Base）                       |
| `toChain`        | number    | 是  | 目标链 ID。同链存入时与 `fromChain` 相同。                                  |
| `fromToken`      | string    | 是  | 源代币地址。原生代币使用 `0x0000000000000000000000000000000000000000`。     |
| `toToken`        | string    | 是  | **vault/质押/存入代币地址。** 这就是触发 Composer 的因素。                       |
| `fromAmount`     | string    | 是  | 以 `fromToken` 的最小单位表示的金额（例如 `1000000` 表示 6 位小数的 1 USDC）。       |
| `fromAddress`    | string    | 是  | 发送方的钱包地址。                                                      |
| `toAddress`      | string    | 是  | 接收方的钱包地址。通常与 `fromAddress` 相同。在代人存入 flow 中可以不同。                |
| `slippage`       | number    | 否  | 以小数表示的最大可接受价格差异。`0.005` = 0.5%。默认为 `0.005`。                    |
| `integrator`     | string    | 否  | 在分析数据和链上事件中标识你的应用。最多 23 个字符。                                   |
| `allowBridges`   | string\[] | 否  | 将路由限制为特定的桥（例如 `["stargate","across"]`）。可通过 `GET /v1/tools` 获取。 |
| `denyBridges`    | string\[] | 否  | 在路由中排除特定的桥。                                                    |
| `allowExchanges` | string\[] | 否  | 将路由限制为特定的 DEX 聚合器。可通过 `GET /v1/tools` 获取。                      |
| `denyExchanges`  | string\[] | 否  | 在路由中排除特定的 DEX 聚合器。                                             |
| `order`          | string    | 否  | 路由偏好：`"FASTEST"` 或 `"CHEAPEST"`。                               |

***

## 识别 Composer 路由

### Composer 工具名称

Composer 的工具标识符为 **`"composer"`**。此字符串出现在：

* `quote.tool`：用于该路由的顶层工具
* `quote.toolDetails.key`：相同的值，另附 `name` 和 `logoURI`
* `quote.includedSteps[].tool`：路由中每个步骤所使用的工具

当 `toToken` 匹配一个受支持的协议代币时，Composer 会自动激活。你无法在请求层面对 Composer 路由进行筛选（无论是包含还是排除）。它由 `toToken` 地址决定。

### 在你的应用中检测 Composer 路由

使用响应中的 `tool` 字段来构建条件式 UI：

```ts theme={"system"}
const { data: quote } = await axios.get("https://li.quest/v1/quote", {
  params,
});

if (quote.tool === "composer") {
  // Composer route: show deposit/staking UI
  showComposerUI(quote);
} else {
  // Standard swap or bridge: show swap UI
  showSwapUI(quote);
}
```

### 控制桥和交易所

你可以使用标准的桥/交易所过滤参数，来控制在一条 Composer 路由内使用哪些桥或 DEX 聚合器：

```ts theme={"system"}
const { data: quote } = await axios.get("https://li.quest/v1/quote", {
  params: {
    ...params,
    allowBridges: ["stargate", "across"], // Only use these bridges for cross-chain
    order: "FASTEST", // Prefer speed over cost
  },
});
```

***

## 完整参数参考

有关完整的端点文档、参数列表和身份验证详情，请参阅：

<CardGroup cols={2}>
  <Card title="GET /quote" icon="bolt" href="/api-reference/get-a-quote-for-a-token-transfer">
    包含所有参数的单步报价端点
  </Card>

  <Card title="POST /advanced/routes" icon="route" href="/api-reference/advanced/get-a-set-of-routes-for-a-request-that-describes-a-transfer-of-tokens">
    包含所有参数的多路由端点
  </Card>

  <Card title="Quote vs Route" icon="arrows-split-up-and-left" href="/introduction/user-flows-and-examples/difference-between-quote-and-route">
    何时使用各个端点
  </Card>

  <Card title="API Overview" icon="key" href="/api-reference/introduction">
    基础 URL、身份验证和速率限制
  </Card>
</CardGroup>

***

## 相关页面

<CardGroup cols={2}>
  <Card title="API Integration Guide" icon="code" href="/composer/lifi-api/guides/api-integration">
    包含响应 schema 的分步 Composer 集成
  </Card>

  <Card title="Withdrawals Guide" icon="clock" href="/composer/lifi-api/guides/withdrawals">
    使用相同的 API 接口实现提款路由
  </Card>

  <Card title="Error Handling" icon="triangle-exclamation" href="/composer/lifi-api/reference/error-handling">
    处理 Composer 特有的错误
  </Card>

  <Card title="Supported Protocols" icon="list" href="/composer/protocols-and-chains">
    完整的受支持 vault/质押代币列表及示例地址
  </Card>
</CardGroup>
