GeminiGemini
SandboxGet API key
  • Crypto Trading
  • Prediction Markets
Resources
  • Changelog

© 2026 Gemini Space Station, Inc.

Gemini Crypto Exchange LogoGemini Crypto Exchange Logo
Market Makers
    Maker Rebate Program
WebSocket
    AuthenticationMessage Format
    Streams
      Book TickerL2 Partial DepthL2 Differential DepthTrade StreamOrder EventsBalance Updates
    Playground
      Overviewconninfopingtimesubscribeunsubscribelist_subscriptionsdepthorder.placeorder.cancelorder.cancel_allorder.cancel_session
REST APIs
    Order Management
    Positions
    Events
Agentic
Tickers
    OverviewCryptoSportsCommoditiesWeather
Schemas
Markets
    List prediction market eventsgetGet event by tickergetGet strike price for eventgetList newly listed eventsgetList recently settled eventsgetList upcoming eventsgetList event categoriesget
Trading
    Place orderpostCancel orderpost
Positions
    Get active orderspostGet order historypostGet positionspostGet volume metricspost
Schemas
Gemini Prediction Markets API
Gemini Prediction Markets API

Schemas(1.0.0)


Error

error
string

Error code

Example: InvalidInput
message
string

Human-readable error message

Example: orderId is required

MarketStatus

string · enum
Enum values:
approved
active
closed
under_review
settled
invalid

Status of a prediction market

MarketType

string · enum
Enum values:
binary
categorical

Type of prediction market

OrderType

string · enum
Enum values:
limit

Order type (currently only limit orders are supported)

OrderSide

string · enum
Enum values:
buy
sell

Outcome

string · enum
Enum values:
yes
no

The outcome being traded (Yes or No)

TimeInForce

string · enum
Enum values:
good-til-cancel
immediate-or-cancel
fill-or-kill
maker-or-cancel

Order execution behavior:

  • good-til-cancel - Order remains active until filled or cancelled (default)
  • immediate-or-cancel - Fill immediately or cancel remaining
  • fill-or-kill - Fill entire order immediately or cancel
  • maker-or-cancel - Only add liquidity to the order book; if any part would fill immediately, the entire order is cancelled. Also known as "post-only".
Default: good-til-cancel

OrderStatus

string · enum
Enum values:
open
filled
cancelled

PositionStatus

string · enum
Enum values:
active
resolved
cancelled

Pagination

limit
integer
offset
integer
total
integer

PaginationSimple

limit
integer
offset
integer
count
integer

Number of items in current response

OrderBook

object[]
object[]

OrderBookEntry

side
string · enum
Enum values:
buy
sell
price
string
quantity
string

OrderBookDepth

object[]
object[]
lastUpdateTime
string · date-time

OrderBookLevel

price
string
quantity
string
orderCount
integer

Contract

id
string
label
string

Human-readable label (e.g., "Yes", "No")

abbreviatedName
string | null

Short form label (e.g., ">$90")

description
object

Rich text description

prices
object | null

Current bid/ask pricing for the contract

totalShares
string | null
color
string | null
status
string · enum

Status of a prediction market

Enum values:
approved
active
closed
under_review
settled
invalid
imageUrl
string | null
array | null
createdAt
string · date-time
expiryDate
string | null · date-time
resolutionSide
string · enum

The outcome being traded (Yes or No)

Enum values:
yes
no
resolvedAt
string | null · date-time
termsAndConditionsUrl
string
ticker
string
instrumentSymbol
string
effectiveDate
string | null · date-time
marketState
string | null · enum

Trading state of the contract

Enum values:
open
closed
sortOrder
integer | null

Display order within the event

object

Strike price information for Up/Down crypto contracts

source
string | null

Data source identifier for price observation (e.g., "GRR-KAIKO_BTCUSD_60S"). Present for crypto Up/Down contracts.

Example: GRR-KAIKO_BTCUSD_60S
settlementValue
string | null

The observed settlement price. Only present after the contract is settled.

Example: 87654.32

Strike

Strike price information for Up/Down crypto contracts
value
string | null

The strike price value. Null for "reference" type strikes where the value is determined at availableAt time.

Example: 87500.00
type
string · enum

Strike type - "reference" for Up/Down contracts, "above" for Higher/Lower contracts

Enum values:
reference
above
Example: reference
availableAt
string | null · date-time

When the strike price becomes available

Example: 2026-03-27T19:45:00.000Z

PricePoint

timestamp
string · date-time
price
string

ContractPrices

Event

A prediction market event containing one or more tradeable contracts
id
string
title
string
slug
string
description
string | null
imageUrl
string | null
type
string · enum

Type of prediction market

Enum values:
binary
categorical
category
string
series
string | null
ticker
string

The event ticker (e.g., "BTC100K2025")

Example: BTC100K2025
status
string · enum

Status of a prediction market

Enum values:
approved
active
closed
under_review
settled
invalid
resolvedAt
string | null · date-time
createdAt
string · date-time
object[]

Tradeable contracts within this event

object
volume
string

Total trading volume in USD

Example: 125000.00
liquidity
string

Total liquidity in USD

Example: 50000.00
tags
array | null
effectiveDate
string · date-time
expiryDate
string | null · date-time
subcategory
object | null

Nested category information for the event

source
string | null

Data source identifier for price observation. Aggregated from contracts for crypto Up/Down events.

Example: GRR-KAIKO_BTCUSD_60S
object

Settlement information for resolved events

Subcategory

Settlement

Settlement information for resolved events
value
string | null

The observed settlement value (e.g., the price at expiry for crypto contracts)

Example: 87654.32

EventsResponse

object[]
object

ContractMetadata

contractId
string
contractName
string
contractTicker
string
eventTicker
string
eventName
string
category
string
contractStatus
string
imageUrl
string | null
eventImageUrl
string | null

Image URL for the parent event

eventType
string

Event type ("binary" or "categorical")

expiryDate
string | null · date-time
resolvedAt
string | null · date-time
resolutionSide
string | null

Winning outcome if resolved ("yes" or "no")

description
string | null
sortOrder
integer | null

Display sort ordering

parentEventTicker
string | null

Parent event ticker for sub-events

template
string | null

Contract template type (e.g. "binary", "sports_game", "crypto_up_down")

color
string | null

Display color

startTime
string | null · date-time

Start datetime (ISO 8601)

OrderRequest

symbol
string · required

Contract instrument symbol

Example: GEMI-FEDJAN26-DN25
orderType
string · enum · required

Order type (currently only limit orders are supported)

Enum values:
limit
side
string · enum · required
Enum values:
buy
sell
quantity
string · required

Number of contracts

Example: 100
price
string · required

Limit price (0-1 range)

Example: 0.65
outcome
string · enum · required

The outcome being traded (Yes or No)

Enum values:
yes
no
timeInForce
string · enum

Order execution behavior:

  • good-til-cancel - Order remains active until filled or cancelled (default)
  • immediate-or-cancel - Fill immediately or cancel remaining
  • fill-or-kill - Fill entire order immediately or cancel
  • maker-or-cancel - Only add liquidity to the order book; if any part would fill immediately, the entire order is cancelled. Also known as "post-only".
Enum values:
good-til-cancel
immediate-or-cancel
fill-or-kill
maker-or-cancel
Default: good-til-cancel

OrderResponse

orderId
integer · int64
hashOrderId
string | null
clientOrderId
string | null
globalOrderId
string | null
status
string · enum
Enum values:
open
filled
cancelled
symbol
string
side
string · enum
Enum values:
buy
sell
outcome
string · enum

The outcome being traded (Yes or No)

Enum values:
yes
no
orderType
string · enum

Order type (currently only limit orders are supported)

Enum values:
limit
quantity
string

Original order quantity

filledQuantity
string

Amount filled so far

remainingQuantity
string

Amount remaining to fill

price
string

Limit price

avgExecutionPrice
string | null

Average price of fills

createdAt
string · date-time
updatedAt
string · date-time
cancelledAt
string | null · date-time
object

OrdersResponse

object[]
object

Position

symbol
string
instrumentId
integer · int64
totalQuantity
string

Total position size

quantityOnHold
string

Quantity currently on hold from open orders

avgPrice
string

Average entry price

outcome
string · enum

The outcome being traded (Yes or No)

Enum values:
yes
no
object
prices
object | null

Current bid/ask/last-trade prices for the contract

resolutionSide
string | null

Winning outcome ("yes" or "no") if the contract has resolved

isAboveAutoStartThreshold
boolean

Whether the position is above the auto-start threshold

isLive
boolean

Whether the market is currently live/active

realizedPl
string | null

Realized profit/loss from sells

PositionPrices

PositionsResponse

object[]
total
integer | null

Total number of positions (for pagination)

ContractShareVolume

symbol
string

Contract instrument symbol

Example: GEMI-FED260318-CUT25
totalQty
string

Total taker volume across all participants (in shares)

Example: 94625
userAggressorQty
string | null

The authenticated user's taker (aggressor) volume (in shares)

Example: 1
userRestingQty
string | null

The authenticated user's maker (resting) volume (in shares)

Example: 0

VolumeMetricsResponse

eventTicker
string

The event ticker

Example: FED260318
object[]
On this page
  • Error
  • MarketStatus
  • MarketType
  • OrderType
  • OrderSide
  • Outcome
  • TimeInForce
  • OrderStatus
  • PositionStatus
  • Pagination
  • PaginationSimple
  • OrderBook
  • OrderBookEntry
  • OrderBookDepth
  • OrderBookLevel
  • Contract
  • Strike
  • PricePoint
  • ContractPrices
  • Event
  • Subcategory
  • Settlement
  • EventsResponse
  • ContractMetadata
  • OrderRequest
  • OrderResponse
  • OrdersResponse
  • Position
  • PositionPrices
  • PositionsResponse
  • ContractShareVolume
  • VolumeMetricsResponse