Listed tokens

Browse tokens that have been verified or marked listed

The token list endpoint shows every ERC20 / ERC721 / ERC1155 token we've indexed, with optional filters for verification, type, and search.

GET /api/tokens/

Query parameters

ParameterTypeNotes
addressstringExact match. Use this for direct contract lookup.
searchstringMatches across symbol, name, and address — see Search behavior below.
is_erc20booleantrue for ERC20s only
is_erc721booleantrue for NFT collections
is_erc1155booleantrue for ERC1155 multi-token contracts
verifiedbooleantrue for tokens we've verified
commonbooleantrue for tokens promoted as "common" (USDC, USDT, ETH, STRK, ...)
publicbooleanPublic-listed tokens (community submissions accepted)
orderingstringAny Token field, prefix with - for descending. Useful options: name, -name, created_on, -created_on, current_price_usd, -current_price_usd, holders, -holders, symbol.
page, limitintegersPagination

Example

Response

Code
json
1{
2 "count": 6,
3 "results": [
4 {
5 "id": 1,
6 "address": "0x053c91253bc9682c04929ca02ed00b3e423f6710d2ee7e0d5ebb06f3ecf368a8",
7 "symbol": "USDC",
8 "name": "USD Coin",
9 "decimals": 6,
10 "is_erc20": true,
11 "is_erc721": false,
12 "is_erc1155": false,
13 "verified": true,
14 "common": true,
15 "public": true,
16 "current_price_usd": "1.000123"
17 }
18 ]
19}

Search behavior

The search parameter runs three checks in order and returns the first one that produces a match. It's deliberately address-aware so a wallet user pasting whatever they see on screen (short-form, full-form, partial fragment) finds the right row.

  1. Exact address — if the input is hex-shaped, it's padded to the canonical 64-hex-char form before comparison. So 0x53c91253... (63 chars, leading zero stripped) finds the same row as 0x053c91253... (64 chars, stored form).
  2. Exact symbol or name — case-insensitive equality on symbol or name. USDC, usdc, Ether, Starknet Token all hit directly.
  3. Substring fallback — case-insensitive contains on symbol and name. Address-substring matching is only enabled for hex-shaped queries that are at least 4 hex chars long (this prevents ?search=18 from returning every token whose 64-hex-char address happens to contain "18", which used to return ~3.4k rows).

For hex-shaped queries the 0x prefix is optional — 0x53c91 and 53c91 resolve to the same match set.

Code
bash
1# All three find USDC
2curl '.../api/tokens/?search=USDC' # exact symbol
3curl '.../api/tokens/?search=USD%20Coin' # exact name
4curl '.../api/tokens/?search=0x53c91253...' # short-form address, padded match
5curl '.../api/tokens/?search=53c91' # 5-char hex fragment, substring on address

See also