Skip to main content
GET
List the active workspace's Basic and Advanced orders in newest-first order.

Authorizations

X-API-Key
string
header
required

Send the API key in X-API-Key.

Request signing. A key with signing enabled (POST /api/v1/workspaces/{workspaceId}/users/me/api-keys/{keyId}/signing, which returns the signing secret once) must also sign every request:

  • X-Timestamp: the current Unix time in seconds, within 300 seconds of the server clock.
  • X-Signature: lower-case hex HMAC-SHA256 of the canonical string, keyed with the signing secret's 32 bytes (the secret is 64 hex characters; decode it first).

The canonical string is four lines joined by \n, with no trailing newline: the X-Timestamp value, the upper-case method, the path with its query exactly as sent (/api/v1/orders?limit=1), and the lower-case hex SHA-256 of the exact body bytes (the SHA-256 of an empty body when there is none).

A write's signature (POST, PUT, PATCH, DELETE) is accepted once: sending the same signed write again is refused, so a retry signs again. A read (GET, HEAD) changes nothing, so an identical signed read inside the window is admitted again and polling needs no nonce.

A signing refusal is a 401 AUTH_REQUIRED whose details.reason names the cause: SIGNATURE_REQUIRED (a header is missing), SIGNATURE_INVALID (a malformed header or a wrong signature), TIMESTAMP_OUT_OF_RANGE or SIGNATURE_REPLAYED.

Headers

X-Workspace-Id
string<uuid>

The workspace the request acts in. An API key bound to a workspace implies it: omit the header, or send that same id (another id answers 403 WORKSPACE_SCOPE_MISMATCH). A member session must send it (400 MISSING_WORKSPACE without it).

Query Parameters

limit
integer<int32>

Number of matching items requested, 1–20; default 20.

Required range: x >= 0
cursor
string

Opaque nextCursor from this caller, workspace and the identical filter set.

status
enum<string>

Public lifecycle status, shared by Basic and Advanced orders. Open public lifecycle vocabulary shared by both order kinds. States may be skipped; act on terminal, not on a particular sequence.

New values may be added; treat unknown values as other.

Available options:
pending,
working,
filled,
settled,
unfilled,
cancelled,
failed,
refunded,
reviewRequired,
outcomeUnknown,
refused
kind
enum<string>

Which native owner holds an order.

Available options:
basicTrade,
advancedTrade
from
string<date-time>

Created at or after this RFC 3339 instant, inclusive.

to
string<date-time>

Created at or before this RFC 3339 instant, inclusive.

sellAsset
string
buyAsset
string

Response

A page of the workspace's orders, newest first. A status filter keeps reading until the page has limit items or the orders end, within a bounded scan: a page shorter than limit with a nextCursor means that scan reached its limit (scanLimitReached), never that the orders ended.

items
object[]
required

What POST /orders {quoteId} created, read from the owner that saves it: a protocol order in orders, or a workspace venue trade (fiat included) in the venue trade operations. Nothing is recorded twice.

New values may be added; treat unknown values as other.

scanLimitReached
boolean
required

True when a status-filtered page stopped at its scan limit before filling limit: more orders remain to examine, so follow nextCursor. False on every other page.

nextCursor
string | null