# Token prices by address

Endpoint reference for the 1delta API. Index: https://docs.1delta.io/llms.txt · every endpoint: https://docs.1delta.io/llms-full.txt

---

### GET /v1/data/token/prices

- operationId: `token-prices-by-address`
- docs: https://docs.1delta.io/1delta-api/token-prices-by-address/
- markdown: https://docs.1delta.io/1delta-api/token-prices-by-address.md
- tags: Token

Token prices by address

Returns per-address USD prices for the given asset addresses on a chain.

**How it works:**
1. Resolves each address to its asset group via the token list
2. Looks up the latest USD price for each asset group
3. Returns a map of address → price

**Query format:**
- `assets`: Comma-separated list of EVM addresses (0x-prefixed, 40 hex chars)

**Response Structure:**
- `items`: Object mapping lowercase addresses to their USD price (0 if unknown)
- `count`: Number of resolved assets

**Parameters**

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `chainId` | query | string | yes | Chain ID See the `ChainId` schema for the full set of supported chains. |
| `assets` | query | string | yes | Comma-separated list of token addresses |

**Response `200`** — Per-address USD prices

| Field | Type | Description |
| --- | --- | --- |
| `success` | true |  |
| `data` | object |  |
| `data.chainId` | string | EVM chain id, as a decimal string. See the `ChainId` schema. |
| `data.count` | integer | Number of resolved assets |
| `data.items` | object | Map of lowercase address → USD price |
| `actions` | null |  |

**Example response**

```json
{
  "success": true,
  "data": {
    "chainId": "1",
    "count": 1,
    "items": {
      "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48": 1,
      "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2": 3500.12
    }
  }
}
```

**Response `400`** — Validation error

**Response `429`** — Rate limited. Unauthenticated callers share a per-IP budget; send an `x-api-key` header to lift it. Retry with exponential backoff.

**Response `500`** — Unexpected server error. Safe to retry with backoff.

**Response `502`** — 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.
