﻿# 聚合区块链数据 API 接入说明

## 1. 基本信息

- Base URL: `http://0xrouter.app`
- 请求方法: `GET`
- 鉴权 Header: `X-My-Token`
- 返回格式: `JSON`

所有请求都需要带上：

```http
X-My-Token: <your_token>
```

补充说明：

- 文档里的数组参数统一按逗号分隔传递，例如 `chains=ethereum,bsc,polygon`
- 文档里的对象参数统一按 JSON 字符串传递，例如 `filterLimits={"tokens":10}`
- 本服务当前统一要求 `X-My-Token`，即使个别接口对匿名访问保持兼容
- 非管理员 Token 调用聚合区块链数据接口时，`limit` 查询参数最高按 `100` 转发；管理员 Token 不受该限制

## 2. 计费规则与开放分组

### 2.1 计费规则

- 所有接口不再按分组或单个接口单独收费
- 所有成功返回 `200 OK` 的请求，统一按返回 JSON 文本大小收费
- 默认按每 `50KB` 文本记 `1` 点，向上取整
- 计费示例：`1KB` 返回记 `1` 点，`51KB` 返回记 `2` 点，`120KB` 返回记 `3` 点
- 只有最终返回 `200 OK` 才扣点；鉴权失败、参数错误、上游失败、`auth required but not present` 都不扣点

### 2.2 频率说明

- 当前服务端默认每个 token `1` 分钟最多 `300` 次请求
- 支持多线程并发；并发请求会一起计入同一个 token 的 `300/min` 限额
- `transfers`、`swaps`、`counterparties/*`、`token/top_flow`、`token/volume` 这类上游本身较敏感的接口，仍建议按 `1` 秒 `1` 次来用

### 2.3 当前开放分组

下面这些分组只是“允许访问的接口范围”，不是不同的收费档位；实际收费仍然统一按返回 JSON 大小计算。

| 分组 | 说明 |
| :--- | :--- |
| `/chaindata/balances/*` | 地址和实体余额快照 |
| `/chaindata/chains` | 支持链清单 |
| `/chaindata/counterparties/*` | 对手方成交量聚合 |
| `/chaindata/flow/*` | 地址和实体历史资金流 |
| `/chaindata/history/*` | 地址和实体历史 USD 快照 |
| `/chaindata/intelligence/*` | 地址、实体、合约、代币基础情报 |
| `/chaindata/loans/*` | 地址和实体借贷仓位 |
| `/chaindata/marketdata/*` | 市场指数与聚合数据 |
| `/chaindata/networks/*` | 各链状态与历史行情 |
| `/chaindata/polymarket/*` | Polymarket 链上活动数据 |
| `/chaindata/portfolio/*` | 地址和实体持仓时间序列 |
| `/chaindata/solana/*` | Solana 摘要类查询 |
| `/chaindata/swaps` | DEX 逐笔成交流 |
| `/chaindata/token/*` | Token 市场、流量、持仓结构等 |
| `/chaindata/transfers` | 转账事实流 |
| `/chaindata/tx/*` | 单笔交易详情 |
| `/chaindata/volume/*` | 地址和实体转账量快照 |

### 2.4 聚合区块链数据接口目录（按首字母正序）

下方目录按接口分组首字母正序排列。第 3 节的余额接口属于本站管理接口，单独保留。

#### Balances

- `GET /chaindata/balances/address/{address}`
- `GET /chaindata/balances/entity/{entity}`
- `GET /chaindata/balances/solana/subaccounts/address/{addresses}`
- `GET /chaindata/balances/solana/subaccounts/entity/{entities}`

#### Chains

- `GET /chaindata/chains`

#### Counterparties

- `GET /chaindata/counterparties/address/{address}`
- `GET /chaindata/counterparties/entity/{entity}`

#### Flow

- `GET /chaindata/flow/address/{address}`
- `GET /chaindata/flow/entity/{entity}`

#### History

- `GET /chaindata/history/address/{address}`
- `GET /chaindata/history/entity/{entity}`

#### Intelligence

- `GET /chaindata/intelligence/address/{address}`
- `GET /chaindata/intelligence/address/{address}/all`
- `GET /chaindata/intelligence/address_enriched/{address}`
- `GET /chaindata/intelligence/address_enriched/{address}/all`
- `GET /chaindata/intelligence/contract/{chain}/{address}`
- `GET /chaindata/intelligence/entity/{entity}`
- `GET /chaindata/intelligence/entity/{entity}/summary`
- `GET /chaindata/intelligence/entity_balance_changes`
- `GET /chaindata/intelligence/entity_predictions/{entity}`
- `GET /chaindata/intelligence/entity_types`
- `GET /chaindata/intelligence/search`
- `GET /chaindata/intelligence/token/{chain}/{address}`

#### Loans

- `GET /chaindata/loans/address/{address}`
- `GET /chaindata/loans/entity/{entity}`

#### Marketdata

- `GET /chaindata/marketdata/altcoin_index`

#### Networks

- `GET /chaindata/networks/history/{chain}`
- `GET /chaindata/networks/status`

#### Polymarket

- `GET /chaindata/polymarket/activity`
- `GET /chaindata/polymarket/event-positions/{conditionId}`
- `GET /chaindata/polymarket/events`
- `GET /chaindata/polymarket/events/{eventId}`
- `GET /chaindata/polymarket/leaderboard`
- `GET /chaindata/polymarket/order-book/{conditionId}`
- `GET /chaindata/polymarket/pnl/chart`
- `GET /chaindata/polymarket/positions/{addr}`
- `GET /chaindata/polymarket/prices`
- `GET /chaindata/polymarket/stats`
- `GET /chaindata/polymarket/top-events`
- `GET /chaindata/polymarket/top-events/{eventId}/breakdown`
- `GET /chaindata/polymarket/top-holders/{conditionId}`
- `GET /chaindata/polymarket/wallet/{addr}/prediction-history`
- `GET /chaindata/polymarket/wallet/{addr}/summary/balance`
- `GET /chaindata/polymarket/wallet/{addr}/summary/biggest-win`
- `GET /chaindata/polymarket/wallet/{addr}/summary/pnl`
- `GET /chaindata/polymarket/wallet/{addr}/summary/portfolio`
- `GET /chaindata/polymarket/wallet/{addr}/summary/stats`

#### Portfolio

- `GET /chaindata/portfolio/address/{address}`
- `GET /chaindata/portfolio/entity/{entity}`
- `GET /chaindata/portfolio/timeSeries/address/{address}`
- `GET /chaindata/portfolio/timeSeries/entity/{entity}`

#### Solana

- `GET /chaindata/solana/summary/{address}`

#### Swaps

- `GET /chaindata/swaps`

#### Token

- `GET /chaindata/token/addresses/{id}`
- `GET /chaindata/token/arkham_exchange_tokens`
- `GET /chaindata/token/balance/{chain}/{address}`
- `GET /chaindata/token/balance/{id}`
- `GET /chaindata/token/holders/{chain}/{address}`
- `GET /chaindata/token/holders/{id}`
- `GET /chaindata/token/market/{id}`
- `GET /chaindata/token/price/history/{chain}/{address}`
- `GET /chaindata/token/price/history/{id}`
- `GET /chaindata/token/price_change/{id}`
- `GET /chaindata/token/top`
- `GET /chaindata/token/top_flow/{chain}/{address}`
- `GET /chaindata/token/top_flow/{id}`
- `GET /chaindata/token/trending`
- `GET /chaindata/token/trending/{id}`
- `GET /chaindata/token/volume/{chain}/{address}`
- `GET /chaindata/token/volume/{id}`

#### Transfers

- `GET /chaindata/transfers`
- `GET /chaindata/transfers/histogram/simple`
- `GET /chaindata/transfers/tx/{hash}`

#### Tx

- `GET /chaindata/tx/{tx_hash}`

#### Volume

- `GET /chaindata/volume/address/{address}`
- `GET /chaindata/volume/entity/{entity}`

## 3. 余额接口

### 3.1 `GET /account/balance`

返回当前 token 在所有平台下的余额概览、封禁状态和限频配置。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/account/balance" \
  -H "X-My-Token: your_token"
```

### 3.2 `GET /account/balance/{platform}`

返回指定平台的余额、封禁状态和限频配置。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `platform` | `string` | **[必填]** 平台名，当前可用值为 `chaindata` |

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/account/balance/chaindata" \
  -H "X-My-Token: your_token"
```

## 4. Intelligence 接口

### 4.1 `GET /chaindata/intelligence/address/{address}`

查询地址基础情报。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `address` | `string` | **[必填]** 钱包地址，例如 `0x123...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `groupByEntity` | `string` | **[可选]** 是否按实体视角聚合，常用值为 `true` |

### 4.2 `GET /chaindata/intelligence/address_enriched/{address}`

查询地址增强情报。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `address` | `string` | **[必填]** 钱包地址，例如 `0x123...` |

### 查询参数 (Query Parameters)

无

### 4.3 `GET /chaindata/intelligence/address_enriched/{address}/all`

返回指定地址的多链增强 intelligence 结果，默认会包含标签、实体预测和 cluster ID。可以通过查询参数关闭某些增强项。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `address` | `string` | **[必填]** 需要跨链查询的地址，例如 `0x123...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `includeTags` | `string` | **[可选]** 是否包含地址标签，默认通常为 `true` |
| `includeEntityPredictions` | `string` | **[可选]** 是否包含实体预测，默认通常为 `true` |
| `includeClusters` | `string` | **[可选]** 是否包含 cluster ID，默认通常为 `true` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/intelligence/address_enriched/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045/all?includeTags=true&includeEntityPredictions=true&includeClusters=true" \
  -H "X-My-Token: your_token"
```

### 4.4 `GET /chaindata/intelligence/address/{address}/all`

返回指定地址的多链 intelligence 结果，会在地址格式合法的各条支持链上分别返回对应数据。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `address` | `string` | **[必填]** 需要跨链查询的地址，例如 `0x123...` |

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/intelligence/address/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045/all" \
  -H "X-My-Token: your_token"
```

### 4.5 `GET /chaindata/intelligence/entity/{entity}`

返回实体的顶层信息，包括标签、社交链接和基础元数据。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `entity` | `string` | **[必填]** 实体 ID，例如 `binance` |

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/intelligence/entity/binance" \
  -H "X-My-Token: your_token"
```

### 4.6 `GET /chaindata/intelligence/entity/{entity}/summary`

返回指定实体的汇总信息，包括：

- 去重后的唯一地址数
- 全链总 USD 余额
- 总转账 USD 体量
- 首次和最后一次转账时间

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `entity` | `string` | **[必填]** 实体 ID，例如 `binance` |

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/intelligence/entity/binance/summary" \
  -H "X-My-Token: your_token"
```

### 4.7 `GET /chaindata/intelligence/entity_predictions/{entity}`

返回实体预测地址列表，最多约 `1000` 条，通常按 USD 余额排序。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `entity` | `string` | **[必填]** 实体 ID，例如 `binance` |

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/intelligence/entity_predictions/binance" \
  -H "X-My-Token: your_token"
```

### 4.8 `GET /chaindata/intelligence/entity_types`

返回所有实体分类列表，例如 `exchange`、`fund`、`token`，可用于其它 intelligence 接口里的实体类型过滤。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/intelligence/entity_types" \
  -H "X-My-Token: your_token"
```

### 4.9 `GET /chaindata/intelligence/entity_balance_changes`

返回实体余额变化排行，可用于看谁在增持、减持。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc` |
| `entityTypes` | `string` | **[可选]** 实体类型列表，逗号分隔，例如 `exchange,fund` |
| `entityIds` | `string` | **[可选]** 指定实体 ID 列表，逗号分隔，例如 `binance,coinbase` |
| `entityTags` | `string` | **[可选]** 需要包含的实体标签，逗号分隔 |
| `negatedEntityTags` | `string` | **[可选]** 需要排除的实体标签，逗号分隔 |
| `pricingIds` | `string` | **[可选]** CoinGecko pricing ID 列表，逗号分隔，例如 `bitcoin,ethereum` |
| `orderBy` | `string` | **[可选]** 排序字段，可选 `balanceUsd`、`balanceUsdChange`、`balanceUsdPctChange`、`balanceUnit`、`balanceUnitChange`、`balanceUnitPctChange` |
| `orderDir` | `string` | **[可选]** 排序方向，可选 `asc` 或 `desc` |
| `balanceMin` | `integer` | **[可选]** 最小 USD 余额过滤值 |
| `balanceMax` | `integer` | **[可选]** 最大 USD 余额过滤值 |
| `interval` | `string` | **[可选]** 时间区间，可选 `7d`、`14d`、`30d` |
| `limit` | `integer` | **[可选]** 返回条数，非管理员最大 `100` |
| `offset` | `integer` | **[可选]** 分页偏移量 |

### 4.10 `GET /chaindata/intelligence/contract/{chain}/{address}`

查询链上合约基础信息。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chain` | `string` | **[必填]** 链名称，例如 `ethereum` |
| `address` | `string` | **[必填]** 合约地址，例如 `0x123...` |

### 查询参数 (Query Parameters)

无

### 4.11 `GET /chaindata/intelligence/token/{chain}/{address}`

查询链上 token 基础信息。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chain` | `string` | **[必填]** 链名称，例如 `ethereum` |
| `address` | `string` | **[必填]** Token 合约地址，例如 `0x123...` |

### 查询参数 (Query Parameters)

无

### 4.12 `GET /chaindata/intelligence/search`

全文搜索地址、实体、Token 和 Solana 池，按相关度返回结果。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `query` | `string` | **[必填]** 搜索关键词，例如 `binance`、`bitcoin`、`abc123` |
| `filterLimits` | `string` | **[可选]** JSON 字符串，指定每个分类的最大结果数，每项最大 `50`，默认通常每类 `5` |
| `filterOffsets` | `string` | **[可选]** JSON 字符串，指定每个分类的分页偏移量，默认通常为 `0` |

### 示例

```bash
curl --get "http://0xrouter.app/chaindata/intelligence/search" \
  -H "X-My-Token: your_token" \
  --data-urlencode "query=binance" \
  --data-urlencode "filterLimits={\"tokens\":10}" \
  --data-urlencode "filterOffsets={\"tokens\":0}"
```

## 5. 资产与资金流接口

### 5.1 `GET /chaindata/balances/address/{address}`

查询地址余额快照。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `address` | `string` | **[必填]** 钱包地址，例如 `0x123...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `cheap` | `string` | **[可选]** 是否使用轻量模式，常用值为 `true` |

### 5.2 `GET /chaindata/balances/entity/{entity}`

查询实体余额快照。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `entity` | `string` | **[必填]** 实体 ID，例如 `binance` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `cheap` | `string` | **[可选]** 是否使用轻量模式，常用值为 `true` |

### 5.3 `GET /chaindata/loans/address/{address}`

返回地址的借贷仓位概览。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `address` | `string` | **[必填]** 钱包地址，例如 `0x123...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 5.4 `GET /chaindata/loans/entity/{entity}`

返回实体的借贷仓位概览。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `entity` | `string` | **[必填]** 实体 ID，例如 `binance` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 5.5 `GET /chaindata/flow/address/{address}`

返回地址历史 USD 流入、流出和累计总量。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `address` | `string` | **[必填]** 钱包地址，例如 `0x123...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/flow/address/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?chains=ethereum,bsc,polygon" \
  -H "X-My-Token: your_token"
```

### 5.6 `GET /chaindata/flow/entity/{entity}`

返回实体历史 USD 流入、流出和累计总量。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `entity` | `string` | **[必填]** 实体 ID，例如 `binance` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/flow/entity/binance?chains=ethereum,bsc,polygon" \
  -H "X-My-Token: your_token"
```

### 5.7 `GET /chaindata/portfolio/timeSeries/address/{address}`

返回地址在指定 token 下的日级持仓时间序列。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `address` | `string` | **[必填]** 钱包地址，例如 `0x123...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `pricingId` | `string` | **[可选]** CoinGecko pricing ID，例如 `bitcoin` |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/portfolio/timeSeries/address/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?pricingId=bitcoin&chains=ethereum,bsc,polygon" \
  -H "X-My-Token: your_token"
```

### 5.8 `GET /chaindata/portfolio/timeSeries/entity/{entity}`

返回实体在指定 token 下的日级持仓时间序列。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `entity` | `string` | **[必填]** 实体 ID，例如 `binance` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `pricingId` | `string` | **[可选]** CoinGecko pricing ID，例如 `bitcoin` |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/portfolio/timeSeries/entity/binance?pricingId=bitcoin&chains=ethereum,bsc,polygon" \
  -H "X-My-Token: your_token"
```

### 5.9 `GET /chaindata/counterparties/address/{address}`

返回地址的对手方成交量聚合。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `address` | `string` | **[必填]** 钱包地址，例如 `0x123...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |
| `flow` | `string` | **[可选]** 方向，可选 `in`、`out`、`self`、`all` |
| `tokens` | `string` | **[可选]** Token 列表，逗号分隔，例如 `ethereum,usd-coin` |
| `timeGte` | `string` | **[可选]** 起始时间，例如 `2024-01-01T00:00:00Z` |
| `timeLte` | `string` | **[可选]** 结束时间，例如 `2024-01-01T00:00:00Z` |
| `timeLast` | `string` | **[可选]** 相对时间范围，例如 `24h` |
| `usdGte` | `string` | **[可选]** 最小 USD 成交额，例如 `100.23` |
| `limit` | `integer` | **[可选]** 返回条数，例如 `10`，非管理员最大 `100` |
| `tags` | `string` | **[可选]** 对手方标签列表，逗号分隔，例如 `whale,kol` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/counterparties/address/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?chains=ethereum,bsc,polygon&flow=all&tokens=ethereum,usd-coin&timeLast=24h&usdGte=100.23&limit=10&tags=whale,kol" \
  -H "X-My-Token: your_token"
```

### 5.10 `GET /chaindata/counterparties/entity/{entity}`

返回实体的对手方成交量聚合。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `entity` | `string` | **[必填]** 实体 ID，例如 `binance` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |
| `flow` | `string` | **[可选]** 方向，可选 `in`、`out`、`self`、`all` |
| `tokens` | `string` | **[可选]** Token 列表，逗号分隔，例如 `ethereum,usd-coin` |
| `timeGte` | `string` | **[可选]** 起始时间，例如 `2024-01-01T00:00:00Z` |
| `timeLte` | `string` | **[可选]** 结束时间，例如 `2024-01-01T00:00:00Z` |
| `timeLast` | `string` | **[可选]** 相对时间范围，例如 `24h` |
| `usdGte` | `string` | **[可选]** 最小 USD 成交额，例如 `100.23` |
| `limit` | `integer` | **[可选]** 返回条数，例如 `10`，非管理员最大 `100` |
| `tags` | `string` | **[可选]** 对手方标签列表，逗号分隔，例如 `whale,kol` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/counterparties/entity/binance?chains=ethereum,bsc,polygon&flow=all&tokens=ethereum,usd-coin&timeLast=24h&usdGte=100.23&limit=10&tags=whale,kol" \
  -H "X-My-Token: your_token"
```

### 5.11 `GET /chaindata/transfers`

返回转账事实流，支持多种过滤条件。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `base` | `string` | **[可选]** 基准地址或实体，例如 `0x123abc` 或 `binance` |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc` |
| `flow` | `string` | **[可选]** 方向，可选 `in`、`out`、`self`、`all` |
| `from` | `string` | **[可选]** from 侧过滤，支持地址、实体、`type:cex`、`deposit:binance` 等 |
| `to` | `string` | **[可选]** to 侧过滤，支持地址、实体、`type:cex`、`deposit:binance` 等 |
| `counterparties` | `string` | **[可选]** 严格对手方列表，逗号分隔 |
| `tokens` | `string` | **[可选]** Token 列表，逗号分隔，例如 `ethereum,usd-coin` |
| `timeGte` | `string` | **[可选]** 起始时间，例如 `2024-01-01T00:00:00Z` |
| `timeLte` | `string` | **[可选]** 结束时间，例如 `2024-01-01T00:00:00Z` |
| `timeLast` | `string` | **[可选]** 相对时间范围，例如 `24h` |
| `valueGte` | `string` | **[可选]** 最小 token 原始数量，例如 `100.23` |
| `valueLte` | `string` | **[可选]** 最大 token 原始数量，例如 `100.23` |
| `usdGte` | `string` | **[可选]** 最小 USD 金额，例如 `100.23` |
| `usdLte` | `string` | **[可选]** 最大 USD 金额，例如 `100.23` |
| `sortKey` | `string` | **[可选]** 排序字段，可选 `time`、`value`、`usd` |
| `sortDir` | `string` | **[可选]** 排序方向，可选 `asc` 或 `desc` |
| `limit` | `integer` | **[可选]** 返回条数，默认 `50`，非管理员最大 `100` |
| `offset` | `integer` | **[可选]** 分页偏移量，默认 `0` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/transfers?base=0xF995842f754A03220352e523d73CE9F4809Ab0EE&chains=ethereum,bsc&flow=all&tokens=ethereum,usd-coin&counterparties=binance&timeLast=24h&usdGte=100.23&sortKey=time&sortDir=desc&limit=10&offset=0" \
  -H "X-My-Token: your_token"
```

### 5.12 `GET /chaindata/transfers/tx/{hash}`

返回指定交易哈希下的所有原生币和 token 转账。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `hash` | `string` | **[必填]** 交易哈希，例如 `0xabc123...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `transferType` | `string` | **[必填]** 转账类型，可选 `external`、`internal`、`token` |
| `chain` | `string` | **[必填]** 链名称，可选 `ethereum`、`polygon`、`bsc`、`optimism`、`avalanche`、`arbitrum_one`、`base`、`bitcoin`、`tron`、`flare`、`solana`、`ton`、`dogecoin`、`zcash` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/transfers/tx/0xabc123?chain=ethereum&transferType=token" \
  -H "X-My-Token: your_token"
```

### 5.13 `GET /chaindata/swaps`

返回 DEX 逐笔成交数据，支持多种过滤条件。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `base` | `string` | **[必填]** 参与 swap 的基准地址或实体，例如 `0x123abc` 或 `binance`；省略时通常返回空结果 |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |
| `flow` | `string` | **[可选]** 相对 base 的方向，可选 `in`、`out`、`self`、`all` |
| `from` | `string` | **[可选]** 发送方过滤，支持地址或实体，逗号分隔 |
| `to` | `string` | **[可选]** 接收方过滤，支持地址或实体，逗号分隔 |
| `tokens` | `string` | **[可选]** 出现在 token0 或 token1 中的 token 列表，逗号分隔 |
| `timeGte` | `string` | **[可选]** 起始时间，例如 `2024-01-01T00:00:00Z` |
| `timeLte` | `string` | **[可选]** 结束时间，例如 `2024-01-01T00:00:00Z` |
| `timeLast` | `string` | **[可选]** 相对时间范围，例如 `24h`、`7d` |
| `value0Gte` | `string` | **[可选]** token0 最小链上数量，例如 `1000000000000000000` |
| `value0Lte` | `string` | **[可选]** token0 最大链上数量，例如 `1000000000000000000` |
| `value1Gte` | `string` | **[可选]** token1 最小链上数量，例如 `1000000000000000000` |
| `value1Lte` | `string` | **[可选]** token1 最大链上数量，例如 `1000000000000000000` |
| `usdGte` | `string` | **[可选]** 最小历史 USD 金额，例如 `1000` |
| `usdLte` | `string` | **[可选]** 最大历史 USD 金额，例如 `100000` |
| `sortKey` | `string` | **[可选]** 排序字段，可选 `time`、`value`、`usd` |
| `sortDir` | `string` | **[可选]** 排序方向，可选 `asc` 或 `desc` |
| `limit` | `integer` | **[可选]** 返回条数，默认 `20`，非管理员最大 `100` |
| `offset` | `integer` | **[可选]** 分页偏移量，默认 `0` |
| `counterparties` | `string` | **[可选]** 严格对手方列表，逗号分隔，例如 `binance` |
| `senders` | `string` | **[可选]** 发送地址列表，逗号分隔 |
| `receivers` | `string` | **[可选]** 接收地址列表，逗号分隔 |
| `protocols` | `string` | **[可选]** 协议 / DEX 地址或实体 ID，逗号分隔，例如 `uniswap` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/swaps?base=0xF995842f754A03220352e523d73CE9F4809Ab0EE&chains=ethereum,bsc&flow=all&tokens=ethereum,usd-coin&timeLast=24h&usdGte=1000&sortKey=time&sortDir=desc&limit=20&offset=0&protocols=uniswap" \
  -H "X-My-Token: your_token"
```

### 5.14 `GET /chaindata/tx/{tx_hash}`

查询单笔交易详情。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `tx_hash` | `string` | **[必填]** 交易哈希，例如 `0xabc...` |

### 查询参数 (Query Parameters)

无

### 5.15 `GET /chaindata/solana/summary/{address}`

查询 Solana 地址摘要信息。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `address` | `string` | **[必填]** Solana 地址，例如 `7TNnXUm...` |

### 查询参数 (Query Parameters)

无

### 5.16 `GET /chaindata/volume/address/{address}`

返回指定地址的转账量快照，按链拆分。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `address` | `string` | **[必填]** 钱包地址，例如 `0x123...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/volume/address/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?chains=ethereum,bsc,polygon" \
  -H "X-My-Token: your_token"
```

### 5.17 `GET /chaindata/volume/entity/{entity}`

返回指定实体的转账量快照，按链拆分。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `entity` | `string` | **[必填]** 实体 ID，例如 `binance` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/volume/entity/binance?chains=ethereum,bsc,polygon" \
  -H "X-My-Token: your_token"
```

### 5.18 `GET /chaindata/history/address/{address}`

返回指定地址的历史 USD 快照。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `address` | `string` | **[必填]** 钱包地址，例如 `0x123...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/history/address/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?chains=ethereum,bsc,polygon" \
  -H "X-My-Token: your_token"
```

### 5.19 `GET /chaindata/history/entity/{entity}`

返回指定实体的历史 USD 快照。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `entity` | `string` | **[必填]** 实体 ID，例如 `binance` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/history/entity/binance?chains=ethereum,bsc,polygon" \
  -H "X-My-Token: your_token"
```

### 5.20 `GET /chaindata/marketdata/altcoin_index`

返回当前 Altcoin Index，用于衡量山寨币相对比特币的表现。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/marketdata/altcoin_index" \
  -H "X-My-Token: your_token"
```

### 5.21 `GET /chaindata/balances/solana/subaccounts/address/{addresses}`

返回指定 Solana 地址的子账户余额，包括质押、借贷等子账户里的 token 余额。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `addresses` | `string` | **[必填]** 逗号分隔的 Solana 地址列表，例如 `abc123,def456` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `pricingID` | `string` | **[必填]** CoinGecko pricing ID，例如 `solana` |
| `limit` | `string` | **[可选]** 最多返回多少条子账户余额记录，默认 `1000`，非管理员最大 `100` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/balances/solana/subaccounts/address/9xQeWvG816bUx9EPfEZ74tPjzN6E4tqjBzQ7m8vDkP5S?pricingID=solana&limit=1000" \
  -H "X-My-Token: your_token"
```

### 5.22 `GET /chaindata/balances/solana/subaccounts/entity/{entities}`

返回指定 Solana 实体的子账户余额，包括质押、借贷等子账户里的 token 余额。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `entities` | `string` | **[必填]** 逗号分隔的实体 ID 列表，例如 `binance,coinbase` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `pricingID` | `string` | **[必填]** CoinGecko pricing ID，例如 `solana` |
| `limit` | `string` | **[可选]** 最多返回多少条子账户余额记录，默认 `1000`，非管理员最大 `100` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/balances/solana/subaccounts/entity/binance,coinbase?pricingID=solana&limit=1000" \
  -H "X-My-Token: your_token"
```

### 5.23 `GET /chaindata/chains`

返回当前支持的区块链列表，响应通常是一个简单的链标识符数组。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/chains" \
  -H "X-My-Token: your_token"
```

### 5.24 `GET /chaindata/networks/history/{chain}`

返回指定区块链原生代币的历史行情数据，通常包括价格、成交量和市值等时间序列信息。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chain` | `string` | **[必填]** 链标识，可选 `ethereum`、`polygon`、`bsc`、`optimism`、`avalanche`、`arbitrum_one`、`base`、`bitcoin`、`tron`、`flare`、`solana`、`ton`、`dogecoin`、`zcash` |

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/networks/history/ethereum" \
  -H "X-My-Token: your_token"
```

### 5.26 `GET /chaindata/networks/status`

返回所有支持链的当前状态，包括价格、24 小时涨跌幅、成交量、市值、最新区块、总转账数以及 gas / fee 信息。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/networks/status" \
  -H "X-My-Token: your_token"
```

### 5.27 `GET /chaindata/portfolio/address/{address}`

返回指定地址在各链上的历史组合快照。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `address` | `string` | **[必填]** 需要查询历史组合的地址，例如 `0x123...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `time` | `string` | **[可选]** 毫秒级 Unix 时间戳，会被截断到 UTC 当天起点 |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/portfolio/address/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?time=1714521600000&chains=ethereum,bsc,polygon" \
  -H "X-My-Token: your_token"
```

### 5.28 `GET /chaindata/portfolio/entity/{entity}`

返回指定实体在各链上的历史组合快照。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `entity` | `string` | **[必填]** 需要查询历史组合的实体 ID，例如 `binance` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `time` | `string` | **[可选]** 毫秒级 Unix 时间戳，会被截断到 UTC 当天起点 |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 示例

curl "http://0xrouter.app/chaindata/portfolio/entity/binance?time=1714521600000&chains=ethereum,bsc,polygon" \
  -H "X-My-Token: your_token"
```

### 5.31 `GET /chaindata/transfers/histogram/simple`

返回简化版转账直方图，适合轻量聚合场景。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `base` | `string` | **[可选]** 基准地址或实体，逗号分隔，例如 `binance,!wintermute` |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |
| `flow` | `string` | **[可选]** 方向，可选 `in`、`out`、`self`、`all` |
| `from` | `string` | **[可选]** from 侧过滤，支持地址、实体、`type:cex`、`deposit:binance` 等 |
| `to` | `string` | **[可选]** to 侧过滤，支持地址、实体、`type:cex`、`deposit:binance` 等 |
| `counterparties` | `string` | **[可选]** 严格对手方列表，逗号分隔 |
| `tokens` | `string` | **[可选]** Token 列表，逗号分隔，例如 `ethereum,0xA0b8...` |
| `timeGte` | `string` | **[可选]** 起始时间，例如 `2024-01-01T00:00:00Z` |
| `timeLte` | `string` | **[可选]** 结束时间，例如 `2024-01-01T00:00:00Z` |
| `timeLast` | `string` | **[可选]** 相对时间范围，例如 `24h` |
| `valueGte` | `string` | **[可选]** 最小 token 原始数量，例如 `100.23` |
| `valueLte` | `string` | **[可选]** 最大 token 原始数量，例如 `100.23` |
| `usdGte` | `string` | **[可选]** 最小 USD 金额，例如 `100.23` |
| `usdLte` | `string` | **[可选]** 最大 USD 金额，例如 `100.23` |
| `sortKey` | `string` | **[可选]** 排序字段，可选 `time`、`value`、`usd` |
| `sortDir` | `string` | **[可选]** 排序方向，可选 `asc` 或 `desc` |
| `limit` | `integer` | **[可选]** 返回条数，例如 `10`，非管理员最大 `100` |
| `offset` | `integer` | **[可选]** 分页偏移量，例如 `0` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/transfers/histogram/simple?base=binance&flow=in&timeLast=24h" \
  -H "X-My-Token: your_token"
```

## 6. Token 接口

### 6.1 `GET /chaindata/token/market/{id}`

返回 token 当前市场数据。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `id` | `string` | **[必填]** CoinGecko pricing ID，例如 `usd-coin` |

### 查询参数 (Query Parameters)

无

### 6.2 `GET /chaindata/token/addresses/{id}`

返回 token 的所有链和合约地址映射。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `id` | `string` | **[必填]** CoinGecko pricing ID，例如 `usd-coin` |

### 查询参数 (Query Parameters)

无

### 6.3 `GET /chaindata/token/arkham_exchange_tokens`

返回交易所 token 映射。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

无

### 6.4 `GET /chaindata/token/trending`

返回当前多链热门 token 列表。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/token/trending" \
  -H "X-My-Token: your_token"
```

### 6.5 `GET /chaindata/token/top_flow/{id}`

返回指定 token 的 top inflow / outflow。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `id` | `string` | **[必填]** CoinGecko pricing ID，例如 `bitcoin` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `timeLast` | `string` | **[可选]** 相对时间范围，例如 `24h` |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 6.6 `GET /chaindata/token/volume/{id}`

返回指定 token 的成交量聚合数据。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `id` | `string` | **[必填]** CoinGecko pricing ID，例如 `bitcoin` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `timeLast` | `string` | **[可选]** 相对时间范围，例如 `24h` |
| `granularity` | `string` | **[可选]** 时间粒度，例如 `1h` |

### 6.7 `GET /chaindata/token/price/history/{id}`

返回指定 token 的历史价格序列。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `id` | `string` | **[必填]** CoinGecko pricing ID，例如 `usd-coin` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `daily` | `string` | **[可选]** 传 `true` 时返回日级数据，否则通常返回小时级数据 |

### 6.8 `GET /chaindata/token/holders/{id}`

按 pricing ID 查询 token 持仓结构。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `id` | `string` | **[必填]** CoinGecko pricing ID，例如 `usd-coin` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `groupByEntity` | `string` | **[可选]** 传 `true` 时按实体聚合，而不是按地址 |
| `limit` | `integer` | **[可选]** 返回条数，默认 `100`，最大 `100`（非管理员同样最高 `100`） |
| `offset` | `integer` | **[可选]** 分页偏移量，默认 `0`，且 `offset + limit <= 1000` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/token/holders/usd-coin?groupByEntity=true&limit=100&offset=0" \
  -H "X-My-Token: your_token"
```

### 6.9 `GET /chaindata/token/holders/{chain}/{address}`

按链和合约地址查询 token 持仓结构。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chain` | `string` | **[必填]** 链名称，例如 `ethereum`、`bsc`、`polygon`、`solana` |
| `address` | `string` | **[必填]** Token 合约地址，例如 `0xA0b8...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `groupByEntity` | `string` | **[可选]** 传 `true` 时按实体聚合，而不是按地址 |
| `limit` | `integer` | **[可选]** 返回条数，默认 `100`，最大 `100`（非管理员同样最高 `100`） |
| `offset` | `integer` | **[可选]** 分页偏移量，默认 `0`，且 `offset + limit <= 1000` |

### 6.10 `GET /chaindata/token/balance/{chain}/{address}`

按链和 token 合约地址查询聚合 token 余额，可按实体或地址维度统计。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chain` | `string` | **[必填]** Token 所在链，可选 `ethereum`、`polygon`、`bsc`、`optimism`、`avalanche`、`arbitrum_one`、`base`、`bitcoin`、`tron`、`flare`、`solana`、`ton`、`dogecoin`、`zcash` |
| `address` | `string` | **[必填]** Token 合约地址，例如 `0xA0b8...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `entityID` | `string` | **[可选]** 要查询余额的实体 ID；与 `address` 二选一至少传一个，例如 `binance` |
| `address` | `string` | **[可选]** 要查询余额的地址列表，逗号分隔；与 `entityID` 二选一至少传一个 |

### 示例

```bash
curl "http://0xrouter.app/chaindata/token/balance/ethereum/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48?entityID=binance" \
  -H "X-My-Token: your_token"
```

### 6.11 `GET /chaindata/token/balance/{id}`

按 CoinGecko pricing ID 查询聚合 token 余额，可按实体或地址维度统计。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `id` | `string` | **[必填]** CoinGecko pricing ID，例如 `usd-coin` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `entityID` | `string` | **[可选]** 要查询余额的实体 ID；与 `address` 二选一至少传一个，例如 `binance` |
| `address` | `string` | **[可选]** 要查询余额的地址列表，逗号分隔；与 `entityID` 二选一至少传一个 |

### 示例

```bash
curl "http://0xrouter.app/chaindata/token/balance/usd-coin?entityID=binance" \
  -H "X-My-Token: your_token"
```

### 6.12 `GET /chaindata/token/price/history/{chain}/{address}`

按链和合约地址查询 token 历史价格序列。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chain` | `string` | **[必填]** Token 所在链，可选 `ethereum`、`polygon`、`bsc`、`optimism`、`avalanche`、`arbitrum_one`、`base`、`bitcoin`、`tron`、`flare`、`solana`、`ton`、`dogecoin`、`zcash` |
| `address` | `string` | **[必填]** Token 合约地址，例如 `0xA0b8...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `daily` | `string` | **[可选]** 传 `true` 时返回日级数据，否则通常返回小时级数据 |

### 示例

```bash
curl "http://0xrouter.app/chaindata/token/price/history/ethereum/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48?daily=true" \
  -H "X-My-Token: your_token"
```

### 6.13 `GET /chaindata/token/price_change/{id}`

返回指定 token 从某个过去时间点以来的价格变化，包括绝对值和百分比。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `id` | `string` | **[必填]** CoinGecko pricing ID，例如 `usd-coin` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `pastTime` | `string` | **[必填]** RFC3339 时间，例如 `2025-01-01T00:00:00Z` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/token/price_change/usd-coin?pastTime=2025-01-01T00:00:00Z" \
  -H "X-My-Token: your_token"
```

### 6.14 `GET /chaindata/token/top`

按成交量、流入、流出、净流等指标返回 token 活跃度排行。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `timeframe` | `string` | **[可选]** 聚合时间范围，可选 `1h`、`6h`、`12h`、`24h`、`7d` |
| `orderByAgg` | `string` | **[可选]** 排序指标，可选 `volume`、`inflow`、`outflow`、`volumeDex`、`volumeCex`、`inflowDex`、`inflowCex`、`outflowDex`、`outflowCex`、`netflowDex`、`netflowCex`、`netflow`、`netflowVolumeRatio`、`netflowVolumeRatioDex`、`netflowVolumeRatioCex`、`price` |
| `orderByDesc` | `boolean` | **[可选]** 是否按降序排序，常用值为 `true` |
| `orderByPercent` | `boolean` | **[可选]** 是否按百分比变化排序，常用值为 `true` |
| `from` | `string` | **[可选]** 分页起始位置 |
| `size` | `string` | **[可选]** 每页返回数量 |
| `minVolume` | `string` | **[可选]** 最小 USD 成交量过滤值 |
| `maxVolume` | `string` | **[可选]** 最大 USD 成交量过滤值 |
| `minMarketCap` | `string` | **[可选]** 最小 USD 市值过滤值 |
| `maxMarketCap` | `string` | **[可选]** 最大 USD 市值过滤值 |
| `numReferencePeriods` | `string` | **[可选]** 对比历史区间数量，可传 `auto` |
| `tokenIds` | `string` | **[可选]** CoinGecko token ID 列表，逗号分隔 |
| `chains` | `string` | **[可选]** 链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/token/top?timeframe=24h&orderByAgg=volume&orderByDesc=true&size=20&chains=ethereum,bsc" \
  -H "X-My-Token: your_token"
```

### 6.15 `GET /chaindata/token/top_flow/{chain}/{address}`

按链和 token 合约地址查询 top flow 数据。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chain` | `string` | **[必填]** Token 所在链，可选 `ethereum`、`polygon`、`bsc`、`optimism`、`avalanche`、`arbitrum_one`、`base`、`bitcoin`、`tron`、`flare`、`solana`、`ton`、`dogecoin`、`zcash` |
| `address` | `string` | **[必填]** Token 合约地址，例如 `0xA0b8...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `timeLast` | `string` | **[可选]** 相对时间范围，例如 `24h` |
| `chains` | `string` | **[可选]** 额外过滤用的链列表，逗号分隔，例如 `ethereum,bsc,polygon` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/token/top_flow/ethereum/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48?timeLast=24h&chains=ethereum,bsc" \
  -H "X-My-Token: your_token"
```

### 6.16 `GET /chaindata/token/trending/{id}`

返回单个热门 token 详情。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `id` | `string` | **[必填]** CoinGecko pricing ID，例如 `usd-coin` |

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/token/trending/usd-coin" \
  -H "X-My-Token: your_token"
```

### 6.17 `GET /chaindata/token/volume/{chain}/{address}`

按链和合约地址查询 token 成交量聚合数据。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `chain` | `string` | **[必填]** Token 所在链，可选 `ethereum`、`polygon`、`bsc`、`optimism`、`avalanche`、`arbitrum_one`、`base`、`bitcoin`、`tron`、`flare`、`solana`、`ton`、`dogecoin`、`zcash` |
| `address` | `string` | **[必填]** Token 合约地址，例如 `0xA0b8...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `timeLast` | `string` | **[可选]** 相对时间范围，例如 `24h` |
| `granularity` | `string` | **[可选]** 时间粒度，例如 `1h` |

### 示例

```bash
curl "http://0xrouter.app/chaindata/token/volume/ethereum/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48?timeLast=24h&granularity=1h" \
  -H "X-My-Token: your_token"
```

## 7. Polymarket 接口

### 7.1 `GET /chaindata/polymarket/activity`

返回 Polymarket 链上活动数据，按时间倒序返回 trade、split、merge、convert 事件，可按用户地址、市场、outcome token、USD 名义金额、成交价格、成交份数、动作、事件类型和买卖方向过滤。

所有查询参数均可选；数组参数（`userAddresses`、`tokenAddresses`、`actions`）按英文逗号分隔传递。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `userAddresses` | `string` | **[可选]** 用户地址列表，逗号分隔，例如 `abc123,def456`，用于过滤指定的 Polymarket 交易者地址 |
| `conditionID` | `string` | **[可选]** Polymarket 市场 `conditionID`，例如 `abc123` |
| `tokenAddresses` | `string` | **[可选]** Polymarket outcome token 合约地址列表，逗号分隔 |
| `minUsd` | `integer` | **[可选]** 最小 USD 金额过滤值，整数 |
| `maxUsd` | `integer` | **[可选]** 最大 USD 金额过滤值，整数 |
| `minPrice` | `string` | **[可选]** 最小成交价过滤值，单位为 USD/份，浮点数，例如 `1.23` |
| `maxPrice` | `string` | **[可选]** 最大成交价过滤值，单位为 USD/份，浮点数，例如 `1.23` |
| `minSize` | `integer` | **[可选]** 最小成交份数过滤值，整数 |
| `maxSize` | `integer` | **[可选]** 最大成交份数过滤值，整数 |
| `actions` | `string` | **[可选]** 动作列表，逗号分隔，例如 `buy` |
| `eventType` | `string` | **[可选]** 事件类型，可选 `trade`、`split`、`merge`、`convert` |
| `direction` | `string` | **[可选]** 成交方向，可选 `buy`、`sell` |
| `startTime` | `integer` | **[可选]** 开始时间，Unix 时间戳 |
| `endTime` | `integer` | **[可选]** 结束时间，Unix 时间戳 |
| `limit` | `integer` | **[可选]** 返回条数，默认 `50`、最大 `500`；非管理员 Token 仍按最大 `100` 上限处理 |
| `offset` | `integer` | **[可选]** 分页偏移量，默认 `0` |
| `fastPagination` | `string` | **[可选]** 快速分页模式，传 `true` 时上游只统计到刚好能判断是否还有下一页为止 |
| `sortBy` | `string` | **[可选]** 排序字段，可选 `time`（默认）、`size`（outcome 份数）、`price`（每份美分价）、`usd`（USD 名义金额） |
| `sortOrder` | `string` | **[可选]** 排序方向，可选 `asc` 或 `desc`，默认 `desc` |

### 示例

```bash
curl --get "http://0xrouter.app/chaindata/polymarket/activity" \
  -H "X-My-Token: your_token" \
  --data-urlencode "eventType=trade" \
  --data-urlencode "direction=buy" \
  --data-urlencode "minUsd=1000" \
  --data-urlencode "sortBy=time" \
  --data-urlencode "sortOrder=desc" \
  --data-urlencode "limit=50" \
  --data-urlencode "offset=0"
```

### 7.2 `GET /chaindata/polymarket/event-positions/{conditionId}`

按 `conditionId` 查询 Polymarket 单个市场的事件持仓列表，包含持仓人地址、outcome token、持仓份数、持仓 USD 价值、持仓盈亏（PnL）等字段。

路径参数 `conditionId` 必填；其余查询参数均可选；数组参数（`tokenAddresses`、`userAddresses`）按英文逗号分隔传递。`tokenAddresses` 显式传入时会覆盖按 `conditionId` 推导出的 outcome token 列表。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `conditionId` | `string` | **[必填]** Polymarket 市场 `conditionID`，例如 `abc123` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `tokenAddresses` | `string` | **[可选]** outcome token 合约地址列表，逗号分隔；显式传入时会覆盖按 `conditionId` 推导出的默认 outcome token 列表 |
| `userAddresses` | `string` | **[可选]** 用户地址列表，逗号分隔，用于过滤指定的 Polymarket 交易者地址 |
| `outcome` | `integer` | **[可选]** outcome token 选择，`0` 表示 Yes token，`1` 表示 No token |
| `minShares` | `integer` | **[可选]** 最小持仓份数过滤值，整数 |
| `maxShares` | `integer` | **[可选]** 最大持仓份数过滤值，整数 |
| `minValue` | `integer` | **[可选]** 最小持仓 USD 价值过滤值，整数 |
| `maxValue` | `integer` | **[可选]** 最大持仓 USD 价值过滤值，整数 |
| `minPnl` | `integer` | **[可选]** 最小持仓盈亏（PnL）过滤值，整数 |
| `maxPnl` | `integer` | **[可选]** 最大持仓盈亏（PnL）过滤值，整数 |
| `sortBy` | `string` | **[可选]** 排序字段，可选 `pnl`（默认）、`shares`（持仓份数）、`value`（持仓 USD 价值） |
| `sortOrder` | `string` | **[可选]** 排序方向，可选 `asc` 或 `desc`，默认 `desc` |
| `limit` | `integer` | **[可选]** 返回条数，默认 `50`、最大 `1000`；非管理员 Token 仍按最大 `100` 上限处理 |
| `offset` | `integer` | **[可选]** 分页偏移量 |

### 示例

```bash
curl --get "http://0xrouter.app/chaindata/polymarket/event-positions/abc123" \
  -H "X-My-Token: your_token" \
  --data-urlencode "outcome=0" \
  --data-urlencode "minValue=1000" \
  --data-urlencode "sortBy=pnl" \
  --data-urlencode "sortOrder=desc" \
  --data-urlencode "limit=50" \
  --data-urlencode "offset=0"
```

### 7.3 `GET /chaindata/polymarket/events`

返回 Polymarket 事件列表，包含事件标题、标签、结束时间、创建时间、成交量、是否已关闭/已结束等字段。可按标签、关键词、是否活跃过滤。

所有查询参数均可选。`tag` / `excludeTag` 均按小写标签大小写不敏感匹配。`active=true` 表示只返回未关闭且未结束的事件。`sortBy` 默认 `volume`，当传入 `tag` 时会自动改为默认 `endDate`。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `tag` | `string` | **[可选]** 事件标签过滤，按 Polymarket 小写标签大小写不敏感匹配 |
| `excludeTag` | `string` | **[可选]** 排除带有该标签的事件，大小写不敏感 |
| `active` | `string` | **[可选]** 是否只返回活跃事件（未关闭且未结束），可选 `true` 或 `false` |
| `search` | `string` | **[可选]** 事件标题全文搜索关键词 |
| `sortBy` | `string` | **[可选]** 排序字段，可选 `volume`、`endDate`、`createdAt`；未传 `tag` 时默认 `volume`，传 `tag` 时默认 `endDate` |
| `order` | `string` | **[可选]** 排序方向，可选 `asc` 或 `desc`，默认 `desc` |
| `limit` | `integer` | **[可选]** 返回条数，范围 `1-100`，默认 `50`；上游本身就把上限锁在 `100`，管理员与非管理员一致 |
| `offset` | `integer` | **[可选]** 分页偏移量，默认 `0` |

### 示例

```bash
curl --get "http://0xrouter.app/chaindata/polymarket/events" \
  -H "X-My-Token: your_token" \
  --data-urlencode "active=true" \
  --data-urlencode "sortBy=volume" \
  --data-urlencode "order=desc" \
  --data-urlencode "limit=50" \
  --data-urlencode "offset=0"
```

### 7.4 `GET /chaindata/polymarket/events/{eventId}`

按 `eventId` 查询 Polymarket 单个事件的完整详情数据，包含事件标题、标签、市场列表、成交量、起止时间等字段。

路径参数 `eventId` 必填且为整数；该接口不接受任何查询参数。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `eventId` | `integer` | **[必填]** Polymarket 事件 ID，整数，例如 `1` |

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/polymarket/events/12345" \
  -H "X-My-Token: your_token"
```

### 7.5 `GET /chaindata/polymarket/leaderboard`

返回 Polymarket 交易者排行榜，按交易指标（PnL、成交量等）排名。可按时间区间、排序方向过滤，也可以传入指定地址以返回该用户的排名。

所有查询参数均可选。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `period` | `string` | **[可选]** 时间区间，可选 `1d`（默认）、`1w`、`1m`、`all` |
| `order` | `string` | **[可选]** 排序方向，可选 `desc`（顶部交易者，默认）、`asc`（底部交易者） |
| `limit` | `integer` | **[可选]** 返回条数，范围 `1-200`，默认 `100`；非管理员 Token 仍按 `100` 上限处理，管理员 Token 可一直传到 `200` |
| `offset` | `integer` | **[可选]** 分页偏移量，默认 `0` |
| `address` | `string` | **[可选]** 可选的交易者地址；传入时会同时返回该用户在排行榜中的排名 |

### 示例

```bash
curl --get "http://0xrouter.app/chaindata/polymarket/leaderboard" \
  -H "X-My-Token: your_token" \
  --data-urlencode "period=1d" \
  --data-urlencode "order=desc" \
  --data-urlencode "limit=100" \
  --data-urlencode "offset=0"
```

### 7.6 `GET /chaindata/polymarket/order-book/{conditionId}`

按 `conditionId` 查询 Polymarket 市场的订单簿（order book）。

路径参数 `conditionId` 必填；该接口不接受任何查询参数。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `conditionId` | `string` | **[必填]** Polymarket 市场 `conditionID`，例如 `abc123` |

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/polymarket/order-book/abc123" \
  -H "X-My-Token: your_token"
```

### 7.7 `GET /chaindata/polymarket/pnl/chart`

返回 Polymarket 交易者地址的 PnL 时间序列，可按市场、时间区间过滤。`userAddress` 必填，其他查询参数均可选。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `userAddress` | `string` | **[必填]** Polymarket 交易者地址（0x + 40 位十六进制），例如 `0x123abc...` |
| `conditionID` | `string` | **[可选]** 市场 `conditionID`（0x 前缀 bytes32 十六进制）；传入时按该市场的 outcome token 聚合 PnL，不传时返回组合（portfolio）级别 PnL |
| `period` | `string` | **[可选]** 时间区间，可选 `24h`、`7d`、`30d`（默认）、`all`；`period=all` 仅能用于组合 PnL，且不能与 `startTime`/`endTime` 一起使用 |
| `startTime` | `integer` | **[可选]** 开始时间，Unix 秒级时间戳；不能与 `period=all` 一起使用 |
| `endTime` | `integer` | **[可选]** 结束时间，Unix 秒级时间戳 |

### 示例

```bash
curl --get "http://0xrouter.app/chaindata/polymarket/pnl/chart" \
  -H "X-My-Token: your_token" \
  --data-urlencode "userAddress=0x123abc..." \
  --data-urlencode "period=30d"
```

### 7.8 `GET /chaindata/polymarket/positions/{addr}`

按 Polymarket 交易者地址查询当前持仓列表，包含 outcome token、持仓份数、持仓 USD 价值、盈亏、交易次数等字段。

路径参数 `addr` 必填；其余查询参数均可选。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `addr` | `string` | **[必填]** Polymarket 交易者地址（0x + 40 位十六进制），例如 `0x123abc...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `sortBy` | `string` | **[可选]** 排序字段，可选 `trades`（默认）、`shares`（持仓份数）、`value`（持仓 USD 价值）、`pnl`（盈亏） |
| `sortOrder` | `string` | **[可选]** 排序方向，可选 `asc` 或 `desc`，默认 `desc` |
| `limit` | `integer` | **[可选]** 返回条数，范围 `1-1000`，默认 `50`；非管理员 Token 仍按 `100` 上限处理，管理员 Token 可一直传到 `1000` |
| `offset` | `integer` | **[可选]** 分页偏移量，默认 `0` |

### 示例

```bash
curl --get "http://0xrouter.app/chaindata/polymarket/positions/0x123abc..." \
  -H "X-My-Token: your_token" \
  --data-urlencode "sortBy=pnl" \
  --data-urlencode "sortOrder=desc" \
  --data-urlencode "limit=50" \
  --data-urlencode "offset=0"
```

### 7.9 `GET /chaindata/polymarket/prices`

返回 Polymarket outcome token 的历史价格时间序列。`tokenAddress` 与 `conditionID` 二选一至少传一个；只传 `conditionID` 时返回首个 outcome（`outcome_index=0`） token 的价格。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `tokenAddress` | `string` | **[可选]** Polymarket outcome token 合约地址（0x 前缀十六进制）；与 `conditionID` 二选一至少传一个 |
| `conditionID` | `string` | **[可选]** 市场 `conditionID`（0x 前缀 bytes32 十六进制），返回首个 outcome（`outcome_index=0`） token 的价格；与 `tokenAddress` 二选一至少传一个 |
| `interval` | `string` | **[可选]** 数据间隔，可选 `1m`、`1h`（默认）、`1d`、`auto` |
| `range` | `string` | **[可选]** 时间窗口，可选 `1d`、`1w`、`1m`、`all`；从 token 最后一个 bucket 反推；传入时会覆盖 `startTime`、`endTime`、`interval` |
| `startTime` | `integer` | **[可选]** 开始时间，Unix 秒级时间戳 |
| `endTime` | `integer` | **[可选]** 结束时间，Unix 秒级时间戳 |
| `limit` | `integer` | **[可选]** 返回价格点数量，范围 `1-7500`，默认 `500`；非管理员 Token 仍按 `100` 上限处理，管理员 Token 可一直传到 `7500` |

### 示例

```bash
curl --get "http://0xrouter.app/chaindata/polymarket/prices" \
  -H "X-My-Token: your_token" \
  --data-urlencode "conditionID=0xabc123..." \
  --data-urlencode "interval=1h" \
  --data-urlencode "range=1w" \
  --data-urlencode "limit=500"
```

### 7.10 `GET /chaindata/polymarket/stats`

返回 Polymarket 全局统计数据。该接口不接受任何查询参数。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/polymarket/stats" \
  -H "X-My-Token: your_token"
```

### 7.11 `GET /chaindata/polymarket/top-events`

返回 Polymarket 热门事件榜。所有查询参数均可选。

### 路径参数 (Path Parameters)

无

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `period` | `string` | **[可选]** 时间区间，可选 `1d`（默认）、`1w`、`1m`、`all` |
| `order` | `string` | **[可选]** 排序方向，可选 `desc`（涨幅榜，默认）、`asc`（跌幅榜） |
| `limit` | `integer` | **[可选]** 返回条数，范围 `1-200`，默认 `100`；非管理员 Token 仍按 `100` 上限处理，管理员 Token 可一直传到 `200` |
| `offset` | `integer` | **[可选]** 分页偏移量，默认 `0` |

### 示例

```bash
curl --get "http://0xrouter.app/chaindata/polymarket/top-events" \
  -H "X-My-Token: your_token" \
  --data-urlencode "period=1d" \
  --data-urlencode "order=desc" \
  --data-urlencode "limit=100" \
  --data-urlencode "offset=0"
```

### 7.12 `GET /chaindata/polymarket/top-events/{eventId}/breakdown`

按事件 ID 与交易者地址查询 Polymarket 热门事件中该交易者的明细。路径参数 `eventId`（Polymarket gamma 事件 ID）必填且为整数；查询参数 `address`、`period` 均必填。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `eventId` | `integer` | **[必填]** Polymarket 事件 ID（gamma event ID），整数，例如 `1` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `address` | `string` | **[必填]** Polymarket 交易者地址（0x + 40 位十六进制） |
| `period` | `string` | **[必填]** 时间区间，可选 `1d`、`1w`、`1m`、`all` |

### 示例

```bash
curl --get "http://0xrouter.app/chaindata/polymarket/top-events/1/breakdown" \
  -H "X-My-Token: your_token" \
  --data-urlencode "address=0x123abc..." \
  --data-urlencode "period=1d"
```

### 7.13 `GET /chaindata/polymarket/top-holders/{conditionId}`

按 `conditionId` 查询 Polymarket 市场的顶部持仓人列表。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `conditionId` | `string` | **[必填]** Polymarket 市场 `conditionID`，例如 `abc123` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `limit` | `integer` | **[可选]** 返回条数，范围 `1-200`，默认 `100`；非管理员 Token 仍按 `100` 上限处理，管理员 Token 可一直传到 `200` |
| `outcome` | `integer` | **[可选]** outcome token 选择，`0` 表示 Yes token，`1` 表示 No token；省略时返回全部 token 的持仓人 |

### 示例

```bash
curl --get "http://0xrouter.app/chaindata/polymarket/top-holders/abc123" \
  -H "X-My-Token: your_token" \
  --data-urlencode "limit=100" \
  --data-urlencode "outcome=0"
```

### 7.14 `GET /chaindata/polymarket/wallet/{addr}/prediction-history`

返回 Polymarket 单个交易者的预测历史，支持丰富的过滤与排序选项。路径参数 `addr` 必填；其余查询参数均可选。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `addr` | `string` | **[必填]** Polymarket 交易者地址（0x + 40 位十六进制），例如 `0x123abc...` |

### 查询参数 (Query Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `limit` | `integer` | **[可选]** 每页返回条数，范围 `1-100`，默认 `20` |
| `offset` | `integer` | **[可选]** 分页偏移量，默认 `0` |
| `sort` | `string` | **[可选]** 排序字段，可选 `value`、`volume`、`currentPrice`、`trades`、`pnl`（默认）、`shares`、`buyUsd`、`avgBuy`、`sellUsd`、`avgSell` |
| `order` | `string` | **[可选]** 排序方向，可选 `asc` 或 `desc`，默认 `desc` |
| `conditionID` | `string` | **[可选]** 市场 `conditionID` 过滤，仅返回匹配该 conditionID 的持仓 |
| `search` | `string` | **[可选]** 搜索关键词，匹配市场问题、组标题、事件标题或 `conditionID` |
| `minTrades` | `integer` | **[可选]** 最小交易次数过滤值，整数 |
| `maxTrades` | `integer` | **[可选]** 最大交易次数过滤值，整数 |
| `minVolume` | `integer` | **[可选]** 最小总成交额过滤值（USD 整数） |
| `maxVolume` | `integer` | **[可选]** 最大总成交额过滤值（USD 整数） |
| `minValue` | `integer` | **[可选]** 最小当前持仓 USD 价值过滤值，整数 |
| `maxValue` | `integer` | **[可选]** 最大当前持仓 USD 价值过滤值，整数 |
| `minCurrentPrice` | `string` | **[可选]** 最小当前价格过滤值（0-1 之间的浮点数） |
| `maxCurrentPrice` | `string` | **[可选]** 最大当前价格过滤值（0-1 之间的浮点数） |
| `minPnl` | `integer` | **[可选]** 最小 PnL 过滤值（USD 整数，可为负数） |
| `maxPnl` | `integer` | **[可选]** 最大 PnL 过滤值（USD 整数，可为负数） |
| `minTotalBuyUsdc` | `integer` | **[可选]** 最小买入总额过滤值（USD 整数） |
| `maxTotalBuyUsdc` | `integer` | **[可选]** 最大买入总额过滤值（USD 整数） |
| `minAvgBuyPrice` | `string` | **[可选]** 最小平均买入价过滤值（0-1 之间的浮点数） |
| `maxAvgBuyPrice` | `string` | **[可选]** 最大平均买入价过滤值（0-1 之间的浮点数） |
| `minTotalSellUsdc` | `integer` | **[可选]** 最小卖出总额过滤值（USD 整数） |
| `maxTotalSellUsdc` | `integer` | **[可选]** 最大卖出总额过滤值（USD 整数） |
| `minAvgSellPrice` | `string` | **[可选]** 最小平均卖出价过滤值（0-1 之间的浮点数） |
| `maxAvgSellPrice` | `string` | **[可选]** 最大平均卖出价过滤值（0-1 之间的浮点数） |
| `minSharesHeld` | `integer` | **[可选]** 最小当前持仓份数过滤值，整数 |
| `maxSharesHeld` | `integer` | **[可选]** 最大当前持仓份数过滤值，整数 |
| `status` | `string` | **[可选]** 持仓状态过滤，可选 `open`（活跃）或 `closed`（已关闭） |

### 示例

```bash
curl --get "http://0xrouter.app/chaindata/polymarket/wallet/0x123abc.../prediction-history" \
  -H "X-My-Token: your_token" \
  --data-urlencode "sort=pnl" \
  --data-urlencode "order=desc" \
  --data-urlencode "status=open" \
  --data-urlencode "limit=20" \
  --data-urlencode "offset=0"
```

### 7.15 `GET /chaindata/polymarket/wallet/{addr}/summary/balance`

返回 Polymarket 单个交易者的钱包余额摘要。路径参数 `addr` 必填；该接口不接受任何查询参数。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `addr` | `string` | **[必填]** Polymarket 交易者地址（0x + 40 位十六进制），例如 `0x123abc...` |

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/polymarket/wallet/0x123abc.../summary/balance" \
  -H "X-My-Token: your_token"
```

### 7.16 `GET /chaindata/polymarket/wallet/{addr}/summary/biggest-win`

返回 Polymarket 单个交易者的最大单笔盈利预测摘要。路径参数 `addr` 必填；该接口不接受任何查询参数。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `addr` | `string` | **[必填]** Polymarket 交易者地址（0x + 40 位十六进制），例如 `0x123abc...` |

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/polymarket/wallet/0x123abc.../summary/biggest-win" \
  -H "X-My-Token: your_token"
```

### 7.17 `GET /chaindata/polymarket/wallet/{addr}/summary/pnl`

返回 Polymarket 单个交易者的累计 PnL 摘要。路径参数 `addr` 必填；该接口不接受任何查询参数。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `addr` | `string` | **[必填]** Polymarket 交易者地址（0x + 40 位十六进制），例如 `0x123abc...` |

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/polymarket/wallet/0x123abc.../summary/pnl" \
  -H "X-My-Token: your_token"
```

### 7.18 `GET /chaindata/polymarket/wallet/{addr}/summary/portfolio`

返回 Polymarket 单个交易者的组合（portfolio）摘要。路径参数 `addr` 必填；该接口不接受任何查询参数。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `addr` | `string` | **[必填]** Polymarket 交易者地址（0x + 40 位十六进制），例如 `0x123abc...` |

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/polymarket/wallet/0x123abc.../summary/portfolio" \
  -H "X-My-Token: your_token"
```

### 7.19 `GET /chaindata/polymarket/wallet/{addr}/summary/stats`

返回 Polymarket 单个交易者的整体统计摘要。路径参数 `addr` 必填；该接口不接受任何查询参数。

### 路径参数 (Path Parameters)

| 参数名 | 类型 | 描述 |
| :--- | :--- | :--- |
| `addr` | `string` | **[必填]** Polymarket 交易者地址（0x + 40 位十六进制），例如 `0x123abc...` |

### 查询参数 (Query Parameters)

无

### 示例

```bash
curl "http://0xrouter.app/chaindata/polymarket/wallet/0x123abc.../summary/stats" \
  -H "X-My-Token: your_token"
```

## 8. Python 示例

项目里的 [demo.py](/C:/Users/Administrator/Desktop/zhongzhuan/demo.py) 已经整理成统一调用封装，常用 helper 也按首字母分组顺序排列：

- `get_token_balance`
- `get_solana_address_subaccount_balances`
- `get_solana_entity_subaccount_balances`
- `get_supported_chains`
- `get_address_counterparties`
- `get_entity_counterparties`
- `get_address_flow`
- `get_entity_flow`
- `get_address_history`
- `get_entity_history`
- `get_entity_balance_changes`
- `get_entity_intelligence`
- `get_entity_predictions`
- `get_entity_types`
- `get_entity_summary`
- `get_all_address_intelligence`
- `get_all_address_intelligence_enriched`
- `get_intelligence_search`
- `get_address_loans`
- `get_entity_loans`
- `get_altcoin_index`
- `get_network_history`
- `get_network_status`
- `get_address_portfolio`
- `get_entity_portfolio`
- `get_address_portfolio_time_series`
- `get_entity_portfolio_time_series`
- `get_swaps`
- `get_token_addresses`
- `get_arkham_exchange_tokens`
- `get_token_balance_by_chain_address`
- `get_token_balance_by_id`
- `get_top_tokens`
- `get_top_token_holders_by_chain_address`
- `get_top_token_holders_by_id`
- `get_token_market_data`
- `get_token_price_change`
- `get_token_price_history_by_chain_address`
- `get_token_price_history`
- `get_top_token_flow_by_chain_address`
- `get_top_token_flow_by_pricing_id`
- `get_trending_token_by_id`
- `get_trending_tokens`
- `get_token_volume_by_chain_address`
- `get_token_volume`
- `get_transfers`
- `get_transfers_histogram`
- `get_transfers_histogram_simple`
- `get_transfers_for_transaction`
- `get_address_volume`
- `get_entity_volume`

最小示例：

```python
from demo import (
    SERVER_IP,
    MY_TOKEN,
    DEFAULT_ADDRESS,
    get_token_balance,
    get_entity_summary,
    get_transfers,
)

get_token_balance(SERVER_IP, "chaindata", MY_TOKEN)
get_entity_summary(SERVER_IP, "binance", MY_TOKEN)
get_transfers(
    SERVER_IP,
    MY_TOKEN,
    base=DEFAULT_ADDRESS,
    flow="all",
    usd_gte="1",
    sort_key="time",
    sort_dir="desc",
    limit=10,
    offset=0,
)
```

## 9. 状态码

| 状态码 | 含义 | 是否扣费 |
| :--- | :--- | :--- |
| `200` | 请求成功 | 是 |
| `400` | 分组不允许或上游参数错误 | 否 |
| `401` | 缺少 Token | 否 |
| `402` | 余额不足 | 否 |
| `403` | IP 已封禁、Token 非法或 Token 已封禁 | 否 |
| `429` | Token 触发限频 | 否 |
| `502` | 代理重试后仍失败 | 否 |
| `503` | 所有代理节点都在冷却 | 否 |

## 10. 风控与使用建议

推荐联调顺序：

1. 先用 `/account/balance/chaindata` 或 `balances/address` 验证 token 可用
2. 再调 `intelligence/address`、`entity/{entity}/summary` 这类轻量查询接口
3. 最后再接 `counterparties/*`、`transfers`、`token/holders` 这类更重的接口
