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

# List tokens

> Browse supported token metadata.

<Info>Response JSON below is an illustrative testnet snapshot, not a live mainnet result. Use the selected server and its network-specific addresses for actual requests.</Info>

<ParamField query="limit" type="integer" default="100">
  Page size from `1` through `500`.
</ParamField>

<ParamField query="cursor" type="string">
  Opaque exclusive continuation cursor from `pagination.nextCursor`.
</ParamField>

<ResponseField name="feedEpoch" type="null" required>
  Token metadata is not an Exchange Gateway replay cut.
</ResponseField>

<ResponseField name="data" type="array" required>
  Token metadata ordered by creation time and then token address.
</ResponseField>

<ResponseField name="pagination.nextCursor" type="string | null" required>
  Continuation cursor, or `null`.
</ResponseField>

Each token includes `tokenAddress`, `name`, `symbol`, `decimals`, `logoUrl`,
`description`, `websiteUrl`, `verified`, `contractRenounced`, `isErc20`,
`isMintable`, `isStrict`, and `firstPoolAddress`.

<ResponseExample>
  ```json 200 theme={null}
  {
    "feedEpoch": null,
    "data": [
      {
        "tokenAddress": "0xb01dc575a7ef75e58a05d2bde73ab79f8e7dd0be",
        "name": "Kuru Test USDC",
        "symbol": "USDC",
        "decimals": 6,
        "logoUrl": null,
        "description": null,
        "websiteUrl": null,
        "verified": false,
        "contractRenounced": false,
        "isErc20": true,
        "isMintable": true,
        "isStrict": false,
        "firstPoolAddress": null
      },
      {
        "tokenAddress": "0x0000000000000000000000000000000000000000",
        "name": "Monad",
        "symbol": "MON",
        "decimals": 18,
        "logoUrl": null,
        "description": null,
        "websiteUrl": null,
        "verified": false,
        "contractRenounced": false,
        "isErc20": false,
        "isMintable": false,
        "isStrict": false,
        "firstPoolAddress": null
      },
      {
        "tokenAddress": "0xb711d972876ae19481ffd1ab2047b8e5e31bee5f",
        "name": "Kuru Test WETH",
        "symbol": "WETH",
        "decimals": 18,
        "logoUrl": null,
        "description": null,
        "websiteUrl": null,
        "verified": false,
        "contractRenounced": false,
        "isErc20": true,
        "isMintable": true,
        "isStrict": false,
        "firstPoolAddress": null
      },
      {
        "tokenAddress": "0x7bc3a5fceb95be797d57ee762b881596b3cfa992",
        "name": "Kuru Test cbBTC",
        "symbol": "cbBTC",
        "decimals": 8,
        "logoUrl": null,
        "description": null,
        "websiteUrl": null,
        "verified": false,
        "contractRenounced": false,
        "isErc20": true,
        "isMintable": true,
        "isStrict": false,
        "firstPoolAddress": null
      },
      {
        "tokenAddress": "0x4baf98bf7a70725e73b20ea61b00271878115a4c",
        "name": "Kuru Test USDT",
        "symbol": "USDT",
        "decimals": 6,
        "logoUrl": null,
        "description": null,
        "websiteUrl": null,
        "verified": false,
        "contractRenounced": false,
        "isErc20": true,
        "isMintable": true,
        "isStrict": false,
        "firstPoolAddress": null
      },
      {
        "tokenAddress": "0xc48194f3d9c9f6b461eb3a6acd3bfe09882dc662",
        "name": "Kuru Test XAUT",
        "symbol": "XAUT",
        "decimals": 6,
        "logoUrl": null,
        "description": null,
        "websiteUrl": null,
        "verified": false,
        "contractRenounced": false,
        "isErc20": true,
        "isMintable": true,
        "isStrict": false,
        "firstPoolAddress": null
      },
      {
        "tokenAddress": "0x1ca0772b36e70ff54525afee1daee846cd914d02",
        "name": "Kuru Test NVDAx",
        "symbol": "NVDAx",
        "decimals": 18,
        "logoUrl": null,
        "description": null,
        "websiteUrl": null,
        "verified": false,
        "contractRenounced": false,
        "isErc20": true,
        "isMintable": true,
        "isStrict": false,
        "firstPoolAddress": null
      },
      {
        "tokenAddress": "0x8bf70ce58a038f741b4e187adea126c8cab867c2",
        "name": "Kuru Test SPYx",
        "symbol": "SPYx",
        "decimals": 18,
        "logoUrl": null,
        "description": null,
        "websiteUrl": null,
        "verified": false,
        "contractRenounced": false,
        "isErc20": true,
        "isMintable": true,
        "isStrict": false,
        "firstPoolAddress": null
      },
      {
        "tokenAddress": "0x251f5e6e1f4fe6e55ba285efa6518b2707c9efe0",
        "name": "Kuru Test QQQx",
        "symbol": "QQQx",
        "decimals": 18,
        "logoUrl": null,
        "description": null,
        "websiteUrl": null,
        "verified": false,
        "contractRenounced": false,
        "isErc20": true,
        "isMintable": true,
        "isStrict": false,
        "firstPoolAddress": null
      },
      {
        "tokenAddress": "0x7da7742fcdfd472697a52b0aaff818cae3139656",
        "name": "Kuru Test TSLAx",
        "symbol": "TSLAx",
        "decimals": 18,
        "logoUrl": null,
        "description": null,
        "websiteUrl": null,
        "verified": false,
        "contractRenounced": false,
        "isErc20": true,
        "isMintable": true,
        "isStrict": false,
        "firstPoolAddress": null
      },
      {
        "tokenAddress": "0x184659b7968bd56f0243523183c923459e757548",
        "name": "Kuru Test EWYx",
        "symbol": "EWYx",
        "decimals": 18,
        "logoUrl": null,
        "description": null,
        "websiteUrl": null,
        "verified": false,
        "contractRenounced": false,
        "isErc20": true,
        "isMintable": true,
        "isStrict": false,
        "firstPoolAddress": null
      }
    ],
    "pagination": {
      "nextCursor": null
    }
  }
  ```
</ResponseExample>


## OpenAPI

````yaml api/data-source/openapi.yaml GET /api/v1/tokens
openapi: 3.1.0
info:
  title: Kuru Data Source API
  version: 1.0.0
servers:
  - url: https://api.mainnet.kuru.io
    description: Monad mainnet (default)
  - url: https://api.testnet.kuru.io
    description: Monad testnet
security: []
paths:
  /api/v1/tokens:
    get:
      summary: List tokens
      operationId: listTokens
      parameters:
        - name: limit
          in: query
          schema:
            type: integer
        - name: cursor
          in: query
          schema:
            type: string
      responses:
        '200':
          description: Token catalog

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.