Skip to main content
A instância Telegram no Notifique usa o mesmo registro de Instance que outros canais: o campo status diz se você já pode enviar e se precisa completar o login (no modo USER).

Status possíveis

Ao listar (GET /v1/telegram/instances) ou consultar (GET /v1/telegram/instances/:id), o status costuma ser um destes:
StatusSignificado
PENDINGInstância criada, mas o modo USER ainda não tem sessão salva. Você precisa concluir o login por QR (GET .../qr em loop) ou colar a session string (POST .../session).
ACTIVEConexão válida para envio: BOT com token e webhook configurados, ou USER com sessão MTProto salva.
DISCONNECTEDA sessão USER caiu ou ficou inválida (rede, logout no Telegram, revogação, etc.) — trate como “precisa reconectar” conforme o produto expuser no painel.
SUSPENDED(Raro) bloqueio administrativo ou política do provedor.
CANCELLEDInstância removida (soft-delete) após DELETE na API ou ação no painel.
O campo mode em telegram (BOT ou USER) explica por que o fluxo de conexão é diferente — veja Modo BOT e modo USER.

Fluxo — modo BOT

  1. POST /v1/telegram/instances com mode: "BOT" e botToken válido.
  2. O backend valida o token, grava credenciais e tenta registrar o webhook do bot.
  3. O status já nasce ACTIVE (não há fase de QR no servidor Notifique para BOT).

Fluxo — modo USER

  1. POST /v1/telegram/instances com mode: "USER" e acceptUserTerms: true.
  2. Status inicial PENDING.
  3. Opção A — QR pela API: faça polling em GET /v1/telegram/instances/:id/qr até status na resposta indicar sucesso (instância ACTIVE no painel/API) ou erro.
  4. Opção B — Sessão manual: POST /v1/telegram/instances/:id/session com a string exportada do GramJS (alternativa ao QR).
  5. Dashboard: fluxo SSE em .../qr-login/stream segue a mesma ideia do QR, com eventos em tempo real no navegador.
Enquanto estiver PENDING, não adianta enviar mensagem: a instância ainda não tem sessão USER.

Webhooks de conexão (modo USER)

Quando o login USER roda (API ou dashboard), você pode assinar:
  • telegram.instance.connecting — começou a abertura da conexão MTProto.
  • telegram.instance.qrcode — novo link tg://login?... (e opcionalmente imagem base64).
  • telegram.instance.connected — sessão salva; instância pronta para envio.
  • telegram.instance.login_error — falha (timeout, cancelamento, 2FA não suportado no QR, etc.).
O formato do JSON segue o padrão geral de Eventos dos Webhooks; só mudam os nomes dos eventos.

Próximos passos