Discovery and markets API
Find an NFT collection by name
Turns a collection name, symbol or pasted address into candidate NFT collections on one chain (ETH, BASE, ARC, RHC, OP and SCROLL), most holders first, so you can get the contract address.
/api/external/discovery/nft-collection-search/{chain}What it returns
Turns free text — a collection name, its symbol, or a pasted contract address — into candidate ERC-721 and ERC-1155 collections on ONE chain. ETH, BASE, ARC, RHC, OP and SCROLL are served; every other chain returns 400. Returns a LIST, most holders first among the matches, never a single answer: many collections share a name, and copies of a famous one exist. Compare holders before treating the first row as the collection. On ETH, BASE and ARC a query matches whole words: "pudgy" does not find PudgyPenguins, "pudgypenguins" does — try the full name or a single word of it. On those three chains the first ask for a broad, common word can take many seconds or fail, and the same ask answers quickly moments later. Very common short words (such as "a") match nothing. An empty or whitespace-only q is rejected with a 400 before any lookup; a query matching nothing returns an empty list, never a guess.
Chains
- Ethereum ETH
- Base BASE
- Robinhood Chain RHC
- Arc ARC
- Optimism OP
- Scroll SCROLL
Request
Send your key in the x-dex-data-key header. Replace each <placeholder> with a real value.
curl -H "x-dex-data-key: $DEXDATA_API_KEY" \ "https://api.dexdata.io/api/external/discovery/nft-collection-search/ETH?q=<q>"
| Parameter | Description |
|---|---|
qquery · string · required | Free text: a collection name, its symbol, or a pasted contract address. A blank or whitespace-only value is rejected with a 400 before any lookup, as is a value over 100 characters (checked after the API-key gate). |
limitquery · integer · optional | How many collections to return, in ranked order. Defaults to 10; at most 50 (checked after the API-key gate). |
chainpath · string · required | The chain to query. ETH, BASE, ARC, RHC, OP and SCROLL are served; every other chain returns 400. |
Response fields
A JSON response. Every field is always present; null means the value could not be established, never zero.
| Field | Type | Description |
|---|---|---|
collections | object[] | Most holders first among the matches, in the source's own order — never re-sorted here. Empty when the query matched nothing on this chain. |
collections[].address | string | The collection contract, checksummed. |
collections[].name | string | null | The collection's name, or null when none is published. |
collections[].symbol | string | null | The collection's symbol, or null when none is published. |
collections[].standard | string | The token standard. |
collections[].holders | integer | null | Wallets holding at least one item; null when the chain index has no count. |
collections[].totalSupply | string | null | Items in existence, as a decimal string; null when the chain index does not report it. |
Start building with DexData today
Sign in, create a key and make your first call in a minute. Free credits every month, and you only pay for calls that succeed.
Get a free API key