Quick Markets
15-minute auto-expiring price prediction markets for BTC, ETH, and other assets.
Get Active Quick Market
Returns the currently active quick market for an asset.
GET /api/v1/quick-markets/{asset}
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| asset | string | Asset symbol (e.g., BTC, ETH) |
Response (Active Market)
{
"active": true,
"asset": "BTC",
"quickMarket": {
"id": 42,
"marketId": "0x...",
"asset": "BTC",
"intervalMinutes": 15,
"startPrice": 9750000000000,
"startTime": 1735689000,
"endTime": 1735689900,
"resolved": false,
"priceSource": "pyth",
"createdAt": 1735689000
},
"bestAskPrice": 450000
}| Field | Type | Description |
|---|---|---|
| active | bool | Whether there is a currently active market |
| quickMarket.marketId | string | Market ID for placing orders |
| quickMarket.startPrice | int64 | Strike price at market creation (asset prices may use 8 decimals from Pyth) |
| quickMarket.startTime | int64 | Unix timestamp when the market started |
| quickMarket.endTime | int64 | Unix timestamp when the market expires |
| quickMarket.resolved | bool | Whether the market has been resolved |
| quickMarket.priceSource | string | Price oracle source (e.g., "pyth") |
| bestAskPrice | uint64 | Best YES ask from the live orderbook (6 decimals). 450000 = $0.45 |
Response (No Active Market)
{
"active": false,
"asset": "BTC",
"nextMarket": null,
"quickMarket": null
}Example
curl "https://api.turbinefi.com/api/v1/quick-markets/BTC"Get Quick Market History
Returns recent quick markets for an asset.
GET /api/v1/quick-markets/{asset}/history
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| asset | string | Asset symbol (e.g., BTC) |
Response
Returns up to 100 most recent quick markets.
| Field | Type | Description |
|---|---|---|
| endPrice | int64 | Price at expiration (null if not yet resolved) |
| outcome | int | 0 = YES (price went up), 1 = NO (price went down). Null if not resolved. |
Example
curl "https://api.turbinefi.com/api/v1/quick-markets/BTC/history"Get Current Price
Returns the current price for an asset from the Pyth oracle.
GET /api/v1/quick-markets/{asset}/price
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| asset | string | Asset symbol (e.g., BTC) |
Response
| Field | Type | Description |
|---|---|---|
| price | int64 | Raw price from oracle |
| priceUSD | float64 | Price in USD |
| timestamp | int64 | Unix timestamp |
| source | string | Oracle source URL |
Example
curl "https://api.turbinefi.com/api/v1/quick-markets/BTC/price"Get Price History
Returns historical price data for chart rendering.
GET /api/v1/quick-markets/{asset}/price-history
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| asset | string | Asset symbol (e.g., BTC) |
Response
Returns 20 minutes of price history.
Example
curl "https://api.turbinefi.com/api/v1/quick-markets/BTC/price-history"Price Stream (SSE)
Server-Sent Events stream of real-time price updates.
GET /api/v1/quick-markets/{asset}/price-stream
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| asset | string | Asset symbol (e.g., BTC) |
Response Format
The response is a text/event-stream with JSON data events:
| Field | Type | Description |
|---|---|---|
| asset | string | Asset symbol |
| price | int64 | Raw price |
| priceUSD | float64 | Price in USD |
| timestamp | int64 | Unix timestamp in milliseconds |
| source | string | Price source ("pyth", "coinbase", "coingecko") |
An initial price is sent immediately upon connection. Subsequent updates stream as new prices arrive from the oracle.
Examples
curl -N "https://api.turbinefi.com/api/v1/quick-markets/BTC/price-stream"import sseclient
import requests
response = requests.get(
"https://api.turbinefi.com/api/v1/quick-markets/BTC/price-stream",
stream=True
)
client = sseclient.SSEClient(response)
for event in client.events():
print(event.data)