GeminiGemini
SandboxGet API key
  • Crypto Trading
  • Prediction Markets
Changelog
Gemini Crypto Exchange LogoGemini Crypto Exchange Logo

© 2026 Gemini Space Station, Inc.

Getting StartedAPI Specifications
Maker and Taker Incentives
    Market Maker ProgramMaker Rebate ProgramLiquidity Rewards ProgramTaker Rewards Program
WebSocket
    IntroductionAuthenticationMessage Format
    Streams
      Book TickerL2 Partial DepthL2 Differential DepthTrade StreamOrder EventsBalance UpdatesPosition UpdatesContract Status
    Playground
      OverviewconninfopingtimeSUBSCRIBEUNSUBSCRIBELIST_SUBSCRIPTIONSdepthorder.placeorder.cancelorder.cancel_allorder.cancel_session
REST APIs
    Combos
      List CombosGet ComboCreate Combo
    Events
    Volume
    Terms
    Order Management
    Positions
    Rewards
Combo Contracts
    Overview
Combos Request-for-Quote (RFQ)
    OverviewWebSocket StreamsQuote MethodsMaker IntegrationExamples
Tickers & Taxonomy
    OverviewCryptoSportsSports Market TaxonomyCommoditiesWeather
Schemas

List Combos

REST APIsPrediction MarketsCombosList Combos

List Combos

GEThttps://api.gemini.com/v1/prediction-markets/combos

Returns a paginated list of combo contracts. Each combo includes its full leg breakdown and per-leg resolution status. When no status filter is supplied, the endpoint returns Active combos.

Production availability

This Combo Prediction Markets endpoint is not currently enabled in production.

GETv1/prediction-markets/combos
curl --request GET \
  --url https://api.gemini.com/v1/prediction-markets/combos

Query Parameters

statusstring
Filter by combo contract status (for example, Active, Settled, or Voided). Defaults to Active when omitted.
contractIdinteger
Filter to combos that contain a specific underlying contract ID as a leg
instrumentRegisteredboolean
Filter by whether the combo has been registered with an instrument symbol
limitinteger
Maximum number of results to return (max 500)Default: 50
offsetinteger
Number of results to skip for paginationDefault: 0

Responses

Successful response

combosarray·required
List of combo contracts matching the query
combos[].contractobject·required
Metadata for the combo contract itself (ticker, status, expiry, etc.)
combos[].contract.contractIdstring
combos[].contract.contractNamestring
combos[].contract.contractTickerstring
combos[].contract.eventTickerstring
combos[].contract.eventNamestring
combos[].contract.categorystring
combos[].contract.contractStatusstring
combos[].contract.eventTypestring
Event type ("binary" or "categorical")
combos[].contract.expiryDatestring (date-time)
combos[].contract.resolvedAtstring (date-time)
combos[].contract.resolutionSidestring
Winning outcome if resolved ("yes" or "no")
combos[].contract.parentEventTickerstring
Parent event ticker for sub-events
combos[].contract.startTimestring (date-time)
Start datetime (ISO 8601)
combos[].legsarray·required
Ordered list of legs that make up this combo
combos[].legs[].comboIdinteger (int64)·required
Internal ID of the parent combo contractExample: 456
combos[].legs[].legIndexinteger·required
Zero-based position of this leg in the comboExample: 0
combos[].legs[].contractIdstring·required
Internal ID of the underlying single contract, represented as a decimal stringExample: 101
combos[].legs[].requiredOutcomestring·enum·required
The outcome this leg must settle for the combo to settle YESEnum values: YesNoExample: Yes
combos[].legs[].legOutcomestring
The outcome this leg has settled to, if resolved (`"Yes"` or `"No"`). Null while the leg is still active.Example: null
combos[].legs[].resolvedAtstring (date-time)
UTC timestamp when this leg resolved. Null while still active.Example: null
combos[].legs[].contractobject
Full metadata for the underlying single contract
combos[].legs[].contract.contractIdstring
combos[].legs[].contract.contractNamestring
combos[].legs[].contract.contractTickerstring
combos[].legs[].contract.eventTickerstring
combos[].legs[].contract.eventNamestring
combos[].legs[].contract.categorystring
combos[].legs[].contract.contractStatusstring
combos[].legs[].contract.eventTypestring
Event type ("binary" or "categorical")
combos[].legs[].contract.expiryDatestring (date-time)
combos[].legs[].contract.resolvedAtstring (date-time)
combos[].legs[].contract.resolutionSidestring
Winning outcome if resolved ("yes" or "no")
combos[].legs[].contract.parentEventTickerstring
Parent event ticker for sub-events
combos[].legs[].contract.startTimestring (date-time)
Start datetime (ISO 8601)
paginationobject·required
pagination.limitinteger
Example: 50
pagination.offsetinteger
Example: 0
pagination.totalinteger
Example: 100
Example Responses
{
  "combos": [
    {
      "contract": {
        "contractId": "456",
        "contractName": "BTC EOY26 > $120k AND ETH EOY26 > $4k",
        "contractTicker": "GEMI-CMB-0526-A7F3B2C1D4E5",
        "eventTicker": "GEMI-CMB-0526-A7F3B2C1D4E5",
        "eventName": "BTC EOY26 > $120k AND ETH EOY26 > $4k",
        "category": "Combo",
        "contractStatus": "Active",
        "eventType": "binary",
        "expiryDate": "2026-12-31T23:59:59Z",
        "resolvedAt": null,
        "resolutionSide": null,
        "parentEventTicker": null,
        "startTime": null
      },
      "legs": [
        {
          "comboId": 456,
          "legIndex": 0,
          "contractId": "101",
          "requiredOutcome": "Yes",
          "legOutcome": null,
          "resolvedAt": null,
          "contract": {
            "contractId": "101",
            "contractName": "BTC above $120,000 at year-end 2026",
            "contractTicker": "GEMI-BTC-EOY26-HI120000",
            "eventTicker": "GEMI-BTC-EOY26",
            "eventName": "Bitcoin Year-End 2026",
            "category": "Crypto",
            "contractStatus": "Active",
            "eventType": "binary",
            "expiryDate": "2026-12-31T23:59:59Z",
            "resolvedAt": null,
            "resolutionSide": null,
            "parentEventTicker": null,
            "startTime": null
          }
        },
        {
          "comboId": 456,
          "legIndex": 1,
          "contractId": "202",
          "requiredOutcome": "Yes",
          "legOutcome": null,
          "resolvedAt": null,
          "contract": {
            "contractId": "202",
            "contractName": "ETH above $4,000 at year-end 2026",
            "contractTicker": "GEMI-ETH-EOY26-HI4000",
            "eventTicker": "GEMI-ETH-EOY26",
            "eventName": "Ethereum Year-End 2026",
            "category": "Crypto",
            "contractStatus": "Active",
            "eventType": "binary",
            "expiryDate": "2026-12-31T23:59:59Z",
            "resolvedAt": null,
            "resolutionSide": null,
            "parentEventTicker": null,
            "startTime": null
          }
        }
      ]
    }
  ],
  "pagination": {
    "limit": 50,
    "offset": 0,
    "total": 1
  }
}
PreviousCombosNextGet Combo
Last modified on August 11, 2026