Lobsite-Webhooks, Lobsite'ın gönderdiği webhook'ların user agent'ıdır. Formu olan bir Lobsite sitesi, her gönderimi sahibinin lobsite.toml içinde belirlediği bir webhook adresine gönderebilir; bu istekler o teslimatlardır. Onu günlüklerinizde görüyorsanız, biri bir formun webhook'unu sunucunuza yönlendirmiştir: genellikle kendi Lobsite sitenizden siz.
Bir istek nasıl görünür
Kabul edilen ve spam olmayan her gönderim, JSON gövdeli bir POST isteğidir:
POST /hooks/contact HTTP/1.1
Content-Type: application/json
User-Agent: Lobsite-Webhooks/1
X-Lobsite-Event: form.submission
X-Lobsite-Delivery: dlv_3m9q…
X-Lobsite-Signature: t=1760372438,v1=5257a869…
{
"type": "form.submission",
"id": "sub_8x2k…",
"site": "quiet-fox-4821",
"form": "contact",
"data": { "email": "ana@example.com", "message": "Hi!" },
"created_at": "2026-10-13T16:20:38Z"
}
Webhook'lar yalnızca özel veya iç ağlara çözümlenmeyen https:// adreslerine gider.
Bir isteğin gerçekten Lobsite'tan geldiğini doğrulayın
User agent taklit edilebilir; imza edilemez. X-Lobsite-Signature, bir t zaman damgası ve v1 içerir; v1, formun Lobsite panelinde bir kez gösterilen webhook gizli anahtarıyla "<t>.<raw body>" değerinin onaltılık HMAC-SHA256'sıdır. Aynı değeri ham gövdeden hesaplayın, sabit zamanda karşılaştırın ve 5 dakikadan eski bir t değerini reddedin.
import { createHmac, timingSafeEqual } from "node:crypto";
function verified(secret, header, rawBody) {
const { t, v1 } = Object.fromEntries(header.split(",").map((p) => p.split("=")));
if (Math.abs(Date.now() / 1000 - Number(t)) > 300) return false;
const expected = createHmac("sha256", secret).update(`${t}.${rawBody}`).digest("hex");
return v1?.length === expected.length && timingSafeEqual(Buffer.from(v1), Buffer.from(expected));
}
Yeniden denemeler
10 saniye içinde gelen bir 2xx yanıtı teslim edilmiş sayılır. Diğer her şey 5 kez yeniden denenir: 1 dakika, 5 dakika, 30 dakika, 2 saat ve 12 saat sonra. X-Lobsite-Delivery denemeler boyunca aynı kalır; böylece zaten işlediğiniz bir teslimatı atlayabilirsiniz.
Sık sorulan sorular
Bu istekleri nasıl durdururum?
Site sizinse, lobsite.toml içindeki formdan webhook satırını kaldırın ve deploy edin. Değilse bir hatayla yanıt verin: her gönderim toplam 6 kez denenir ve sonra bırakılır. Gelmeye devam ederlerse, X-Lobsite-Delivery değeriyle birlikte Kötüye kullanımı bildir sayfasından bildirin, inceleyelim.
Hangi planlar webhook gönderir?
Webhook'lar Standard planının parçasıdır. Ücretsiz plandaki siteler bunun yerine e-posta bildirimleri alır. Bkz. form belgeleri.
Aynı gönderimi neden iki kez alıyorum?
Sunucunuz ilk seferde çok yavaş ya da bir hatayla yanıt verdi, bu yüzden yeniden denendi. X-Lobsite-Delivery değerini daha önce gördüğünüz teslimatları atlayın.