Visão Geral
Os webhooks do ZeroPath permitem que você receba notificações HTTP em tempo real quando eventos de segurança importantes ocorrem nos seus repositórios. Isso possibilita criar integrações personalizadas, automatizar fluxos de trabalho e se manter informado sobre sua postura de segurança.Configuração Rápida
Configure webhooks nas configurações da sua organização para começar a receber notificações de segurança em tempo real.
Como os Webhooks Funcionam
Quando um evento assinado ocorre, o ZeroPath envia uma requisição HTTP POST para o endpoint configurado com um payload JSON contendo informações detalhadas sobre o evento. Você pode usar esses dados para:- Automatizar fluxos de trabalho de segurança: Dispare respostas automatizadas a eventos de segurança
- Criar integrações personalizadas: Conecte o ZeroPath às suas ferramentas e plataformas existentes
- Monitorar a postura de segurança: Acompanhe vulnerabilidades e resultados de scans em tempo real
- Aprimorar a conformidade: Registre eventos de segurança para trilhas de auditoria
Tipos de Eventos Suportados
O ZeroPath suporta os seguintes tipos de eventos de webhook:SCAN_STARTED
Quando um scan completo de repositório começa
SCAN_COMPLETE
Quando um scan completo de repositório termina com sucesso
SCAN_FAILED
Quando um scan falha ao concluir
SCAN_SCHEDULED
Quando um scan é agendado
PR_SCAN_STARTED
Quando um scan de pull request começa
PR_SCAN_COMPLETE
Quando um scan de pull request é concluído
NEW_VULNERABILITIES_FULL_SCAN
Quando novas vulnerabilidades são detectadas em um scan completo de repositório
NEW_VULNERABILITIES_PR
Quando novas vulnerabilidades são detectadas em um pull request
VULNERABILITY_PATCHED
Quando uma vulnerabilidade é corrigida. Se um único pull request corrigir várias vulnerabilidades, um evento separado é enviado para cada uma.
VULNERABILITY_REOPENED
Quando uma vulnerabilidade reaparece
PR_BLOCKED
Quando um pull request é bloqueado devido a vulnerabilidades
PR_MERGED_WITH_ISSUES
Quando um pull request é mesclado na branch principal com vulnerabilidades abertas
REPORT_COMPLETE
Quando um relatório é gerado
LONG_RUNNING_SCAN
Quando um scan está demorando mais do que o normal
AUDIT_LOG_EVENT
Eventos importantes do log de auditoria
SCA_NEW_CVE
Quando um novo CVE é detectado em uma dependência do projeto
SCA_NEW_ISSUE
Quando um novo problema de vulnerabilidade de dependência é criado a partir de qualquer fonte de SCA
INBOUND_WEBHOOK
Quando um sistema externo envia um evento para um gatilho de webhook de entrada do ZeroPath
PATCH_PR_DENIED
Quando um pull request de correção é negado ou rejeitado
VULNERABILITY_STATUS_CHANGED
Quando o status de uma vulnerabilidade muda (por exemplo, de revisão pendente para risco aceito). Disparado para todas as ações de triagem, incluindo arquivar, desarquivar, marcar como verdadeiro positivo, marcar como falso positivo, resolver e desfazer a resolução — sejam elas realizadas pelo dashboard, pela API ou pelo agente de IA do ZeroPath.
SCA_SCAN_STARTED
Quando um scan de dependências (SCA) começa
SCA_SCAN_COMPLETE
Quando um scan de dependências (SCA) termina com sucesso
SCA_SCAN_FAILED
Quando um scan de dependências (SCA) falha ao concluir
REPO_ADDED
Quando um novo repositório é adicionado à organização
RUNTIME_VALIDATION_FINISHED
Quando a validação em tempo de execução de uma vulnerabilidade é concluída
RUNTIME_VALIDATION_EXPLOITABLE
Quando a validação em tempo de execução confirma que uma vulnerabilidade é explorável
RUNTIME_VALIDATION_NOT_EXPLOITABLE
Quando a validação em tempo de execução determina que uma vulnerabilidade não é explorável
RUNTIME_VALIDATION_UNABLE
Quando a validação em tempo de execução não consegue determinar a explorabilidade
CONTAINER_SCAN_STARTED
Quando um scan de imagem de contêiner começa
CONTAINER_SCAN_COMPLETE
Quando um scan de imagem de contêiner termina com sucesso
CONTAINER_NEW_ISSUE
Quando um scan de imagem de contêiner encontra um novo problema
ISSUE_AGED_PAST_THRESHOLD
Quando um problema aberto ultrapassa o limite de tempo configurado
SLA_BURN_RATE_HIGH
Quando a taxa de consumo do SLA para problemas abertos está alta
Estrutura do Payload do Webhook
Todos os payloads de webhook seguem uma estrutura consistente com dados específicos de cada evento:Campos Comuns
Objeto event
Requisitos específicos por evento
SCAN_STARTED:event.scanobrigatórioPR_SCAN_STARTED:event.scanobrigatórioSCAN_COMPLETE:event.scanobrigatórioPR_SCAN_COMPLETE:event.scanobrigatórioSCAN_FAILED:event.scaneevent.errorobrigatóriosNEW_VULNERABILITIES_PR:event.vulnerabilityouevent.scanobrigatórioNEW_VULNERABILITIES_FULL_SCAN:event.vulnerabilityouevent.scanobrigatórioLONG_RUNNING_SCAN:event.metadata.runningMinutesobrigatórioAUDIT_LOG_EVENT:event.audit_logobrigatórioSCAN_SCHEDULED:event.metadatacomscheduleId,crontab,isEnabled,actionobrigatórioPR_BLOCKED:event.metadata.prIdeevent.metadata.prNumberobrigatóriosPR_MERGED_WITH_ISSUES:event.metadata.prUrleevent.metadata.targetBranchobrigatóriosVULNERABILITY_REOPENED/VULNERABILITY_PATCHED:event.metadataouevent.vulnerabilityobrigatório. Quando um único pull request corrige várias vulnerabilidades, você receberá um eventoVULNERABILITY_PATCHEDpor vulnerabilidade.REPORT_COMPLETE:event.metadata.reportIdobrigatório
Exemplos de Payload de Eventos
Configurando Webhooks
Integrations
Adicione e gerencie endpoints de webhook
Notifications
Configure quais eventos disparam webhooks
Configurando os Webhooks
A configuração de webhooks no ZeroPath é um processo de duas etapas que oferece controle granular sobre quais eventos você recebe:Etapa 1: Adicionar uma Integração de Webhook
- Navegue até zeropath.com/app/settings/integrations
- Clique em “Add Integration” e selecione “Webhook”
- Configure o endpoint do seu webhook:
- Name: Um nome descritivo para este webhook
- URL: Seu endpoint HTTPS que receberá os payloads do webhook
- Custom Headers: Adicione cabeçalhos personalizados para autenticação (por exemplo,
Authorization: Bearer your-secret-token)
Etapa 2: Criar Configurações de Notificação
Depois de adicionar uma integração de webhook, configure quais eventos disparam notificações:- Acesse zeropath.com/app/settings/notifications
- Clique em “Create Notification Setting”
- Configure suas preferências de notificação:
- Notification Channel: Selecione “Webhook” entre os canais disponíveis
- Webhook: Escolha na sua lista de integrações de webhook
- Repositories: Selecione repositórios específicos ou escolha “All Repositories”
- Event Types: Selecione quais eventos devem disparar notificações
- Vulnerability Score Threshold: Para eventos de vulnerabilidade, defina o limite mínimo (Info, Low, Medium, High ou Critical)
O limite de pontuação de vulnerabilidade só se aplica a eventos relacionados a vulnerabilidades, como
NEW_VULNERABILITIES_FULL_SCAN e NEW_VULNERABILITIES_PR. Outros eventos, como SCAN_COMPLETE, sempre serão enviados, independentemente dessa configuração.Exemplo de Configuração
Aqui está um exemplo de uma configuração típica de webhook:1
Criar a Integração de Webhook
Adicione um endpoint de webhook em Integrations:
- Name: “Production Security Alerts”
- URL:
https://api.example.com/webhooks/zeropath - Custom Headers:
Authorization: Bearer prod-webhook-token-123X-Environment: production
2
Configurar as Notificações
Crie as configurações de notificação:
- Notification Channel: “Webhook”
- Webhook: “Production Security Alerts” (da sua lista de webhooks)
- Repositories: “backend-api”, “frontend-app”
- Events:
NEW_VULNERABILITIES_FULL_SCAN,NEW_VULNERABILITIES_PR,PR_BLOCKED - Vulnerability Score Threshold: High
3
Resultado
Você receberá webhooks apenas para:
- Novas vulnerabilidades com pontuação High ou Critical nos repositórios selecionados
- PRs bloqueados nos repositórios selecionados
- Nenhuma notificação para vulnerabilidades abaixo do limite High
Filtragem por Repositório
Você pode configurar webhooks em diferentes escopos:- All Repositories
- Repositórios Específicos
Selecione “All Repositories” para receber notificações de eventos em toda a sua organização. Novos repositórios são incluídos automaticamente.
Filtragem por Pontuação de Vulnerabilidade
O limite de pontuação de vulnerabilidade ajuda a reduzir o ruído filtrando vulnerabilidades de menor prioridade. O ZeroPath usa um sistema de pontuação de 0 a 100 categorizado em cinco níveis:Quando você seleciona um nível de limite (por exemplo, “High”), receberá notificações para todas as vulnerabilidades nesse nível e acima. Por exemplo, selecionar “High” notificará você sobre vulnerabilidades High e Critical.
Múltiplas Configurações de Webhook
Você pode criar várias integrações de webhook e configurações de notificação para lidar com diferentes cenários. Cada configuração de notificação pode usar o canal “Webhook” com integrações de webhook diferentes:Alertas Críticos
Caso de uso: Notificações imediatas para problemas críticos
- Webhook: Integração com PagerDuty
- Repositories: Somente repositórios de produção
- Events:
NEW_VULNERABILITIES_FULL_SCAN,PR_BLOCKED - Vulnerability Score Threshold: Critical
Atualizações da Equipe
Caso de uso: Notificações diárias para a equipe
- Webhook: Canal do Slack
- Repositories: Todos os repositórios
- Events:
SCAN_COMPLETE,REPORT_COMPLETE - Vulnerability Score Threshold: Medium
Trilha de Auditoria
Caso de uso: Registro para conformidade
- Webhook: Sistema SIEM
- Repositories: Todos os repositórios
- Events: Todos os tipos de evento
- Vulnerability Score Threshold: Info (captura tudo)
Fluxo de PRs
Caso de uso: Notificações para desenvolvedores
- Webhook: GitHub Actions
- Repositories: Repositórios em desenvolvimento ativo
- Events:
PR_SCAN_COMPLETE,NEW_VULNERABILITIES_PR - Vulnerability Score Threshold: High
Gerenciando Configurações de Notificação
Para gerenciar suas configurações de webhook:- Ver todas as configurações: Navegue até zeropath.com/app/settings/notifications para ver todas as configurações ativas
- Editar configurações: Clique em qualquer configuração de notificação para modificar repositórios, eventos ou limites de pontuação de vulnerabilidade
- Ativar/Desativar: Desative notificações temporariamente sem excluir a configuração
- Testar webhooks: Use o botão “Test” para enviar um payload de exemplo e verificar se seu endpoint está funcionando
Segurança de Webhooks
Autenticação com Cabeçalhos Personalizados
O ZeroPath permite adicionar cabeçalhos personalizados às requisições de webhook para autenticação. Essa abordagem flexível permite implementar uma segurança compatível com a sua infraestrutura: Padrões comuns de autenticação:- Flexibilidade: Use qualquer esquema de autenticação que se adapte à sua infraestrutura
- Compatibilidade: Funciona com gateways de API e middlewares de autenticação existentes
- Múltiplos cabeçalhos: Adicione vários cabeçalhos para propósitos diferentes (autenticação, roteamento, metadados)
- Padrões consolidados: Use padrões de autenticação consagrados do mercado, como tokens Bearer
Webhooks de Entrada (Gatilhos do Agente)
Além dos webhooks de notificação de saída descritos acima, o ZeroPath suporta webhooks de entrada que disparam ações automatizadas do agente. Os webhooks de entrada permitem que sistemas externos enviem eventos ao ZeroPath e que o agente de IA responda com base em um prompt configurável.Como os Webhooks de Entrada Funcionam
- Você cria um gatilho de evento com o tipo de evento
INBOUND_WEBHOOKvia API ou servidor MCP. - O ZeroPath gera uma URL de webhook e um segredo únicos para o gatilho:
- Quando um sistema externo envia um HTTP POST para essa URL, o agente executa o prompt do gatilho com o payload do webhook disponível como contexto.
- Você pode visualizar o histórico de execuções e os resultados do gatilho por meio da API.
Casos de Uso
- Integração com CI/CD externo: Dispare o agente para triar achados quando seu pipeline de build for concluído.
- Integração com ferramentas de terceiros: Faça com que ferramentas de segurança externas enviem achados ao agente para análise automatizada.
- Automação personalizada: Conecte qualquer sistema capaz de enviar requisições HTTP POST para disparar fluxos de trabalho do agente.
Os webhooks de entrada são gerenciados pelos endpoints da Agent API. Cada gatilho de webhook de entrada inclui um segredo gerado automaticamente para autenticação. Você pode listar, criar, atualizar e excluir gatilhos usando a API V2 ou o servidor MCP.
Boas Práticas
Implemente Idempotência
Implemente Idempotência
Webhooks podem ser entregues mais de uma vez. Use o ID do evento para garantir que cada evento seja processado apenas uma vez.
Responda Rapidamente
Responda Rapidamente
Seu endpoint deve retornar um código de status 2xx em até 10 segundos. Processe os dados do webhook de forma assíncrona, se necessário.
Trate as Novas Tentativas
Trate as Novas Tentativas
O ZeroPath tentará reenviar entregas de webhook que falharam usando backoff exponencial. Garanta que seu endpoint consiga lidar com eventos duplicados.
Monitore a Saúde dos Webhooks
Monitore a Saúde dos Webhooks
Configure monitoramento para seus endpoints de webhook para garantir que estejam recebendo e processando eventos corretamente.
Use a Filtragem de Webhooks
Use a Filtragem de Webhooks
Assine apenas os eventos de que você precisa para reduzir ruído e sobrecarga de processamento.
Tratamento de Erros
O ZeroPath usa a seguinte política de novas tentativas para entregas de webhook que falharam:- Primeira nova tentativa: 30 segundos após a primeira falha
- Tentativas subsequentes: Backoff exponencial (1min, 2min, 4min, 8min, 16min)
- Máximo de tentativas: 6 tentativas ao longo de ~30 minutos
- Ação final: Webhook marcado como falho e notificação enviada
Precisa de Ajuda?
Fale com o Suporte
Está com problemas nos webhooks? Nossa equipe de suporte está aqui para ajudar.