Skip to content

Getting started

The fastest path to a working integration. You won’t need an API key for this walk-through — the /v1/check endpoint is public at 10 requests per IP per hour.

Terminal window
curl https://api.igregulator.io/v1/check?domain=bet365.com

Response:

{
"query": { "domain": "bet365.com" },
"match": {
"confidence": "high",
"match_type": "domain_exact",
"operator": "Hillside (UK Sports) ENC",
"operator_slug": "hillside-uk-sports-enc",
"jurisdiction": "UKGC",
"license_number": "055148-R-331498-001",
"status": "active",
"expires_at": null,
"domain_association": "direct"
},
"alternatives": [],
"confidence": "high"
}

That’s it — no signup, no key. The match object is the answer; alternatives[] populates when we’re not 100% sure. See confidence scoring for the semantics.

Compliance teams often receive a licence number from a regulator and need the reverse lookup — who holds it and what’s its status? Same endpoint, different query param:

Terminal window
curl "https://api.igregulator.io/v1/check?license_number=055148-R-331498-001"

Returns the same { query, match, alternatives, confidence } shape; confidence: high when the licence number exists in the register, none otherwise. Pass ?domain= or ?license_number=, not both.

Terminal window
curl https://api.igregulator.io/v1/check?domain=paddypower.com

This domain isn’t in our authoritative registry, but the trading-name fuzzy fallback finds it:

{
"query": { "domain": "paddypower.com" },
"match": {
"confidence": "medium",
"match_type": "trading_name_fuzzy",
"operator": "Power Leisure Bookmakers Limited",
"license_number": "001034-R-315831-012"
},
"alternatives": [
{ "operator": "PPB Counterparty Services Limited", "similarity": 1 },
{ "operator": "PPB Entertainment Limited", "similarity": 1 },
{ "operator": "PPB GE Limited", "similarity": 1 }
]
}

Because paddypower.com trigram-matches four Flutter group entities at similarity 1.0, primary selection falls through a documented tiebreaker cascade — see confidence scoring → Tiebreaking.

When you hit the 10-per-hour ceiling, or you need:

  • Higher volume (10k / 100k / unlimited depending on tier)
  • The authenticated endpoints: /v1/operators/:slug, /v1/licenses/*
  • Full search results (unauthenticated search caps at 3 rows)

Create a free account — founding members get the full Starter plan free, no card. Generate a key at app.igregulator.io/api-keys and attach it with a Bearer header:

Terminal window
curl -H "Authorization: Bearer YOUR_KEY" \
https://api.igregulator.io/v1/operators/search?q=paddy

Paste any endpoint into the API playground on this site — it’s a Scalar-powered try-it-out that runs against the live production API. For authenticated endpoints, paste your key into the Authorize dialog and execute without leaving the page.

All /v1/* endpoints are maintained indefinitely. When /v2/* lands, both versions will run in parallel for a minimum of 12 months. Individual fields inside v1 get at least 90 days notice before removal, surfaced via Deprecation: true + Sunset response headers (RFC 9745). Full policy in the changelog.