Integre em minutes
Embeda nossos jogos no seu site com uma única tag <iframe>. Sem SDK, sem build, sem dor de cabeça.
Integration wizard
~3 minValidate your domain, generate a demo token and confirm the iframe — all here, without leaving the page.
Without https://. Ex: meusite.com, app.meusite.com ou localhost.
Quick start (60 segundos)
Paste this tag in your HTML. Done — the game loads.
<iframe
src="https://i-gaming.co/games/gold-tiger-slot?token=SEU_TOKEN&player=ID_DO_JOGADOR&lang=pt¤cy=BRL"
width="100%"
height="720"
allow="autoplay; fullscreen"
style="border:0; border-radius:12px;"
></iframe>Step by step
Request your integration token
Talk to the team using the form at /operators or use the token demo to test now.
You will receive a token in the format mt_xxxxxxxxxxxx com permissões e domínios autorizados (whitelist).
Register authorized domains
Informe os domínios onde o iframe vai rodar (ex: meusite.com). Apenas esses domínios poderão embedar — protege contra clonagem.
{
"name": "Site Principal",
"allowed_domains": ["meusite.com", "staging.meusite.com"]
}Valide o token (opcional, recomendado)
Before rendering, confirm if the token is active and which domains are allowed:
curl https://i-gaming.co/api/public/v1/auth/introspect \
-H "X-Operator-Token: SEU_TOKEN"Use X-Operator-Token as a standard header. Authorization: Bearer e x-api-key are also accepted, but some CDNs/proxies remove the header Authorization em rotas públicas.
Embed the iframe
Point the src to the desired game by passing the token and player parameters.
<iframe src="https://i-gaming.co/games/mergulho-ao-tesouro?token=SEU_TOKEN&player=USER123¤cy=BRL"
width="100%" height="720" allow="autoplay; fullscreen" style="border:0"></iframe>API Endpoints
Base URL: https://i-gaming.co/api/public/v1. Authentication via header X-Operator-Token: <token> (recomendado). Também aceitamos x-api-key e Authorization: Bearer <token> — este último pode ser filtrado por CDNs/proxies em algumas redes.
/auth/verify/auth/introspect/operator/stats?days=30/round/current/tokens/tokens/tokens?id=Example:
curl https://i-gaming.co/api/public/v1/stats?days=7 \
-H "X-Operator-Token: SEU_TOKEN"Iframe parameters
URL: https://i-gaming.co/games/<slug>?...
| Param | Required | Description |
|---|---|---|
| token | sim | Token Bearer do operador. |
| player | sim | ID único do jogador no seu sistema. |
| currency | no | BRL · USD · EUR (default: BRL) |
| lang | no | pt · en · es (default: pt) |
| mode | no | real · demo (default: real) |
| return_url | no | URL de retorno ao fechar o jogo. |
Available games:
/games/gold-tiger-slot/games/money-money/games/mega-blocs/games/tower-treasure/games/brasil-bingo/games/fruta-explosiva/games/boom-mines/games/corrida-de-moto/games/piratas-mines/games/mergulho-ao-tesouro/games/india-rush/games/deuses-da-terra/games/dragao-imperial/games/farao-dourado/games/los-muertos/games/tropical-slot/games/favela-slot/games/caramelo-da-sorte/games/capivara-milionaria/games/boteco-da-sorteSecurity
- HTTPS + HSTS on all subdomains.
- CSP
frame-ancestorsdynamically assembled from your whitelist — only registered domains can embed. - Hashed tokens (SHA-256). O segredo é exibido uma única vez na emissão.
- Audit de cada validação de token e tentativa de render bloqueada (operador, IP, motivo).
- Immediate revocation via API or panel.
Proxy / CDN — configuração canônica
Todos os ambientes (produção + preview) e todos os 20 jogos devem seguir a mesma ordem de headers e allowlist de proxies para evitar divergência de IP, logs e rate-limit.
cf-connecting-ip— Cloudflaretrue-client-ip— Akamai / CF Enterprisex-real-ip— internal nginxx-forwarded-for— first entry
- Production: Cloudflare only (nuvem laranja)
- Preview: Lovable edge
- CDN bypass ⇒ 403 at origin
- No external proxy without review
ip_miss.Responsible gaming
A plataforma inclui um sistema opcional de automatic responsible gaming warnings, exibido por cima do iframe pelo próprio portal — sem alterar o código dos jogos. Cada operador habilita, desabilita e ajusta os limites em /operator → Config → Responsible Gaming.
Para cada gatilho o operador escolhe uma action independente:
- Soft banner — discreet warning overlaid on the game, the player continues normally.
- Modal with confirmation — blocks until the player clicks on "continue".
- Mandatory cooldown — pausa o jogo por X minutos (configurável) antes de liberar.
Troubleshooting
Refused to display ... frame-ancestors. Add the domain in /operator → Tokens./auth/introspect para confirmar o status.allowed_domains. Cadastre o domínio (sem https://).Os dois headers autenticam a mesma requisição. Use X-Operator-Token as default — alguns CDNs/proxies/WAFs (Cloudflare em regras corporativas, App Gateway, alguns balanceadores TLS) removem ou reescrevem o header Authorization in public routes, which causes it to fall into 401 missing_bearer mesmo com token válido.
Sinais no painel de alertas (Admin → Segurança → Alertas auth / Tendências auth):
missing_bearer_spikeactive e recent requests withheader_type = nonecoming from your IP → your proxy is stripping theAuthorization. Migrate toX-Operator-Token.bearer_stripping_suspected— the reason for the failure ismissing_bearer, but the same origin has already sentAuthorization: Bearerbefore successfully. Confirmation of intermediate stripping — change the header.token_invalid_spikecomheader_type = bearer→ the header arrives, o problema é o token (expirado/rotacionado). Não muda paraX-Operator-Token— regenerate the token.- No active alerts and integration working → keep the header you are already using.
Como validar em 30s: chame /api/public/v1/auth/check with each header and compare — if Authorization returns 401 and X-Operator-Token returns 200, stripping is guaranteed. The endpoint /api/public/v1/health/integration reports the header_type detectado nas últimas requisições.