Get available lending assets
GET/v1/data/token/available
Returns the list of assets available for lending on a given chain. Proxied from origin with a long-lived cache (1 hour).
Filters:
chainId/chainIds— filter by chainlender— filter by lender protocolsymbol,name,address— filter by asset metadataassetGroup— filter by asset group
Response Structure:
count: Number of matching assetsitems: Array of asset objects with address, chain_id, symbol, name, and additional metadata
Plain-text reference — GET /v1/data/token/available
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
chainId | query | string | no | Filter by chain ID See the ChainId schema for the full set of supported chains. |
chainIds | query | string | no | Comma-separated chain IDs to filter by (alternative to chainId) See the ChainId schema for the full set of supported chains. |
lender | query | string | no | Filter by lender protocol key See the LenderId schema for the full set of accepted values. |
symbol | query | string | no | Filter by token symbol |
name | query | string | no | Filter by token name (partial match) |
address | query | string | no | Filter by token contract address |
assetGroup | query | string | no | Filter by asset group |
Response 200
| Field | Type | Description |
|---|---|---|
success | True | |
data | object | |
data.count | integer | Number of available assets |
data.items | object[] | The result set for this response. |
data.items[].address | string | Token contract address |
data.items[].chain_id | integer | EVM chain id, as a decimal string. See the ChainId schema. |
data.items[].symbol | string | Token symbol, e.g. WETH. |
data.items[].name | string | Human-readable display name. |
actions | null |
Example response
{
"success": true,
"data": {
"count": 1,
"items": [
{
"address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"chain_id": 1,
"symbol": "USDC",
"name": "USD Coin"
}
]
}
}
Request
Responses
- 200
- 400
- 429
- 500
- 502
Available lending assets
Validation error
Rate limited. Unauthenticated callers share a per-IP budget; send an x-api-key header to lift it. Retry with exponential backoff.
Unexpected server error. Safe to retry with backoff.
An upstream data source or protocol origin failed (error.code is ORIGIN_FAILED). error.details carries the per-origin status. This is also what a missing or malformed required parameter currently returns, rather than a 400.