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

# Price Streaming

> gRPC endpoint for real-time asset price streaming.

Streaming is the real-time alternative to repeatedly polling the REST price endpoints. For a single price poll, use [Get Current Prices for All Supported Assets](/api-reference/assets/get-current-prices-for-all-supported-assets) or [Get Current Price for an Asset](/api-reference/assets/get-current-price-for-an-asset).

<Note>
  To generate a typed client for this endpoint, see [Protobuf Schema & Code Generation](/api-reference/protobuf-schema).
</Note>

## Authentication

All requests must include your API key in the `x-api-key` metadata header.

## Request

**Endpoint:** `grpc.gm.ondo.finance:443`

**RPC:** `ondo.gm.backend.v1.BackendService/StreamPriceUpdates`

<ParamField body="symbols" type="string[]">
  Asset symbols to subscribe to. If empty, you will receive updates for all assets.
</ParamField>

## Response

A server stream of messages. Each message batches one or more price updates into a single `updates` array.

<ResponseField name="updates" type="PriceUpdate[]">
  Array of price updates.

  <Expandable title="PriceUpdate">
    <ResponseField name="ticker" type="string">
      Stock ticker.
    </ResponseField>

    <ResponseField name="symbol" type="string">
      Asset symbol.
    </ResponseField>

    <ResponseField name="stock_price" type="string">
      Underlying stock price.
    </ResponseField>

    <ResponseField name="token_price" type="string">
      Token price.
    </ResponseField>

    <ResponseField name="timestamp" type="uint64">
      Unix timestamp of the price update (in nanoseconds).
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash grpcurl theme={null}
  grpcurl \
    -H "x-api-key: <YOUR_API_KEY>" \
    -d '{"symbols": ["AAPLon", "GOOGLon"]}' \
    grpc.gm.ondo.finance:443 \
    ondo.gm.backend.v1.BackendService/StreamPriceUpdates
  ```
</RequestExample>

<ResponseExample>
  ```json Streamed theme={null}
  {
    "updates": [
      {
        "ticker": "GOOGL",
        "symbol": "GOOGLon",
        "stock_price": "304.915",
        "token_price": "305.39957516982939159",
        "timestamp": "1773350214478735649"
      },
      {
        "ticker": "AAPL",
        "symbol": "AAPLon",
        "stock_price": "256.2475",
        "token_price": "256.791808070580506978",
        "timestamp": "1773350214476688119"
      }
    ]
  }
  ```
</ResponseExample>
