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

# Get Polymarket Raw Orderbook Deltas

> Retrieve raw orderbook delta data for a Polymarket market. Each row represents either a single orderbook change event (delta) or a full orderbook snapshot, identified by the `payload_type` field.

## What you get
- For deltas: price, size delta, and side of the change
- For snapshots: full bid and ask price/size arrays
- Outcome label resolved from the token ID
- Server and ingest timestamps

## Use cases
- Reconstruct full orderbook history tick-by-tick
- Analyze order flow and liquidity dynamics
- Build high-frequency trading signals
- Study market microstructure

## Example

- Request: `GET /api/v1/poly/0xb09a659b55f0eab385d75ef14d180e9a6b2f02290a427504e38bf803e35d25d6/raw_deltas?limit=10`
- Header: `X-API-Key: YOUR_API_KEY`



## OpenAPI

````yaml /openapi.json get /api/v1/poly/{poly_id}/raw_deltas
openapi: 3.0.3
info:
  title: Delphi Markets API
  description: >-
    Welcome to Delphi Markets API


    The Delphi Markets API provides unified access to prediction market data
    from **Kalshi (KLSI)** and **Polymarket (POLY)** exchanges.


    Quick Start:


    1. **Get a test API key** - Click on `POST /api/v1/test-key` below and hit
    'Try it'

    2. **Copy your key** - Save the `api_key` from the response

    3. **Authorize** - Click 'Authorize' in the sidebar and paste your key

    4. **Start exploring** - Try any endpoint!


    What You Can Build:


    - **Trading Bots**: Access real-time orderbook data and trade history

    - **Market Analytics**: Analyze market movements, spreads, and liquidity

    - **Research Tools**: Search and filter across thousands of prediction
    markets

    - **Price Feeds**: Get live pricing data for any market


    ---


    Authentication:


    All API requests require an API key passed in the `X-API-Key` header:


    Example request: GET `/api/v1/klsi/markets`

    Header: X-API-Key: dphi_live_your_key_here


    Getting an API Key:


    | Type | Duration | Rate Limit | How to Get |

    |------|----------|------------|------------|

    | Test Key | 10 minutes | 60 req/min | `POST /api/v1/test-key` |

    | Production Key | Permanent | 300 req/min | Contact us |


    ---


    Rate Limits:


    Requests are rate-limited per API key:


    - **Test keys**: 60 requests per minute

    - **Production keys**: 300 requests per minute


    When you exceed the limit, you'll receive a `429 Too Many Requests`
    response. Wait and retry.


    ---


    Error Codes:


    | Code | Meaning |

    |------|---------------|

    | 400 | Bad Request - Invalid parameters |

    | 401 | Unauthorized - Missing or invalid API key |

    | 404 | Not Found - Resource doesn't exist |

    | 429 | Too Many Requests - Rate limit exceeded |

    | 500 | Server Error - Something went wrong |


    All errors return JSON with an `error` field:


    {"error": "invalid api key format"}


    ---


    Support:


    For production API keys or support, visit
    [delphimarkets.com](delphimarkets.com).
  version: 1.0.0
  contact:
    name: Delphi Markets
    url: https://delphimarkets.com
  x-logo:
    url: https://delphimarkets.com/logo.png
servers:
  - url: https://api.delphiterminal.co
    description: Delphi Markets API
security:
  - ApiKeyAuth: []
tags:
  - name: Getting Started
    description: >-
      Start here to get a test API key and begin experimenting with the API.
      Test keys are valid for 10 minutes.
  - name: Health
    description: Health check endpoint to verify the API is operational.
  - name: Auth
    description: >-
      User authentication endpoints for creating accounts and managing sessions.
      Note: These are separate from API key authentication.
  - name: Search
    description: >-
      Search across all markets and events. Includes autocomplete suggestions
      for building search interfaces.
  - name: Delphi
    description: >-
      Cross-exchange market matching via Delphi IDs. Look up cluster metadata
      and find equivalent markets across all supported exchanges.
  - name: Clusters
    description: >-
      Cross-exchange market matching. Markets asking the same question across
      Kalshi, Polymarket, Limitless, and PFun are grouped into clusters. Use
      these endpoints to discover equivalent markets for arbitrage, hedging, and
      cross-exchange analytics.
  - name: KLSI
    description: >-
      Access Kalshi (KLSI) prediction market data including market details,
      orderbooks, trade history, and analytics. Kalshi is a US-regulated
      prediction market exchange.
  - name: Polymarket
    description: >-
      Access Polymarket (POLY) prediction market data including market details,
      orderbooks, and trade history. Polymarket is a decentralized prediction
      market platform.
  - name: Limitless
    description: >-
      Access Limitless exchange prediction market data including orderbooks.
      Limitless is a prediction market platform.
  - name: Predict.fun
    description: >-
      Access Predict.fun exchange prediction market data including price
      history.
  - name: Opinion Labs
    description: >-
      Access Opinion Labs prediction market data including market details,
      orderbooks, price history, and trade history.
  - name: Gemini
    description: >-
      Access Gemini prediction market data including market details, orderbooks,
      price history, and trade history.
  - name: Manifold
    description: >-
      Access Manifold prediction market data including market details,
      orderbooks, price history, and trade history.
  - name: ForecastEx
    description: >-
      Access ForecastEx prediction market data including market details and
      trade history.
  - name: PredictIt
    description: >-
      Access PredictIt prediction market data including market details and price
      history.
  - name: Events
    description: >-
      Events group related markets together. Use these endpoints to browse
      events by category or find all markets within an event.
  - name: Candles
    description: >-
      OHLCV (Open, High, Low, Close, Volume) candle data across exchanges.
      Supports multiple time intervals: 1s, 1m, 5m, 10m, 1h, 1d. Currently
      available for Kalshi (KLSI) with more exchanges coming soon.
  - name: Advanced Analytics
    description: >-
      Advanced orderbook analytics and price data. These endpoints provide
      deeper market insights including historical spreads, liquidity metrics,
      and best quote time series.
  - name: Trading
    description: >-
      Place, query, and cancel orders across all supported prediction-market
      exchanges (Polymarket, Kalshi, Opinion Labs, Gemini, Limitless,
      Predict.fun).


      **Important — client-side signing required for on-chain exchanges.**
      Polymarket, Opinion Labs, Limitless, and Predict.fun use EIP-712 signed
      orders. The signature must be produced on your machine using your private
      key — the Delphi server never has access to it. Use the
      `@delphimarkets/sdk` `build*Order()` helpers to construct a valid
      `signed_order` payload. Raw HTTP calls to `POST /orders` will be rejected
      by the exchange unless `signed_order` contains a valid signature.
  - name: Credentials
    description: >-
      Register and inspect your stored exchange credentials. Each user has at
      most one credential set per exchange. Credentials are encrypted at rest
      and used by the server when forwarding orders to centralized exchanges
      (Kalshi, Gemini) or for credential-derivation flows (Polymarket).
  - name: Polymarket Onboarding
    description: >-
      One-time helpers for Polymarket: derive CLOB HMAC credentials from an EOA
      private key, verify stored credentials are still valid, and look up the
      Gnosis Safe (proxy) address for an EOA. Use these once per user before
      placing your first Polymarket order.
paths:
  /api/v1/poly/{poly_id}/raw_deltas:
    get:
      tags:
        - Polymarket
      summary: Get Polymarket Raw Orderbook Deltas
      description: >-
        Retrieve raw orderbook delta data for a Polymarket market. Each row
        represents either a single orderbook change event (delta) or a full
        orderbook snapshot, identified by the `payload_type` field.


        ## What you get

        - For deltas: price, size delta, and side of the change

        - For snapshots: full bid and ask price/size arrays

        - Outcome label resolved from the token ID

        - Server and ingest timestamps


        ## Use cases

        - Reconstruct full orderbook history tick-by-tick

        - Analyze order flow and liquidity dynamics

        - Build high-frequency trading signals

        - Study market microstructure


        ## Example


        - Request: `GET
        /api/v1/poly/0xb09a659b55f0eab385d75ef14d180e9a6b2f02290a427504e38bf803e35d25d6/raw_deltas?limit=10`

        - Header: `X-API-Key: YOUR_API_KEY`
      parameters:
        - name: poly_id
          in: path
          required: true
          schema:
            type: string
          description: Polymarket condition ID
          example: '0xb09a659b55f0eab385d75ef14d180e9a6b2f02290a427504e38bf803e35d25d6'
        - $ref: '#/components/parameters/limit'
      responses:
        '200':
          description: Raw orderbook delta data
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RawDeltaPoly'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  parameters:
    limit:
      name: limit
      in: query
      required: false
      schema:
        type: integer
        default: 10
      description: >-
        Maximum number of rows to return (default: 10 in docs, max: 10000). Use
        a higher limit in your code.
  schemas:
    RawDeltaPoly:
      type: object
      description: >-
        Raw orderbook delta or snapshot from Polymarket. The payload_type field
        indicates whether this is a delta (single change) or a snapshot (full
        orderbook state).
      properties:
        venue:
          type: string
          description: Venue identifier
        venue_token_id:
          type: string
          description: Venue-specific token identifier
        venue_market_id:
          type: string
          description: Venue-specific market identifier (condition_id)
        outcome:
          type: string
          description: Outcome label for this token (e.g., Yes, No, or a named outcome)
        server_time:
          type: integer
          format: int64
          description: Server timestamp (nanoseconds)
        ingest_time:
          type: integer
          format: int64
          description: Ingest timestamp (nanoseconds)
        payload_type:
          type: string
          description: 'Type of payload: delta (single change) or snapshot (full state)'
        delta_price:
          type: number
          nullable: true
          description: Price level of the delta (null for snapshots)
        delta_delta:
          type: number
          nullable: true
          description: Size change at this price level (null for snapshots)
        delta_side:
          type: string
          nullable: true
          description: 'Side of the delta: bid or ask (null for snapshots)'
        snapshot_bid_prices:
          type: array
          items:
            type: number
          description: Bid price levels (for snapshots)
        snapshot_bid_sizes:
          type: array
          items:
            type: number
          description: Bid sizes at each price level (for snapshots)
        snapshot_ask_prices:
          type: array
          items:
            type: number
          description: Ask price levels (for snapshots)
        snapshot_ask_sizes:
          type: array
          items:
            type: number
          description: Ask sizes at each price level (for snapshots)
    Error:
      type: object
      properties:
        error:
          type: string
  responses:
    NotFound:
      description: Not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: Your API key (get one from the test-key endpoint above)

````