
Bilgi Merkezi / Webhook Nedir?
Webhook, bir uygulama üzerinde belirli bir olay gerçekleştiğinde, başka bir uygulamayı otomatik olarak haberdar eden veri iletişim yöntemidir. "Olay tabanlı HTTP geri çağrısı" olarak da tanımlanır.
Bu rehberde webhook'un ne olduğunu, polling'den farkını, nasıl çalıştığını ve Stripe, GitHub, Slack gibi popüler servislerle nasıl kullanıldığını sade bir dille açıklıyoruz.
Klasik API kullanımında siz sunucuya "Yeni bir şey var mı?" diye sürekli sorarsınız. Webhook'ta ise durum tersine döner: sunucu, yeni bir şey olduğunda size otomatik olarak haber verir.

Webhook - Olay Tabanlı Gerçek Zamanlı Veri İletişimi
Webhook'un çalışma mantığı üç adıma indirgenebilir:
Dışarıdaki servise (örneğin Stripe) "Bir ödeme gerçekleştiğinde şu adresime bildir" diyerek kendi sunucunuzdaki bir URL'yi kaydedersiniz. Bu adrese webhook endpoint denir.
Kayıt ettiğiniz olay gerçekleştiğinde (ödeme tamamlandı, pull request açıldı, mesaj gönderildi vb.) ilgili servis sizin endpoint'inize otomatik olarak bir HTTP POST isteği gönderir. Bu istek, olaya ait tüm detayları JSON formatında içerir.
Sunucunuz gelen veriyi işler — veritabanını günceller, e-posta gönderir, başka bir servisi tetikler — ve isteğin alındığını belirten 200 OK yanıtını döndürür. Yanıt gelmezse servis genellikle isteği birkaç kez tekrarlar.
| Özellik | Webhook | REST API | Polling |
|---|---|---|---|
| Tetiklenme | Otomatik | Manuel İstek | Periyodik İstek |
| Gerçek Zamanlılık | Anında | İstek Anında | Gecikmeli |
| Sunucu Yükü | Düşük | Orta | Yüksek |
| Kurulum Kolaylığı | Orta | Kolay | Kolay |
Webhook'un gerçek hayattaki kullanım örnekleri:
Bir müşteri ödeme yaptığında Stripe, sizin endpoint'inize payment_intent.succeeded olayını gönderir. Siz de bu olayı alarak siparişi onaylayabilir, fatura oluşturabilir veya kullanıcıya e-posta gönderebilirsiniz.
Her push veya pull_request olayında GitHub, belirlediğiniz adrese bildirim gönderir. Bu sayede test süreçleri veya deployment işlemleri otomatik olarak başlatılabilir.
Slack'in Incoming Webhooks özelliğiyle kendi uygulamanızdan Slack kanallarına otomatik mesaj gönderebilirsiniz. Sunucu hatası, yeni kayıt veya sipariş gibi olayları ekibinizle anlık paylaşabilirsiniz.
→ En kritik adım imza doğrulamasıdır: servisin gönderdiği gizli anahtar (secret) ile isteğin gerçekten o servisten geldiğini teyit edin.
API'da siz sunucuya sorarsınız; webhook'ta sunucu sizi arar. API çekme (pull), webhook itme (push) modelidir.
Çoğu servis başarısız istekleri belirli bir süre boyunca tekrar dener. Yine de kritik olaylar için bir kuyruk sistemi (queue) kullanmak önerilir.
ngrok veya Cloudflare Tunnel gibi araçlarla lokal sunucunuzu geçici olarak internete açarak test edebilirsiniz.
Veri sık değişmiyorsa basit API isteği yeterlidir. Gerçek zamanlılık önemliyse ve harici servislerle entegrasyon varsa webhook daha verimli bir seçimdir.
Webhook, modern web uygulamalarının vazgeçilmez yapı taşlarından biridir. Polling'in gereksiz yükünü ortadan kaldırır, servisleri birbirine anlık ve verimli biçimde bağlar.
Site Tasarım TR olarak Stripe, GitHub ve Slack entegrasyonları dahil güvenli, gerçek zamanlı web uygulamaları geliştiriyoruz. Projeniz için bize ulaşın.

Schema Markup Nedir?

Web Güvenliği Nedir?

GraphQL Nedir?

CDN Nedir?

Web3 ve Decentralized Web

Local SEO Nedir?

Websitesi Nedir?

Vite Nedir?

HTTP/3 ve QUIC Nedir?

Docker Nedir?

URL Structure Nedir?

Web Tasarım Nedir?

Node.js Nedir?

React Nedir?

Google Analytics Nedir?

Mobil Uyumlu Web Sitesi Neden Zorunlu?

Web Siteniz Google’da Görünmüyor mu?

Nuxt.js Nedir?

Keyword Research Nedir?

3D ve AR Web Deneyimleri

Open Graph ve Twitter Card Nedir?

Lazy Loading Nedir?

Core Web Vitals Nedir?

UI/UX Tasarım Nedir?

Frontend vs Backend Nedir?

PWA Nedir?

CI/CD Nedir?

CSS Nedir?

Meta Tags Nedir?

CMS Nedir?

Astro Nedir?

TypeScript Nedir?

Web Components Nedir?

Zero-Click Searches ve Featured Snippets Nedir?

Next.js Nedir?
HTML ve CSS kodlarınızı yazın, düzenleyin ve canlı önizlemeyi görün. Hızlı prototipleme ve öğrenme için ideal.
CSS kodlarınızı otomatik oluşturun: gölgeler, gradyanlar ve daha fazlası.
Markdown metinlerinizi yazın ve anında canlı HTML önizlemesini görün. Başlıklar, listeler, kod blokları ve daha fazlası. Tarayıcıda, hızlı ve ücretsiz!
1800+ Unicode emoji ile web tasarımlarınıza duygusal ifadeler ekleyin. Arama, kategori filtreleme ve 5 favori grubu.
Tek PDF dosyasını istediğiniz sayfalara ayırın. Belirli sayfaları seçin veya aralık belirleyin, saniyeler içinde yeni PDF’ler oluşturun – tamamen tarayıcıda!
Birden fazla PDF dosyasını tek bir PDF’de birleştirin. Sıra değiştirme, önizleme ve yüksek kaliteli çıktı desteği. Tarayıcıda, hızlı ve ücretsiz!
PNG → JPG, JPG → PNG, WEBP → JPG/PNG, HEIC → JPG gibi en popüler formatlar arasında saniyeler içinde dönüşüm yapın. Kalite ayarı, toplu işlem desteği ve tamamen tarayıcıda – indirme olmadan!
URL, Wi-Fi, vCard, metin gibi verilerinizi saniyeler içinde özelleştirilebilir QR koda çevirin. Logo, renk ve SVG/PNG indirme desteği.
Anında rastgele ve çok güçlü şifreler üretin. Uzunluk, büyük/küçük harf, rakam, sembol ayarları + kendi şifrenizi test etme özelliği.
Tarayıcınızda saniyeler içinde alarm kurun. Sabah uyanma, toplantı hatırlatması, mola zamanı veya "yatma vakti" için ideal. Birden fazla alarm, özelleştirilebilir sesler, bildirim desteği ve kolay erteleme.