Base URL: https://api.into.space/v1
Public release will be announced on our official X/Twitter and in Telegram + Dicsord
Markets
GET /markets
Query Parameters:
category (string): Filter by category (crypto, politics, sports, technology, economy, culture)
status (string): Filter by status (active, resolved, all)
limit (number): Results per page (default 50, max 100)
offset (number): Pagination offset
Response:
{
"markets": [
{
"id": "btc-150k-2025",
"question": "Will BTC close above \$150,000 in 2025?",
"category": "crypto",
"expiresAt": 1735689599,
"status": "active",
"volume24h": 1250000,
"liquidity": 450000,
"probability": 0.35
}
],
"total": 245,
"limit": 50,
"offset": 0
}
GET /markets/id
Response:
{
"id": "btc-150k-2025",
"question": "Will BTC close above \$150,000 in 2025?",
"description": "Market resolves YES if Bitcoin...",
"category": "crypto",
"createdAt": 1704067200,
"expiresAt": 1735689599,
"status": "active",
"resolutionSource": "Pyth Oracle 15-min TWAP",
"yesToken": "YEStok...",
"noToken": "NOtok...",
"volume": {
"total": 5250000,
"24h": 1250000,
"7d": 3100000
},
"liquidity": 450000,
"prices": {
"yes": 0.35,
"no": 0.65,
"lastUpdate": 1704153600
},
"stats": {
"totalTrades": 12450,
"uniqueTraders": 1834,
"avgTradeSize": 421
}
}
GET /markets/id/orderbook
Query Parameters:
outcome (string): YES, NO, or outcome name for multi-outcome markets
depth (number): Number of price levels (default 20, max 100)
Response:
{
"market": "btc-150k-2025",
"outcome": "YES",
"timestamp": 1704153600,
"bids": [
{ "price": 0.349, "quantity": 5000, "orders": 12 },
{ "price": 0.348, "quantity": 8500, "orders": 23 }
],
"asks": [
{ "price": 0.351, "quantity": 4200, "orders": 8 },
{ "price": 0.352, "quantity": 6100, "orders": 15 }
],
"spread": 0.002,
"midPrice": 0.350
}
GET /markets/id/trades
Query Parameters:
outcome (string): Filter by outcome
limit (number): Number of trades (default 50, max 500)
before (timestamp): Pagination cursor
after (timestamp): Pagination cursor
Response:
{
"trades": [
{
"id": "trade_abc123",
"market": "btc-150k-2025",
"outcome": "YES",
"price": 0.350,
"quantity": 1000,
"side": "BUY",
"timestamp": 1704153540
}
],
"hasMore": true
}
GET /markets/id/candles
Query Parameters:
outcome (string): YES, NO, or outcome name
resolution (string): 1m, 5m, 15m, 1h, 4h, 1d
from (timestamp): Start time
to (timestamp): End time
Response:
{
"candles": [
{
"time": 1704153600,
"open": 0.348,
"high": 0.355,
"low": 0.346,
"close": 0.351,
"volume": 125000
}
]
}
GET /stats
Response:
{
"totalVolume": 125000000,
"volume24h": 3500000,
"totalMarkets": 245,
"activeMarkets": 180,
"totalTrades": 1250000,
"uniqueTraders": 45000,
"tvl": 12500000,
"timestamp": 1704153600
}
Rate Limits
- Public endpoints: 100 requests/minute
- Authenticated endpoints: 500 requests/minute
Rate Limit Headers:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 87
X-RateLimit-Reset: 1704153660
Error Handling
Error Response:
{
"error": {
"code": "MARKET_NOT_FOUND",
"message": "The specified market does not exist",
"status": 404
}
}
Common Error Codes:
MARKET_NOT_FOUND (404)
INVALID_PARAMETERS (400)
RATE_LIMIT_EXCEEDED (429)
UNAUTHORIZED (401)
INTERNAL_ERROR (500)