Criando um Bot no Slack

O seu time já está no Slack. Em vez de construir dashboards ou sistemas de notificação separados, um bot Slack pode entregar alertas, responder a comandos e mostrar eventos importantes bem onde o time trabalha.

TL;DR: Crie um bot Slack usando a API oficial, configure permissões, obtenha um token e envie mensagens programaticamente.
Stack: Slack API, Slack Bot Token
Nível: Iniciante
Tempo de leitura: ~5 min

Criar o app

  1. Acesse https://api.slack.com/apps
  2. Clique em “Create New App” e escolha “From scratch”
  3. Dê um nome e selecione seu workspace
  4. Em “OAuth & Permissions”, adicione os escopos de bot necessários (no mínimo: chat:write)
  5. Clique em “Install to Workspace” e autorize
  6. Copie o “Bot User OAuth Token” (começa com xoxb-)

Convidar o bot para um canal

/invite @NomeDoSeuBot

Enviar mensagem via API

import requests

def send_slack_message(channel: str, text: str, token: str):
    headers = {
        "Authorization": f"Bearer {token}",
        "Content-Type": "application/json"
    }
    payload = {
        "channel": channel,
        "text": text
    }
    response = requests.post(
        "https://slack.com/api/chat.postMessage",
        headers=headers,
        json=payload
    )
    return response.json()

O que você construiu

Um bot Slack funcional: registrado no api.slack.com, com as permissões certas, instalado no seu workspace, e capaz de postar mensagens em qualquer canal via API.

Próximos passos

  • Use a biblioteca Python slack_sdk (pip install slack_sdk) em vez de requisições HTTP brutas para uma implementação mais limpa.
  • Adicione suporte a slash commands pelo console da API do Slack para que o time possa disparar ações do bot diretamente pela barra de mensagens.
  • Armazene o token do bot em uma variável de ambiente ou no AWS Secrets Manager, nunca no código. Rotacionar um token vazado é trabalhoso.

Dúvidas ou feedback? Me encontre no LinkedIn ou GitHub.

Deixe um comentário