{"openapi":"3.0.3","info":{"title":"API Games Brasil","version":"2.3.0","description":"Catalogo agrupado por provedor, abertura de jogo e carteira do integrador."},"servers":[{"url":"https://apigamesbrasil.online"}],"components":{"securitySchemes":{"agentToken":{"type":"apiKey","in":"header","name":"X-AGB-Agent"},"secretKey":{"type":"apiKey","in":"header","name":"X-AGB-Secret"}},"schemas":{"LaunchRequest":{"type":"object","required":["user_code","user_balance"],"properties":{"provider":{"type":"string","description":"Opcional quando game_code existir em mais de um provedor."},"launch_id":{"type":"string","example":"WG:3049","description":"Identificador global retornado pelo catalogo."},"game_code":{"type":"string","description":"Aceita tambem o ID remoto do jogo."},"user_code":{"type":"string"},"user_balance":{"type":"number","format":"float"},"lang":{"type":"string","default":"pt"},"currency":{"type":"string","default":"BRL"}}},"LaunchResponse":{"type":"object","properties":{"status":{"type":"boolean"},"launch_url":{"type":"string","format":"uri"},"provider":{"type":"string"},"name":{"type":"string"}}}}},"paths":{"/healthz":{"get":{"summary":"Status publico do agregador","responses":{"200":{"description":"Servico ativo"}}}},"/api/v2/providers":{"get":{"summary":"Listar provedores","security":[{"agentToken":[],"secretKey":[]}],"responses":{"200":{"description":"Catalogo de provedores"}}}},"/api/v2/games":{"get":{"summary":"Listar jogos","security":[{"agentToken":[],"secretKey":[]}],"parameters":[{"name":"provider","in":"query","schema":{"type":"string"},"required":false}],"responses":{"200":{"description":"Catalogo unificado de jogos"}}}},"/api/v2/catalog":{"get":{"summary":"Listar jogos agrupados por provedor","description":"Cada categoria traz o nome comercial do provedor e os jogos liberados, com nome, tipo, launch_id e cover_url.","security":[{"agentToken":[],"secretKey":[]}],"parameters":[{"name":"provider","in":"query","schema":{"type":"string"},"required":false}],"responses":{"200":{"description":"Categorias com jogos, nomes e imagens"}}}},"/api/v2/game_launch":{"post":{"summary":"Iniciar sessao de jogo","security":[{"agentToken":[],"secretKey":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LaunchRequest"}}}},"responses":{"200":{"description":"Launch criado","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LaunchResponse"}}}}}}},"/api/v1/pg-free-rounds/games":{"get":{"summary":"Listar jogos PGSOFT com carteira V4 para rodadas gratis","security":[{"agentToken":[],"secretKey":[]}],"responses":{"200":{"description":"Catalogo PGSOFT V4"}}}},"/api/v1/pg-free-rounds/grant":{"post":{"summary":"Conceder rodadas gratis PGSOFT V4","security":[{"agentToken":[],"secretKey":[]}],"responses":{"200":{"description":"Rodadas criadas"}}}},"/api/v1/pg-free-rounds/status":{"post":{"summary":"Consultar rodadas gratis PGSOFT V4","security":[{"agentToken":[],"secretKey":[]}],"responses":{"200":{"description":"Status da campanha"}}}},"/api/v2/balances":{"get":{"summary":"Consultar saldo do jogador","security":[{"agentToken":[],"secretKey":[]}],"parameters":[{"name":"user_code","in":"query","required":true,"schema":{"type":"string"}},{"name":"provider","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Saldo atual"}}}},"/api/v2/agent":{"get":{"summary":"Consultar agente autenticado","security":[{"agentToken":[],"secretKey":[]}],"responses":{"200":{"description":"Dados do agente"}}},"put":{"summary":"Atualizar callback de carteira","security":[{"agentToken":[],"secretKey":[]}],"responses":{"200":{"description":"Callback atualizado"}}}},"/api/v2/wallet/test":{"post":{"summary":"Testar o webhook assinado da carteira","description":"Envia method signature_test com X-AGB-Agent, X-AGB-Timestamp e X-AGB-Signature. A carteira responde status true e balance 0 sem mover saldo.","security":[{"agentToken":[],"secretKey":[]}],"responses":{"200":{"description":"Assinatura aceita pela carteira"}}}},"/api/webhook/{provider}":{"post":{"summary":"Callback normalizado do provedor","parameters":[{"name":"provider","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Evento processado sem duplicar transacao"}}}}}}