Skip to main content
Um canal representa um número WhatsApp conectado ao Coexy. Após criar um canal, compartilhe o connect_url para que o responsável pelo número faça a conexão via WhatsApp Embedded Signup. A página do connect_url mostra a logo, o nome e a cor configurados em Configurações › Organização.

Tipo Channel

Status do canal

Para ser avisado das mudanças sem consultar a API, assine o evento de webhook channel_status_update.
Tokens são gerenciados automaticamente pelo Coexy. Depois de conectar o WhatsApp, você não precisa renovar tokens. Em casos raros (ex.: revogação de permissão na Meta), o canal muda para disconnected e você reconecta pelo mesmo connect_url, sem recriar o canal.

Token do canal

O channel_token autoriza o envio pelo meta-proxy. Ele é secreto: guarde no seu servidor e nunca coloque em URL. O connect_url usa outro valor, que só serve para conectar o número, então pode ser enviado ao dono do número sem expor o token.
  • Validade: escolha na criação com token_expires_in_days (1, 7, 30, 90 ou null para nunca expirar). Sem o campo, o token nunca expira. A data fica em channel_token_expires_at.
  • Token vencido: o meta-proxy responde 401 com "code": "token_expired". Gere outro com POST /channels/:id/rotate-token ou no painel, na aba Configurações do canal.
  • Vazamento: gere um novo token. O anterior para de funcionar na hora.

Fluxo de conexão

  1. Crie o canal com POST /channels. Ele nasce com status pending.
  2. Compartilhe o connect_url com o dono do número WhatsApp.
  3. O dono abre o link e autoriza pelo WhatsApp Embedded Signup.
  4. O canal muda para active e phone_number_id, waba_id e display_phone_number são preenchidos.
phone_number_id e waba_id só ficam disponíveis após a conexão. Antes disso, são null.

Verificação de Empresa

Cada canal inclui um objeto verification com o status da verificação de empresa junto à Meta. A verificação desbloqueia:
  • Alcance de até 100K contatos/dia (vs 250 sem verificação)
  • Até 20 números por Business Manager (vs 2)
  • Nome da empresa visível nas conversas do WhatsApp
  • Elegibilidade para selo azul verificado
Compartilhe a verification.url para que o responsável pela empresa envie os documentos de verificação. O processo leva aproximadamente 5 minutos após o envio.

Endpoints

Listar canais

string
required
Sua API Key
Resposta: Channel[]

Criar canal

string
required
Nome identificador do canal
number | null
Validade do channel_token em dias: 1, 7, 30 ou 90. Ausente ou null: nunca expira.
Resposta: Channel — status 201 Created Após criar, compartilhe o connect_url retornado para que o número seja conectado.

Redirecionamento após a conexão

Opcional. Em Configurações › Organização › Redirecionamento após conexão, informe uma URL https://. Assim que o número for conectado pelo connect_url, a pessoa é levada para essa URL com os dados do canal:
Parâmetros que a sua URL já tiver são mantidos. Sem URL configurada, o link mostra a tela de conexão concluída. Use o channel_id para consultar o canal pela API ou aguarde o evento de webhook channel_status_update antes de liberar o envio.

Buscar canal

Resposta: Channel

Gerar novo token

Gera um novo channel_token. O anterior para de funcionar na hora.
number | null
Validade do novo token em dias: 1, 7, 30 ou 90. Ausente ou null: nunca expira.
boolean
true gera também um novo connect_url. Os links de conexão já enviados deixam de funcionar.
Resposta: Channel, com o novo channel_token e channel_token_expires_at

Deletar canal

boolean
Obrigatório se o canal está com status: active. Use ?force=true para confirmar.
Resposta: 204 No Content

Erros