Pular para o conteúdo principal
PUT
/
instances
/
{instanceId}
/
token
/
{token}
/
update-filters
Filtros de webhook
curl --request PUT \
  --url https://api.z-api.io/instances/{instanceId}/token/{token}/update-filters \
  --header 'Client-Token: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "messageFilters": {},
  "callbackTypeFilters": {}
}
'

Conceituação

O endpoint de filtros permite configurar quais eventos e tipos de mensagem serão disparados pelos webhooks da sua instância. É possível:
  • Filtrar tipos de mensagem recebidas no webhook de Ao receber (ex: ignorar mensagens de grupos ou apenas de áudio)
  • Filtrar tipos de webhook que serão disparados (ex: desativar o webhook de Status do chat sem remover a URL configurada)
As mesmas configurações também podem ser feitas diretamente pelo painel da instância, através de botões em cada webhook.
Os filtros de messageFilters se aplicam apenas ao webhook de Ao receber. Os demais webhooks não são afetados por esse filtro.

Atualizar filtros

instanceId
string
obrigatório
ID da sua instância. Disponível no painel Z-API em Instâncias.
token
string
obrigatório
Token da sua instância Z-API.

Body

messageFilters
array of strings
Lista de filtros de tipo de mensagem. Os tipos incluídos no array não serão entregues no webhook de Ao receber (ReceivedCallback). Veja os valores possíveis abaixo.
callbackTypeFilters
array of strings
Lista de filtros de tipo de webhook. Os webhooks incluídos no array não serão disparados, mesmo que possuam uma URL configurada. Veja os valores possíveis abaixo.

Request Body

{
  "messageFilters": [
    "FILTER_FROM_GROUP",
    "FILTER_FROM_PRIVATE_CHAT",
    "FILTER_TEXT_MESSAGE",
    "FILTER_IMAGE_MESSAGE",
    "FILTER_VIDEO_MESSAGE",
    "FILTER_AUDIO_MESSAGE",
    "FILTER_DOCUMENT_MESSAGE"
  ],
  "callbackTypeFilters": [
    "FILTER_DELIVERY_CALLBACK",
    "FILTER_DISCONNECTED_CALLBACK",
    "FILTER_RECEIVED_CALLBACK",
    "FILTER_PRESENCE_CHAT_CALLBACK",
    "FILTER_MESSAGE_STATUS_CALLBACK",
    "FILTER_CONNECTED_CALLBACK"
  ]
}

Tipos de filtro para webhooks

Filtros por tipo de mensagem

Aplicam-se ao webhook de Ao receber (ReceivedCallback). Mensagens cujo tipo estiver no array messageFilters não serão entregues.
Filtra mensagens recebidas em grupos. Quando ativo, nenhuma mensagem recebida em um grupo será entregue no ReceivedCallback.
Filtra mensagens recebidas em conversas privadas. Quando ativo, apenas mensagens de recebidas de grupos serão entregues no ReceivedCallback.
Filtra mensagens do tipo texto simples.
Filtra mensagens do tipo imagem.
Filtra mensagens do tipo vídeo.
Filtra mensagens do tipo áudio.
Filtra mensagens do tipo documento.

Filtros por tipo de webhook

Aplicam-se aos webhooks em geral. Webhooks cujo tipo estiver no array callbackTypeFilters não serão disparados, independentemente de terem uma URL configurada.
Desativa o disparo do webhook Ao receber (ReceivedCallback)
Desativa o disparo do webhook Ao enviar (DeliveryCallback)
Desativa o disparo do webhook Ao conectar (ConnectedCallback)
Desativa o disparo do webhook Ao desconectar (DisconnectedCallback)
Desativa o disparo do webhook Status do chat (PresenceChatCallback)
Desativa o disparo do webhook Status da mensagem (MessageStatusCallback)

Response

200

{
  "value": true
}

405

Neste caso certifique que esteja enviando corretamente a especificação do método, ou seja verifique se você enviou o PUT conforme especificado no início deste tópico.

415

Caso você receba um erro 415, certifique de adicionar na headers da requisição o “Content-Type” do objeto que você está enviando, em sua grande maioria “application/json”.