Documentação da APIReferência

Referência

API iGameChat

Esta documentação cobre todos os endpoints da plataforma iGameChat. Use a API v1 para integrações externas autenticadas por token, e a API do Widget para os endpoints utilizados pelo widget embarcado nas plataformas parceiras.

Base URL

https://igamechat.com

Versão

v1.0

Formato

JSON

Autenticação

A API v1 requer autenticação via token. Os tokens são gerados no painel administrativo (seção Empresa → API) e são escopados por brand — ou seja, um token gerado para a brand 9d só acessa dados dessa brand.

Header de autenticação

Inclua o token em todas as requisições à API v1 via header Authorization ou X-API-Key:

Opção 1 — Bearer Token

Authorization: Bearer igc_brand_...

Opção 2 — API Key

X-API-Key: igc_brand_...

⚠️ Segurança

Nunca exponha tokens de API no lado do cliente (JavaScript do browser). Use sempre em código server-side. O token é exibido apenas uma vez na criação — salve-o com segurança.

Exemplo completo

bash
# Usando Authorization: Bearer
curl https://igamechat.com/api/v1/rankings/messages \
  -H "Authorization: Bearer igc_9d_abc123def456..."

# Usando X-API-Key
curl https://igamechat.com/api/v1/campaigns \
  -H "X-API-Key: igc_9d_abc123def456..."

API v1

Token

Endpoints para integrações externas. Requerem API Token gerado no painel administrativo.

GET/api/v1/check-user/{extUserId}

Verificar usuário

Verifica se um usuário existe na plataforma a partir do ID externo (extSmartico). Retorna dados básicos do perfil como username, avatar e o ID externo.

API Token
extUserIdpathintegerobrigatório

ID externo do usuário (extSmartico)

Exemplo: 12345

Exemplo de requisição

bash
curl https://igamechat.com/api/v1/check-user/12345 \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/campaigns

Listar campanhas

Lista as campanhas (enquetes) da brand associada ao token. Pode filtrar por status e paginar os resultados.

API Token
statusquerystring

Filtrar por status: `active` (ativas) ou `archived` (arquivadas). Omitir retorna todas.

Exemplo: active

limitqueryinteger

Número máximo de resultados (padrão: 50, máximo: 200)

Exemplo: 20

offsetqueryinteger

Número de registros a ignorar para paginação (padrão: 0)

Exemplo: 0

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/campaigns?status=active&limit=10" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/campaigns/active/current

Campanha ativa atual

Retorna a campanha (enquete) ativa no momento para a brand. Útil para exibir a enquete em andamento em interfaces externas.

API Token

Exemplo de requisição

bash
curl https://igamechat.com/api/v1/campaigns/active/current \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/campaigns/{id}

Buscar campanha por ID

Retorna os dados completos de uma campanha específica da brand.

API Token
idpathstring (UUID)obrigatório

ID único da campanha

Exemplo: 550e8400-e29b-41d4-a716-446655440000

Exemplo de requisição

bash
curl https://igamechat.com/api/v1/campaigns/550e8400-e29b-41d4-a716-446655440000 \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/campaigns/{id}/winners

Vencedores da campanha

Lista todos os usuários que acertaram a resposta de uma campanha finalizada, em ordem cronológica (primeiro a acertar primeiro).

API Token
idpathstring (UUID)obrigatório

ID da campanha

Exemplo: 550e8400-e29b-41d4-a716-446655440000

Exemplo de requisição

bash
curl https://igamechat.com/api/v1/campaigns/camp-uuid/winners \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/rankings/messages

Ranking por mensagens

Retorna o ranking dos usuários que mais enviaram mensagens na comunidade, ordenado de forma decrescente.

API Token
limitqueryinteger

Máximo de resultados (padrão: 50, máximo: 200)

Exemplo: 10

offsetqueryinteger

Offset para paginação

Exemplo: 0

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/rankings/messages?limit=10" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/rankings/campaign-winners

Ranking de vencedores de enquetes

Retorna o ranking de usuários com mais acertos em campanhas (enquetes), agrupado por usuário.

API Token
limitqueryinteger

Máximo de resultados (padrão: 50, máximo: 200)

Exemplo: 10

offsetqueryinteger

Offset para paginação

Exemplo: 0

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/rankings/campaign-winners?limit=10" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/rankings/daily-logins

Logins diários

Lista os registros de login diário dos usuários. Pode filtrar por data específica.

API Token
datequerystring

Data no formato `YYYY-MM-DD`. Omitir retorna todos os registros.

Exemplo: 2025-04-28

limitqueryinteger

Máximo de resultados (padrão: 50, máximo: 200)

Exemplo: 50

offsetqueryinteger

Offset para paginação

Exemplo: 0

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/rankings/daily-logins?date=2025-04-28&limit=50" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/rankings/campaign-responses

Ranking de participações

Retorna o ranking de usuários por total de participações em campanhas.

API Token
limitqueryinteger

Máximo de resultados (padrão: 50, máximo: 200)

Exemplo: 10

offsetqueryinteger

Offset para paginação

Exemplo: 0

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/rankings/campaign-responses?limit=10" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/rankings/devices

Distribuição de dispositivos

Quebra de dispositivos dos últimos 30 dias (iOS, Android, Desktop, Unknown).

API Token

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/rankings/devices" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/rankings/daily-logins/hourly

Logins por hora

Distribuição de logins por hora do dia (24 buckets). Retorna sempre 24 elementos.

API Token
datequerystringobrigatório

Data no formato YYYY-MM-DD

Exemplo: 2025-04-28

utcOffsetqueryinteger

Offset de fuso horário em horas (ex: -3 para BRT)

Exemplo: -3

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/rankings/daily-logins/hourly?date=2025-04-28&utcOffset=-3" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/rankings/daily-logins/by-date/{date}

Usuários que logaram em um dia

Lista os usuários que fizeram login em uma data específica.

API Token
datepathstringobrigatório

Data no formato YYYY-MM-DD

Exemplo: 2025-04-28

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/rankings/daily-logins/by-date/2025-04-28" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/rankings/daily-messages

Mensagens por dia

Contagem de mensagens por dia nos últimos N dias.

API Token
daysqueryinteger

Número de dias (padrão: 30, máximo: 365)

Exemplo: 30

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/rankings/daily-messages?days=30" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/rankings/daily-messages/hourly

Mensagens por hora

Distribuição de mensagens por hora do dia (24 buckets).

API Token
datequerystringobrigatório

Data no formato YYYY-MM-DD

Exemplo: 2025-04-28

utcOffsetqueryinteger

Offset de fuso horário em horas

Exemplo: -3

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/rankings/daily-messages/hourly?date=2025-04-28" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/rankings/messages/hourly-users

Top mensageadores por hora

Usuários que mais mandaram mensagem em uma hora específica.

API Token
datequerystringobrigatório

Data no formato YYYY-MM-DD

Exemplo: 2025-04-28

hourqueryintegerobrigatório

Hora (0-23)

Exemplo: 14

utcOffsetqueryinteger

Offset de fuso horário

Exemplo: -3

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/rankings/messages/hourly-users?date=2025-04-28&hour=14" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/rankings/logins/hourly-users

Usuários que logaram por hora

Usuários que fizeram login em uma hora específica.

API Token
datequerystringobrigatório

Data no formato YYYY-MM-DD

Exemplo: 2025-04-28

hourqueryintegerobrigatório

Hora (0-23)

Exemplo: 14

utcOffsetqueryinteger

Offset de fuso horário

Exemplo: -3

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/rankings/logins/hourly-users?date=2025-04-28&hour=14" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/promotion-coins

Configuração de pontos de promoção

Retorna a configuração de pontos de promoção da brand (shareBetwin, promotionWin, promotionQuest).

API Token

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/promotion-coins" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/activities

Relatório de atividades

Relatório de atividades do dia (ou hora específica). Retorna lista de usuários com contagem de aberturas, mensagens, campanhas e nível atual.

API Token
datequerystringobrigatório

Data no formato YYYY-MM-DD

Exemplo: 2025-04-28

hourqueryinteger

Hora específica (0-23). Omitir retorna o dia inteiro.

Exemplo: 14

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/activities?date=2025-04-28" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/activities/conversion

Funil de conversão

Funil de conversão do dia com etapas (abriu, abriu com aberturas, enviou mensagem, participou de campanha) e taxas de conversão entre elas.

API Token
datequerystringobrigatório

Data no formato YYYY-MM-DD

Exemplo: 2025-04-28

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/activities/conversion?date=2025-04-28" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/blocked-messages

Lista de mensagens bloqueadas

Lista de mensagens bloqueadas com suporte a filtros por tipo, status e username, e paginação.

API Token
typequerystring

Filtro: `message_ban` ou `user_ban`

Exemplo: message_ban

statusquerystring

Filtro: `pending`, `confirmed` ou `reverted`

Exemplo: pending

usernamequerystring

Busca parcial por username

Exemplo: joao

pagequeryinteger

Página (padrão: 1)

Exemplo: 1

limitqueryinteger

Itens por página (padrão: 50, máximo: 200)

Exemplo: 50

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/blocked-messages?type=message_ban&status=pending" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/blocked-messages/users

Usuários com mensagens bloqueadas

Lista de usuários com mensagens bloqueadas, agregados por usuário com contadores por status e tipo.

API Token
typequerystring

Filtro por tipo

Exemplo: message_ban

statusquerystring

Filtro por status

Exemplo: confirmed

usernamequerystring

Busca parcial por username

Exemplo: joao

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/blocked-messages/users?type=message_ban" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/messages

Histórico de mensagens

Histórico de mensagens do chat com a mesma formatação do dashboard.

API Token
roomquerystring

Sala (padrão: `default`)

Exemplo: default

limitqueryinteger

Máximo de resultados (padrão: 20, máximo: 50)

Exemplo: 20

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/messages?room=default&limit=20" \
  -H "Authorization: Bearer igc_9d_abc123..."
POST/api/v1/messages

Enviar mensagem (como usuário)

Envia uma mensagem como um usuário específico (identificado pelo extUserId). Não dispara smartAction.

API Token

Exemplo de requisição

bash
curl -X POST "https://igamechat.com/api/v1/messages" \
  -H "Authorization: Bearer igc_9d_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"extUserId": 123456, "message": "Olá galera!"}'
POST/api/v1/admin/messages

Enviar mensagem (como admin)

Envia uma mensagem como admin (atribuída à integração). Aparece no chat com o nome do admin.

API Token

Exemplo de requisição

bash
curl -X POST "https://igamechat.com/api/v1/admin/messages" \
  -H "Authorization: Bearer igc_9d_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"message": "Aviso: manutenção em 5 min", "adminUsername": "Integração"}'
POST/api/v1/admin/block-message

Bloquear mensagem

Bloqueia uma mensagem existente — move para blocked_messages e emite message:blocked em tempo real.

API Token

Exemplo de requisição

bash
curl -X POST "https://igamechat.com/api/v1/admin/block-message" \
  -H "Authorization: Bearer igc_9d_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"messageId": "1721034567890", "room": "default"}'
POST/api/v1/chat/lock

Trancar/destrancar chat

Tranca ou destranca o chat de uma sala. Emite chat:lock-status para todos conectados.

API Token

Exemplo de requisição

bash
curl -X POST "https://igamechat.com/api/v1/chat/lock" \
  -H "Authorization: Bearer igc_9d_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"locked": true, "room": "default"}'
GET/api/v1/chat/state

Estado do chat

Retorna o estado atual do chat — se está trancado, quantos usuários estão online e a lista deles.

API Token
roomquerystring

Sala (padrão: `default`)

Exemplo: default

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/chat/state?room=default" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/campaigns/full

Lista completa de campanhas

Lista paginada completa de campanhas com suporte a filtros por tab e data.

API Token
tabquerystring

Aba: `campanhas`, `arquivadas`, `enquetes`, `enquetes-arquivadas`

Exemplo: campanhas

datequerystring

Filtro por data de criação (YYYY-MM-DD)

Exemplo: 2025-04-28

pagequeryinteger

Página (padrão: 1)

Exemplo: 1

limitqueryinteger

Itens por página (padrão: 20, máximo: 100)

Exemplo: 20

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/campaigns/full?tab=campanhas&page=1" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/campaigns/{id}/full

Campanha + vencedores + respostas

Retorna a campanha completa com vencedores e respostas em uma única chamada.

API Token
idpathstring (UUID)obrigatório

ID da campanha

Exemplo: 550e8400-e29b-41d4-a716-446655440000

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/campaigns/550e8400-e29b-41d4-a716-446655440000/full" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/campaigns/{id}/responses

Respostas da campanha

Lista todas as respostas enviadas para uma campanha específica.

API Token
idpathstring (UUID)obrigatório

ID da campanha

Exemplo: 550e8400-e29b-41d4-a716-446655440000

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/campaigns/camp-uuid/responses" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/campaigns/{id}/poll-results

Resultados de enquete

Resultados agregados de uma campanha do tipo poll — votos por opção, percentuais e vencedor.

API Token
idpathstring (UUID)obrigatório

ID da campanha (deve ser tipo poll)

Exemplo: 550e8400-e29b-41d4-a716-446655440000

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/campaigns/camp-uuid/poll-results" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/campaigns/{id}/bonifications

Bonificações da campanha

Lista de bonificações concedidas em uma campanha.

API Token
idpathstring (UUID)obrigatório

ID da campanha

Exemplo: 550e8400-e29b-41d4-a716-446655440000

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/campaigns/camp-uuid/bonifications" \
  -H "Authorization: Bearer igc_9d_abc123..."
POST/api/v1/campaigns

Criar campanha

Cria uma campanha (inativa — não vai ao ar automaticamente). Para polls, inclua opcoesCampanha como array de strings.

API Token

Exemplo de requisição

bash
curl -X POST "https://igamechat.com/api/v1/campaigns" \
  -H "Authorization: Bearer igc_9d_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"tipoCampanha": "qa", "perguntaCampanha": "Capital da França?", "respostaCampanha": "Paris"}'
PATCH/api/v1/campaigns/{id}

Editar campanha

Edita campos de uma campanha. Falha se a campanha estiver ativa (encerre antes de editar).

API Token
idpathstring (UUID)obrigatório

ID da campanha

Exemplo: 550e8400-e29b-41d4-a716-446655440000

Exemplo de requisição

bash
curl -X PATCH "https://igamechat.com/api/v1/campaigns/camp-uuid" \
  -H "Authorization: Bearer igc_9d_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"perguntaCampanha": "Nova pergunta?"}'
PATCH/api/v1/campaigns/{id}/end

Encerrar campanha

Encerra uma campanha ativa. Limpa o timer, marca finalizadoEm e emite campaign:ended para todos na sala.

API Token
idpathstring (UUID)obrigatório

ID da campanha

Exemplo: 550e8400-e29b-41d4-a716-446655440000

Exemplo de requisição

bash
curl -X PATCH "https://igamechat.com/api/v1/campaigns/camp-uuid/end" \
  -H "Authorization: Bearer igc_9d_abc123..."
PATCH/api/v1/campaigns/{id}/archive

Arquivar/desarquivar campanha

Arquiva ou desarquiva uma campanha.

API Token
idpathstring (UUID)obrigatório

ID da campanha

Exemplo: 550e8400-e29b-41d4-a716-446655440000

Exemplo de requisição

bash
curl -X PATCH "https://igamechat.com/api/v1/campaigns/camp-uuid/archive" \
  -H "Authorization: Bearer igc_9d_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"arquivada": true}'
DELETE/api/v1/campaigns/{id}

Deletar campanha

Deleta uma campanha permanentemente. Falha se a campanha estiver ativa — encerre antes.

API Token
idpathstring (UUID)obrigatório

ID da campanha

Exemplo: 550e8400-e29b-41d4-a716-446655440000

Exemplo de requisição

bash
curl -X DELETE "https://igamechat.com/api/v1/campaigns/camp-uuid" \
  -H "Authorization: Bearer igc_9d_abc123..."
POST/api/v1/campaigns/{id}/bonifications

Conceder bonificação

Concede uma bonificação a um usuário em uma campanha. Retorna 409 se já existe.

API Token
idpathstring (UUID)obrigatório

ID da campanha

Exemplo: 550e8400-e29b-41d4-a716-446655440000

Exemplo de requisição

bash
curl -X POST "https://igamechat.com/api/v1/campaigns/camp-uuid/bonifications" \
  -H "Authorization: Bearer igc_9d_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"username": "joao", "extSmartico": 123456}'
POST/api/v1/campaigns/{id}/winners

Adicionar vencedor

Adiciona um vencedor a uma campanha (manual). Retorna 409 se já existe.

API Token
idpathstring (UUID)obrigatório

ID da campanha

Exemplo: 550e8400-e29b-41d4-a716-446655440000

Exemplo de requisição

bash
curl -X POST "https://igamechat.com/api/v1/campaigns/camp-uuid/winners" \
  -H "Authorization: Bearer igc_9d_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"username": "joao", "resposta": "Paris", "extSmartico": 123456}'
GET/api/v1/users/online

Usuários online

Lista de usuários online no momento (não-admin), filtrado pela brand do token.

API Token

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/users/online" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/users/banned

Usuários banidos

Lista de usuários banidos com TTL ativo ou ban permanente.

API Token

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/users/banned" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/users/{extUserId}

Dados do usuário

Retorna dados completos de um usuário incluindo histórico de nomes, nível, banimento e contagem de mensagens.

API Token
extUserIdpathintegerobrigatório

ID externo do usuário

Exemplo: 12345

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/users/12345" \
  -H "Authorization: Bearer igc_9d_abc123..."
GET/api/v1/users/{extUserId}/messages

Mensagens do usuário

Histórico de mensagens enviadas por um usuário específico.

API Token
extUserIdpathintegerobrigatório

ID externo do usuário

Exemplo: 12345

limitqueryinteger

Máximo de resultados (padrão: 50, máximo: 200)

Exemplo: 50

offsetqueryinteger

Offset para paginação

Exemplo: 0

Exemplo de requisição

bash
curl "https://igamechat.com/api/v1/users/12345/messages?limit=50" \
  -H "Authorization: Bearer igc_9d_abc123..."
POST/api/v1/users/{extUserId}/ban

Banir usuário

Bane um usuário. Move suas mensagens para blocked_messages, kicka sockets conectados e atualiza a lista de banidos.

API Token
extUserIdpathintegerobrigatório

ID externo do usuário

Exemplo: 12345

Exemplo de requisição

bash
curl -X POST "https://igamechat.com/api/v1/users/12345/ban" \
  -H "Authorization: Bearer igc_9d_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"banDuration": "10m"}'
POST/api/v1/users/{extUserId}/unban

Desbanir usuário

Desbane um usuário. Limpa flags de banimento, notifica sockets e broadcast da lista atualizada de banidos.

API Token
extUserIdpathintegerobrigatório

ID externo do usuário

Exemplo: 12345

Exemplo de requisição

bash
curl -X POST "https://igamechat.com/api/v1/users/12345/unban" \
  -H "Authorization: Bearer igc_9d_abc123..."
PATCH/api/v1/blocked-messages/{id}

Revisar bloqueio de mensagem

Confirma ou reverte um bloqueio de mensagem (workflow de moderação). Se status=reverted e type=user_ban, o ban do usuário é revertido automaticamente.

API Token
idpathstring (UUID)obrigatório

ID do blockedMessage

Exemplo: 550e8400-e29b-41d4-a716-446655440000

Exemplo de requisição

bash
curl -X PATCH "https://igamechat.com/api/v1/blocked-messages/bm-uuid" \
  -H "Authorization: Bearer igc_9d_abc123..." \
  -H "Content-Type: application/json" \
  -d '{"status": "confirmed", "reviewedBy": "moderador"}'

Widget API

Público

Endpoints utilizados pelo widget de chat embarcado. Não requerem autenticação externa.

GET/api/check-user/{extUserId}

Verificar usuário (widget)

Verifica se um usuário existe pelo ID externo. Usado pelo widget para saber se o usuário já se registrou na comunidade.

Público
extUserIdpathintegerobrigatório

ID externo do usuário

Exemplo: 12345

brandquerystring

Slug da brand (inferido automaticamente em contextos com widget configurado)

Exemplo: 9d

Exemplo de requisição

bash
curl "https://igamechat.com/api/check-user/12345?brand=9d"
GET/api/avatars

Listar avatars

Retorna a lista de avatars disponíveis para os usuários escolherem no perfil.

Público

Exemplo de requisição

bash
curl https://igamechat.com/api/avatars
POST/api/change-avatar

Alterar avatar

Atualiza o avatar do usuário.

Público

Exemplo de requisição

bash
curl -X POST https://igamechat.com/api/change-avatar \
  -H "Content-Type: application/json" \
  -d '{"extUserId": 12345, "avatar": "Girl 03.png"}'
POST/api/change-username

Alterar nome de usuário

Atualiza o username de exibição do usuário na comunidade.

Público

Exemplo de requisição

bash
curl -X POST https://igamechat.com/api/change-username \
  -H "Content-Type: application/json" \
  -d '{"extUserId": 12345, "newUsername": "joao_novo"}'
GET/api/brand-config/{brand}

Configuração da brand

Retorna a configuração de features e visual da brand, usada pelo widget para se adaptar ao tema da plataforma.

Público
brandpathstringobrigatório

Slug da brand

Exemplo: 9d

Exemplo de requisição

bash
curl https://igamechat.com/api/brand-config/9d

Rankings & Metrics

Endpoints públicos para exibir rankings de usuários e métricas de uso da comunidade.

GET/api/rankings/messages

Ranking de mensagens

Retorna os usuários que mais enviaram mensagens na comunidade.

Público
brandquerystring

Slug da brand

Exemplo: 9d

limitquerynumber

Máximo de resultados (padrão 20, máximo 100)

Exemplo: 20

Exemplo de requisição

bash
curl "https://igamechat.com/api/rankings/messages?brand=9d&limit=10"
GET/api/rankings/campaign-responses

Ranking de participações em campanhas

Retorna os usuários que mais participaram de campanhas (total de respostas).

Público
brandquerystring

Slug da brand

Exemplo: 9d

limitquerynumber

Máximo de resultados (padrão 20, máximo 100)

Exemplo: 20

Exemplo de requisição

bash
curl "https://igamechat.com/api/rankings/campaign-responses?brand=9d"
GET/api/rankings/campaign-winners

Ranking de acertos em campanhas

Retorna os usuários com mais respostas corretas em campanhas.

Público
brandquerystring

Slug da brand

Exemplo: 9d

limitquerynumber

Máximo de resultados (padrão 20, máximo 100)

Exemplo: 20

Exemplo de requisição

bash
curl "https://igamechat.com/api/rankings/campaign-winners?brand=9d"
GET/api/rankings/devices

Distribuição de dispositivos

Retorna a contagem de usuários por tipo de dispositivo (iOS, Android, Desktop).

Público
brandquerystring

Slug da brand

Exemplo: 9d

Exemplo de requisição

bash
curl "https://igamechat.com/api/rankings/devices?brand=9d"
GET/api/rankings/daily-logins

Logins por dia

Retorna a quantidade de logins únicos por dia para os últimos N dias.

Público
brandquerystring

Slug da brand

Exemplo: 9d

daysquerynumber

Número de dias (padrão 30, máximo 365)

Exemplo: 30

Exemplo de requisição

bash
curl "https://igamechat.com/api/rankings/daily-logins?brand=9d&days=7"
GET/api/rankings/daily-logins-hourly

Logins por hora (dia específico)

Retorna a quantidade de logins por hora em um dia específico. Sempre retorna 24 elementos (hora 0–23).

Público
brandquerystring

Slug da brand

Exemplo: 9d

datequerystringobrigatório

Data no formato YYYY-MM-DD

Exemplo: 2025-01-10

utcOffsetquerynumber

Offset de fuso horário em horas (ex: -3 para BRT)

Exemplo: -3

Exemplo de requisição

bash
curl "https://igamechat.com/api/rankings/daily-logins-hourly?brand=9d&date=2025-01-10&utcOffset=-3"
GET/api/rankings/daily-messages

Mensagens por dia

Retorna a quantidade de mensagens enviadas por dia.

Público
brandquerystring

Slug da brand

Exemplo: 9d

daysquerynumber

Número de dias (padrão 90)

Exemplo: 30

Exemplo de requisição

bash
curl "https://igamechat.com/api/rankings/daily-messages?brand=9d&days=30"
GET/api/rankings/daily-messages-hourly

Mensagens por hora (dia específico)

Retorna a quantidade de mensagens por hora em um dia específico. Sempre retorna 24 elementos (hora 0–23).

Público
brandquerystring

Slug da brand

Exemplo: 9d

datequerystringobrigatório

Data no formato YYYY-MM-DD

Exemplo: 2025-01-10

utcOffsetquerynumber

Offset de fuso horário em horas (ex: -3 para BRT)

Exemplo: -3

Exemplo de requisição

bash
curl "https://igamechat.com/api/rankings/daily-messages-hourly?brand=9d&date=2025-01-10&utcOffset=-3"
GET/api/rankings/daily-logins/{date}

Usuários que logaram em um dia

Retorna a lista de usuários que fizeram login em uma data específica.

Público
datepathstringobrigatório

Data no formato YYYY-MM-DD

Exemplo: 2025-01-10

brandquerystring

Slug da brand

Exemplo: 9d

Exemplo de requisição

bash
curl "https://igamechat.com/api/rankings/daily-logins/2025-01-10?brand=9d"

Campaigns

Endpoints para listar campanhas, consultar vencedores, respostas e resultados de enquetes.

GET/api/campaigns

Listar campanhas

Retorna a lista de campanhas com suporte a filtros de brand, status e paginação.

Público
brandquerystring

Slug da brand

Exemplo: 9d

statusquerystring

Filtro de status: active | ended | archived

Exemplo: active

limitquerynumber

Itens por página (padrão 20)

Exemplo: 20

offsetquerynumber

Offset para paginação

Exemplo: 0

Exemplo de requisição

bash
curl "https://igamechat.com/api/campaigns?brand=9d&status=active"
GET/api/campaigns/active/current

Campanha ativa atual

Retorna a campanha ativa no momento para a brand informada.

Público
brandquerystring

Slug da brand

Exemplo: 9d

Exemplo de requisição

bash
curl "https://igamechat.com/api/campaigns/active/current?brand=9d"
GET/api/campaigns/{id}

Buscar campanha por ID

Retorna os detalhes completos de uma campanha específica.

Público
idpathstringobrigatório

ID da campanha

Exemplo: cm_abc123

brandquerystring

Slug da brand

Exemplo: 9d

Exemplo de requisição

bash
curl "https://igamechat.com/api/campaigns/cm_abc123"
GET/api/campaigns/{id}/winners

Vencedores da campanha

Retorna a lista de usuários que venceram (acertaram) a campanha.

Público
idpathstringobrigatório

ID da campanha

Exemplo: cm_abc123

Exemplo de requisição

bash
curl "https://igamechat.com/api/campaigns/cm_abc123/winners"
GET/api/campaigns/{id}/responses

Respostas da campanha

Retorna todas as respostas enviadas para uma campanha.

Público
idpathstringobrigatório

ID da campanha

Exemplo: cm_abc123

Exemplo de requisição

bash
curl "https://igamechat.com/api/campaigns/cm_abc123/responses"
GET/api/campaigns/{id}/poll-results

Resultados de enquete

Retorna os resultados agregados de uma campanha do tipo enquete (poll), com percentuais e votos por opção.

Público
idpathstringobrigatório

ID da campanha (deve ser do tipo poll)

Exemplo: cm_abc123

Exemplo de requisição

bash
curl "https://igamechat.com/api/campaigns/cm_abc123/poll-results"
GET/api/campaigns/{id}/bonifications

Listar bonificações

Retorna os usuários que foram bonificados em uma campanha.

Público
idpathstringobrigatório

ID da campanha

Exemplo: cm_abc123

Exemplo de requisição

bash
curl "https://igamechat.com/api/campaigns/cm_abc123/bonifications"

Errors

All errors return a JSON object with an error field describing the problem.

CodeMeaningCommon cause
400Bad RequestRequired parameter missing or with invalid format
401UnauthorizedToken missing, invalid or revoked
403ForbiddenValid token but without permission for the resource
404Not FoundResource not found or does not belong to the token's brand
500Internal Server ErrorUnexpected server error. Contact support.

Error response example

json
{
  "error": "Token missing, invalid or revoked"
}