Webhook'lar
Sistemlerinizde olaya dayalı otomasyonlar için SEO Boost Hub webhook bildirimlerini gerçek zamana yakın şekilde alın.
Kurulum
Webhook uç noktalarını panelinizden yapılandırın:
Ayarlar → Webhook'lar'a gidin Uç Nokta Ekle'ye tıklayın, URL'nizi girin ve almak istediğiniz olayları seçin.
Mevcut Olaylar
Aşağıdaki olaylar webhook bildirimlerini tetikler:
| Olay | Açıklama |
|---|---|
location.updated |
Bir lokasyonun detayları değiştirildi |
rank.scanned |
Bir anahtar kelime için günlük sıralama taraması tamamlandı |
content.published |
Bir içerik gönderisi Google Business Profile'da yayınlandı |
review.received |
Yeni bir Google değerlendirmesi alındı |
health.calculated |
İşletme sağlık puanı yeniden hesaplandı |
Yük Formatı
Tüm webhook yükleri tutarlı bir JSON yapısını takip eder:
{
"id": "evt_01hx9c3f7a",
"event": "rank.scanned",
"timestamp": "2025-11-28T08:15:00Z",
"data": {
"keyword_id": "kw_01hx8b2e4d",
"keyword": "best coffee shop berlin",
"location_id": "loc_01hx7a9b2c",
"previous_rank": 8,
"current_rank": 5,
"search_engine": "google",
"scanned_at": "2025-11-28T08:14:55Z"
}
}
İmza Doğrulama
Her webhook isteği, yükün HMAC-SHA256 hash'ini içeren bir X-Signature başlığı içerir. İsteğin gerçek olduğundan emin olmak için bu imzayı doğrulayın:
İmza Başlığı
X-Signature: sha256=a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1b2
Doğrulama Örneği (PHP)
$payload = file_get_contents('php://input');
$signature = hash_hmac('sha256', $payload, $webhookSecret);
$header = $_SERVER['HTTP_X_SIGNATURE'] ?? '';
if (hash_equals("sha256={$signature}", $header)) {
// Signature is valid — process the event
} else {
// Invalid signature — reject the request
http_response_code(401);
}
Yeniden Deneme Politikası
Uç noktanız 2xx dışında bir durum kodu döndürürse, webhook üstel geri çekilme ile yeniden denenir:
| Deneme | Gecikme |
|---|---|
| 1. deneme | Anında |
| 2. deneme | 5 dakika |
| 3. deneme | 30 dakika |
Not 3 başarısız denemeden sonra webhook başarısız olarak işaretlenir. Başarısız teslimatları Ayarlar → Webhook'lar bölümünde görüntüleyebilirsiniz.