Real-Time Game Data API

Get instant access to crash and roulette game data from Duel.com. Build powerful applications with our reliable, fast API.

0
Crash Games Tracked
0
Roulette Spins Tracked
99.9%
Uptime

Why Choose DuelAPI?

Real-Time Data

Get game data as it happens. Our API updates instantly with every crash and spin.

🔒

Secure & Reliable

API key authentication ensures your data stays secure. 99.9% uptime guarantee.

📊

Comprehensive Data

Access crash multipliers, roulette spins, statistics, and historical data.

🚀

Easy Integration

Simple REST API with clear documentation. Get started in minutes.

🌐

Global Access

Accessible from anywhere. CORS enabled for web applications.

📈

Statistics Included

Built-in statistics endpoints for averages, min/max, and distribution data.

🛡️

Robust & Resilient

Handles large payloads (50MB), auto-fixes missing data, prevents duplicates, and normalizes timestamps automatically.

⚙️

Lenient Validation

Accepts partial data and auto-generates missing fields. Only requires essential fields for maximum compatibility.

API Documentation

Base URL: https://api.duelapi.com

All endpoints require authentication using an API key in the X-API-Key header.

✨ Robust API Features:
  • Handles large payloads up to 50MB
  • 60-second timeout for reliable data transfer
  • Auto-generates missing timestamps
  • Prevents duplicate entries automatically
  • Lenient validation - only requires essential fields

Authentication

Include your API key in the request header:

X-API-Key: cr_your_read_key_here
GET /health No Auth

Check API status and get basic statistics. Rate limited to 60 requests per minute per IP.

Example Request:
curl https://api.duelapi.com/health
Example Response:
{
  "status": "ok",
  "uptime": 12345.67,
  "totalSpins": 150,
  "totalRoulette": 120,
  "totalCrashes": 30
}
GET /crash/recent Auth Required

Get the most recent crash game rounds.

Query Parameters:
  • limit (optional): Number of crashes to return (default: 10, max: 1000)

Note: Handles large responses efficiently. Supports up to 1000 items per request.

Example 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
    }
  ]
}
GET /roulette/recent Auth Required

Get the most recent roulette spins.

Query Parameters:
  • limit (optional): Number of spins to return (default: 10, max: 1000)

Note: Handles large responses efficiently. Supports up to 1000 items per request.

Example 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"
    }
  ]
}
GET /crash/last Auth Required

Get the most recent crash game.

Example Request:
curl -H "X-API-Key: your_key" \
  "https://api.duelapi.com/crash/last"
GET /roulette/last Auth Required

Get the most recent roulette spin.

Example Request:
curl -H "X-API-Key: your_key" \
  "https://api.duelapi.com/roulette/last"
GET /crash/stats Auth Required

Get comprehensive statistics about crash games.

Example Response:
{
  "total": 150,
  "averageMultiplier": 2.45,
  "minMultiplier": 1.01,
  "maxMultiplier": 10.23,
  "byMultiplier": {
    "1.5": 20,
    "2.0": 15
  }
}

Code Examples

Get Recent Crashes

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);

Get Last Crash

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`);

Error Handling

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);
}

Get Recent Crashes

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)

Get Last Crash

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")

Error Handling

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}")

Get Recent Crashes

curl -H "X-API-Key: your_api_key_here" \
  "https://api.duelapi.com/crash/recent?limit=10"

Get Last Crash

curl -H "X-API-Key: your_api_key_here" \
  "https://api.duelapi.com/crash/last"

Get Crash Statistics

curl -H "X-API-Key: your_api_key_here" \
  "https://api.duelapi.com/crash/stats"

With Timeout (for large requests)

curl --max-time 60 \
  -H "X-API-Key: your_api_key_here" \
  "https://api.duelapi.com/crash/recent?limit=1000"

Built for Reliability

🔄 Auto-Recovery

Missing timestamps are auto-generated. Malformed data is normalized automatically.

🛡️ Duplicate Prevention

Duplicate entries are detected and updated instead of creating conflicts.

📦 Large Payload Support

Handles requests up to 50MB with 60-second timeouts for reliable data transfer.

✅ Lenient Validation

Only requires essential fields. Partial data is accepted and auto-completed.

Get Started

Start using DuelAPI today. Contact us on Discord to get your API key.

API Access

$70/month
  • ✅ Infinite requests per month
  • ✅ Real-time crash data
  • ✅ Real-time roulette data
  • ✅ Historical data access
  • ✅ Statistics endpoints
  • ✅ 99.9% uptime
  • ✅ API key authentication
Discord: pumpedeth