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

# Open Orders Stream

> Your open orders and incremental updates.

This stream is available on the `optionsOpenOrders` subscription. It provides your open orders.

#### Snapshot vs. Delta

The `emitOptionsOpenOrders` request returns a snapshot via `optionsOpenOrders`. Once subscribed, `optionsOpenOrdersDelta` messages carry incremental changes — each order includes a `kind` field: `add` for a new open order, `drop` when the order is no longer open (filled or cancelled).


## AsyncAPI

````yaml latest/options/asyncapi/options-ws.yaml openOrdersStream
id: openOrdersStream
title: Open Orders Stream
description: >-
  Available on the `optionsOpenOrders` subscription. Your open orders and
  incremental updates.
servers:
  - id: sandbox
    protocol: wss
    host: ws.sandbox.rails.xyz
    bindings: []
    variables: []
address: >-
  ?product=options&market={market}&expiration={expiration}&strike={strike}&type={type}&subscriptions=optionsOpenOrders
parameters:
  - id: market
    jsonSchema:
      type: string
      description: A specific market (e.g. `BTC-USDT`) or `ALL`.
      default: BTC-USDT
    description: A specific market (e.g. `BTC-USDT`) or `ALL`.
    type: string
    required: true
    deprecated: false
  - id: expiration
    jsonSchema:
      type: string
      description: >-
        Contract expiration, e.g. `24JUN26`. Requires `market`; omit to match
        every expiration.
      default: 24JUN26
    description: >-
      Contract expiration, e.g. `24JUN26`. Requires `market`; omit to match
      every expiration.
    type: string
    required: true
    deprecated: false
  - id: strike
    jsonSchema:
      type: string
      description: >-
        Strike price, e.g. `62000`. Requires `expiration`; omit to match every
        strike.
      default: '62000'
    description: >-
      Strike price, e.g. `62000`. Requires `expiration`; omit to match every
      strike.
    type: string
    required: true
    deprecated: false
  - id: type
    jsonSchema:
      type: string
      description: '`C` (call) or `P` (put). Requires `strike`; omit to match both.'
      default: C
    description: '`C` (call) or `P` (put). Requires `strike`; omit to match both.'
    type: string
    required: true
    deprecated: false
bindings: []
operations:
  - &ref_2
    id: emitOptionsOpenOrders
    title: Emit options open orders
    description: Request a snapshot of your open orders.
    type: receive
    messages:
      - &ref_5
        id: emitOptionsOpenOrdersRequest
        contentType: application/json
        payload:
          - name: Emit Options Open Orders
            type: object
            properties:
              - name: message
                type: string
                description: Always `emitOptionsOpenOrders`.
                required: true
              - name: content
                type: object
                required: false
                properties:
                  - name: clientRequestId
                    type: string
                    description: Client-generated UUID for correlation
                    required: false
                  - name: market
                    type: string
                    description: A contract name to filter, or `ALL` for every market
                    required: false
                  - name: pageSize
                    type: integer
                    description: Page size for paginated results
                    required: false
                  - name: pageToken
                    type: string
                    description: Cursor for the next page
                    required: false
        headers: []
        jsonPayloadSchema:
          type: object
          properties:
            message:
              type: string
              description: Always `emitOptionsOpenOrders`.
              x-parser-schema-id: <anonymous-schema-400>
            content:
              type: object
              properties:
                clientRequestId:
                  type: string
                  format: uuid
                  description: Client-generated UUID for correlation
                  x-parser-schema-id: <anonymous-schema-402>
                market:
                  type: string
                  description: A contract name to filter, or `ALL` for every market
                  x-parser-schema-id: <anonymous-schema-403>
                pageSize:
                  type: integer
                  description: Page size for paginated results
                  x-parser-schema-id: <anonymous-schema-404>
                pageToken:
                  type: string
                  description: Cursor for the next page
                  x-parser-schema-id: <anonymous-schema-405>
              x-parser-schema-id: <anonymous-schema-401>
          required:
            - message
          x-parser-schema-id: <anonymous-schema-399>
        title: Emit Options Open Orders
        example: |-
          {
            "message": "emitOptionsOpenOrders",
            "content": {
              "clientRequestId": "90b20400-0c28-4f03-b2e4-d19e881ece31",
              "market": "BTC-10JUL26-55000-C"
            }
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: emitOptionsOpenOrdersRequest
    bindings: []
    extensions: &ref_0
      - id: x-parser-unique-object-id
        value: openOrdersStream
  - &ref_3
    id: optionsOpenOrdersSnapshot
    title: Options open orders snapshot
    description: Response to `emitOptionsOpenOrders`.
    type: send
    messages:
      - &ref_6
        id: optionsOpenOrdersResponse
        contentType: application/json
        payload:
          - name: Open Orders Snapshot
            description: Response to `emitOptionsOpenOrders`.
            type: object
            properties:
              - name: resultType
                type: string
                description: Always `optionsOpenOrders`.
                required: true
              - name: market
                type: string
                description: Contract name, or `ALL`
                required: true
              - name: data
                type: object
                required: true
                properties:
                  - name: orders
                    type: array
                    description: Your open orders
                    required: true
                    properties:
                      - name: orderId
                        type: string
                        description: Order identifier
                        required: true
                      - name: contract
                        type: string
                        description: Contract name
                        required: true
                      - name: side
                        type: string
                        description: Order side
                        enumValues:
                          - buy
                          - sell
                        required: true
                      - name: type
                        type: string
                        description: Order type
                        enumValues:
                          - limit
                          - market
                        required: true
                      - name: initiatorType
                        type: string
                        description: Who created the order, e.g. `user`
                        required: true
                      - name: price
                        type: string
                        description: Order price
                        required: true
                      - name: quantity
                        type: string
                        description: Order quantity
                        required: true
                      - name: filledQuantity
                        type: string
                        description: Quantity filled so far
                        required: true
                      - name: avgFillPrice
                        type: string
                        description: >-
                          Volume-weighted average fill price; `0` while nothing
                          has filled
                        required: true
                      - name: leverage
                        type: string
                        description: Leverage — always `0` for options
                        required: true
                      - name: reduceOnly
                        type: boolean
                        description: Reduce-only flag
                        required: true
                      - name: postOnly
                        type: boolean
                        description: Maker-only flag
                        required: true
                      - name: createdAt
                        type: integer
                        description: Creation time (ms since epoch)
                        required: true
                      - name: updatedAt
                        type: integer
                        description: Last update time (ms since epoch)
                        required: true
                  - name: statusCode
                    type: integer
                    description: Always `200`.
                    required: true
                  - name: clientRequestId
                    type: string
                    description: Client-generated UUID for correlation
                    required: false
        headers: []
        jsonPayloadSchema:
          type: object
          properties:
            resultType:
              type: string
              description: Always `optionsOpenOrders`.
              x-parser-schema-id: <anonymous-schema-407>
            market:
              type: string
              description: Contract name, or `ALL`
              x-parser-schema-id: <anonymous-schema-408>
            data:
              type: object
              properties:
                orders:
                  type: array
                  description: Your open orders
                  items: &ref_1
                    type: object
                    properties:
                      orderId:
                        type: string
                        description: Order identifier
                        x-parser-schema-id: <anonymous-schema-411>
                      contract:
                        type: string
                        description: Contract name
                        x-parser-schema-id: <anonymous-schema-412>
                      side:
                        type: string
                        enum:
                          - buy
                          - sell
                        description: Order side
                        x-parser-schema-id: <anonymous-schema-413>
                      type:
                        type: string
                        enum:
                          - limit
                          - market
                        description: Order type
                        x-parser-schema-id: <anonymous-schema-414>
                      initiatorType:
                        type: string
                        description: Who created the order, e.g. `user`
                        x-parser-schema-id: <anonymous-schema-415>
                      price:
                        type: string
                        description: Order price
                        x-parser-schema-id: <anonymous-schema-416>
                      quantity:
                        type: string
                        description: Order quantity
                        x-parser-schema-id: <anonymous-schema-417>
                      filledQuantity:
                        type: string
                        description: Quantity filled so far
                        x-parser-schema-id: <anonymous-schema-418>
                      avgFillPrice:
                        type: string
                        description: >-
                          Volume-weighted average fill price; `0` while nothing
                          has filled
                        x-parser-schema-id: <anonymous-schema-419>
                      leverage:
                        type: string
                        description: Leverage — always `0` for options
                        x-parser-schema-id: <anonymous-schema-420>
                      reduceOnly:
                        type: boolean
                        description: Reduce-only flag
                        x-parser-schema-id: <anonymous-schema-421>
                      postOnly:
                        type: boolean
                        description: Maker-only flag
                        x-parser-schema-id: <anonymous-schema-422>
                      createdAt:
                        type: integer
                        description: Creation time (ms since epoch)
                        x-parser-schema-id: <anonymous-schema-423>
                      updatedAt:
                        type: integer
                        description: Last update time (ms since epoch)
                        x-parser-schema-id: <anonymous-schema-424>
                    required:
                      - orderId
                      - contract
                      - side
                      - type
                      - initiatorType
                      - price
                      - quantity
                      - filledQuantity
                      - avgFillPrice
                      - leverage
                      - reduceOnly
                      - postOnly
                      - createdAt
                      - updatedAt
                    x-parser-schema-id: OpenOrder
                  x-parser-schema-id: <anonymous-schema-410>
                statusCode:
                  type: integer
                  description: Always `200`.
                  x-parser-schema-id: <anonymous-schema-425>
                clientRequestId:
                  type: string
                  description: Client-generated UUID for correlation
                  x-parser-schema-id: <anonymous-schema-426>
              required:
                - orders
                - statusCode
              x-parser-schema-id: <anonymous-schema-409>
          required:
            - resultType
            - market
            - data
          x-parser-schema-id: <anonymous-schema-406>
        title: Open Orders Snapshot
        description: Response to `emitOptionsOpenOrders`.
        example: |-
          {
            "resultType": "optionsOpenOrders",
            "market": "BTC-10JUL26-55000-C",
            "data": {
              "orders": [
                {
                  "orderId": "01KWKXG9J8RNYDKXCWYZPBEW4C",
                  "contract": "BTC-10JUL26-55000-C",
                  "side": "buy",
                  "type": "limit",
                  "initiatorType": "user",
                  "price": "6700",
                  "quantity": "1",
                  "filledQuantity": "0",
                  "avgFillPrice": "0",
                  "leverage": "0",
                  "reduceOnly": false,
                  "postOnly": false,
                  "createdAt": 1783079904841,
                  "updatedAt": 1783079904841
                }
              ],
              "statusCode": 200,
              "clientRequestId": "90b20400-0c28-4f03-b2e4-d19e881ece31"
            }
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: optionsOpenOrdersResponse
    bindings: []
    extensions: *ref_0
  - &ref_4
    id: optionsOpenOrdersUpdate
    title: Options open orders update
    description: Pushed whenever an order is added to or drops from your open orders.
    type: send
    messages:
      - &ref_7
        id: optionsOpenOrdersDelta
        contentType: application/json
        payload:
          - name: Open Order Delta
            description: Pushed when an order is added to or drops from your open orders.
            type: object
            properties:
              - name: resultType
                type: string
                description: Always `optionsOpenOrdersDelta`.
                required: true
              - name: market
                type: string
                description: Contract name
                required: true
              - name: data
                type: object
                required: true
                properties:
                  - name: orders
                    type: array
                    description: Incremental changes to your open orders
                    required: true
                    properties:
                      - name: item
                        type: object
                        required: false
                        properties:
                          - name: orderId
                            type: string
                            description: Order identifier
                            required: true
                          - name: contract
                            type: string
                            description: Contract name
                            required: true
                          - name: side
                            type: string
                            description: Order side
                            enumValues:
                              - buy
                              - sell
                            required: true
                          - name: type
                            type: string
                            description: Order type
                            enumValues:
                              - limit
                              - market
                            required: true
                          - name: initiatorType
                            type: string
                            description: Who created the order, e.g. `user`
                            required: true
                          - name: price
                            type: string
                            description: Order price
                            required: true
                          - name: quantity
                            type: string
                            description: Order quantity
                            required: true
                          - name: filledQuantity
                            type: string
                            description: Quantity filled so far
                            required: true
                          - name: avgFillPrice
                            type: string
                            description: >-
                              Volume-weighted average fill price; `0` while
                              nothing has filled
                            required: true
                          - name: leverage
                            type: string
                            description: Leverage — always `0` for options
                            required: true
                          - name: reduceOnly
                            type: boolean
                            description: Reduce-only flag
                            required: true
                          - name: postOnly
                            type: boolean
                            description: Maker-only flag
                            required: true
                          - name: createdAt
                            type: integer
                            description: Creation time (ms since epoch)
                            required: true
                          - name: updatedAt
                            type: integer
                            description: Last update time (ms since epoch)
                            required: true
                          - name: kind
                            type: string
                            description: >-
                              `add` for a new open order, `drop` when the order
                              is no longer open (filled or cancelled)
                            enumValues:
                              - add
                              - drop
                            required: true
                  - name: statusCode
                    type: integer
                    description: Always `200`.
                    required: true
        headers: []
        jsonPayloadSchema:
          type: object
          properties:
            resultType:
              type: string
              description: Always `optionsOpenOrdersDelta`.
              x-parser-schema-id: <anonymous-schema-428>
            market:
              type: string
              description: Contract name
              x-parser-schema-id: <anonymous-schema-429>
            data:
              type: object
              properties:
                orders:
                  type: array
                  description: Incremental changes to your open orders
                  items:
                    allOf:
                      - *ref_1
                      - type: object
                        properties:
                          kind:
                            type: string
                            enum:
                              - add
                              - drop
                            description: >-
                              `add` for a new open order, `drop` when the order
                              is no longer open (filled or cancelled)
                            x-parser-schema-id: <anonymous-schema-433>
                        required:
                          - kind
                        x-parser-schema-id: <anonymous-schema-432>
                    x-parser-schema-id: OpenOrderDeltaEntry
                  x-parser-schema-id: <anonymous-schema-431>
                statusCode:
                  type: integer
                  description: Always `200`.
                  x-parser-schema-id: <anonymous-schema-434>
              required:
                - orders
                - statusCode
              x-parser-schema-id: <anonymous-schema-430>
          required:
            - resultType
            - market
            - data
          x-parser-schema-id: <anonymous-schema-427>
        title: Open Order Delta
        description: Pushed when an order is added to or drops from your open orders.
        example: |-
          {
            "resultType": "optionsOpenOrdersDelta",
            "market": "BTC-10JUL26-55000-C",
            "data": {
              "orders": [
                {
                  "orderId": "01KWKXG9J8RNYDKXCWYZPBEW4C",
                  "contract": "BTC-10JUL26-55000-C",
                  "side": "buy",
                  "type": "limit",
                  "initiatorType": "user",
                  "price": "6700",
                  "quantity": "1",
                  "filledQuantity": "1",
                  "avgFillPrice": "6700",
                  "leverage": "0",
                  "reduceOnly": false,
                  "postOnly": false,
                  "createdAt": 1783079904841,
                  "updatedAt": 1783079950000,
                  "kind": "drop"
                }
              ],
              "statusCode": 200
            }
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: optionsOpenOrdersDelta
    bindings: []
    extensions: *ref_0
sendOperations:
  - *ref_2
receiveOperations:
  - *ref_3
  - *ref_4
sendMessages:
  - *ref_5
receiveMessages:
  - *ref_6
  - *ref_7
extensions:
  - id: x-parser-unique-object-id
    value: openOrdersStream
securitySchemes:
  - id: wsAuth
    name: Sec-WebSocket-Protocol
    type: httpApiKey
    description: Supply as `authorization#<JWT>` during the WebSocket handshake.
    in: header
    extensions: []

````