Skip to main content
O webhook genérico é o canal para todo o resto: um chat interno, um sistema de tickets, um job de CI ou um script. O seu sistema posta uma mensagem JSON no gateway, e o gateway posta as respostas de volta numa URL de callback que você escolhe. Os dois sentidos levam o mesmo segredo compartilhado.

Configuração

1

Configure o ChatCLI

2

Inicie o gateway

3

Mande uma mensagem

O gateway responde 202 Accepted na hora; o progresso e a resposta chegam na sua URL de callback.

Variáveis de ambiente

A requisição

POST em CHATCLI_WEBHOOK_PATH com Content-Type: application/json e o header X-ChatCLI-Secret: O corpo da requisição é limitado ao teto de áudio mais 1 MB, uns 21 MB com o CHATCLI_GATEWAY_MAX_AUDIO_BYTES padrão.

Os callbacks

Para cada mensagem o gateway posta JSON em CHATCLI_WEBHOOK_CALLBACK_URL, com Content-Type: application/json e o mesmo header X-ChatCLI-Secret, para que o seu endpoint confira a origem:
Quando a resposta traz uma imagem, o corpo também tem image_b64, e image_mime e image_filename quando são conhecidos. Uma mesma mensagem pode gerar vários callbacks com esse formato: o aviso de “trabalhando”, atualizações de progresso enquanto o agente trabalha e a resposta final. Nenhum campo os diferencia; a resposta final é a última. Qualquer resposta 2xx do seu endpoint conta como entregue.

Segurança

  • Use um segredo longo e aleatório, e sirva o endpoint por HTTPS quando ele for acessível de outras máquinas.
  • audio_url e image_url são baixados pelo próprio gateway, então quem tem o segredo consegue fazer o gateway buscar uma URL da rede dele.
  • Cada mensagem roda o agente com suas tools e o shell, sem confirmações. Endureça com o modo de segurança.

Limites

  • Uma resposta é cortada em 3500 caracteres e termina com ….
  • Só texto e imagens voltam no callback; respostas em voz não são enviadas neste canal.

Veja também

Chat gateway

Como as mensagens rodam, voz, imagens, continuidade e os outros canais.

Mensagens proativas

Deixe o agente postar no seu callback por conta própria com @send.