Pular para o conteúdo principal
Use client.webhooks() para ler configuracao, atualizar entrega de eventos, consultar logs e tentar reenvio. Campos comuns em todas as chamadas:
CampoTipoObrigatórioDescrição
instanceIdstringSimID da instância.
instanceTokenstringSimToken da instância.

client.webhooks().get(...)

Lê a configuração atual do webhook.
var options = InstanceRequestOptions.builder().instanceToken(instanceToken).build();
JsonNode result = client.webhooks().get(GenericInstanceRequest.builder()
    .instanceId(instanceId)
    .instanceToken(instanceToken)
    .build());
// Exemplo: tipagem estrita com DTOs publicados quando disponivel
Retorno: envelope { code, success, data } com webhook e subscribe (eventos).

client.webhooks().set(...)

Define URL e eventos assinados.
var options = InstanceRequestOptions.builder().instanceToken(instanceToken).build();
JsonNode result = client.webhooks().set(GenericInstanceRequest.builder()
    .instanceId(instanceId)
    .instanceToken(instanceToken)
    .build());
// Exemplo: tipagem estrita com DTOs publicados quando disponivel
Retorno: envelope { code, success, data } com webhook e events configurados.
CampoTipoObrigatórioDescrição
webhookURLstringSimURL pública que receberá os callbacks.
eventsstring[] ou stringNãoEventos assinados.
Eventos comuns: Message, ReadReceipt, Connected, Disconnected, Presence, ChatPresence, HistorySync, GroupParticipantsAdd, GroupParticipantsRemove, All.

client.webhooks().searchLogs(...)

Busca logs de entrega do webhook.
var options = InstanceRequestOptions.builder().instanceToken(instanceToken).build();
JsonNode result = client.webhooks().searchLogs(GenericInstanceRequest.builder()
    .instanceId(instanceId)
    .instanceToken(instanceToken)
    .build());
// Exemplo: tipagem estrita com DTOs publicados quando disponivel
Retorno: envelope { code, success, data } com pagina de logs (content[], totais).

client.webhooks().getLog(...)

Lê um log específico de entrega.
var options = InstanceRequestOptions.builder().instanceToken(instanceToken).build();
JsonNode result = client.webhooks().getLog(GenericInstanceRequest.builder()
    .instanceId(instanceId)
    .instanceToken(instanceToken)
    .build());
// Exemplo: tipagem estrita com DTOs publicados quando disponivel
Retorno: envelope { code, success, data } com um log de entrega (status, payload, tentativas, etc.).

client.webhooks().retryLog(...)

Reenvia uma entrega com falha.
var options = InstanceRequestOptions.builder().instanceToken(instanceToken).build();
JsonNode result = client.webhooks().retryLog(GenericInstanceRequest.builder()
    .instanceId(instanceId)
    .instanceToken(instanceToken)
    .build());
// Exemplo: tipagem estrita com DTOs publicados quando disponivel
Retorno: envelope { code, success, data } confirmando reenvio do callback.

Quando usar webhook

Use webhook quando:
  • sua aplicação já possui URL pública para receber callbacks;
  • você quer processar eventos de forma assíncrona no backend;
  • seu pipeline de integração já trabalha com HTTP POST.
Para bots, dashboards e apps que precisam de baixa latência sem expor URL, prefira Realtime.