Tokens
Token metadata, listings with market data, ACE lists, and price history.
Likely Spam Classification
The indexer marks a fungible token as spamLikely when holder activity is high relative to weak market support. This is a protective filtering signal, not a deletion or blocklist. Direct token info lookups still return the token and include the spamLikely flag so apps can label it.
A token is eligible for the spam check only when all of these are true:
| Signal | Requirement |
|---|---|
| Token type | Fungible token types 0 or 1 |
| ACE status | Not ACE-authorized |
| Holder count | At least 25 holders |
Once eligible, it is considered likely spam if any of these conditions match:
| Condition | Threshold |
|---|---|
| No market support | >= 250 holders, no market/liquidity support, and no RATE price |
| Thin liquidity versus market cap | >= 250 holders, market cap at least $100,000, and market cap at least 100x indexed liquidity |
| Low support, moderate spread | >= 50 holders, market support under $10,000, and at least 10 holders / $1,000 of support |
| Low support, broad spread | >= 250 holders, market support under $50,000, and at least 5 holders / $1,000 of support |
Market support is calculated as the greater of market cap or combined ZERA DEX liquidity plus fresh bridge liquidity. The thin-liquidity check compares market cap against the same combined indexed liquidity. NFTs, SBTs, and ACE-authorized tokens are not classified as likely spam by this filter.
Likely spam tokens are hidden by default from token list, wallet balance, and search endpoints. Use includeSpam=true or hideSpam=false to include them in API responses.
Token List
/v1/tokens?request=listPaginated list of all indexed tokens with optional market statistics.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| request | string | optional | list | Must be `list` (default) |
| limit | int | optional | 50 | Number of results (1–100) |
| offset | int | optional | 0 | Pagination offset |
| symbol | string | optional | — | Filter by contract ID (exact, case-insensitive) |
| type | string | optional | — | Filter: token, nft, or sbt |
| sort | string | optional | market_cap | Sort: market_cap, name, volume, change, holders, transactions, created, symbol |
| order | string | optional | desc | Sort direction: asc or desc |
| include | string | optional | — | Sections to include: supply, market, fees, governance, icons, project, all |
| includeSpam | boolean | optional | false | Set to true to include tokens classified as likely spam |
| hideSpam | boolean | optional | true | Set to false to include tokens classified as likely spam |
🪙 Usage & Credits
Notes
- Likely spam tokens are hidden by default on list/search/wallet endpoints. Use `includeSpam=true` or `hideSpam=false` to include them.
- Returned volume metrics may include other tracked sources, such as cross-chain DEX markets when known bridge mappings are available. They are not limited to ZERA Native DEX activity, may not include every source, and data may be delayed.
Response
{
"found": "integer",
"tokens": [
{
"symbol": "string",
"name": "string",
"type": "string",
"icon": "string *",
"spamLikely": "boolean"
}
]
}Token Info
/v1/tokens?request=infoDetailed metadata for a specific token. Supports bridge mint resolution.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| request | string | REQUIRED | — | Must be `info` |
| symbol | string | REQUIRED | — | Contract ID (e.g. $ZRA+0000) |
| include | string | optional | — | Sections: supply, market, fees, governance, icons, project, all |
🪙 Usage & Credits
Notes
- Returned volume metrics may include other tracked sources, such as cross-chain DEX markets when known bridge mappings are available. They are not limited to ZERA Native DEX activity, may not include every source, and data may be delayed.
Response
{
"symbol": "string",
"name": "string",
"type": "string",
"icon": "string *",
"spamLikely": "boolean",
"supply *": {
"totalSupply": "float",
"maxSupply": "float *",
"circulatingSupply": "float",
"burnedSupply": "float *",
"mintedSupply": "float *",
"partsPerToken": "float"
},
"market *": {
"marketCap": "float",
"volume24hr": "float",
"change24hr": "float",
"rate": "float *",
"holders": "integer",
"transactions": "integer",
"isAceAuthorized": "boolean"
},
"fees *": {
"feeType": "string",
"totalFee": "string",
"burnPercent": "integer",
"validatorPercent": "integer",
"otherPercent": "integer",
"feeAddress": "string *",
"acceptedFeeContracts": "array *"
},
"governance *": {
"type": "string",
"activeProposals": "integer",
"totalProposals": "integer",
"threshold": "integer",
"quorum": "integer",
"fastQuorum": "integer *",
"durationDays": "integer *",
"durationMonths": "integer *",
"startCycleUnix": "integer *",
"endCycleUnix": "integer *",
"numberStages": "integer *",
"currentStageNumber": "integer *",
"stages *": [
{
"stageNumber": "integer",
"isBreak": "boolean",
"period": "string",
"length": "integer",
"maxAllowed": "integer *",
"startsAt": "integer *",
"endsAt": "integer *"
}
]
},
"icons *": {
"lowRes": "string *",
"highRes": "string *"
},
"project *": {
"projectUrl": "string *",
"exchangeInfo": "string *",
"generalInfo": "string *"
},
"bridge *": {
"mints": [
{
"network": "string",
"mintId": "string"
}
]
}
}Errors
| Status | Condition |
|---|---|
| 400 | Missing symbol parameter |
| 404 | Token not found |
ACE Authorized Tokens
/v1/tokens?request=authorizedTokens authorized for ACE (Authorized Currency Equivalent) base fee payments.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| request | string | REQUIRED | — | Must be `authorized` |
| address | string | optional | — | Filter to ACE tokens the wallet holds |
| type | string | optional | — | Filter: token, nft, sbt |
| include | string | optional | — | Sections to include |
| includeSpam | boolean | optional | false | Set to true to include tokens classified as likely spam |
| hideSpam | boolean | optional | true | Set to false to include tokens classified as likely spam |
🪙 Usage & Credits
Response
{
"found": "integer",
"tokens": [
{
"symbol": "string",
"name": "string",
"type": "string",
"icon": "string *",
"spamLikely": "boolean"
}
]
}Price History
/v1/tokens?request=priceHistoryTime-bucketed historical price data for charting.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| request | string | REQUIRED | — | Must be `priceHistory` |
| symbol | string | REQUIRED | — | Contract ID |
| interval | string | optional | 1h | Bucket: 5m, 15m, 1h, 4h, 1d |
| startTime | int | optional | — | Unix timestamp lower bound |
| endTime | int | optional | — | Unix timestamp upper bound |
| limit | int | optional | 500 | Max data points (1–2000) |
🪙 Usage & Credits
Response
{
"found": "integer",
"symbol": "string",
"interval": "string",
"prices": [
{
"time": "integer",
"price": "float"
}
]
}