iGaming Finder

Base URL

All API requests use:

text
https://api.igamingfinder.com/api/v1/igaming

Authenticate with X-API-Key or Authorization: Bearer header. See Authentication.

GET /domains

COST 0 credits / request

Search and filter iGaming operator domains. Use filters to narrow by jurisdiction, payment method, game provider, geo hint, or enrichment freshness.

GET /api/v1/igaming/domains
Authorization
string
Query
string

License jurisdiction (mga, ukgc, curacao, anjouan)

string

Payment category (card, crypto, ewallet, bank_transfer, open_banking, local_apm)

string

Normalized provider name (evolution, pragmatic-play)

string

Exclude domains with this provider

string

Exclude domains with this payment category

boolean

Only domains with affiliate programs

string

Geographic targeting hint

ISO 8601

Only domains enriched after this timestamp

integer
integer

Results per page (max 500)

Example response200
{
  "success": true,
  "data": {
    "domains": [
      {
        "domain_normalized": "stake.com",
        "operator_name": "Medium Rare N.V.",
        "last_enriched_at": "2026-05-01T08:15:00Z"
      }
    ],
    "total": 142,
    "page": 1,
    "per_page": 10
  }
}

GET /domains/:domain

Get the full enrichment profile for a single domain.

Path parameters:

Name Type Required Description
domain string yes Domain name (e.g. stake.com)

Query parameters:

Name Type Required Default Description
include[] string no all Sections to include: licenses, payment_methods, game_providers, affiliate_programs, geo, related_domains

Cost: 0 credits / request

bash
curl -H "X-API-Key: YOUR_API_KEY" \
  "https://api.igamingfinder.com/api/v1/igaming/domains/stake.com?include[]=licenses&include[]=payment_methods"

Response:

json
{
  "success": true,
  "data": {
    "domain": "stake.com",
    "domain_normalized": "stake.com",
    "status": "enriched",
    "last_enriched_at": "2026-05-01T08:15:00Z",
    "operator": {
      "name": "Medium Rare N.V.",
      "legal_entity_name": "Medium Rare N.V.",
      "country_of_incorporation": "CW"
    },
    "brand": { "name": "Stake", "slug": "stake" },
    "licenses": [
      {
        "jurisdiction": "curacao",
        "license_number": "GLH-OCCHKTW0000000",
        "status": "active",
        "source_url": "https://www.gaming-curacao.com/",
        "first_seen_at": "2026-04-15T00:00:00Z",
        "last_confirmed_at": "2026-05-01T08:15:00Z"
      }
    ],
    "payment_methods": [
      {
        "normalized_name": "bitcoin",
        "category": "crypto",
        "confidence": "high",
        "first_seen_at": "2026-04-15T00:00:00Z",
        "last_confirmed_at": "2026-05-01T08:15:00Z"
      }
    ],
    "meta": {
      "freshness_age_seconds": 172800,
      "served_from_cache": true,
      "billable": false,
      "observed_at": "2026-05-01T08:15:00Z"
    }
  }
}

Errors:

Status Meaning
404 Domain not found in the database

POST /enrichments

Start a domain enrichment run. Returns cached data if a recent enrichment exists, otherwise starts a new run.

Request body:

Name Type Required Default Description
domain string yes Domain to enrich
strategy string no "full" Enrichment strategy

Cost: 10 credits (0 if cached)

bash
curl -X POST -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"domain": "roobet.com"}' \
  https://api.igamingfinder.com/api/v1/igaming/enrichments

Response (cached, 200):

json
{
  "success": true,
  "data": {
    "domain": "roobet.com",
    "status": "enriched",
    "last_enriched_at": "2026-05-01T12:00:00Z",
    "meta": {
      "served_from_cache": true,
      "billable": false
    }
  }
}

Response (new run, 202):

json
{
  "success": true,
  "message": "Enrichment started",
  "data": {
    "enrichment_run_id": 42,
    "poll_url": "/api/v1/igaming/enrichment_runs/42",
    "cached": false,
    "billable": true
  }
}

Errors:

Status Meaning
429 Monthly credit quota exceeded
$ help --topic=info
Enrichment takes 30-120 seconds. Poll the poll_url to check progress.

GET /enrichment_runs/:id

Poll the status of an enrichment run.

Path parameters:

Name Type Required Description
id integer yes Enrichment run ID (from POST /enrichments response)

Cost: 0 credits / request

bash
curl -H "X-API-Key: YOUR_API_KEY" \
  https://api.igamingfinder.com/api/v1/igaming/enrichment_runs/42

Response (pending):

json
{
  "success": true,
  "data": {
    "id": 42,
    "status": "pending",
    "domain": "roobet.com",
    "strategy": "full",
    "started_at": "2026-05-03T10:30:00Z",
    "completed_at": null
  }
}

Response (completed):

json
{
  "success": true,
  "data": {
    "id": 42,
    "status": "completed",
    "domain": "roobet.com",
    "strategy": "full",
    "started_at": "2026-05-03T10:30:00Z",
    "completed_at": "2026-05-03T10:32:15Z",
    "enrichment": {
      "domain_normalized": "roobet.com",
      "status": "enriched",
      "last_enriched_at": "2026-05-03T10:32:15Z"
    }
  }
}

Response (failed):

json
{
  "success": true,
  "data": {
    "id": 42,
    "status": "failed",
    "error_details": {
      "error": "Timeout during enrichment",
      "error_type": "timeout"
    }
  }
}

GET /account

Get your current plan and credit usage.

Cost: 0 credits / request

bash
curl -H "X-API-Key: YOUR_API_KEY" \
  https://api.igamingfinder.com/api/v1/igaming/account

Response:

json
{
  "success": true,
  "data": {
    "plan": "starter",
    "credits_granted": 2500,
    "credits_used": 120,
    "credits_reserved": 10,
    "available_credits": 2370
  }
}

[!NOTE] Credits are an upfront ledger: credits_granted accrues when your plan starts or renews and never expires — there is no monthly reset. credits_granted: null means no quota is enforced (internal accounts). Plan credit allowances are listed on the pricing page.

$ help --topic=warning
Deprecated: the response also includes monthly_credit_quota, monthly_credits_used, and monthly_credits_reserved as aliases of the fields above. They will be removed in a future release — migrate to the new names.

POST /exports

Create a bulk export of filtered domains as CSV or JSONL.

Request body:

Name Type Required Default Description
filters object no {} Same filter params as GET /domains
export_format string no "csv" "csv" or "json"
fields[] string[] no all Specific sections to include

Cost: Variable (based on result count)

bash
curl -X POST -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"filters": {"jurisdiction": "MGA"}, "export_format": "csv"}' \
  https://api.igamingfinder.com/api/v1/igaming/exports

Response (202):

json
{
  "success": true,
  "message": "Export queued",
  "data": {
    "export_id": 123,
    "poll_url": "/api/v1/igaming/exports/123"
  }
}

GET /exports/:id

Poll export status.

Path parameters:

Name Type Required Description
id integer yes Export ID

Cost: 0 credits / request

bash
curl -H "X-API-Key: YOUR_API_KEY" \
  https://api.igamingfinder.com/api/v1/igaming/exports/123

Response (completed):

json
{
  "success": true,
  "data": {
    "id": 123,
    "status": "completed",
    "format": "csv",
    "download_url": "/api/v1/igaming/exports/123/download",
    "total_rows": 5000,
    "credits_used": 50,
    "expires_at": "2026-05-10T10:30:00Z"
  }
}

GET /exports/:id/download

Download a completed export file.

Cost: 0 credits / request

bash
curl -H "X-API-Key: YOUR_API_KEY" \
  -O https://api.igamingfinder.com/api/v1/igaming/exports/123/download

Returns the file as an attachment with Content-Disposition: attachment.

Errors:

Status Meaning
404 Export not found, still pending, or file expired