falafy
PT
Baixar grátis

API pública v1 · @falafy/bot

Referência da API v1

Base: https://falafy.com.br/api/v1. Envie JSON e o cabeçalho Authorization: Bot <token> (bots) ou Bearer <token> (OAuth2).

Convenções

  • Versão na URL: /api/v1/.... Mudanças incompatíveis só em uma nova versão.
  • IDs: UUID v7 em texto. Use before/after com IDs para paginar (são ordenados pelo tempo).
  • Datas: ISO 8601. Campos: camelCase. Permissões: inteiro grande em texto (bitfield).
  • Erros: { code, message, status } com códigos estáveis em texto; veja limites e erros.
  • Recurso invisível = 404: um canal ou servidor que o bot não vê responde como se não existisse.
  • User-Agent recomendado: FalafyBot (https://seu.site, 1.0).

Rotas

MétodoRota (/api/v1)AutenticaçãoO que faz
GET/users/@meBot · Bearer identifyUsuário do token (com e-mail só com o escopo email).
GET/users/@me/serversBot · Bearer serversServidores do usuário/bot com as permissões dele.
GET/users/{userId}BotPerfil público de alguém que divide servidor com o bot.
POST/users/@me/channelsBotAbre (ou devolve) uma DM: { recipientId }.
DELETE/users/@me/servers/{serverId}BotO bot sai do servidor.
GET/oauth2/@meBearerAplicação, escopos e validade do token OAuth2.
GET/applications/@meBotA aplicação do bot (chave pública, intents liberadas).
GET/gateway/botBotURL do gateway e intervalo de heartbeat.
GET/servers/{serverId}BotDados do servidor.
GET/servers/{serverId}/channelsBotCanais que o bot enxerga.
GET/servers/{serverId}/rolesBotCargos do servidor.
GET/servers/{serverId}/membersBot + SERVER_MEMBERSMembros (limit até 1000, after=userId).
GET/servers/{serverId}/members/{userId}BotUm membro.
PUT/servers/{serverId}/members/{userId}/roles/{roleId}BotDá um cargo (GERENCIAR_CARGOS + hierarquia).
DELETE/servers/{serverId}/members/{userId}/roles/{roleId}BotTira um cargo.
GET/channels/{channelId}BotDados do canal.
GET/channels/{channelId}/messagesBotHistórico (limit, before, after).
POST/channels/{channelId}/messagesBotEnvia: content, embeds, components, replyToId, mentions.
GET/channels/{channelId}/messages/{messageId}BotUma mensagem.
PATCH/channels/{channelId}/messages/{messageId}BotEdita uma mensagem do bot.
DELETE/channels/{channelId}/messages/{messageId}BotApaga (a do bot, ou qualquer uma com GERENCIAR_MENSAGENS).
PUT/channels/{channelId}/messages/{messageId}/reactions/{emoji}/@meBotReage.
DELETE/channels/{channelId}/messages/{messageId}/reactions/{emoji}/@meBotTira a reação.
GET/channels/{channelId}/messages/{messageId}/reactions/{emoji}BotQuem reagiu (até 100).
POST/channels/{channelId}/typingBotMostra “digitando…”.
GET/channels/{channelId}/webhooksBotWebhooks do canal (GERENCIAR_WEBHOOKS).
POST/channels/{channelId}/webhooksBotCria um webhook: { name }.
GET · PATCH · DELETE/webhooks/{webhookId}BotGerencia um webhook.
GET · PUT · POST/applications/{appId}/commandsBotComandos globais (PUT substitui todos).
GET · PATCH · DELETE/applications/{appId}/commands/{commandId}BotUm comando global.
GET · PUT · POST/applications/{appId}/servers/{serverId}/commandsBotComandos de um servidor (valem na hora).
POST/interactions/{id}/{token}/callbacktokenResposta inicial da interação.
GET · PATCH · DELETE/webhooks/{appId}/{token}/messages/@originaltokenA resposta original.
POST/webhooks/{appId}/{token}tokenFollow-up.
POST/webhooks/{webhookId}/{token}tokenExecuta um webhook (?wait=true).
GET · PATCH · DELETE/webhooks/{webhookId}/{token}/messages/{messageId}tokenMensagem do webhook.

Mensagens com embeds e componentes

Bots podem enviar até 10 embeds (título até 256 caracteres, descrição até 4096, até 25 campos, 6000 caracteres no total) e até 5 linhas de componentes. Imagens de embeds precisam ser https; o app mostra um link para elas em vez de carregar a imagem de outro site.

{
  "content": "Topa uma partida?",
  "components": [
    { "type": 1, "components": [
      { "type": 2, "style": 3, "label": "Bora", "customId": "aceitar" },
      { "type": 2, "style": 5, "label": "Regras", "url": "https://exemplo.com/regras" }
    ]},
    { "type": 1, "components": [
      { "type": 3, "customId": "jogo", "placeholder": "Qual jogo?",
        "options": [{ "label": "CS2", "value": "cs2" }, { "label": "Valorant", "value": "val" }] }
    ]}
  ]
}

Conteúdo das mensagens

Sem a intent privilegiada MESSAGE_CONTENT, leituras pela API e eventos do gateway trazem content, embeds, anexos e componentes vazios, exceto em DMs, nas mensagens do próprio bot e nas que mencionam o bot.