Webhooks: avise outras ferramentas
Um webhook envia uma mensagem curta para outra ferramenta no instante em que algo acontece no seu projeto: uma publicação, uma entrada de formulário, um registro alterado. Esta página explica como adicionar um, como é a mensagem, como o outro lado pode verificar que ela é genuína e o que acontece quando esse lado está fora do ar.
O que é um webhook
Pense nisso como o seu projeto ligando para outro serviço para contar o que acabou de acontecer. Você dá ao Briks um endereço (uma URL fornecida pela outra ferramenta), escolhe os eventos que ele deve avisar, e a cada vez que um acontece o Briks envia uma mensagem para lá. Muitas ferramentas de automação, de lista de clientes e complementos de planilha podem fornecer esse endereço.
Tecnicamente, cada mensagem é uma requisição POST: uma chamada que leva um corpo, aqui escrito em JSON, um formato de texto simples que programas leem. A ferramenta que recebe lê o corpo e faz o que você configurou.
| Evento, como o estúdio mostra | Código | Enviado quando |
|---|---|---|
| Published | site.published | Uma nova versão do site foi ao ar. |
| Form received | form.received | Um visitante enviou uma mensagem por um dos formulários do site. |
| Record changed | record.changed | Um registro do banco de dados do projeto foi adicionado, alterado ou excluído. |
record.changed acompanha as alterações feitas no estúdio: um registro adicionado, editado ou excluído na aba Database, uma coleção esvaziada ou o banco de dados restaurado. Registros que o site no ar salva sozinho, como um pedido de reserva enviado por um visitante, não o disparam.
form.received é enviado tanto para envios feitos na prévia quanto na produção. Cada mensagem informa qual é o caso, para que a outra ferramenta possa ignorar os envios da prévia.
Limites de cada plano
| Plano | Webhooks por projeto | Três escolhas que todo plano de dashboard faz |
|---|---|---|
| Free | 1 | 2.000 |
| Starter | 5 | 5.000 |
| Pro | 10 | 10.000 |
| Studio | 25 | 50.000 |
| Agency | 50 | 100.000 |
Quando as chamadas do dia acabam, a entrega não é enviada e fica marcada como Failed com: As chamadas de hoje para este projeto acabaram, então esta entrega não foi enviada. Envie-a de novo amanhã.
Quando um projeto tem tantos webhooks quanto o plano permite, Add webhook fica desativado e um link Get more ao lado da contagem abre a janela de upgrade, que indica o menor plano com espaço para mais um.
Adicionar um webhook
Clique em Add webhook
Onde: Settings, Webhooks
A página mostra quantos você tem em relação ao seu plano, como 1 de 5 no seu plano. Editors, Admins e Owners podem adicionar webhooks.
Digite o endereço
Onde: Add a webhook
Cole em Address o endereço que a outra ferramenta lhe deu. Ele deve ser um endereço https público, com o nome por extenso e não um número.
Adicionar uma nota
Onde: Add a webhook
Note é opcional, com até 120 caracteres, e ajuda a distinguir os webhooks depois:
Enquiries sheet, por exemplo.Escolha os eventos
Onde: Add a webhook
Marque os eventos sobre os quais ele deve ser avisado. Published e Form received já vêm marcados; altere como preferir.
Salve e copie o segredo
Onde: Your signing secret
Clique em Add webhook. Uma janela mostra o segredo de assinatura, que começa com
whsec_. Clique em Copy e guarde: ele aparece uma vez só. Depois clique em Done.Enviar um teste
Onde: Settings, Webhooks
Abra os três pontos do webhook e escolha Send a test event. Você vê: Um evento de teste está a caminho. Veja como foi em Deliveries.
Cada webhook da lista mostra seu endereço, a nota e os eventos, com qual segredo ele é assinado (os primeiros caracteres) e como foi a última entrega. O interruptor o coloca em On ou Off, e os três pontos reúnem Send a test event (até dez por hora, só enquanto ele está ativo), Change, New signing secret e Delete.
Como é uma entrega
Toda entrega tem as mesmas três partes: type (o código do evento), timestamp (quando aconteceu, em UTC) e data (os detalhes). Aqui está uma entrada de formulário:
{"type":"form.received","timestamp":"2026-10-08T09:41:07.000Z","data":{"form":{"id":"…","subject":"Consulta de casamento","page":"/contact","fields":[{"label":"Nome","value":"Ellie Marsh"},{"label":"Data do casamento","value":"14 de junho de 2027"}],"replyTo":"ellie@example.com"},"production":true}}
| Evento | O que data contém |
|---|---|
form.received | form: seu id, o subject, a page de onde foi enviado, os fields (cada um com um label e um value, na ordem do formulário) e replyTo, o e-mail do visitante quando o formulário pede um. Depois production: true para o site no ar, false para a prévia. |
site.published | url: o endereço em que o site entrou no ar. production: se o site está em produção. abTest: se um teste A/B está em andamento. served: se o Briks viu a nova versão respondendo nesse endereço quando enviou a mensagem. |
record.changed | action: created, updated, deleted, cleared ou restored. collection: qual coleção. record: o id do registro. Os valores do registro não estão incluídos. |
test | Uma message e o project, com seu id e name. Enviado apenas quando você clica em Send a test event. |
Cada entrega também traz três cabeçalhos: webhook-id (o id da mensagem), webhook-timestamp (quando foi enviada, em segundos) e webhook-signature. Eles seguem o formato aberto Standard Webhooks, então ferramentas que o entendem podem verificar as entregas para você.
Confira se uma entrega é genuína
Qualquer pessoa pode enviar uma mensagem para um endereço, então quem recebe deve verificar a assinatura antes de confiar nela. A assinatura é feita com o segredo de assinatura que só você e o Briks têm. Quando um projeto tem um webhook, a página Webhooks mostra um pequeno exemplo de código em Checking a delivery is genuine. Em palavras, a verificação funciona assim:
- Pegue o corpo exatamente como chegou, como texto, antes de lê-lo como JSON.
- Junte o
webhook-id, owebhook-timestampe o corpo com pontos finais entre eles. - Pegue seu segredo, tire o
whsec_do início e decodifique o restante de base64. Essa é a chave. - Assine o texto unido com HMAC SHA-256 e essa chave, escreva o resultado em base64 e coloque
v1,na frente. - A entrega é genuína se isso corresponder a um dos valores separados por espaço em
webhook-signaturee o carimbo de data e hora estiver a até cinco minutos do momento atual.
Uma entrega que é tentada de novo mantém o mesmo webhook-id, para que o destinatário guarde os ids que já tratou e ignore as repetições.
Entregas e novas tentativas
Deliveries lista todas as entregas dos últimos trinta dias, da mais recente para a mais antiga. Filtre com Status e clique em Show. Clique em uma para ver a mensagem completa, qualquer erro e o que o endereço respondeu.
| Status | Significado |
|---|---|
| Sending | Aguardando a primeira tentativa. |
| Retrying | Uma tentativa falhou e outra vem a seguir. A linha mostra quando, após a próxima tentativa. |
| Delivered | O endereço respondeu com um status 2xx, o código da web para sucesso. |
| Failed | Todas as tentativas falharam, ou não foi possível enviar a entrega. |
Cada tentativa espera até 15 segundos por uma resposta. Se a resposta não for 2xx, Briks tenta de novo: cinco tentativas no total, a primeira na hora e depois após cerca de 30 segundos, 2 minutos, 8 minutos e 32 minutos, ou seja, cerca de 45 minutos da primeira à última. Uma resposta 410 (gone) interrompe as tentativas na hora. Redirecionamentos não são seguidos, então informe o endereço final.
Quando uma entrega fica Failed ou Delivered, Send again envia a mesma mensagem com o mesmo id, assinada de novo. O webhook precisa estar ativado.
Insights e configurações
Insights resume os últimos trinta dias: Deliveries, a parcela Delivered, Failed after every try (com o número de novas tentativas feitas) e o tempo de Average answer. Abaixo, By event e By address mostram onde as falhas se concentram.
Settings tem Download JSON em Download the webhooks, com o endereço, os eventos e a nota de cada webhook. Os segredos de assinatura nunca são incluídos. A zona de perigo traz Clear log, que apaga o registro de entregas e interrompe novas tentativas, e Delete all, que remove todos os webhooks depois que você digita o nome do projeto. Ambos são para Owners e Admins.
Exemplo prático: enviar entradas de formulário para outra ferramenta
As entradas de formulário não podem ser exportadas do estúdio, então um webhook é a forma de mantê-las em outra ferramenta assim que chegam. O estúdio também as guarda: as últimas 100 aparecem em Settings, Forms.
Uma fotógrafa de casamentos em York envia consultas para a sua lista de clientes
Pegue um endereço na outra ferramenta
Onde: Her client list tool
Ela cria um webhook de entrada lá e copia o endereço que recebe.
Adicione o webhook
Onde: Settings, Webhooks
Ela cola o endereço, escreve a nota
Client list, desmarca Published e deixa marcado só Form received.Dê o segredo à ferramenta
Onde: Her client list tool
A ferramenta dela verifica assinaturas, então ela cola o segredo de assinatura nas configurações da ferramenta antes de fechar a janela.
Teste
Onde: Settings, Webhooks, Deliveries
Ela envia um evento de teste e o vê como Delivered em Deliveries.
Combine os campos
Onde: Her client list tool
Ela associa os rótulos de
fieldsNome, Data do casamento e Local às colunas da ferramenta dela, e manda ignorar as mensagens em queproductionéfalse.
Um casal preenche o formulário de contato no site dela.
A consulta chega à caixa de entrada dela, já que o site está em produção, e aparece na lista de clientes um instante depois.