---
title: "GET /private/get_open_orders_by_label"
method: GET
path: "/private/get_open_orders_by_label"
tags: ["Trading", "Private"]
---

# GET /private/get_open_orders_by_label

`GET /private/get_open_orders_by_label`

Retrieves a list of all open orders that have a specific label within a given currency. This is useful for tracking and managing groups of related orders that share the same label.

Open orders are orders that have been placed but not yet filled or cancelled. The label helps organize and identify related orders.

**Scope:** `trade:read`

[Try in API console](https://test.deribit.com/api_console?method=%2Fprivate%2Fget_open_orders_by_label)

## Query parameters

- `currency` 'BTC' | 'ETH' | 'USDC' | 'USDT' | 'EURR', required — Currency, i.e `"BTC"`, `"ETH"`, `"USDC"`
- `label` string, required

## Response `200`

Success response

- PrivateGetOpenOrdersResponse
  - `jsonrpc` '2.0', required — The JSON-RPC version (2.0)
  - `id` integer — The id that was sent in the request
  - `result` Order[], required
    - `order_id` string, required — Unique order identifier
    - `starbase_order_id` integer — Raw Starbase order id, in Starbase's own (non currency-prefixed) id namespace. Only present for orders matched on Starbase.
    - `order_state` 'open' | 'filled' | 'rejected' | 'cancelled' | 'untriggered' | 'triggered', required — Order state: `"open"`, `"filled"`, `"rejected"`, `"cancelled"`, `"untriggered"`
    - `order_type` 'market' | 'limit' | 'stop_market' | 'stop_limit' | 'take_market' | 'take_limit' | 'trailing_stop', required — Order type: `"limit"`, `"market"`, `"stop_limit"`, `"stop_market"`, `"take_limit"`, `"take_market"`, `"trailing_stop"`
    - `original_order_type` 'market' | 'market_limit' — Original order type. Optional field
    - `time_in_force` 'good_til_cancelled' | 'good_til_day' | 'fill_or_kill' | 'immediate_or_cancel', required — Order time in force: `"good_til_cancelled"`, `"good_til_day"`, `"fill_or_kill"` or `"immediate_or_cancel"`
    - `is_rebalance` boolean — Optional (only for spot). `true` if order was automatically created during cross-collateral balance restoration
    - `is_liquidation` boolean — Optional (not added for spot). `true` if order was automatically created during liquidation
    - `instrument_name` string, required — Unique instrument identifier
    - `creation_timestamp` integer, required — The timestamp (milliseconds since the Unix epoch)
    - `last_update_timestamp` integer, required — The timestamp (milliseconds since the Unix epoch)
    - `starbase_last_update_timestamp` integer — The Starbase causal timestamp (nanoseconds since the Unix epoch) of the last book update that affected this order. Present only for orders placed in Starbase; not always available for direct access orders
    - `direction` 'buy' | 'sell', required — Direction: `buy`, or `sell`
    - `price` union, required — Price in base currency or "market_price" in case of open trigger market orders
      - number
      - 'market_price'
    - `label` string, required — User defined label (up to 64 characters)
    - `post_only` boolean, required — `true` for post-only orders only
    - `reject_post_only` boolean — `true` if order has `reject_post_only` flag (field is present only when `post_only` is `true`)
    - `reduce_only` boolean — Optional (not added for spot). '`true` for reduce-only orders only'
    - `api` boolean, required — `true` if created with API
    - `web` boolean — `true` if created via Deribit frontend (optional)
    - `mobile` boolean — Optional field with value `true` added only when created with Mobile Application
    - `refresh_amount` number — The initial display amount of iceberg order. Iceberg order display amount will be refreshed to that value after match consuming actual display amount. Absent for other types of orders
    - `display_amount` number — The actual display amount of iceberg order. Absent for other types of orders.
    - `amount` number — It represents the requested order size. For perpetual and inverse futures the amount is in USD units. For options and linear futures it is the underlying base currency coin.
    - `contracts` number — It represents the order size in contract units. (Optional, may be absent in historical data).
    - `filled_amount` number — Filled amount of the order. For perpetual and futures the filled_amount is in USD units, for options - in units or corresponding cryptocurrency contracts, e.g., BTC or ETH.
    - `average_price` number — Average fill price of the order
    - `advanced` 'usd' | 'implv' — advanced type: `"usd"` or `"implv"` (Only for options; field is omitted if not applicable).
    - `implv` number — Implied volatility in percent. (Only if `advanced="implv"`)
    - `usd` number — Option price in USD (Only if `advanced="usd"`)
    - `triggered` boolean — Whether the trigger order has been triggered
    - `trigger` 'index_price' | 'mark_price' | 'last_price' — Trigger type (only for trigger orders). Allowed values: `"index_price"`, `"mark_price"`, `"last_price"`.
    - `trigger_price` number — Trigger price (Only for future trigger orders)
    - `trigger_offset` number — The maximum deviation from the price peak beyond which the order will be triggered (Only for trailing trigger orders)
    - `trigger_reference_price` number — The price of the given trigger at the time when the order was placed (Only for trailing trigger orders)
    - `block_trade` boolean — `true` if order made from block_trade trade, added only in that case.
    - `mmp` boolean — `true` if the order is a MMP order, otherwise `false`.
    - `risk_reducing` boolean — `true` if the order is marked by the platform as a risk reducing order (can apply only to orders placed by PM users), otherwise `false`.
    - `replaced` boolean — `true` if the order was edited (by user or - in case of advanced options orders - by pricing engine), otherwise `false`.
    - `auto_replaced` boolean — Options, advanced orders only - `true` if last modification of the order was performed by the pricing engine, otherwise `false`.
    - `quote` boolean — If order is a quote. Present only if true.
    - `mmp_group` string — Name of the MMP group supplied in the `private/mass_quote` request. Only present for quote orders.
    - `quote_set_id` string — Identifier of the QuoteSet supplied in the `private/mass_quote` request. Only present for quote orders.
    - `quote_id` string — The same QuoteID as supplied in the `private/mass_quote` request. Only present for quote orders.
    - `trigger_order_id` string — Id of the trigger order that created the order (Only for orders that were created by triggered orders).
    - `combo_order_id` string — Id of the combo order that created this order (only present for orders that were created as legs of a combo order).
    - `app_name` string — The name of the application that placed the order on behalf of the user (optional).
    - `mmp_cancelled` boolean — `true` if order was cancelled by mmp trigger (optional)
    - `cancel_reason` 'user_request' | 'autoliquidation' | 'cancel_on_disconnect' | 'risk_mitigation' | 'pme_risk_reduction' | 'pme_account_locked' | 'position_locked' | 'mmp_trigger' | 'mmp_config_curtailment' | 'edit_post_only_reject' | 'oco_other_closed' | 'oto_primary_closed' | 'settlement' — Enumerated reason behind cancel `"user_request"`, `"autoliquidation"`, `"cancel_on_disconnect"`, `"risk_mitigation"`, `"pme_risk_reduction"` (portfolio margining risk reduction), `"pme_account_locked"` (portfolio margining account locked per currency), `"position_locked"`, `"mmp_trigger"` (market maker protection), `"mmp_config_curtailment"` (market maker configured quantity decreased), `"edit_post_only_reject"` (cancelled on edit because of `reject_post_only` setting), `"oco_other_closed"` (the oco order linked to this order was closed), `"oto_primary_closed"` (the oto primary order that was going to trigger this order was cancelled), `"settlement"` (closed because of a settlement)
    - `oto_order_ids` OrderId[] — The Ids of the orders that will be triggered if the order is filled
    - `trigger_fill_condition` 'first_hit' | 'complete_fill' | 'incremental' — <p>The fill condition of the linked order (Only for linked order types), default: `first_hit`.</p> <ul> <li>`"first_hit"` - any execution of the primary order will fully cancel/place all secondary orders.</li> <li>`"complete_fill"` - a complete execution (meaning the primary order no longer exists) will cancel/place the secondary orders.</li> <li>`"incremental"` - any fill of the primary order will cause proportional partial cancellation/placement of the secondary order. The amount that will be subtracted/added to the secondary order will be rounded down to the contract size.</li> </ul>
    - `oco_ref` string — Unique reference that identifies a one_cancels_others (OCO) pair.
    - `primary_order_id` string — Unique order identifier
    - `is_secondary_oto` boolean — `true` if the order is an order that can be triggered by another order, otherwise not present.
    - `is_primary_otoco` boolean — `true` if the order is an order that can trigger an OCO pair, otherwise not present.

---

[API](https://skmtc.net/deribit/apis/deribit-api-2.md) · [All operations](https://skmtc.net/deribit/apis/deribit-api-2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/deribit/deribit-api-2/versions/430b3f0bc67c/schema)
