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

# Tokens & Liquidity Overview

> Discover tokens and liquidity pools with standardized metadata and identifiers.

## Overview

The Tokens & Liquidity suite provides access to token registries and automated market maker (AMM) pool metadata. These endpoints deliver standardized identifiers and classification data that enable consistent cross-dataset joins and filtering. All records include lineage fields linking back to on-chain creation events.

### Endpoint Matrix

| Endpoint                                                                          | Summary                          | Dataset ID | Typical Latency |
| --------------------------------------------------------------------------------- | -------------------------------- | ---------- | --------------- |
| [`POST /evm/entities/tokens/erc20`](/api-reference/evm/entities/tokens-erc20)     | ERC-20 token registry            | `0201`     | \< 200 ms       |
| [`POST /evm/entities/tokens/erc721`](/api-reference/evm/entities/tokens-erc721)   | ERC-721 collection registry      | `0202`     | \< 200 ms       |
| [`POST /evm/entities/tokens/erc1155`](/api-reference/evm/entities/tokens-erc1155) | ERC-1155 contract registry       | `0203`     | \< 200 ms       |
| [`POST /evm/entities/pools`](/api-reference/evm/entities/pools)                   | AMM pool registry                | `0211`     | \< 200 ms       |
| [`POST /evm/entities/pools/fee-terms`](/api-reference/evm/entities/fee-terms)     | Pool fee configuration over time | `0212`     | \< 200 ms       |

### Parameter Conventions

<ParamField body="address" type="string">
  ERC-20 contract address filter (hex string, 20 bytes, no `0x` prefix).
</ParamField>

<ParamField body="pool_uid" type="string">
  BlockDB pool identifier for direct pool lookups.
</ParamField>

<ParamField body="pool_addresses" type="string[]">
  Pool contract addresses for AMM pools.
</ParamField>

<ParamField body="from_block" type="number">
  Starting block number (inclusive) for creation-time filtering.
</ParamField>

<ParamField body="to_block" type="number">
  Ending block number (inclusive) for creation-time filtering.
</ParamField>

<ParamField body="from_timestamp" type="string">
  Starting timestamp (ISO-8601). If it falls between blocks, the next block after this timestamp is used.
</ParamField>

<ParamField body="to_timestamp" type="string">
  Ending timestamp (ISO-8601). If it falls between blocks, the last block before this timestamp is used.
</ParamField>

<ParamField body="chain_id" type="number" required>
  Chain identifier for the target EVM network. See [Chain enumeration](/api-reference/enumerations/chain) for supported values.
</ParamField>

<ParamField body="pool_type_ids" type="number[]">
  Pool type filters. Use [Pool Type enumeration](/api-reference/enumerations/pool-type) values.
</ParamField>

### Usage Guidance

* **Start with pools** — Use `/evm/entities/pools` to discover available liquidity before querying reserves
* **Join with reserves** — Link pool metadata to reserve snapshots via `pool_uid` for complete liquidity analysis
* **Use token addresses** — the ERC-20 endpoint accepts contract addresses for direct lookups
* **Filter by creation time** — Use block/time ranges to find newly created tokens or pools
* **Cache token metadata** — Token names, symbols, and decimals are immutable; cache aggressively

### Common Patterns

**Find all ERC-20 tokens created in a time range:**

```json theme={null}
{
  "chain_id": 1,
  "from_timestamp": "2025-01-01T00:00:00Z",
  "to_timestamp": "2025-01-31T23:59:59Z"
}
```

**Lookup specific pool:**

```json theme={null}
{
  "chain_id": 1,
  "pool_addresses": [
    "88e6a0c2ddd26feeb64f039a2c41296fcb3f564"
  ]
}
```

**Filter pools by type:**

```json theme={null}
{
  "chain_id": 1,
  "pool_type_ids": [
    201,
    301,
    302,
    303,
    304
  ],
  "from_block": 18000000
}
```

### Dataset Relationships

* **Tokens → Pools**: Join ERC-20 tokens to pools via token addresses in pool metadata
* **Pools → Reserves**: Link pool metadata to reserve snapshots using `pool_uid`
* **Pools → Fee Terms**: Join pool metadata to fee terms using `pool_uid` for pool economics
* **Tokens → Prices**: Use token addresses in pricing endpoints to get market data

### See Also

* [`POST /evm/entities/tokens/erc20`](/api-reference/evm/entities/tokens-erc20) — ERC-20 token registry
* [`POST /evm/entities/pools`](/api-reference/evm/entities/pools) — AMM pool registry
* [`POST /evm/entities/pools/fee-terms`](/api-reference/evm/entities/fee-terms) — Pool fee configuration
* [`POST /evm/reserves`](/api-reference/evm/reserves/reserves) — Pool reserve snapshots
* [Pool Type](/api-reference/enumerations/pool-type) — AMM pool classifications
* [Digital Exchange](/api-reference/enumerations/digital-exchange) — DEX protocol identifiers
