Alternar Tema
Carregando

Documentação
API

Bem-vindo ao portal de desenvolvedores do Brix! Conecte seu bot parceiro ou aplicação externa aos nossos serviços: conversão de moedas, consulta de perfil de usuários e muito mais, kyu~!

Documentação da API do Brix

API do Brix: Portal de Desenvolvedores

Bem-vindo ao portal oficial de API do Brix! Aqui você encontra a documentação detalhada para integrar seu bot parceiro ou aplicação externa aos nossos serviços. Nossa API HTTP permite realizar conversão de moedas, consultar dados de usuários e expandir as integrações com o ecossistema do Brix, kyu~!

Autenticação & Como Obter um Token

A autenticação em toda a API do Brix é realizada de forma padronizada através do cabeçalho HTTP Authorization com o token de validação único fornecido exclusivamente para o seu bot ou aplicação.

Header Valor
Authorization brix_SEU_TOKEN_AQUI
Para solicitar seu token: No momento, apenas bots e desenvolvedores convidados previamente podem solicitar um token. Caso você tenha sido convidado, entre em contato diretamente através do servidor oficial de suporte, informando mais detalhes sobre seu projeto e como deseja integrar ao sistema.

API de Conversão de Moedas ( /api/pix )

Esta API permite a conversão bidirecional de moedas entre seu bot parceiro e o ecossistema do Brix. Seus usuários podem converter sua moeda em Braixencoin, e o Brix também pode disparar solicitações para o seu bot converter Braixencoin de volta para a sua moeda.

Endpoint (/api/pix)

O Brix recebe as solicitações de conversão via HTTP POST no endpoint central:

POST https://brixbot.xyz/api/pix

Mecanismo de Testes (Sandbox)

O Brix possui um sistema de testes integrado para facilitar a implementação da conversão de moedas:

  • Como testar: Envie a requisição sem o header de autorização ou com um token inválido.
  • O que acontece: O servidor aceitará a requisição (200 OK) mas marcará como teste (modo_teste: true).
  • Comportamento no Bot: O usuário passado no campo (user_id) receberá uma DM confirmando o teste, porém nenhum saldo será adicionado e nenhum log de transação será gerado, o (ref_id) será deletado automaticamente após o processamento.
Importante: Mesmo retornando 200 OK, nenhuma transação real é realizada no modo teste.

Corpo da Requisição (JSON)

O sistema usa termos em inglês universal, mantendo compatibilidade com diversos sistemas por apresentar um padrão único de identificação de campos.

Campo Tipo Requerido Descrição
user_id String / Int Sim ID do usuário no Discord que receberá a conversão.
amount Inteiro Sim Quantidade de moedas a converter.
ref_id String (24) Sim ID único de referência para a transação. Usado para evitar processamento duplicado caso a requisição seja reenviada. Padrão sugerido: 24 caracteres.
currency String Não Nome da moeda de origem. Se omitido, usa o padrão cadastrado.
currency_icon URL Não URL de imagem (PNG/JPG) usada como ícone da moeda na DM.

Exemplo cURL (Produção)

curl -X POST https://brixbot.xyz/api/pix \
     -H "Authorization: brix_seu_token_real" \
     -H "Content-Type: application/json" \
     -d '{
           "user_id": "123456789012345678",
           "amount": 654,
           "currency": "MinhaMoeda",
           "currency_icon": "https://meusite.com/moeda.png",
           "ref_id": "xN7pL9qY2mR5kH4vC8wB3jF1"
         }'

Taxas e Limites de Conversão

O sistema de conversão do Brix foi feito para ser simples, transparente e justo:

  • Sem taxas do Brix: O Brix não cobra nenhuma taxa para converter braixencoin para moedas externas, nem no caminho inverso. O valor enviado e recebido é exatamente o mesmo.
  • Limite de envio (usuários comuns): Usuários sem Brix Premium podem enviar até 1.000.000 braixencoin por transação, com limite de 1 envio por dia.
  • Envio com Brix Premium: Usuários com Brix Premium não possuem limite diário de envios, podendo realizar múltiplas transferências livremente (respeitando apenas o limite de 1.000.000 braixencoin).
  • Limite de recebimento: É possível receber até 10.000.000 braixencoin por transação, sem limite diário de recebimentos.
  • Taxas de bots parceiros: Bots externos podem aplicar taxas próprias nas conversões. Essas taxas não são controladas pelo Brix e devem ser informadas de forma clara ao usuário antes da transação.
  • Restrições do bot recebedor: O bot parceiro pode definir regras próprias (limites, validações ou bloqueios). Caso a transação não seja aceita, o webhook deve responder com um erro (status diferente de 200 OK). Nesse caso, o Brix irá cancelar a operação e devolver automaticamente os braixencoin ao usuário.

Respostas & Erros da API

Sucesso (200 OK)
{
  "~kyuuu": true,
  "modo_teste": false
}

• modo_teste: true indica que a requisição foi processada como teste (token inválido/ausente).

Erros Comuns
Código Descrição
400 Bad RequestJSON inválido ou mal formatado.
400 Bad RequestCampos obrigatórios ausentes (user_id, amount, ref_id).
400 Bad Requestuser_id deve ser numérico e maior que 0.
400 Bad Requestamount deve ser inteiro, maior que 0 e menor que 10.000.000.
400 Bad Requestcurrency inválida ou muito longa (máx. 50 caracteres).
400 Bad Requestcurrency_icon deve ser uma URL válida (http/https) e até 300 caracteres.
400 Bad Requestref_id deve ser uma string válida (24 caracteres alfanuméricos, _ ou -).
400 Bad RequestMetadados excessivos (máx. 20 campos).
400 Bad RequestMetadados muito grandes (chave até 50 chars, valor até 500 chars).
429 Too Many RequestsMuitas requisições pelo mesmo IP (rate limit global).
429 Too Many RequestsMuitas requisições para o mesmo usuário (rate limit por user_id).
200 OKTransação duplicada detectada (mesmo ref_id), ignorada com sucesso.
500 Internal ErrorErro inesperado no processamento interno do servidor.

Webhook de Retorno (Brix → Parceiro)

O Brix também pode disparar solicitações para o seu bot quando um usuário utiliza o comando /bc transferir. Nesse fluxo, Braixencoins são convertidos de volta para a moeda do seu sistema.

Para receber transferências do Brix, você deve fornecer um webhook URL durante o cadastro da parceria. O Brix enviará um POST para esse endereço usando o mesmo token de validação no cabeçalho Authorization.

POST https://seubot.xyz/seu-webhook
Payload Enviado pelo Brix ao seu Webhook
Campo Tipo Descrição
user_idStringID do usuário no Discord que realizou a transferência.
amountInteiroQuantidade de Braixencoins enviados.
bot_nameStringSempre "Brix" — identifica a origem da transferência.
ref_idString (24)ID único da transação gerado pelo Brix. Utilize para evitar processamento duplicado.
currency_iconURLURL da imagem da BraixenCoin para ser exibida nas DMs do seu bot.
Exemplo de Recebimento JSON
{
  "user_id": "123456789012345678",
  "amount": 654,
  "bot_name": "Brix",
  "ref_id": "sT6vM2bN8pK1xH4jL9cQ5wR3",
  "currency_icon": "https://brixbot.xyz/cdn/icon_braixencoin.png"
}
Importante: O Brix só registrará a transação em seu sistema interno se o seu webhook responder com 200 OK. Caso contrário, o saldo de Braixencoins é devolvido automaticamente ao usuário.
Dica Profissional: Em produção (token válido), a conversão entra no estado Pendente e o bot entrega o saldo automaticamente assim que processar o log. Certifique-se de que seu webhook responde rapidamente para evitar timeouts.

API de Consulta de Usuário ( /api/user )

Disponibiliza a consulta de informações públicas de conta e saldos dos usuários do Brix (como Braixencoins, gravetos, pontuação de reputação, nível/XP e status de assinatura premium) para integração com aplicações externas.

Endpoint (/api/user)

GET POST https://brixbot.xyz/api/user

Modo Sandbox em /api/user

Consulta de Teste via Bot ID: Caso a chamada ao /api/user seja feita sem o cabeçalho Authorization ou com um token inválido, a API responderá em modo de teste ("modo_teste": true) consultando no banco de dados os dados reais da conta do próprio Brix. Isso permite testar a resposta JSON e seus campos sem a necessidade de passar um token ou ID específico!

Parâmetros de Requisição

Parâmetro Tipo Local Descrição
user_id Integer / String Query String (GET) ou Body JSON (POST) ID numérico do Discord do usuário a ser consultado. Obrigatório em produção.

Resposta JSON (/api/user)

Exemplo da resposta JSON retornada em tempo real diretamente pela rota /api/user do sistema:

{
  "status": "Carregando dados da API..."
}
Campo Tipo Descrição
idIntegerID numérico do usuário no Discord.
braixencoinIntegerSaldo atual de Braixencoins do usuário.
gravetoIntegerSaldo atual de gravetos do usuário.
xpgIntegerPontuação de experiência / nível.
repIntegerPontuação de reputação acumulada.
descricaoStringTexto "sobre mim" configurado no perfil do usuário.
premium.ativoBooleanIndica se o usuário possui assinatura Premium ativa.
premium.expiracaoString / nullData de expiração da assinatura (DD/MM/YYYY) se aplicável.