Get instant access to crash and roulette game data from Duel.com. Build powerful applications with our reliable, fast API.
Get game data as it happens. Our API updates instantly with every crash and spin.
API key authentication ensures your data stays secure. 99.9% uptime guarantee.
Access crash multipliers, roulette spins, statistics, and historical data.
Simple REST API with clear documentation. Get started in minutes.
Accessible from anywhere. CORS enabled for web applications.
Built-in statistics endpoints for averages, min/max, and distribution data.
Handles large payloads (50MB), auto-fixes missing data, prevents duplicates, and normalizes timestamps automatically.
Accepts partial data and auto-generates missing fields. Only requires essential fields for maximum compatibility.
Base URL: https://api.duelapi.com
All endpoints require authentication using an API key in the X-API-Key header.
Include your API key in the request header:
X-API-Key: cr_your_read_key_here
/health
No Auth
Check API status and get basic statistics. Rate limited to 60 requests per minute per IP.
curl https://api.duelapi.com/health
Example Response:
{
"status": "ok",
"uptime": 12345.67,
"totalSpins": 150,
"totalRoulette": 120,
"totalCrashes": 30
}
/crash/recent
Auth Required
Get the most recent crash game rounds.
limit (optional): Number of crashes to return (default: 10, max: 1000)Note: Handles large responses efficiently. Supports up to 1000 items per request.
curl -H "X-API-Key: your_key" \
"https://api.duelapi.com/crash/recent?limit=5"
Example Response:
{
"total": 150,
"recent": [
{
"game": "crash",
"round": 455814,
"multiplier": 1.60,
"timestamp": 1765481292567,
"isoTimestamp": "2025-12-11T20:12:31.815Z",
"state": "crashed",
"nextRound": 455815
}
]
}
/roulette/recent
Auth Required
Get the most recent roulette spins.
limit (optional): Number of spins to return (default: 10, max: 1000)Note: Handles large responses efficiently. Supports up to 1000 items per request.
curl -H "X-API-Key: your_key" \
"https://api.duelapi.com/roulette/recent?limit=5"
Example Response:
{
"total": 200,
"recent": [
{
"game": "roulette",
"multiplier": 2,
"coinName": "Red",
"timestamp": 1765481292567,
"isoTimestamp": "2025-12-11T20:12:31.815Z"
}
]
}
/crash/last
Auth Required
Get the most recent crash game.
curl -H "X-API-Key: your_key" \
"https://api.duelapi.com/crash/last"
/roulette/last
Auth Required
Get the most recent roulette spin.
curl -H "X-API-Key: your_key" \
"https://api.duelapi.com/roulette/last"
/crash/stats
Auth Required
Get comprehensive statistics about crash games.
{
"total": 150,
"averageMultiplier": 2.45,
"minMultiplier": 1.01,
"maxMultiplier": 10.23,
"byMultiplier": {
"1.5": 20,
"2.0": 15
}
}
const apiKey = 'your_api_key_here';
const response = await fetch(
'https://api.duelapi.com/crash/recent?limit=10',
{
headers: {
'X-API-Key': apiKey
}
}
);
const data = await response.json();
console.log(data);
const response = await fetch(
'https://api.duelapi.com/crash/last',
{
headers: {
'X-API-Key': apiKey
}
}
);
const lastCrash = await response.json();
console.log(`Last crash: ${lastCrash.lastCrash.multiplier}x`);
try {
const response = await fetch(
'https://api.duelapi.com/crash/recent?limit=100',
{ headers: { 'X-API-Key': apiKey } }
);
if (!response.ok) {
throw new Error(`API error: ${response.status}`);
}
const data = await response.json();
console.log(`Received ${data.recent.length} crashes`);
} catch (error) {
console.error('Request failed:', error.message);
}
import requests
api_key = 'your_api_key_here'
headers = {'X-API-Key': api_key}
response = requests.get(
'https://api.duelapi.com/crash/recent?limit=10',
headers=headers,
timeout=60 # 60 second timeout for large responses
)
data = response.json()
print(data)
response = requests.get(
'https://api.duelapi.com/crash/last',
headers=headers,
timeout=60
)
last_crash = response.json()
print(f"Last crash: {last_crash['lastCrash']['multiplier']}x")
try:
response = requests.get(
'https://api.duelapi.com/crash/recent?limit=100',
headers=headers,
timeout=60
)
response.raise_for_status()
data = response.json()
print(f"Received {len(data['recent'])} crashes")
except requests.exceptions.RequestException as e:
print(f"Request failed: {e}")
curl -H "X-API-Key: your_api_key_here" \
"https://api.duelapi.com/crash/recent?limit=10"
curl -H "X-API-Key: your_api_key_here" \
"https://api.duelapi.com/crash/last"
curl -H "X-API-Key: your_api_key_here" \
"https://api.duelapi.com/crash/stats"
curl --max-time 60 \
-H "X-API-Key: your_api_key_here" \
"https://api.duelapi.com/crash/recent?limit=1000"
Missing timestamps are auto-generated. Malformed data is normalized automatically.
Duplicate entries are detected and updated instead of creating conflicts.
Handles requests up to 50MB with 60-second timeouts for reliable data transfer.
Only requires essential fields. Partial data is accepted and auto-completed.
Start using DuelAPI today. Contact us on Discord to get your API key.