Ver Webhook da Instância

GET /webhook

Retorna a configuração atual do webhook da instância, incluindo:

  • URL configurada
  • Eventos ativos
  • Filtros aplicados
  • Configurações adicionais

Exemplo de resposta:

[
  {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "enabled": true,
    "url": "https://example.com/webhook",
    "events": ["messages", "messages_update"],
    "excludeMessages": ["wasSentByApi", "isGroupNo"],
    "addUrlEvents": true,
    "addUrlTypesMessages": true
  },
  {
    "id": "987fcdeb-51k3-09j8-x543-864297539100",
    "enabled": true,
    "url": "https://outro-endpoint.com/webhook",
    "events": ["connection", "presence"],
    "excludeMessages": [],
    "addUrlEvents": false,
    "addUrlTypesMessages": false
  }
]

A resposta é sempre um array, mesmo quando há apenas um webhook configurado.

Autenticação

[
  {
    "token": []
  }
]
{
  "token": {
    "name": "token",
    "type": "apiKey",
    "in": "header"
  }
}

Respostas

{
  "200": {
    "description": "Configuração do webhook retornada com sucesso",
    "content": {
      "application/json": {
        "schema": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/Webhook"
          }
        },
        "example": [
          {
            "id": "123e4567-e89b-12d3-a456-426614174000",
            "enabled": true,
            "url": "https://example.com/webhook",
            "events": [
              "messages",
              "messages_update"
            ],
            "excludeMessages": [
              "wasSentByApi",
              "isGroupNo"
            ],
            "addUrlEvents": true,
            "addUrlTypesMessages": true
          },
          {
            "id": "987fcdeb-51k3-09j8-x543-864297539100",
            "enabled": true,
            "url": "https://outro-endpoint.com/webhook",
            "events": [
              "connection",
              "presence"
            ],
            "excludeMessages": [],
            "addUrlEvents": false,
            "addUrlTypesMessages": false
          }
        ]
      }
    }
  },
  "401": {
    "description": "Token inválido ou não fornecido",
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "error": {
              "type": "string",
              "example": "missing token"
            }
          }
        }
      }
    }
  },
  "500": {
    "description": "Erro interno do servidor",
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "error": {
              "type": "string",
              "example": "Failed to process webhook data"
            }
          }
        }
      }
    }
  }
}

#/components/schemas/Webhook

{
  "type": "object",
  "description": "Configuração completa de webhook com filtros e opções avançadas",
  "properties": {
    "id": {
      "type": "string",
      "description": "Identificador opaco gerado pelo servidor. Não presuma formato UUID."
    },
    "enabled": {
      "type": "boolean",
      "description": "Webhook ativo/inativo",
      "default": false
    },
    "url": {
      "type": "string",
      "format": "uri",
      "description": "URL de destino dos eventos"
    },
    "events": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "connection",
          "history",
          "messages",
          "messages_update",
          "newsletter_messages",
          "call",
          "contacts",
          "presence",
          "groups",
          "labels",
          "chats",
          "chat_labels",
          "sender"
        ]
      },
      "description": "Tipos de eventos monitorados"
    },
    "addUrlTypesMessages": {
      "type": "boolean",
      "description": "Incluir na URLs o tipo de mensagem",
      "default": false
    },
    "addUrlEvents": {
      "type": "boolean",
      "description": "Incluir na URL o nome do evento",
      "default": false
    },
    "excludeMessages": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "wasSentByApi",
          "wasNotSentByApi",
          "fromMeYes",
          "fromMeNo",
          "isGroupYes",
          "isGroupNo"
        ]
      },
      "description": "Filtros para excluir tipos de mensagens"
    }
  },
  "required": [
    "url",
    "events"
  ],
  "example": {
    "id": "wh_9a8b7c6d5e",
    "enabled": true,
    "url": "https://webhook.cool/example",
    "events": [
      "messages",
      "newsletter_messages",
      "connection"
    ],
    "addUrlTypesMessages": false,
    "addUrlEvents": false,
    "excludeMessages": []
  }
}

Guias relacionados

Autenticação · Erros e retries · Server URL