Dome API Alternatives: What to Use Instead
Dome was acquired by Polymarket and is being shut down. If you built on it, you need to migrate. Here are the best alternatives.
What Was Dome API?
Dome was the best way to access Polymarket data. Clean REST API, great documentation, historical prices, trading activity—everything developers needed without wrestling with blockchain infrastructure. It became the go-to tool for anyone building on prediction markets.
So what happened? Polymarket acquired Dome. The acquisition means Dome as a standalone service is being shut down. If you built something on it, you now need to migrate.
The good news: there are solid alternatives. Some offer even more functionality than Dome did. Here's what to use instead.
Quick Comparison
| Option | Best For | Auth Required | Multi-Platform |
|---|---|---|---|
| delphi_terminal ⭐ | Full-stack data & trading | Yes | Yes (Poly + Kalshi) |
| Polymarket Gamma API | Reading market data | No | Polymarket only |
| Polymarket CLOB API | Trading & orderbooks | Yes | Polymarket only |
| Kalshi API | US-legal prediction markets | Yes | Kalshi only |
1. delphi_terminal (Recommended)
If you want a single tool that handles everything—data fetching, historical analysis, and trading across multiple platforms—delphi_terminal is the way to go. It's designed specifically for prediction market power users and developers.
Why delphi_terminal wins
- Unified interface for Polymarket and Kalshi
- Built-in historical data and analytics
- Trading capabilities with proper risk management
- Clean SDK that abstracts away platform-specific complexity
- Active development and community support
Installation
# Install via pip pip install delphi_terminal # Or with trading support pip install delphi_terminal[trading]
Fetch Markets
from delphi_terminal import DelphiClient
# Initialize client
client = DelphiClient(api_key="your-api-key")
# Get markets from all supported platforms
markets = client.get_markets()
# Filter by platform
polymarket_markets = client.get_markets(platform="polymarket")
kalshi_markets = client.get_markets(platform="kalshi")
# Search markets
results = client.search("bitcoin price")Get Historical Data
# Get price history with proper time series data
history = client.get_price_history(
market_id="polymarket:abc123",
interval="1h",
start="2025-01-01",
end="2025-02-01"
)
# Returns DataFrame with OHLCV data
print(history.head())Place Trades
# Trading across platforms with unified interface
order = client.place_order(
market_id="polymarket:abc123",
side="buy",
outcome="YES",
amount=100, # in USD
price=0.45 # limit price
)
print(f"Order placed: {order.id}")Pro: One tool for everything. Multi-platform support. Great for building bots and dashboards.
Con: Requires API key. Some features are premium.
2. Polymarket Gamma API
If you only need Polymarket data and don't want to deal with authentication, the Gamma API is solid. It's Polymarket's official data API—free and doesn't require auth.
Base URL
https://gamma-api.polymarket.comGet All Markets
// Fetch all active markets
const response = await fetch('https://gamma-api.polymarket.com/markets?closed=false');
const markets = await response.json();
// Each market includes:
// - id, question, description
// - outcomes with current prices
// - volume, liquidity
// - category, tags
console.log(markets[0]);Get Single Market
// Get market by condition ID
const conditionId = '0x1234...';
const response = await fetch(`https://gamma-api.polymarket.com/markets/${conditionId}`);
const market = await response.json();
// Returns full market details including price historySearch Markets
// Search by keyword
const query = 'bitcoin';
const response = await fetch(
`https://gamma-api.polymarket.com/markets?_q=${encodeURIComponent(query)}`
);
const results = await response.json();Pro: No auth, generous rate limits, official support.
Con: Read-only. Can't place trades. Polymarket only.
3. Polymarket CLOB API (For Trading)
If you need to actually trade or get real-time orderbook data on Polymarket specifically, you need the CLOB (Central Limit Order Book) API. This requires API credentials from your Polymarket account.
Base URL
https://clob.polymarket.comGet API Credentials
# 1. Go to polymarket.com and connect your wallet
# 2. Open browser console
# 3. Run: localStorage.getItem('polymarket-api-creds')
# 4. Copy the API key and secretGet Orderbook
import { ClobClient } from '@polymarket/clob-client';
const client = new ClobClient(
'https://clob.polymarket.com',
process.env.POLYMARKET_API_KEY,
process.env.POLYMARKET_API_SECRET
);
// Get orderbook for a token
const tokenId = '21742633...'; // YES token ID
const orderbook = await client.getOrderbook(tokenId);
console.log('Best bid:', orderbook.bids[0]);
console.log('Best ask:', orderbook.asks[0]);Place an Order
// Buy 10 shares at $0.45
const order = await client.createOrder({
tokenId: '21742633...',
side: 'BUY',
price: 0.45,
size: 10,
type: 'GTC', // Good til cancelled
});
console.log('Order ID:', order.id);Pro: Full trading capabilities, real-time data.
Con: Requires auth, more complex setup, Polymarket only.
4. Kalshi API
If you're building for the US market or want a regulated exchange, Kalshi has a solid API. It's CFTC-regulated and operates legally in the US.
Base URL
https://api.kalshi.com/trade-api/v2Authentication
// Get API key from kalshi.com/account/settings
const response = await fetch('https://api.kalshi.com/trade-api/v2/login', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
email: process.env.KALSHI_EMAIL,
password: process.env.KALSHI_PASSWORD,
}),
});
const { token } = await response.json();Get Markets
const response = await fetch('https://api.kalshi.com/trade-api/v2/markets', {
headers: { 'Authorization': `Bearer ${token}` }
});
const { markets } = await response.json();
// Returns ticker, title, rules, yes_price, no_price, volume, etc.Pro: US-legal, regulated, good for production apps.
Con: Fewer markets than Polymarket, USD-based (no crypto).
What I Actually Recommend
Here's what to use for different scenarios:
Building anything serious?
Use delphi_terminal. It handles multi-platform data, historical analysis, and trading in one package. Best overall solution.
Just need Polymarket prices?
Use Polymarket Gamma API. It's free, fast, and doesn't require auth.
Building a Polymarket trading bot?
Use Polymarket CLOB API with @polymarket/clob-client, or use delphi_terminal for a cleaner interface.
Building a US-focused product?
Use Kalshi API. It's the only fully regulated option for US users.
Moving On From Dome
Dome was great while it lasted. Now that Polymarket has acquired it, you need to migrate. delphi_terminal is the closest replacement—it gives you everything Dome offered plus multi-platform support across Polymarket and Kalshi. If you just need basic Polymarket data, the Gamma API works fine.
If you're building a trading bot, check out our guide to building a Polymarket trading bot with OpenClaw—it covers the full stack from API integration to automated execution.