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

# Maker API 兼容性

> 了解 KaleidoSDK 版本如何跟随 Maker API 演进，以及 SDK 通过 client.maker 暴露的接口端点分组和调用方式。

## 兼容性

SDK 始终跟随**最新的 Maker API** 版本：这一侧不需要管理版本配对关系。请让两者都保持更新，以便使用受支持的接口端点，并第一时间用上新功能。

<Note>
  要查看当前的 Maker API 版本和更新内容，请参阅 [Maker API 更新日志](https://github.com/kaleidoswap/maker-api/releases) 或你自己的 API 文档。
</Note>

## API 接口端点分组

Maker API 提供以下接口端点分组：

| 接口端点分组             | 基础路径              | 说明                       |
| ------------------ | ----------------- | ------------------------ |
| **Market**         | `/api/v1/market/` | 资产列表、交易对、报价请求            |
| **Swaps (Atomic)** | `/api/v1/swaps/`  | 基于 HTLC 的原子交换初始化、执行与状态跟踪 |
| **LSPS1**          | `/api/v1/lsps1/`  | 通道订购、费用估算、流动性供给与闪电通道建立   |

<Note>
  基于订单的交换接口端点（`/api/v1/swaps/orders/*`）已下线，对应的 SDK 方法在 **0.1.13** 中被移除。请改用原子交换流程 —— 参阅 [如何交换](/cn/sdk/how-to-swap)。
</Note>

## 使用 Maker API

在 SDK 中使用 Maker API 功能：

<CodeGroup>
  ```typescript TypeScript theme={null}
  import { KaleidoClient, Layer } from 'kaleido-sdk';

  const client = KaleidoClient.create({
    baseUrl: 'https://api.signet.kaleidoswap.com',
  });

  // 通过 client.maker 访问 Maker API
  const assets = await client.maker.listAssets();
  const pairs = await client.maker.listPairs();
  const quote = await client.maker.getQuote({
    from_asset: { asset_id: 'BTC', layer: Layer.BTC_LN, amount: 100000 },
    to_asset: { asset_id: 'USDT', layer: Layer.RGB_LN },
  });
  ```

  ```python Python theme={null}
  import asyncio
  from kaleido_sdk import KaleidoClient, Layer, PairQuoteRequest, SwapLegInput

  async def main():
      client = KaleidoClient.create(
          base_url="https://api.signet.kaleidoswap.com"
      )

      # 通过 client.maker 访问 Maker API
      assets = await client.maker.list_assets()
      pairs = await client.maker.list_pairs()
      quote = await client.maker.get_quote(
          PairQuoteRequest(
              from_asset=SwapLegInput(asset_id="BTC", layer=Layer.BTC_LN, amount=100000),
              to_asset=SwapLegInput(asset_id="USDT", layer=Layer.RGB_LN),
          )
      )

  asyncio.run(main())
  ```
</CodeGroup>
