Pré-requisitos
- Uma Slack App criada em api.slack.com/apps com os scopes corretos, ou usar a instalação guiada da Timely.ai que cria a app automaticamente
- Papel de administrador do workspace Slack (ou aprovação de um admin para instalar o app)
- HTTPS configurado no seu domínio para receber eventos do Slack
- Um agente criado e ativo na Timely.ai
A integração Slack da Timely.ai usa OAuth 2.0 com CSRF protection via HMAC-SHA256 no parâmetro
state. Nenhuma credencial é armazenada em texto plano.Passo a passo de conexão
Inicie o fluxo OAuth
Clique em Conectar com Slack. Você será redirecionado para a página de autorização do Slack. Selecione o workspace onde quer instalar o agente.

Autorize os scopes
A Timely.ai solicita os seguintes scopes de bot:Clique em Permitir para concluir a autorização. O Slack redireciona de volta para a Timely.ai.
- Leitura
- Escrita
- Administração
app_mentions:read, channels:history, channels:read, groups:history, groups:read, im:history, im:read, mpim:history, mpim:read, users:read, users:read.email, reactions:readConfigure os canais monitorados
Após a instalação, acesse Canais → [sua integração Slack] → Configurar canais. Para cada canal do Slack que o agente deve monitorar:
- Selecione o canal na lista (busca pela API do Slack em tempo real)
- Escolha o modo de resposta:
mention_only— responde apenas quando @mencionadoall_messages— responde a todas as mensagensdm_only— responde apenas em DMs diretas com o bot
- Ative o toggle do canal

Adicione o bot aos canais
No Slack, adicione o bot aos canais que você configurou. Dentro do canal, digite:Sem esse passo, o bot não recebe as mensagens mesmo com os scopes corretos.
Recursos suportados
Tipos de mídia
| Tipo | Receber | Enviar |
|---|---|---|
| Texto (com Markdown Slack) | Sim | Sim |
| Imagem | Sim | Sim |
| Arquivo (PDF, DOCX, etc.) | Sim | Sim |
| Block Kit (mensagens ricas) | — | Sim |
| Reactions (emoji) | Sim | Sim |
Modos de resposta
| Modo | Comportamento |
|---|---|
mention_only | Bot responde apenas quando @mencionado diretamente |
all_messages | Bot processa todas as mensagens do canal |
dm_only | Bot responde apenas em Direct Messages |
Slash commands
Com o scopecommands, o bot registra automaticamente o slash command /timely. Usuários podem usar:
Respostas em thread
Por padrão, o agente responde em thread para manter o canal organizado. Para responder no canal principal, ajuste a configuração em Canais → [integração Slack] → Preferências de resposta.Webhook de recebimento
Eventos do Slack (mensagens, @mentions, reactions) chegam via:Verificação de assinatura
Todas as requisições do Slack incluem o headerX-Slack-Signature. A Timely.ai verifica a assinatura usando o SLACK_SIGNING_SECRET antes de processar qualquer evento.
Limites e boas práticas
- 1 instalação por workspace — cada workspace Slack suporta uma instalação ativa. Para múltiplos agentes, use o modo de resposta
mention_onlye @mencione o agente correto. - Rate limit do Slack — tier 3 da Slack API permite 50+ requisições/minuto. Em canais com muito tráfego, o bot pode ser throttled temporariamente.
- Renovação de token — tokens OAuth do Slack não expiram, mas são invalidados se o app for desinstalado ou os scopes alterados. Reconecte o canal se o bot parar de responder.
- Canais privados — o bot precisa ser convidado explicitamente para canais privados. O convite não é automático mesmo após a instalação OAuth.
- Modo
all_messagescom cuidado — em canais muito ativos, esse modo pode gerar alto volume de chamadas ao LLM. Monitore o consumo em Analytics → Uso por canal. - Tokens criptografados — a Timely.ai armazena o bot token criptografado. Nunca exponha o token nos logs ou em variáveis de ambiente do frontend.
Troubleshooting
Bot instalado mas não aparece nos canais
Bot instalado mas não aparece nos canais
Após a instalação OAuth, o bot precisa ser convidado manualmente para cada canal. Use
/invite @nome-do-bot dentro do canal desejado. Em canais privados, apenas administradores do canal podem fazer o convite.Bot não responde a @mentions
Bot não responde a @mentions
Verifique se o canal está habilitado em Canais → [integração Slack] → Configurar canais e se o modo de resposta é
mention_only. Confirme também que o bot está no canal (mensagem de sistema “Bot entrou no canal” deve aparecer no histórico).Erro de assinatura inválida nos eventos
Erro de assinatura inválida nos eventos
O
SLACK_SIGNING_SECRET configurado na Timely.ai não corresponde ao Signing Secret da sua Slack App. Acesse api.slack.com/apps → sua app → Informações básicas → Credenciais do app e copie o Signing Secret correto.Slash command /timely não aparece no Slack
Slash command /timely não aparece no Slack
Slack commands ficam disponíveis após alguns minutos da instalação. Se após 10 minutos o comando não aparecer, reinstale o app no workspace: desconecte o canal na Timely.ai e reconecte via OAuth.
Bot responde no canal em vez de em thread
Bot responde no canal em vez de em thread
Acesse Canais → [integração Slack] → Preferências de resposta e ative Responder em thread. Essa configuração afeta apenas mensagens novas — conversas existentes mantêm o comportamento anterior.
Integração funcionava e parou de responder
Integração funcionava e parou de responder