Developer API
Access casino brand data programmatically via our public REST API. Build comparison tools, affiliate dashboards, or integrate brand sheets into your platform.
Overview
The Brandbing API provides read-only access to our casino brand database. Perfect for affiliates, comparison sites, and igaming platforms looking to integrate structured casino data.
What You Get
- 80+ data points per casino (licensing, games, payments, bonuses)
- Calculated safety index (0-10) based on license quality
- Active bonus offers with terms and conditions
- Filter by license authority
- CORS-enabled JSON responses for frontend integration
Who It's For
- Affiliate marketers building comparison tools
- iGaming platforms integrating casino data
- Data analysts researching industry trends
- Developers building casino discovery apps
Base URL
https://brandbing.com/api/v1
Authentication
All API endpoints require authentication via API key. Include your key in the Authorization header as a Bearer token.
Request Headers
Authorization: Bearer YOUR_API_KEY Security: Never expose your API key in client-side code. Use environment variables and make requests from your backend server.
Don't have an API key? Create a free developer account and self-issue one instantly.
Use with Claude Code & AI Agents
The API ships machine-readable descriptions so an agent can wire itself up from a link and a key — no hand-written client needed.
OpenAPI 3.1 specification
Complete spec — endpoints, parameters, schemas, auth. Point a code generator or agent at it.
/api/v1/openapi.jsonllms.txt
Agent-friendly plain-text index and full reference at the site root.
/llms.txt · /llms-full.txtIn Claude Code — MCP server (native tools)
Connect Brandbing as a hosted MCP server and Claude Code gets four typed tools — search_casinos, get_casino, get_bonuses, compare_casinos — instead of hand-rolling a client:
claude mcp add --transport http brandbing \
https://mcp.brandbing.com/mcp \
--header "Authorization: Bearer YOUR_API_KEY" Prefer to build your own client? Give Claude Code the OpenAPI URL above and your key — it can read the spec and call the endpoints directly.
/api/casinos
Returns a paginated list of published casinos with optional filtering by license.
Query Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| page | integer | 1 | Page number for pagination |
| limit | integer | 20 | Results per page (max: 100) |
| license | string | — | Filter by license authority (e.g., MGA, UKGC, Curacao) |
Example Request
GET /api/v1/casinos?page=1&limit=10&license=MGA
Authorization: Bearer YOUR_API_KEY Example Response
{
"data": [
{
"id": "abc123",
"name": "PlayOJO",
"slug": "playojo",
"website": "https://www.playojo.com",
"year_founded": 2017,
"license": "UK Gambling Commission, Malta Gaming Authority",
"safety_index": 8,
"editor_rating": 4.5,
"affiliate_url": "https://tracking.playojo.com/affiliate",
"logo": "https://brandbing.com/media/logos/playojo.png"
}
],
"meta": {
"total": 250,
"page": 1,
"limit": 10,
"pages": 163
}
} /api/casinos/{slug}
Retrieve complete brand sheet data for a single casino by its URL slug. Returns casino object with all 80+ data points plus active bonuses.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| slug | string | Casino URL slug (e.g., "888-casino", "betway") |
Example Request
GET /api/v1/casinos/playojo
Authorization: Bearer YOUR_API_KEY Example Response (truncated)
{
"data": {
"casino": {
"id": "abc123",
"name": "PlayOJO",
"slug": "playojo",
"website_url": "https://www.playojo.com",
"established_year": 2017,
"license": "UK Gambling Commission, Malta Gaming Authority",
"safety_index": 8,
"editor_rating": 4.5,
"editorial_summary": "No wagering requirements...",
"pros": ["Fair play focus", "No wagering requirements"],
"cons": ["Limited live chat hours"],
"affiliate_url": "https://tracking.playojo.com/affiliate",
"logo": "https://brandbing.com/media/logos/playojo.png",
"game_details": {
"rtp_range_min": 94.5,
"rtp_range_max": 98.2
},
"game_details": {
"slots_count": 3000,
"table_games_count": 450,
"live_dealer_available": true,
"demo_mode_available": true
},
"payment_details": {
"deposit_methods": ["Visa", "Mastercard", "PayPal", "Skrill"],
"withdrawal_methods": ["Bank Transfer", "PayPal", "Neteller"],
"min_deposit": 10,
"max_payout": 100000,
"withdrawal_time": "24-48 hours"
}
},
"bonuses": [
{
"id": "xyz789",
"bonus_name": "Welcome Bonus",
"bonus_type": "No Wagering Free Spins",
"bonus_code": "OJO50",
"bonus_amount": 0,
"wagering_requirement": "None",
"free_spins_count": 50,
"min_deposit": 10,
"valid_until": "2026-12-31T23:59:59Z",
"terms_conditions": "https://www.playojo.com/terms"
}
]
}
} /api/v1/casinos/{slug}/bonuses
Retrieve all active bonuses for a specific casino. Returns array of bonus objects without admin-only tracking fields.
Example Request
GET /api/v1/casinos/playojo/bonuses
Authorization: Bearer YOUR_API_KEY Example Response
{
"data": [
{
"id": "xyz789",
"bonus_name": "Welcome Bonus",
"bonus_type": "No Wagering Free Spins",
"bonus_code": "OJO50",
"bonus_amount": 0,
"wagering_requirement": "None",
"free_spins_count": 50,
"min_deposit": 10,
"valid_until": "2026-12-31T23:59:59Z",
"terms_conditions": "https://www.playojo.com/terms"
}
]
} Note: This endpoint returns only public bonus fields. Admin-specific fields like tracking_link are excluded for security.
Code Examples
Sample code for integrating the Brandbing API in popular languages. All examples use the same authentication pattern and endpoints.
JavaScript (Node.js / fetch)
// Fetch UK-licensed casinos
const API_KEY = process.env.BRANDBING_API_KEY;
const BASE_URL = 'https://brandbing.com/api/v1';
async function fetchMGACasinos() {
const response = await fetch(`${BASE_URL}/casinos?license=MGA&limit=50`, {
headers: {
'Authorization': `Bearer ${API_KEY}`
}
});
const data = await response.json();
return data;
}
// Fetch single casino with bonuses
async function fetchCasino(slug) {
const response = await fetch(`${BASE_URL}/casinos/${slug}`, {
headers: {
'Authorization': `Bearer ${API_KEY}`
}
});
const data = await response.json();
return data.data; // Returns { casino, bonuses }
} Python (requests)
import os
import requests
API_KEY = os.getenv('BRANDBING_API_KEY')
BASE_URL = 'https://brandbing.com/api/v1'
# Fetch MGA-licensed casinos
def fetch_mga_casinos():
headers = {'Authorization': f'Bearer {API_KEY}'}
params = {'license': 'MGA', 'limit': 50}
response = requests.get(
f'{BASE_URL}/casinos',
headers=headers,
params=params
)
response.raise_for_status()
return response.json()
# Fetch single casino with bonuses
def fetch_casino(slug):
headers = {'Authorization': f'Bearer {API_KEY}'}
response = requests.get(
f'{BASE_URL}/casinos/{slug}',
headers=headers
)
response.raise_for_status()
return response.json()['data'] PHP
// Fetch MGA-licensed casinos
$apiKey = getenv('BRANDBING_API_KEY');
$baseUrl = 'https://brandbing.com/api/v1';
$url = $baseUrl . '/casinos?license=MGA&limit=50';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $apiKey
]);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($httpCode !== 200) {
throw new Exception("HTTP error: $httpCode");
}
$data = json_decode($response, true);
return $data; Get Started
Create a free developer account to instantly self-issue an API key — no waiting for approval. Free tier includes 100 requests/minute and 10,000 requests/month.
Already have an account? Sign in to manage your keys.
Higher-Tier Access
Need more than the free tier? Request higher rate limits and monthly quota. These requests are reviewed and approved within 24-48 hours.
Rate Limiting
All API endpoints enforce a rate limit of 100 requests per minute per API key. If you exceed this limit, you'll receive a 429 error with a Retry-After: 60 header.
Fair Use Policy
This API is intended for legitimate affiliate marketing, comparison tools, and data analysis. Bulk scraping, reselling data, or commercial redistribution is prohibited. For bulk data access or commercial integrations, contact us at [email protected].