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

© 2026 Gemini Space Station, Inc.

Getting Started
Market Makers
    Maker Rebate ProgramLiquidity 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 Combo
    Events
    Terms
    Order Management
    Positions
    Rewards
Combo Contracts
    Overview
Tickers
    OverviewCryptoSportsCommoditiesWeather
Schemas

List Combos

REST APIsPrediction MarketsCombosList Combos

List Combos

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

Returns a paginated list of pre-packaged combo contracts. Each combo includes its full leg breakdown and per-leg resolution status.

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

Query Parameters

statusstring
Filter by combo contract status (e.g. Active, Settled, Voided)
contractIdinteger
Filter to combos that contain a specific underlying contract ID as a leg
instrumentRegisteredboolean
Filter by whether the combo has been registered as a tradeable instrument on the orderbook
limitinteger
Maximum number of results to return (max 500)Default: 50
offsetinteger
Number of results to skip for paginationDefault: 0

Responses

Successful response

combosarray
List of combo contracts matching the query
combos[].contractobject
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
Ordered list of legs that make up this combo
combos[].legs[].comboIdinteger (int64)
Internal ID of the parent combo contractExample: 456
combos[].legs[].legIndexinteger
Zero-based position of this leg in the comboExample: 0
combos[].legs[].contractIdinteger (int64)
Internal ID of the underlying single contractExample: 101
combos[].legs[].requiredOutcomestring
The outcome this leg must settle for the combo to settle YES (`"Yes"` at launch)Example: 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
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 May 23, 2026