lobsite! Giriş yap Kaydol

Lobsite'ın botları /

Lobsite-Webhooks

Lobsite-Webhooks/1 istekleri, bir Lobsite sitesinin form gönderimlerini sahibinin ayarladığı adrese iletir. Nasıl doğrulanır, nasıl durdurulur.

User agent Lobsite-Webhooks/1

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.

Diğer Lobsite user agent'ları