GeminiGemini
Demo environmentGet API key
  • Overview
  • Crypto Trading
  • Prediction Markets
  • Perpetuals
  • Stocks
  • API Reference
  • SDKs & Tools
Changelog
Gemini logoGemini logo

© 2026 Gemini Space Station, Inc.

Overview
Core Concepts
    Events, contracts, and outcomesCombo contracts
Market Data
    OverviewFetching Markets
    Ticker formats
      OverviewCryptoSportsSports Market TaxonomyCommoditiesWeather
Trading
    QuickstartOrder lifecycle and settlement
    Full REST reference
      Combo RFQ
      Events
      Volume
      Terms
      Order Management
        Place OrderPlace Batch OrdersCancel OrderCancel Batch OrdersGet Active OrdersGet Order History
      Positions
      Rewards
    WebSocket APIs
      OverviewAuthenticationMessage format
      Streams
        Book tickerL2 partial depthL2 differential depthTrade streamOrder eventsBalance updatesPosition updatesContract statusPrediction
      Utility
      Subscriptions
      L2 Data
      Order management
      Combo RFQ
        OverviewWebSocket streamsQuote methodsMaker integrationExamples
Market Makers
    Maker Fee-Free Trading PromoTaker Rewards ProgramMaker Rebate ProgramLiquidity Rewards ProgramMarket Maker Program
Resources
    SchemasDemo environmentRate limitsErrors

Get Order History

REST APIsPrediction MarketsOrder ManagementGet Order History

Get Order History

POSThttps://api.gemini.com/v1/prediction-markets/orders/history

Returns historical orders for the authenticated user. To retrieve fully filled orders for a completed UTC day, set status to filled and provide from and to as epoch-millisecond bounds; from is inclusive and to is exclusive. A time-bounded response contains at most limit results and ignores offset, so split high-volume periods into non-overlapping ranges. Use WebSocket order events for live trading state; use this REST endpoint for audit, recovery, and settlement review.

POSTv1/prediction-markets/orders/history
curl --request POST \
  --url https://api.gemini.com/v1/prediction-markets/orders/history \
  --header 'Content-Type: application/json' \
  --header 'X-GEMINI-APIKEY: <string>' \
  --header 'X-GEMINI-PAYLOAD: <string>' \
  --header 'X-GEMINI-SIGNATURE: <string>' \
  --data '
{
  "status": "filled",
  "from": 1775001600000,
  "to": 1775088000000,
  "limit": 1000
}
'

Roles

The API key you use to access this endpoint must have the Trader role assigned. See Roles for more information.

Headers

X-GEMINI-APIKEYstring·required
Your API key
X-GEMINI-SIGNATUREstring·required
HEX-encoded HMAC-SHA384 of payload signed with API secret
X-GEMINI-PAYLOADstring·required
Base64-encoded JSON payload
Content-Typestring
Default: text/plain
Content-Lengthstring
Default: 0
Cache-Controlstring
Default: no-cache

Request Body

statusstring·enum
Filter by order statusEnum values: filledcancelled
symbolstring
Filter by contract instrument symbolExample: GEMI-FEDJAN26-DN25
limitinteger
Maximum number of results to return. Defaults to 50 and is capped at 1000.
offsetinteger
Number of results to skip for pagination. Offset is ignored when `from` or `to` is supplied.
frominteger (int64)
Inclusive start of the order-closed time range, expressed as Unix epoch milliseconds. Use with `to` for a UTC daily window.Example: 1775001600000
tointeger (int64)
Exclusive end of the order-closed time range, expressed as Unix epoch milliseconds. `from` must not be later than `to`.Example: 1775088000000

Responses

Successful response

ordersarray
orders[].orderIdinteger (int64)
Example: 12345678
orders[].hashOrderIdstring
orders[].clientOrderIdstring
orders[].globalOrderIdstring
orders[].statusstring·enum
Enum values: openfilledcancelled
orders[].symbolstring
orders[].sidestring·enum
Enum values: buysell
orders[].outcomestring·enum
The outcome being traded (Yes or No)Enum values: yesno
orders[].orderTypestring·enum
Order type. `stop-limit` orders require a `stopPrice` that triggers a limit order at `price` when the market reaches the trigger.Enum values: limitstop-limit
orders[].quantitystring
Original order quantity
orders[].filledQuantitystring
Amount filled so far
orders[].remainingQuantitystring
Amount remaining to fill
orders[].pricestring
Limit price
orders[].stopPricestring
Stop trigger price (populated for `stop-limit` orders)
orders[].avgExecutionPricestring
Average price of fills
orders[].createdAtstring (date-time)
orders[].updatedAtstring (date-time)
orders[].cancelledAtstring (date-time)
orders[].contractMetadataobject
orders[].contractMetadata.contractIdstring
orders[].contractMetadata.contractNamestring
orders[].contractMetadata.contractTickerstring
orders[].contractMetadata.eventTickerstring
orders[].contractMetadata.eventNamestring
orders[].contractMetadata.categorystring
orders[].contractMetadata.contractStatusstring
orders[].contractMetadata.eventTypestring
Event type ("binary" or "categorical")
orders[].contractMetadata.expiryDatestring (date-time)
orders[].contractMetadata.resolvedAtstring (date-time)
orders[].contractMetadata.resolutionSidestring
Winning outcome if resolved ("yes" or "no")
orders[].contractMetadata.parentEventTickerstring
Parent event ticker for sub-events
orders[].contractMetadata.startTimestring (date-time)
Start datetime (ISO 8601)
paginationobject
pagination.limitinteger
pagination.offsetinteger
pagination.countinteger
Number of items in current response
PreviousGet Active OrdersNextPositions