Envio de webhooks
O notify.webhook entrega avisos de máquina para máquina: quando algo acontece no seu sistema, a API faz um POST no endpoint que você indicar, com o payload que você definir. É integração em tempo real sem fila própria nem worker dedicado — US$ 0,002 por entrega, pago por uso.
Rode online
Rode nos nossos servidores com a sua conta. As ferramentas grátis rodam no seu navegador; esta aqui é descontada do seu saldo do KIT pelo preço acima.
Empurrar em vez de ficar perguntando
Sem webhook, o sistema de destino vive perguntando "já aconteceu?" a cada minuto — o famoso polling, que desperdiça chamadas o dia inteiro para descobrir que nada mudou. O webhook inverte a direção: quem sabe do evento avisa quem precisa saber, no segundo em que ele acontece. Menos tráfego, menos atraso, menos código de verificação. Para integração entre sistemas que não se conhecem, é o padrão que a web inteira adotou.
Como disparar uma entrega
A chamada em /notify/webhook leva dois ingredientes: a URL de destino e o corpo JSON que você quer entregar. A API faz o POST e o resultado da tarefa informa como o outro lado respondeu — o código HTTP retornado pelo endpoint. Com isso, seu código sabe se o aviso chegou ou se precisa de outra tentativa, sem manter fila, worker nem conexão aberta. Uma chamada, uma entrega, um resultado verificável.
Boas práticas de quem recebe
Se você também está do lado que recebe webhooks, três hábitos evitam dor de cabeça: responda rápido com um 200 e processe o conteúdo depois, porque endpoint lento vira entrega perdida; valide a origem antes de confiar no payload; e trate entregas repetidas sem efeito colateral, porque redes falham e avisos podem chegar duas vezes. Quem projeta os dois lados com essas regras dorme melhor.
Preço por entrega, sem letra miúda
Cada entrega custa US$ 0,002 — fixo, sem cobrança por tamanho de payload nem por destino. Dez mil avisos no mês somam US$ 20; mil, US$ 2. A cobrança é por uso e o preço fica publicado nesta página, então a conta da integração se faz antes de escrever a primeira linha de código. Sem assinatura: mês parado é mês sem custo.
Casos de uso
Venda nova avisa o ERP
A cada pedido fechado na loja online, o sistema dispara um webhook para o ERP com número, itens e valor. O faturamento começa no mesmo segundo — antes, a sincronização rodava de hora em hora e a expedição esperava.
Admissão concluída avisa a folha
Quando o RH da Distribuidora Horizonte Verde conclui uma admissão, o sistema de folha de pagamento recebe o aviso com os dados do contrato. Márcia Regina Oliveira não redigita mais cadastro em dois lugares.
Ponte entre sistema novo e legado
A TecnoSul Soluções Digitais precisava que um sistema legado reagisse a eventos do produto novo, sem mexer no código antigo. Um endpoint simples no legado e webhooks do lado novo resolveram a ponte em um dia.
Pedido despachado avisa a transportadora
Quando o pedido sai do depósito, a transportadora parceira recebe o webhook com volume, peso e endereço de entrega. A coleta é agendada sem telefonema e sem planilha trocada por e-mail.
Perguntas frequentes
Que formato tem o aviso entregue?
Um POST HTTP com o corpo JSON que você definir na chamada. O destino não precisa de nada especial: qualquer endpoint capaz de receber um POST está pronto.
Como sei se o destino recebeu?
O resultado da tarefa traz a resposta do endpoint — o código HTTP que ele devolveu. Um 200 confirma a entrega; um erro aparece para o seu código decidir o que fazer.
E se o sistema de destino estiver fora do ar?
A entrega retorna o erro em vez de sumir em silêncio. Para não ficar tratando isso à mão, combine com o retry automático do KIT, que refaz a tentativa sozinho até o destino voltar.
O preço muda com o volume?
Não: US$ 0,002 por entrega, linear do primeiro ao milionésimo aviso. Dez mil entregas custam US$ 20, e a conta é essa antes e depois de crescer.
O conteúdo do payload fica retido?
Ele é processado para realizar a entrega — essa é a única finalidade. Mesmo assim, mande no payload o necessário: identificadores em vez de dossiês.
Preciso de contrato ou conta para usar?
Não. A compra é direta, sem cadastro, com pagamento via PayPal em dólar. Integra hoje, paga o que usar.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/notify/webhook \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/notify/webhook", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/notify/webhook",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/notify/webhook", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/notify/webhook", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"input": "…"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "notify.webhook",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |