Documentação

Aprenda o TicketsX mais rápido

Guias de configuração, a referência completa dos comandos, os recursos Premium e a API REST num só lugar.

13.24

Limites de uso e segurança

A API foi feita para que um token nunca possa ser usado para abusar de um servidor, mesmo se vazar. As proteções abaixo valem para toda requisição.

Em cada endpoint o Premium é verificado antes de tudo, antes mesmo de o token ser consultado e de qualquer limite de uso ser contado, então um servidor sem assinatura ativa sempre recebe a mesma resposta 402 em vez de uma requisição aplicada pela metade.

  • Nada de menções em massa. Todas as mensagens enviadas pela API (inclusive as de webhook e as tags) têm @everyone, @here e menções de cargos arbitrários desativados. Ao abrir um ticket, só o cargo configurado do painel e quem criou o ticket podem ser avisados.
  • Nada de fingir ser outra pessoa. Nomes de webhook com palavras reservadas como "discord" ou "clyde" são substituídos, e avatares alternativos precisam ser URLs https:// válidas.
  • Premium obrigatório. A API é um recurso Premium. Sem assinatura ativa, cada requisição retorna 402 com premium_required: true, e não dá para criar nem renovar tokens.
  • Limites de uso. Cada token tem limite por ação (por exemplo: abrir ticket 10/min, enviar mensagem 30/min, renomear 2/10min, trocar painel 2/10min, editar painel 10/min, reenviar painel 4/10min, leituras 120/min). Passar de um limite retorna 429 com um valor retry_after em segundos. Chame GET /api/token para ver a tabela atualizada.
  • Leituras pesadas têm limite à parte. A busca em transcrições e o download de HTML têm 10/min cada, e as transcrições indexadas completas 30/min, para nunca consumirem a cota generosa de 120/min das leituras. Além disso, a busca roda no máximo duas vezes ao mesmo tempo em todo o servidor e é interrompida com 504 se passar do tempo máximo, então o tráfego de busca nunca sufoca as operações nos tickets.
  • Teto de tickets abertos. A API para de abrir tickets novos quando um servidor chega ao seu teto de segurança, e se recusa a abrir tickets para usuários bloqueados.
  • Privilégio mínimo. Permissões sensíveis (Ler mensagens de tickets, Ver transcrições, Pesquisar transcrições, Baixar o HTML das transcrições, Usar tags, Renomear tickets, Gerenciar painéis, Trocar o painel de um ticket) vêm desativadas por padrão e precisam ser ligadas de propósito em cada token.
  • Leituras de dados históricos ficam auditadas. Baixar uma transcrição HTML completa é gravado no registro de atividades do servidor junto com o token que fez isso, assim como cada alteração feita pela API.
  • Os painéis continuam presos à sua configuração. Gerenciar painéis só permite mudar a aparência de um painel (nome, embed, botões). Canais, categorias, cargos a mencionar, formulários e equipes de suporte não podem ser alterados pela API.
  • Validade e renovação. Os tokens podem receber uma data de validade, ser desativados ou renovados pelo painel; ao renovar, o segredo anterior perde a validade na hora.
  • Escopo de servidor. Um token só funciona para o servidor onde foi criado, e cada requisição é conferida de novo contra esse servidor.