Webhook

Webhook, bir uygulamanın başka bir uygulamaya, bir şeyin gerçekleştiğini gerçek zamanlı olarak bildirmesi için kullanılan bir mekanizmadır — olay gerçekleştiği anda önceden yapılandırılmış bir URL'ye veri yükü içeren bir HTTP POST isteği göndererek. Webhook'lar hemen hemen her no-code entegrasyonunun bel kemiğidir: Stripe'ı Zapier'e veya Typeform'u Make'e bağladığınızda, oluşturucuda seçtiğiniz "anlık" tetikleyici, arka planda bir webhook'tur. Neden önemli: webhook'lar, yoklamanın ("henüz bir şey değişti mi?" diye tekrar tekrar sormanın) verimli alternatifidir. Bir otomasyon platformunun kaynak sistemi her birkaç dakikada bir kontrol edip API hız sınırlarını tüketmesi yerine, kaynak sistem bir şey olduğu anda veriyi iter — ölçekte daha hızlı, daha ucuz ve daha güvenilir. Yapay zeka/SaaS geliştiricileri için webhook'ları anlamak esastır, çünkü çoğu üçüncü taraf entegrasyonu (ödeme işlemcileri, CRM'ler, form oluşturucular, sohbet platformları) webhook'ları birincil gerçek zamanlı entegrasyon noktası olarak sunar ve "Zap'im neden tetiklenmedi" hata ayıklaması neredeyse her zaman bir webhook yapılandırması, imza doğrulama veya veri yükü şekli sorununa iner. Nasıl çalışır: (1) alıcı uygulama bir uç nokta URL'si sunar (örn. `https://hooks.zapier.com/hooks/catch/123456/abcdef/`); (2) gönderen uygulama, belirli bir olay türü için (örn. `payment.succeeded`) bu URL ile bir "webhook aboneliği" olarak yapılandırılır; (3) olay ateşlendiğinde, gönderen uygulama olayı açıklayan bir JSON gövdesiyle bu URL'ye bir HTTP POST yapar; (4) alıcı uygulama veri yükünü ayrıştırır ve kendi mantığını tetikler. Somut örnek — bir müşteri ödemeyi tamamladığında gönderilen bir Stripe webhook veri yükü: `POST /webhook HTTP/1.1`, `{"id": "evt_1N3T2x", "type": "checkout.session.completed", "data": {"object": {"customer_email": "jane@example.com", "amount_total": 4900, "currency": "usd"}}}` gibi bir JSON gövdesiyle. Bunu alan bir no-code otomasyon platformu `customer_email` ve `amount_total`'ı çıkarabilir, ardından "Jane'i ConvertKit'teki Ücretli Müşteriler listesine ekle" gibi bir eylemi tetikleyebilir. Üretim kalitesindeki webhook işleme, geliştiricilerin sıklıkla atladığı iki şey gerektirir: imza doğrulama (veri yükünün gerçekten Stripe'tan geldiğini ve taklit edilmediğini doğrulamak için `Stripe-Signature` gibi bir başlığı paylaşılan bir gizli anahtara karşı kontrol etmek) ve idempotency (yeniden denemeler sırasında meydana gelen, aynı webhook'un iki kez teslim edilmesini, çift işleme yapmadan yönetmek — örn. iki yinelenen sipariş oluşturmadan). Çoğu no-code platform, özellikle özel olarak önceden oluşturulmuş bir bağlayıcısı olmayan uygulamalardan olay almak için oluşturucuların kullanabileceği genel bir "Webhook Yakala" tetikleyicisi sunar — platformun otomatik oluşturduğu URL'yi herhangi bir üçüncü taraf sistemin "webhook URL'si" ayarına yapıştırmak, satıcının hiç resmi olarak oluşturmadığı bir entegrasyonu bağlamanın genellikle en hızlı yoludur.

İlgili terimler

Daha fazla Kod Yazmadan terimi