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

# spotMetaAndAssetCtxs | Hyperliquid info

> The info endpoint with type: "spotMetaAndAssetCtxs" retrieves comprehensive metadata and market contexts for all spot assets on the Hyperliquid exchange.

<Info>
  You can only use this endpoint on the official Hyperliquid public API. It is not available through Chainstack, as the open-source node implementation does not support it yet. See [Hyperliquid methods](/docs/hyperliquid-methods) for the full availability breakdown.
</Info>

The `info` endpoint with `type: "spotMetaAndAssetCtxs"` retrieves comprehensive metadata and market contexts for all spot assets on the Hyperliquid exchange. This endpoint provides detailed information about token specifications, trading pairs, market prices, volumes, supply metrics, and EVM contract details for spot trading analysis and integration.

## Parameters

### Request body

* `type` (string, required) — The request type. Must be `"spotMetaAndAssetCtxs"` to retrieve spot market metadata and asset contexts.

## Response

The response returns an array with two elements:

1. **Token metadata array** — Detailed specifications for all spot tokens
2. **Market context array** — Real-time trading data and supply information

### Token Metadata Structure

Each token metadata object contains:

* `name` (string) — Token symbol/ticker (e.g., "PURR", "HYPE")
* `szDecimals` (number) — Size decimals for trade sizing precision
* `weiDecimals` (number) — Wei decimals for on-chain representation
* `index` (number) — Unique index identifier for the token
* `tokenId` (string) — Hexadecimal token identifier
* `isCanonical` (boolean) — Whether this is the canonical version of the token
* `evmContract` (object/null) — EVM contract details if bridged:
  * `address` (string) — Contract address on EVM chain
  * `evm_extra_wei_decimals` (number) — Additional decimal adjustment for EVM
* `fullName` (string/null) — Full descriptive name of the token
* `deployerTradingFeeShare` (string) — Fee share percentage for token deployer

### Market Context Structure

Each market context object contains:

* `prevDayPx` (string) — Previous day's closing price
* `dayNtlVlm` (string) — Daily notional volume in USDC
* `markPx` (string) — Current mark price
* `midPx` (string) — Current mid price from order book
* `circulatingSupply` (string) — Circulating token supply
* `coin` (string) — Trading pair identifier (e.g., "PURR/USDC", "@150")
* `totalSupply` (string) — Total token supply
* `dayBaseVlm` (string) — Daily base asset volume

### Trading Pair Notation

* **Named pairs** — Direct symbol notation (e.g., "PURR/USDC")
* **Index pairs** — Reference by index (e.g., "@150" for token index 150)
* **Base pair** — Most pairs trade against USDC as the quote currency

### Use Cases

**Token Discovery and Analysis**

* Browse all available spot tokens with complete metadata
* Analyze token specifications and decimal configurations
* Identify canonical vs non-canonical token versions

**Market Data Analysis**

* Monitor real-time prices and spreads across all spot pairs
* Track daily trading volumes and price movements
* Analyze supply metrics and market capitalization

**Integration and Development**

* Configure trading interfaces with proper decimal handling
* Implement token bridges using EVM contract information
* Build market scanners and analytics dashboards

**Portfolio Management**

* Track holdings across all spot assets
* Calculate portfolio values using current mark prices
* Monitor supply changes and dilution events

### Key Features

* **Complete market coverage** — All spot assets and trading pairs
* **Real-time data** — Current prices, volumes, and supply metrics
* **Technical specifications** — Decimal precision and contract details
* **Cross-chain support** — EVM contract information for bridged assets
* **Fee transparency** — Deployer fee shares for each token

### Notes

* Token indices provide a stable reference for programmatic access
* Mark prices may differ from mid prices during volatile market conditions
* Circulating supply may be less than total supply due to locked or vested tokens
* EVM contract details enable cross-chain asset tracking and arbitrage
* Daily volumes reset at UTC midnight
* Some tokens may have null full names or EVM contracts if not applicable

## Example request

<CodeGroup>
  ```shell Shell theme={"system"}
  curl -X POST \
    -H "Content-Type: application/json" \
    -d '{"type": "spotMetaAndAssetCtxs"}' \
    https://api.hyperliquid.xyz/info
  ```

  ```python Python (hyperliquid-python-sdk) theme={"system"}
  from hyperliquid.info import Info
  from hyperliquid.utils import constants

  # spotMetaAndAssetCtxs is a public Hyperliquid method, so use the public mainnet API
  info = Info(constants.MAINNET_API_URL, skip_ws=True)

  # Posts {"type": "spotMetaAndAssetCtxs"} to /info
  meta, asset_ctxs = info.spot_meta_and_asset_ctxs()

  print(meta["tokens"][0])
  print(asset_ctxs[0])
  ```

  ```typescript TypeScript (@nktkas/hyperliquid) theme={"system"}
  import { HttpTransport, InfoClient } from "@nktkas/hyperliquid";

  // spotMetaAndAssetCtxs is a public Hyperliquid method, so use the default public transport
  const transport = new HttpTransport();
  const info = new InfoClient({ transport });

  // Posts { type: "spotMetaAndAssetCtxs" } to /info
  const [meta, assetCtxs] = await info.spotMetaAndAssetCtxs();

  console.log(meta.tokens[0]);
  console.log(assetCtxs[0]);
  ```
</CodeGroup>


## OpenAPI

````yaml openapi/hyperliquid_node_api/hypercore_info/info_spot_meta_and_asset_ctxs.json post /info
openapi: 3.0.0
info:
  title: Hyperliquid Node API
  version: 1.0.0
  description: This is an API for interacting with Chainstack Hyperliquid node.
servers:
  - url: https://api.hyperliquid.xyz
security: []
paths:
  /info:
    post:
      tags:
        - hyperliquid operations
      summary: info (spotMetaAndAssetCtxs)
      description: >-
        Retrieve comprehensive spot market metadata and asset contexts,
        including token details, trading pairs, market prices, volumes, and
        circulating supply information for all spot assets on Hyperliquid.
      operationId: infoSpotMetaAndAssetCtxs
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - type
              properties:
                type:
                  type: string
                  default: spotMetaAndAssetCtxs
                  description: The request type for spot market metadata and asset contexts
              example:
                type: spotMetaAndAssetCtxs
      responses:
        '200':
          description: Successfully retrieved spot market metadata and asset contexts
          content:
            application/json:
              schema:
                type: array
                description: Array containing spot token metadata and market contexts
              example:
                - - name: PURR
                    szDecimals: 1
                    weiDecimals: 6
                    index: 0
                    tokenId: '0x00000000000000000000000000000000'
                    isCanonical: true
                    evmContract: null
                    fullName: Hypurrfun
                    deployerTradingFeeShare: '0.0'
                  - name: HYPE
                    szDecimals: 2
                    weiDecimals: 8
                    index: 150
                    tokenId: '0x0d01dc56dcaaca66ad901c959b4011ec'
                    isCanonical: false
                    evmContract: null
                    fullName: Hyperliquid
                    deployerTradingFeeShare: '0.0'
                - - prevDayPx: '0.15719'
                    dayNtlVlm: '3558163.5799899995'
                    markPx: '0.14967'
                    midPx: '0.14966'
                    circulatingSupply: '596449455.7842600346'
                    coin: PURR/USDC
                    totalSupply: '596449462.3070399761'
                    dayBaseVlm: '22964913.0'
                  - prevDayPx: '1.0011'
                    dayNtlVlm: '1607716.7693469997'
                    markPx: '1.0006'
                    midPx: '1.00065'
                    circulatingSupply: '99999929715.1255493164'
                    coin: '@150'
                    totalSupply: '99999929715.1255493164'
                    dayBaseVlm: '1606605.0899999994'

````