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

# Stream real-time prices for an asset (Removed)

> **Removed. Always returns `410 Gone`. Use [`GET /sse/prices`](#operation/streamSingleAssetPrice) with `method=token_price` instead.**




## OpenAPI

````yaml /streaming/api-streaming.yml get /stream
openapi: 3.1.0
info:
  title: DexPaprika Streaming API
  version: 1.0.1
  license:
    name: UNLICENSED
    identifier: UNLICENSED
  description: >
    The DexPaprika Streaming API delivers real-time updates for token prices,
    swap transactions,

    pool reserves and token candles over Server-Sent Events (SSE).


    ## Access


    GET /sse/ohlcv requires a paid plan (Dev, Pro or Enterprise) and an API key
    in the `Authorization` header, on `https://streaming-pro.dexpaprika.com`.


    ## Rate Limits


    - **Concurrent SSE streams per IP:** 10. Excess returns `429` with
    `{"message": "ip stream limit exceeded"}`.

    - **Assets per `POST /sse/prices`:** 25. Excess returns `400` with
    `{"message": "too many assets, max 25 allowed"}`.

    - **Request body on `POST /sse/prices`:** 256 KB. Excess returns `413
    Payload Too Large`.

    - **Request rate (per IP x path x method):** 60 req / 60 s. Excess returns
    `429` with `{"message": "you have reached maximum request limit"}`.


    ## HTTP Response Codes


    - `200`, SSE connection established.

    - `400`, Invalid request (bad params, unknown chain, unknown asset, or asset
    cap exceeded).

    - `403`, paid endpoint called without a paid-plan key, or a keyless request
    for an asset outside the showcase list (`preview_only`).

    - `413`, Request body exceeds the route limit.

    - `429`, Per-IP stream limit, per-route rate limit, or global stream slot
    pool exhausted.

    - `503`, Service saturated (concurrent in-flight cap reached).


    ## SSE Event Format


    Events conform to the W3C SSE specification. Non-system events on
    multiplexed streams include

    an optional `request_id` line for correlating events to subscriptions:


    ```

    event: [event_name]

    request_id: [request_id]

    data: [json_payload]

    ```


    ## Event Types


    - `token_price` (`PriceResponse`), Real-time price update.

    - `token_ohlcv` (`OHLCVResponse`), Real-time token candle update for paid
    plans

    - `ping` (`PingEvent`), Heartbeat sent every 15 s. Treat absence for >30 s
    as a potential connection problem.

    - `warning` (`WarningEvent`), Non-fatal notice (e.g. partial subscription
    accepted).

    - `error` (`ErrorEvent`), Terminal stream-level error sent before connection
    close.


    ## Error Message Catalog


    400 errors:

    - `at least one asset is required`

    - `invalid method`

    - `unsupported chain`

    - `asset not found`

    - `too many assets, max 25 allowed`


    429 errors:

    - `ip stream limit exceeded`

    - `Cannot create new subscriptions, global stream limit exceeded`

    - `you have reached maximum request limit`


    503 errors:

    - `Too many concurrent requests`


    ## Removed endpoints


    The legacy `/stream` path has been removed and returns `410 Gone`; use
    `/sse/prices` instead.
servers:
  - url: https://streaming.dexpaprika.com
    description: Keyless and free-key streaming
  - url: https://streaming-pro.dexpaprika.com
    description: Paid plans (Dev, Pro, Enterprise), key required
security: []
paths:
  /stream:
    get:
      summary: Stream real-time prices for an asset (Removed)
      description: >
        **Removed. Always returns `410 Gone`. Use [`GET
        /sse/prices`](#operation/streamSingleAssetPrice) with
        `method=token_price` instead.**
      operationId: streamSingleAssetPriceLegacy
      responses:
        '410':
          description: Endpoint removed; the body points at the replacement.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoneResponse'
      deprecated: true
components:
  schemas:
    GoneResponse:
      type: object
      description: Returned with HTTP 410 by removed endpoints.
      properties:
        code:
          type: integer
          example: 410
        message:
          type: string
          example: endpoint removed
        replacement:
          type: string
          description: Endpoint that supersedes the removed one.
          example: /sse/prices
        documentation:
          type: string
          description: Docs page for the replacement endpoint.
          example: >-
            https://streaming.dexpaprika.com/docs/#operation/streamSingleAssetPrice

````