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 verified 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
  • Search and filter by country, license, or keyword
  • 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.pages.dev/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? Request one here. Keys are reviewed and approved within 24-48 hours.

GET

/api/casinos

Returns a paginated list of published casinos with filtering by country or license.

Query Parameters

Parameter Type Default Description
page integer 1 Page number for pagination
limit integer 20 Results per page (max: 100)
country string Filter by country code (e.g., UK, CA, NZ)
license string Filter by license authority (e.g., MGA, UKGC, Curacao)

Example Request

GET /api/v1/casinos?page=1&limit=10&country=UK
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.pages.dev/media/logos/playojo.png"
    }
  ],
  "meta": {
    "total": 1624,
    "page": 1,
    "limit": 10,
    "pages": 163
  }
}
GET

/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.pages.dev/media/logos/playojo.png",
      "licensing_details": {
        "license_expiry": "2027-12-31",
        "regulatory_certifications": ["eCOGRA", "iTech Labs"]
      },
      "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_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"
      }
    ]
  }
}
GET

/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_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.pages.dev/api/v1';

async function fetchUKCasinos() {
  const response = await fetch(`${BASE_URL}/casinos?country=UK&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.pages.dev/api/v1'

# Fetch UK-licensed casinos
def fetch_uk_casinos():
    headers = {'Authorization': f'Bearer {API_KEY}'}
    params = {'country': 'UK', '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 UK-licensed casinos
$apiKey = getenv('BRANDBING_API_KEY');
$baseUrl = 'https://brandbing.pages.dev/api/v1';

$url = $baseUrl . '/casinos?country=UK&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 Your API Key

Request an API key for authenticated access to all endpoints. Keys are reviewed and approved within 24-48 hours.

We'll send your API key to this address once approved.

If you're an Everflow affiliate, include your ID for tracking.

Max 500 characters. Tell us about your project.

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 api@brandbing.com.