> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mobula.io/llms.txt
> Use this file to discover all available pages before exploring further.

# getTokenPrices

> Fetch USD prices for one or more tokens.

### Overview

Fetch current or historical USD prices for multiple tokens in a single request. Supports batching, preserves input order, and allows historical queries via timestamp or block number.

### Returns

<ResponseField name="getTokenPrices" type="[Price!]!">
  List of token prices matching the order of the input. See [Price](/api-reference/graphql/types/Price).
</ResponseField>

### Arguments

<ResponseField name="inputs" type="[GetPriceInput!]!" required>
  Array of price queries. Response preserves the same order. See [GetPriceInput](/api-reference/graphql/types/GetPriceInput).
</ResponseField>

### Example

```graphql theme={null}
query GetTokenPrices {
  getTokenPrices(inputs: [
    { address: "0xdac17f958d2ee523a2206206994597c13d831ec7", networkId: 1 },
    { address: "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", networkId: 1 },
    { address: "So11111111111111111111111111111111111111112", networkId: 1399811149}
  ]) {
    address
    priceUsd
  }
}
```

### Playground

<iframe src={`https://graphql.mobula.io/graphql?query=${encodeURIComponent('query GetTokenPrices($inputs: [GetPriceInput!]!) { getTokenPrices(inputs: $inputs) { address networkId priceUsd timestamp } }')}&variables=${encodeURIComponent('{"inputs": [{"address": "0xdac17f958d2ee523a2206206994597c13d831ec7", "networkId": 1}, {"address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", "networkId": 1}]}')}`} title="GraphQL Playground" style={{ width: '100%', minHeight: '600px', border: '1px solid var(--color-border)', borderRadius: '8px' }} />
