Notificacoes Telegram
O GitOps envia notificacoes via Telegram quando um release e processado com sucesso.
Configuracao
Defina as variaveis de ambiente:
TELEGRAM_BOT_TOKEN=123456:ABC-DEF...
TELEGRAM_CHAT_ID=-1001234567890
TELEGRAM_NOTIFICATIONS_ENABLED=trueFormato da Notificacao
Cada release processado gera uma mensagem com:
- Nome do repositorio
- Tag do release
- Lista de arquivos processados (assets + artefatos + docs)
- URLs de download
Testar Conexao
curl -X POST https://sys.gitops.borlot.com.br/monitor/telegram/test \
-H "X-API-Key: SUA_API_KEY"Cleanup de Notificacoes
O GitOps rastreia IDs de mensagens enviadas para permitir limpeza:
curl -X POST https://sys.gitops.borlot.com.br/monitor/notifications/cleanup \
-H "X-API-Key: SUA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"keep_recent": 5}'Isso mantem as 5 notificacoes mais recentes e deleta as anteriores (dentro da janela de 48h do Telegram).
O cleanup tambem esta disponivel no Dashboard.
Deletar uma Notificacao Especifica
Para remover uma notificacao por id (em vez do cleanup em lote), use o
endpoint DELETE. Util para apagar uma duplicata pontual ou um registro orfao
(cuja mensagem do Telegram ja foi deletada) sem afetar as notificacoes de outros
repositorios.
# Liste os ids primeiro
curl https://sys.gitops.borlot.com.br/monitor/notifications?limit=10 \
-H "X-API-Key: SUA_API_KEY"
# Delete a notificacao 814 (apaga a mensagem do Telegram + o registro)
curl -X DELETE https://sys.gitops.borlot.com.br/monitor/notifications/814 \
-H "X-API-Key: SUA_API_KEY"Diferente do cleanup em lote, este endpoint remove o registro do banco mesmo
que o deleteMessage no Telegram falhe (ex: mensagem ja apagada) — por isso
serve para limpar registros orfaos.
| Parametro | Tipo | Default | Descricao |
|---|---|---|---|
telegram (query) |
bool | true |
false pula o delete no Telegram e remove so o registro do banco |
Respostas:
200—{"success": true, "found": true, "telegram_deleted": true|false|null, ...}404—{"success": false, "found": false, "error": "Notification <id> not found"}