Skip to content

List open orders

GET https://rest.haasapi.com/v1/accounts/{account_id}/orders

Returns the account’s open orders - manually placed and bot-placed alike - newest first. Returned whole, no pagination. The order_id is what DELETE /v1/orders/{order_id} takes.

Requires the read scope.

Terminal window
curl "https://rest.haasapi.com/v1/accounts/{account_id}/orders" \
-H "Authorization: Bearer hk_live_YOUR_KEY"

200 OK. Returns a OrdersPage.

{
"data": [
{
"order_id": "456271ab-772b-450d-b76f-1d059271e3fa",
"account_id": "af85799d-a214-4fd2-92ea-443c5eed18ad",
"market_tag": "GEMINI_BTC_USD",
"side": "sell",
"type": "limit",
"price": "156000",
"amount": "0.001",
"filled_amount": "0",
"status": "open",
"bot_id": null,
"placed_at": "2026-08-29T21:09:39Z"
},
{
"order_id": "0f193c73-d5c2-4d13-8166-4e13c239a17b",
"account_id": "af85799d-a214-4fd2-92ea-443c5eed18ad",
"market_tag": "GEMINI_BTC_USD",
"side": "buy",
"type": "limit",
"price": "39000",
"amount": "0.001",
"filled_amount": "0",
"status": "open",
"bot_id": null,
"placed_at": "2026-08-29T21:08:39Z"
}
]
}
Field Type Description
data array of Order The account’s open orders, newest first. Returned whole - no cursor (an account holds at most a few hundred open orders).
Field Type Description
order_id string Order identifier - what DELETE /v1/orders/{order_id} takes. Copy it; never construct one.
account_id string The account holding the order - joins against account_id on /v1/accounts.
market_tag string, nullable The market the order is on - joins against market_tag on /v1/markets.
side OrderSide Which way the order trades. Orders a bot placed with a position intent (enter/exit long/short) are folded onto the buy/sell they execute as.
type OrderType
price string (decimal) Limit price. 0 on market orders.
amount string (decimal) Ordered amount, in the market’s base currency.
filled_amount string (decimal) Amount already filled, in the market’s base currency.
status OrderStatus
bot_id string, nullable The bot that placed the order - joins against bot_id on /v1/bots. null on manually placed orders.
placed_at string, nullable When the order was placed, RFC 3339 UTC.

All errors are RFC 9457 problem documents.

Status Description
400 The request is malformed (invalid limit, unusable cursor, …). (code: invalid_request)
401 Missing, malformed, disabled, or revoked API key. (code: invalid_api_key)
404 No accessible account with that id. (code: account_not_found)
500 An unexpected error inside the API. Nothing about the request caused it; retry, and quote the instance value if it persists. (code: internal_error)
502 An internal service answered in a way the API could not serve. Retry. (code: upstream_error)
503 The request could not be served right now. Retry with the same key - do not discard it. (code: temporarily_unavailable)
504 An internal service did not answer within the deadline. Retry with backoff. (code: upstream_timeout)
{
"type": "https://docs.haasapi.com/errors/invalid_request",
"title": "Invalid request",
"status": 400,
"detail": "The request is malformed (invalid limit, unusable cursor, …).",
"code": "invalid_request"
}