TL;DR
The Gemini Ticker API provides real-time trading data from the Gemini cryptocurrency exchange (founded by the Winklevoss twins). Public endpoints include ticker prices, order book depth, current trading pairs, and recent trade history. The ticker returns bid/ask prices, last trade price, 24-hour high/low, volume, and price changes. The order book endpoint shows current buy and sell orders with customizable depth. All endpoints are free and require no authentication. Gemini is a regulated US-based exchange known for its strong compliance and security.
Quick start: https://api.gemini.com/v1/pubticker/btcusd
No API key needed — just make a request!
How to Use This API
1. Get Ticker for BTC/USD
https://api.gemini.com/v1/pubticker/btcusd
Returns bid, ask, last, high, low, volume, and change data for Bitcoin.
2. Get ETH/USD Ticker
https://api.gemini.com/v1/pubticker/ethusd
3. Get Order Book with Depth Control
https://api.gemini.com/v1/book/btcusd?limit_bids=5&limit_asks=5
Returns top 5 bid (buy) and ask (sell) orders with price and quantity.
4. Get Full Order Book
https://api.gemini.com/v1/book/btcusd
Without limits, returns the full order book (may be large for popular pairs).
5. List Available Trading Pairs
https://api.gemini.com/v1/symbols
Returns an array of all active trading pair symbols (e.g., btcusd, ethusd).
6. Get Current Trading Pair Info
https://api.gemini.com/v1/symbols/details/btcusd
Returns detailed info for a specific pair including minimum order size, price increment, and quote increment.
7. Get Recent Trades
https://api.gemini.com/v1/trades/btcusd
https://api.gemini.com/v1/trades/btcusd?limit_trades=50×tamp=1700000000
Use limit_trades (default 50, max 200) and timestamp for pagination.
8. Response Format
{
"bid": "67100.00",
"ask": "67105.00",
"last": "67102.50",
"high": "68900.00",
"low": "65200.00",
"volume": {
"BTC": "1234.56",
"USD": "83745678.90"
},
"change": "+2.35%",
"timestamp": 1718563200
}
9. JavaScript — Monitor Ticker Data
fetch('https://api.gemini.com/v1/pubticker/btcusd')
.then(r => r.json())
.then(t => {
console.log(`BTC/USD:`);
console.log(` Last: \$${parseFloat(t.last).toFixed(2)}`);
console.log(` Bid: \$${parseFloat(t.bid).toFixed(2)}`);
console.log(` Ask: \$${parseFloat(t.ask).toFixed(2)}`);
console.log(` 24h High: \$${parseFloat(t.high).toFixed(2)}`);
console.log(` 24h Low: \$${parseFloat(t.low).toFixed(2)}`);
console.log(` 24h Change: ${t.change}`);
console.log(` Volume: ${parseFloat(t.volume.BTC).toFixed(2)} BTC`);
});
10. Python — Calculate Spread
import requests
ticker = requests.get('https://api.gemini.com/v1/pubticker/ethusd').json()
bid = float(ticker['bid'])
ask = float(ticker['ask'])
spread = ask - bid
spread_pct = (spread / bid) * 100
print(f"ETH/USD — Bid: \${bid:.2f}, Ask: \${ask:.2f}")
print(f"Spread: \${spread:.2f} ({spread_pct:.3f}%)")
11. Python — Get Order Book Depth
import requests
resp = requests.get(
'https://api.gemini.com/v1/book/btcusd',
params={'limit_bids': 10, 'limit_asks': 10}
)
book = resp.json()
total_bid_volume = sum(float(b['amount']) for b in book['bids'])
total_ask_volume = sum(float(a['amount']) for a in book['asks'])
print(f"Top 10 bids: {total_bid_volume:.2f} BTC worth of buy orders")
print(f"Top 10 asks: {total_ask_volume:.2f} BTC worth of sell orders")
https://api.gemini.com/v1/pubticker/btcusd
Frequently Asked Questions
- What cryptocurrency trading pairs are available on Gemini?
- btcusd, ethusd, solusd, ltcusd, zecusd, linkusd, uniusd, filusd, crusd, oxtusd, ampbtc, storjbtc, and more. Check api.gemini.com/v1/symbols for the complete, current list of active pairs.
- What data does the ticker response include?
- Bid (highest buy order), ask (lowest sell order), last (most recent trade), high (24h high), low (24h low), volume (in both base and quote currency), change (percentage over 24 hours), and the Unix timestamp of the data snapshot.
- How fresh is the ticker data?
- Ticker data updates continuously with each trade on Gemini. The
volumefield aggregates the last 24 hours. Thetimestampfield indicates when the data was last updated, typically within seconds of the last trade. - Can I get historical trade data?
- Yes, use
/v1/trades/btcusdto get recent trades. Supportslimit_trades(up to 200) andtimestampparameters for pagination through history. This is useful for charting and backtesting. - What is the order book and how detailed is it?
- The order book shows all current buy (bid) and sell (ask) orders on Gemini. The full book can be very large for active pairs. Use
limit_bidsandlimit_asksto get just the top levels. Each level includesprice,amount, andtimestamp. - Is Gemini API access free?
- Yes, all public endpoints (ticker, order book, trades, symbols) are completely free and require no API key or registration. Private endpoints for trading require authentication.
What You Can Build
- Multi-exchange price comparison dashboard (Gemini vs. CoinBase vs. Kraken)
- Order book visualization showing buy/sell walls and market depth
- Spread monitoring tool tracking bid-ask spreads across pairs
- Trade history viewer and CSV export tool
- Price alert system that watches Gemini prices and sends notifications