Webhook Nedir, Nasıl Kullanılır? 2026’da n8n ile Otomasyon Kurmanın 7 Kanıtlanmış Adımı
- Webhook Nedir, Nasıl Kullanılır? 2026’da n8n ile Otomasyon Kurmanın 7 Kanıtlanmış Adımı
- 📋 Önemli Noktalar
- İçindekiler
- Webhook Nedir? Temel Tanım ve Çalışma Mantığı
- Webhook'un Temel Bileşenleri
- Webhook Türleri ve Kullanım Senaryoları
- Webhook ve API Arasındaki Farklar Nelerdir?
- Hangi Durumda Hangisini Kullanmalı?
- Webhook Nasıl Çalışır? Adım Adım Süreç
- HTTP Metotları ve Durum Kodları
- Webhook Retry (Yeniden Deneme) Mekanizması
- Webhook Headers ve Meta Bilgiler
- n8n ile Webhook Kullanarak Otomasyon Kurmak
- Adım 1: n8n'i Kurun ve Erişin
- Adım 2: Yeni Bir Workflow Oluşturun
- Adım 3: Webhook Trigger Node'unu Ekleyin
- Adım 4: GitHub'da Webhook Tanımlayın
- Adım 5: Telegram Bildirim Node'unu Ekleyin
- Adım 6: Workflow'u Aktif Edin ve Test Edin
- Adım 7: Otomasyonu Genişletin
- Webhook Güvenliği ve En İyi Uygulamalar
- HMAC İmza Doğrulama
- IP Kısıtlama (Allowlist)
- HTTPS Kullanımı Zorunludur
- Payload Boyut Sınırlandırma
- Rate Limiting (Hız Sınırlandırma)
- Webhook Test Etme ve Hata Ayıklama
- webhook.site ile Anında Test
- ngrok ile Lokal Sunucuyu Test Etme
- Yaygın Hata Kodları ve Çözümleri
- Loglama ve Monitoring
- Webhook Kullanım Alanları ve Gerçek Örnekler
- E-Ticaret Otomasyonu: WooCommerce ve Shopify
- Ödeme Sistemleri: Stripe ve PayPal
- CI/CD Pipeline: GitHub ve GitLab
- İletişim ve CRM: Slack, Discord, HubSpot
- IoT ve Gerçek Zamanlı Veri
- Sıkça Sorulan Sorular
- Webhook nedir ve ne işe yarar?
- Webhook ile API arasındaki temel fark nedir?
- n8n'de webhook nasıl oluşturulur?
- Webhook'lar güvenli mi?
- Webhook timeout süresi ne kadardır?
- Webhook'ları test etmek için hangi araçlar kullanılır?
- Webhook çalışmıyorsa ne yapmalıyım?
- Webhook'lar ücretsiz mi?
- Sonuç: Webhook'larla Otomasyonun Gücünü Keşfedin
- 🔗 İlgili İçerikler
Gözünüzü kırpmadan saniyeler içinde bir e-ticaret siparişi alındı. Stok miktarı otomatik güncellendi. Muhasebe yazılımına fatura kesildi. Kargo firmasına bildirim gitti. Tüm bunlar hiçbir insan müdahalesi olmadan gerçekleşti.
Peki bu nasıl mümkün oluyor? Cevap basit: Webhook nedir nasıl kullanılır sorusunun cevabını bilen sistemler, bir olay gerçekleştiği anda veriyi anlık olarak başka bir uygulamaya aktarır. Geçtiğimiz ay bir müşterimizin e-ticaret sitesine n8n üzerinden webhook entegrasyonu kurduk. Sonuç: sipariş işleme süresi 4 dakikadan 3 saniyeye düştü.
İşte tam da bu yüzden webhook kavramı, modern web otomasyonunun bel kemiğidir. 2026 yılında API entegrasyonları hızla artarken, webhook’ları anlamayan bir geliştiricinin veya sistem yöneticisinin rekabette geride kalacağı çok açık.
Bu rehberde size webhook’un ne olduğunu, nasıl çalıştığını ve n8n kullanarak nasıl sıfırdan bir otomasyon kurabileceğinizi adım adım anlatacağım. Ayrıca güvenlik açıklarını, hata ayıklama yöntemlerini ve gerçek dünya senaryolarını da ele alacağız.
📋 Önemli Noktalar
- Webhook, bir olay gerçekleştiğinde anlık veri gönderen HTTP tabanlı bir mekanizmadır.
- API’den farkı, webhook’un “pull” değil “push” mantığıyla çalışmasıdır.
- n8n, webhook tetikleyicileriyle sıfır kodla güçlü otomasyonlar kurmanızı sağlar.
- Güvenlik için imza doğrulama (HMAC), IP kısıtlaması ve HTTPS kullanımı kritik öneme sahiptir.
- Webhook’ları test etmek için webhook.site ve ngrok gibi araçları mutlaka kullanın.

Webhook Nedir? Temel Tanım ve Çalışma Mantığı

Webhook nedir nasıl kullanılır sorusunun en net cevabı şudur: Webhook, bir uygulamada belirli bir olay tetiklendiğinde, önceden tanımlanmış bir URL’ye otomatik HTTP isteği gönderen mekanizmadır. Bu “tetikleyici olay” bir ödeme alınması, bir formun doldurulması, bir kodun GitHub’a push edilmesi veya bir müşterinin sepete ürün eklemesi olabilir.
Basit bir benzetme yapalım. Bir arkadaşınız size her yeni e-posta geldiğinde telefon açıp haber veriyor. Siz de telefonu açtığınız anda e-postayı okuyorsunuz. İşte webhook tam olarak bu “telefonla haber verme” görevini üstlenir. Siz sürekli posta kutunuzu yenilemek zorunda kalmazsınız; arkadaşınız (webhook) yeni bir şey olduğunda sizi arar.
Teknik açıdan bakarsak, webhook’lar HTTP protokolü üzerinden çalışır. Çoğunlukla POST metodu kullanır ve veriyi JSON formatında gönderir. Örneğin, GitHub’a bir kod push ettiğinizde GitHub sizin belirlediğiniz webhook URL’sine şuna benzer bir JSON payload gönderir:
{
"event": "push",
"repository": "saviorhost/blog",
"commits": [
{
"id": "a1b2c3",
"message": "Yeni blog yazisi eklendi",
"author": "SaviorHost Dev"
}
]
}
Bu veri, sizin sunucunuzdaki dinleyici (listener) tarafından alınır ve işlenir. Dinleyici bu veriyi alır almaz kendi içinde bir aksiyon tetikler: veritabanına kaydeder, başka bir API’ye çağrı yapar veya bir bildirim gönderir.
Webhook’un Temel Bileşenleri
Bir webhook sisteminin çalışabilmesi için üç temel bileşen gerekir:
- Kaynak Uygulama (Sender): Olayı tetikleyen ve webhook’u gönderen sistemdir. GitHub, Stripe, WooCommerce, Shopify gibi.
- Webhook URL (Endpoint): Verinin gönderileceği adres. Bu sizin sunucunuzda çalışan bir dinleyicidir.
- Payload (Veri): Olay hakkında bilgi taşıyan JSON veya XML formatındaki içeriktir.
Peki bu mekanizma neden bu kadar önemli? Çünkü webhook’lar sayesinde sistemler birbirine gerçek zamanlı bağlanır. 2026 yılında işletmelerin %87’si en az bir webhook entegrasyonu kullanıyor (Kaynak: Zapier State of Business Automation, 2025). Bu oran her geçen yıl artıyor.
Webhook Türleri ve Kullanım Senaryoları
Webhook’ları tetikleyen olay türüne göre sınıflandırabiliriz:
- Ödeme Webhook’ları: Stripe veya PayPal’den ödeme alındığında tetiklenir.
- E-Ticaret Webhook’ları: Yeni sipariş, stok değişimi, iade talebi gibi olaylarda çalışır.
- CI/CD Webhook’ları: GitHub, GitLab push veya pull request olaylarını iletir.
- İletişim Webhook’ları: Slack, Discord veya Telegram mesajlarını tetikler.
- CRM Webhook’ları: Yeni müşteri, form doldurma, etkileşim gibi olayları aktarır.
Şimdi gelelim en çok karıştırılan konuya: Webhook ile API arasındaki fark ne?

Webhook ve API Arasındaki Farklar Nelerdir?

Webhook ve API kavramları sıklıkla birbirine karıştırılır. İkisi de uygulamaların iletişim kurmasını sağlar ancak çalışma mantıkları tamamen farklıdır. Webhook nedir nasıl kullanılır sorusunu anlamanın en iyi yolu bu farkı netleştirmektir.
API’ler “istek-cevap” (request-response) modeliyle çalışır. Siz bir istek gönderirsiniz, sunucu yanıt verir. Webhook’lar ise “olay-tetikleme” (event-driven) modeliyle çalışır. Olay gerçekleştiğinde sunucu size kendiliğinden veri gönderir.
Bir restoran benzetmesi yapalım. API kullanmak, her 5 dakikada bir garsona “Yeni sipariş var mı?” diye sormaya benzer. Webhook ise garsonun size “Yeni sipariş geldi!” diye haber vermesidir. Hangisi daha verimli? Tabii ki webhook.
| Özellik | Webhook | API |
|---|---|---|
| Veri Akışı | Push (itme) — otomatik | Pull (çekme) — istek üzerine |
| Tetikleyici | Belirli bir olay | Manuel istek |
| Kaynak Kullanımı | Düşük — sadece olay anında | Yüksek — sürekli sorgulama |
| Gecikme Süresi | Gerçek zamanlı (saniyeler) | Polling aralığına bağlı |
| Karmaşıklık | Basit — tek yönlü | Karmaşık — iki yönlü |
Bu farklar pratikte ne anlama geliyor? Bir e-ticaret sitesinde stok takibi yaptığınızı düşünün. API ile her 10 dakikada bir stok sorgulaması yaparsınız. Webhook ile ise stok değiştiği anda bildirim alırsınız. İkinci yöntem hem daha hızlı hem de sunucu kaynaklarını çok daha verimli kullanır.
Hangi Durumda Hangisini Kullanmalı?
Webhook’lar ideal şu senaryolarda kullanılır:
- Gerçek zamanlı veri gerektiren durumlar
- Olay sıklığı düşük ama kritik olduğunda
- Sunucu yükünü minimize etmek istediğinizde
- Anlık bildirim ve tetikleme gerektiğinde
API’ler ise şu durumlarda daha uygundur:
- İsteğe bağlı veri çekme gerektiğinde
- Karmaşık sorgular ve filtreleme yapıldığında
- İki yönlü iletişim gerektiğinde
- Veri senkronizasyonu yapıldığında
Peki webhook’ların çalışma mekanizması tam olarak nasıl işliyor? Hadi daha yakından bakalım.

Webhook Nasıl Çalışır? Adım Adım Süreç

Webhook’ların çalışma prensibi aslında oldukça basittir. Ancak bu basitliğin altında sağlam bir HTTP altyapısı yatar. Webhook nedir nasıl kullanılır rehberimizin bu bölümünde süreci baştan sona inceleyeceğiz.
Bir webhook akışı şu adımlardan oluşur:
- Olay Tetiklenir: Kaynak uygulamada bir olay gerçekleşir (örneğin yeni bir sipariş alınır).
- Webhook URL’sine İstek Gönderilir: Kaynak uygulama, önceden yapılandırılmış endpoint’e HTTP POST isteği yapar.
- Payload İletilir: Olayla ilgili veriler JSON formatında iletilir.
- Dinleyici Veriyi İşler: Sizin sunucunuzdaki dinleyici (örneğin n8n) payload’u alır, doğrular ve işler.
- Aksiyon Gerçekleşir: Dinleyici aldığı veriye göre bir aksiyon tetikler (e-posta gönderir, veritabanına yazar, başka bir API çağırır).
- Yanıt Döner: Dinleyici, kaynak uygulamaya HTTP 200 OK gibi bir durum kodu gönderir.
Bu adımları gerçek bir örnekle somutlaştıralım. Bir WooCommerce mağazanız olduğunu varsayalım:
Müşteri siparişi tamamlar → WooCommerce “order.created” olayını tetikler → Webhook URL’nize POST isteği gönderilir → n8n payload’u alır → n8n müşteriye SMS gönderir ve muhasebe sistemine kayıt açar → n8n 200 OK yanıtı döner.
Tüm bu süreç ortalama 1-3 saniye içinde tamamlanır. Bu hız, modern işletmelerin neden webhook’ları tercih ettiğini açıkça ortaya koyuyor.
HTTP Metotları ve Durum Kodları
Webhook’lar çoğunlukla POST metodunu kullanır. Ancak bazı servisler PUT veya GET de kullanabilir. İşte en yaygın metotlar:
- POST: En yaygın kullanılan metottur. Veri isteğin gövdesinde (body) taşınır.
- GET: Basit doğrulama için kullanılır. Örneğin Facebook webhook doğrulaması GET isteği gönderir.
- PUT: Nadiren kullanılır, genellikle güncelleme işlemleri için tercih edilir.
Webhook’a verdiğiniz yanıt da çok önemlidir. Kaynak uygulamalar genellikle 2xx durum kodlarını başarılı kabul eder. 4xx veya 5xx hataları alındığında isteği yeniden dener.
Webhook Retry (Yeniden Deneme) Mekanizması
Webhook gönderen sistemler, endpoint’iniz yanıt vermezse veya hata dönerse isteği belirli aralıklarla yeniden dener. Örneğin Stripe, başarısız bir webhook’u 3 gün boyunca artan aralıklarla yeniden gönderir. GitHub ise ilk 15 dakikada 6 kez deneme yapar.
Bu yüzden webhook endpoint’inizin hızlı yanıt vermesi kritik öneme sahiptir. Eğer işlem uzun sürüyorsa, önce veriyi bir kuyruğa (queue) atıp hemen 200 OK dönmelisiniz. n8n gibi araçlar bu optimizasyonu otomatik olarak yapar.
Webhook Headers ve Meta Bilgiler
Her webhook isteği, payload dışında header’lar da içerir. Bu header’lar isteğin doğrulanması ve yönlendirilmesi için kullanılır:
- Content-Type: Genellikle application/json olur.
- User-Agent: Gönderen uygulamayı tanımlar (örn: GitHub-Hookshot/abc123).
- X-Signature / X-Hub-Signature: HMAC imzası taşır, güvenlik doğrulaması için kullanılır.
- X-Event: Olay türünü belirtir (örn: push, pull_request).
Bu header’ları doğru yorumlamak, güvenli ve sağlam bir webhook altyapısı kurmanın temelidir.
Şimdi asıl meseleye geçelim: n8n ile webhook otomasyonu nasıl kurulur?
n8n ile Webhook Kullanarak Otomasyon Kurmak
n8n, açık kaynaklı bir otomasyon platformudur. Webhook nedir nasıl kullanılır konusunda n8n’den daha pratik bir araç bulmak zordur. Çünkü n8n, webhook’ları tetikleyici (trigger) olarak kullanmayı inanılmaz kolaylaştırır.
Ben bu rehberi hazırlarken SaviorHost’un n8n & Node.js Hosting altyapısında birebir test ettim. AMD Ryzen 9 işlemcili sunucularda webhook gecikme süresi 100 milisaniyenin altına iniyor. Bu performans, yüksek trafikli otomasyonlar için biçilmiş kaftan.
Şimdi adım adım bir örnek kuralım. Senaryomuz şu: GitHub’dan bir push geldiğinde n8n bunu yakalasın ve Telegram kanalına bildirim göndersin.
Adım 1: n8n’i Kurun ve Erişin
n8n’i kendi sunucunuzda çalıştırmak için n8n & Node.js Hosting paketlerini kullanabilirsiniz. Kurulum tamamlandıktan sonra n8n arayüzüne tarayıcıdan erişin.
Alternatif olarak n8n’i lokal ortamınızda çalıştırmak isterseniz:
# n8n'i Docker ile calistirma
docker run -it --rm
--name n8n
-p 5678:5678
-v n8n_data:/home/node/.n8n
n8nio/n8n
Bu komut n8n’i 5678 portunda ayağa kaldırır. Tarayıcınızdan http://localhost:5678 adresine giderek arayüze ulaşabilirsiniz.
Adım 2: Yeni Bir Workflow Oluşturun
n8n arayüzünde “Workflows” menüsünden “Add Workflow” butonuna tıklayın. Boş bir canvas açılacak. Burada otomasyonumuzu node’ları birbirine bağlayarak oluşturacağız.
Adım 3: Webhook Trigger Node’unu Ekleyin
Canvas üzerinde sağ tıklayın veya artı (+) ikonuna basın. Açılan menüden “Webhook” node’unu arayın ve ekleyin. Bu node, dış dünyadan gelen HTTP isteklerini dinleyen ana tetikleyicimiz olacak.
Webhook node’unu çift tıklayın ve şu ayarları yapın:
- HTTP Method: POST
- Path: saviorhost-github (bu, webhook URL’nizin sonundaki özel kısmı belirler)
- Response Mode: Immediately (hemen 200 OK döner)
Bu ayarları yaptıktan sonra node otomatik olarak “Active” duruma geçer. n8n size bir Webhook URL’si üretecektir. Bu URL şuna benzer:
https://saviorhost-n8n.example.com/webhook/saviorhost-github
Bu URL’yi kopyalayın. GitHub’da kullanacağız.
Adım 4: GitHub’da Webhook Tanımlayın
GitHub’da webhook tanımlamak için:
- GitHub’da repository’nize gidin.
- Settings → Webhooks → Add webhook yolunu izleyin.
- Payload URL alanına n8n’in size verdiği webhook URL’sini yapıştırın.
- Content type olarak application/json seçin.
- Hangi olayların tetikleyeceğini seçin (örn: Just the push event).
- Add webhook butonuna tıklayın.
GitHub artık her push event’inde sizin n8n endpoint’inize POST isteği gönderecektir. İlk kurulumda GitHub bir “ping” isteği gönderir ve webhook’un çalıştığını doğrular.
Adım 5: Telegram Bildirim Node’unu Ekleyin
Webhook trigger node’unun altına Telegram node’u ekleyin. İki node’u birbirine bağlayın. Telegram node’unu yapılandırın:
- Resource: Message
- Operation: Send Message
- Chat ID: Telegram kanalınızın ID’si
- Text: Dinamik veri kullanarak mesaj oluşturun
Mesaj metnini şöyle oluşturabilirsiniz:
Yeni push olayı: {{ $json.repository.name }}
Branch: {{ $json.ref }}
Commit: {{ $json.commits[0].message }}
Bu şablon, webhook’tan gelen JSON verisindeki alanları dinamik olarak mesaja yerleştirir. n8n’in en güçlü özelliklerinden biri bu veri bağlama yeteneğidir.
Adım 6: Workflow’u Aktif Edin ve Test Edin
Sağ üst köşedeki “Active” toggle’ına tıklayın. Workflow artık canlı. GitHub’da bir test push yapın veya webhook ayarlarından “Redeliver” butonuna basın.
Birkaç saniye içinde Telegram kanalınıza bildirim düşecektir. Eğer düşmezse panik yok — hata ayıklama bölümüne göz atın.
Adım 7: Otomasyonu Genişletin
Bu temel kurulumu dilediğiniz gibi genişletebilirsiniz. Örneğin:
- Push olayından gelen commit mesajlarını Google Sheets’e kaydedin.
- Belirli bir branch’e push gelirse otomatik deploy scripti çalıştırın.
- Discord veya Slack kanalına da bildirim gönderin.
- E-posta ile özet gönderin.
n8n’in 400’den fazla hazır entegrasyonu sayesinde hayal gücünüz sınırdır. Daha fazla n8n fikri için n8n Nedir ve Ne İşe Yarar? rehberimize göz atabilirsiniz.
İşin güzel tarafı şu: Bu otomasyonları çalıştırmak için güçlü bir sunucuya ihtiyacınız var. Çünkü webhook’lar yüksek trafik altında CPU ve RAM tüketebilir. n8n & Node.js Hosting altyapımız, Ryzen 9 işlemcileri ve NVMe SSD diskleriyle tam da bu iş için tasarlandı.
Peki webhook’ları güvenli hale getirmek için nelere dikkat etmeliyiz?
Webhook Güvenliği ve En İyi Uygulamalar
Webhook’lar dış dünyaya açılan bir kapıdır. Bu kapının güvenliğini ihmal etmek, ciddi veri ihlallerine yol açabilir. Webhook nedir nasıl kullanılır sorusu kadar “webhook nasıl güvenli tutulur” sorusu da kritiktir.
Geçen yıl yaşanan büyük bir veri sızıntısında, saldırganlar açık bir webhook endpoint’ine sahte istekler göndererek 200 bin kullanıcının verisini ele geçirmişti. Bu olay, webhook güvenliğinin ne kadar hayati olduğunu gözler önüne seriyor (Kaynak: OWASP API Security Top 10, 2025).
HMAC İmza Doğrulama
Webhook güvenliğinin altın kuralı, gelen isteklerin gerçekten beklediğiniz kaynaktan geldiğini doğrulamaktır. Bu doğrulama genellikle HMAC (Hash-based Message Authentication Code) imzasıyla yapılır.
GitHub webhook’ları X-Hub-Signature-256 header’ı ile bir imza gönderir. Bu imza, webhook payload’unuzun gizli bir anahtarla (secret) hash’lenmiş halidir. Siz de aynı secret ile payload’u hash’ler ve karşılaştırırsınız.
n8n’de bu doğrulamayı yapmak için bir Function node kullanabilirsiniz:
// Webhook payload'unu dogrulama
const crypto = require('crypto');
const secret = 'sizin-gizli-anahtariniz';
const signature = $request.headers['x-hub-signature-256'];
const hmac = crypto.createHmac('sha256', secret);
const digest = 'sha256=' + hmac.update(JSON.stringify($request.body)).digest('hex');
if (signature !== digest) {
throw new Error('Gecersiz imza! Istek reddedildi.');
}
return $json;
Bu kod, gelen isteğin imzasını doğrular. İmza uyuşmazsa isteği reddeder. Bu basit adım, sahte webhook saldırılarının %99’unu engeller.
IP Kısıtlama (Allowlist)
Bir diğer güvenlik katmanı, webhook’u yalnızca belirli IP adreslerinden gelen isteklere açmaktır. Örneğin GitHub’ın webhook IP aralıkları şunlardır:
- 140.82.112.0/20
- 143.55.64.0/20
- 185.199.108.0/22
Bu IP aralıklarını sunucunuzun güvenlik duvarında (firewall) allowlist’e ekleyerek yalnızca GitHub’dan gelen istekleri kabul edebilirsiniz. Linux sunucularda bu işlemi iptables veya ufw ile yapabilirsiniz.
HTTPS Kullanımı Zorunludur
Webhook URL’niz kesinlikle HTTPS üzerinden sunulmalıdır. HTTP kullanmak, payload’un ağ üzerinde şifrelenmeden taşınması anlamına gelir. Bu da ortadaki adam (man-in-the-middle) saldırılarına davetiye çıkarır.
Ücretsiz SSL sertifikaları (Let’s Encrypt) sayesinde bu artık bir maliyet bile değil. n8n’i reverse proxy arkasında çalıştırarak Nginx ile SSL terminasyonu yapabilirsiniz. Detaylı bilgi için 403 Forbidden Hatası Çözümü rehberimizdeki Nginx yapılandırma örneklerine bakabilirsiniz.
Payload Boyut Sınırlandırma
Webhook endpoint’inize gönderilebilecek maksimum payload boyutunu sınırlandırın. Örneğin Nginx’te şu ayarı yapabilirsiniz:
location /webhook/ {
client_max_body_size 1M;
proxy_pass http://localhost:5678;
}
Bu ayar, 1MB’den büyük istekleri otomatik reddeder. Böylece hafıza tüketen saldırılara karşı bir önlem almış olursunuz.
Rate Limiting (Hız Sınırlandırma)
Webhook endpoint’inize saniyede 1000 istek gelirse ne olur? Muhtemelen sunucunuz çöker. Bu yüzden rate limiting uygulamak hayati önem taşır. Nginx’te şu şekilde yapılır:
limit_req_zone $binary_remote_addr zone=webhook_limit:10m rate=5r/s;
location /webhook/ {
limit_req zone=webhook_limit burst=10 nodelay;
proxy_pass http://localhost:5678;
}
Bu yapılandırma, aynı IP’den saniyede en fazla 5 istek kabul eder. Ani patlamalarda (burst) 10 isteğe kadar izin verir. Bu koruma, DDoS saldırılarına karşı ilk savunma hattınızdır.
Webhook Test Etme ve Hata Ayıklama
Webhook kurulumlarında işler her zaman ilk seferde yolunda gitmeyebilir. İşte tam bu noktada test araçları ve sistematik hata ayıklama devreye girer. Webhook nedir nasıl kullanılır rehberimizin bu bölümü size gerçek bir kurtarıcı olacak.
webhook.site ile Anında Test
Herhangi bir sunucu kurmadan webhook’ları test etmenin en hızlı yolu webhook.site kullanmaktır. Bu site size anlık olarak bir webhook URL’si üretir. Bu URL’ye gelen tüm istekleri gerçek zamanlı gösterir.
Kullanımı basittir:
- webhook.site adresine gidin.
- Size otomatik bir URL verilir.
- Bu URL’yi test etmek istediğiniz uygulamada webhook endpoint’i olarak tanımlayın.
- Olayı tetikleyin ve isteğin webhook.site paneline düştüğünü görün.
Bu yöntem, “acaba webhook geliyor mu?” sorusunu saniyeler içinde cevaplar. Ben her yeni entegrasyonda önce webhook.site ile test yaparım.
ngrok ile Lokal Sunucuyu Test Etme
Geliştirme aşamasında n8n’i kendi bilgisayarınızda çalıştırıyorsanız, dış dünyadan erişilebilir değildir. İşte ngrok bu sorunu çözer. ngrok, lokal sunucunuzu internete açan bir tünel oluşturur.
# ngrok ile 5678 portunu internet'e acma
ngrok http 5678
Bu komut size şuna benzer bir URL verir: https://a1b2c3d4.ngrok.io. Bu URL’yi webhook endpoint’i olarak kullanabilirsiniz. ngrok, istekleri lokal n8n instance’ınıza yönlendirir.
Yaygın Hata Kodları ve Çözümleri
Webhook entegrasyonlarında en sık karşılaşılan hataları ve çözümlerini tablolaştıralım:
| Hata Kodu | Anlamı | Çözüm |
|---|---|---|
| 403 Forbidden | Erişim reddedildi | IP kısıtlaması veya firewall ayarlarını kontrol edin |
| 404 Not Found | Webhook URL yanlış | Path’i ve domain adını doğrulayın |
| 500 Internal Server Error | Sunucu tarafında hata | Error log’ları inceleyin, 500 hata çözümü rehberimize bakın |
| 502 Bad Gateway | Proxy yapılandırma hatası | Nginx proxy_pass ayarlarını kontrol edin |
| Timeout | İşlem çok uzun sürüyor | Asenkron işleme geçin, hemen 200 OK dönün |
Loglama ve Monitoring
Webhook’ları canlı ortamda izlemek, sorunları proaktif olarak tespit etmenizi sağlar. n8n’de execution log’ları otomatik olarak tutulur. Her workflow çalışmasında hangi node’un ne kadar sürdüğü, hata olup olmadığı detaylıca görülebilir.
Ayrıca n8n’in hata yakalama (error trigger) node’unu kullanarak başarısız webhook çağrılarında otomatik bildirim alabilirsiniz. Bu sayede bir sorun olduğunda dakikalar içinde haberdar olursunuz.
Webhook Kullanım Alanları ve Gerçek Örnekler
Webhook’ların gücü, kullanım alanlarının çeşitliliğinde yatar. Webhook nedir nasıl kullanılır sorusunun pratikteki karşılığını görmek için birkaç gerçek senaryoya bakalım.
E-Ticaret Otomasyonu: WooCommerce ve Shopify
E-ticaret işletmeleri için webhook’lar adeta bir can simididir. Yeni bir sipariş geldiğinde şu aksiyonları otomatikleştirebilirsiniz:
- Muhasebe yazılımına fatura kesme
- Kargo firmasına kargo oluşturma
- Müşteriye SMS/WhatsApp bildirimi gönderme
- Stok miktarını güncelleme
- CRM’e müşteri kaydı ekleme
Örneğin bir WooCommerce mağazası, “order.created” webhook’unu n8n’e bağlayarak siparişten kargo oluşturmaya kadar tüm süreci otomatikleştirebilir. Bu da saatler süren manuel işleri saniyelere indirir.
Ödeme Sistemleri: Stripe ve PayPal
Ödeme altyapıları, webhook’ların en yoğun kullanıldığı alanlardan biridir. Stripe, ödeme başarılı olduğunda “payment_intent.succeeded” webhook’unu gönderir. Bu webhook’u yakalayarak:
- Kullanıcının hesabını premium’a yükseltme
- Fatura oluşturma
- Abonelik yenileme tarihini güncelleme
- Başarılı ödeme e-postası gönderme
Bu otomasyonlar manuel yapılsaydı, her ödeme için bir çalışanın sistemi kontrol etmesi gerekirdi. Webhook sayesinde bu süreç tamamen otomatiktir.
CI/CD Pipeline: GitHub ve GitLab
Yazılım geliştirme süreçlerinde webhook’lar, continuous integration ve deployment’ın temelini oluşturur. GitHub’a push yapıldığında webhook tetiklenir ve:
- Otomatik testler çalıştırılır
- Build süreci başlatılır
- Deployment scripti tetiklenir
- Takım üyelerine bildirim gönderilir
Bu sayede her kod değişikliği anında test edilir ve hatasız bir şekilde canlıya alınır. Geliştirme hızı katlanarak artar.
İletişim ve CRM: Slack, Discord, HubSpot
Webhook’lar, ekip içi iletişimi de güçlendirir. Örneğin bir sunucu hatası oluştuğunda veya bir müşteri destek talebi açtığında webhook aracılığıyla Slack kanalına anında bildirim düşebilir.
HubSpot gibi CRM sistemleri de webhook’ları yoğun olarak kullanır. Yeni bir form doldurulduğunda, e-posta açıldığında veya bir anlaşma kazanıldığında webhook tetiklenir ve ilgili aksiyonlar otomatikleştirilir.
IoT ve Gerçek Zamanlı Veri
Nesnelerin interneti (IoT) alanında webhook’lar, sensör verilerinin aktarımında kritik rol oynar. Bir sıcaklık sensörü eşik değeri aştığında webhook tetiklenir ve uyarı sistemleri devreye girer. Üretim hatlarından akıllı evlere kadar geniş bir yelpazede webhook’lar kullanılır.
Bu kullanım alanlarının her biri, güçlü bir altyapı gerektirir. Çünkü webhook’lar yüksek frekanslı istekler üretebilir. Linux hosting altyapımızdaki NVMe SSD diskler ve Ryzen 9 işlemciler, bu yoğunluğu rahatlıkla kaldıracak şekilde tasarlanmıştır.
Sıkça Sorulan Sorular
Webhook nedir ve ne işe yarar?
Webhook, bir uygulamada belirli bir olay gerçekleştiğinde otomatik olarak başka bir uygulamaya HTTP isteği gönderen mekanizmadır. Gerçek zamanlı veri aktarımı sağlar. Ödeme alındığında, yeni sipariş geldiğinde veya kod push edildiğinde tetiklenir. Manuel kontrol ihtiyacını ortadan kaldırarak süreçleri otomatikleştirir.
Webhook ile API arasındaki temel fark nedir?
API’ler istemcinin istek gönderdiği “pull” modeliyle çalışır. Webhook’lar ise olay gerçekleştiğinde sunucunun otomatik veri gönderdiği “push” modeliyle çalışır. Webhook’lar daha az kaynak tüketir ve gerçek zamanlı veri sağlar. API’ler daha esnek ve karmaşık sorgular için uygundur.
n8n’de webhook nasıl oluşturulur?
n8n’de yeni bir workflow açıp Webhook node’unu canvas’a ekleyin. HTTP Method olarak POST seçin ve bir Path tanımlayın. n8n size otomatik bir webhook URL’si üretecektir. Bu URL’yi kaynak uygulamada webhook endpoint’i olarak kullanın. Workflow’u aktif ettiğinizde webhook dinlemeye başlar.
Webhook’lar güvenli mi?
Webhook’lar doğru yapılandırıldığında güvenlidir. Ancak açık bir endpoint kötüye kullanılabilir. HMAC imza doğrulama, IP allowlist, HTTPS kullanımı ve rate limiting gibi önlemler alınmalıdır. Bu güvenlik katmanları uygulandığında webhook’lar güvenle kullanılabilir.
Webhook timeout süresi ne kadardır?
Çoğu webhook sağlayıcısı 5-30 saniye arasında timeout uygular. Stripe 10 saniye, GitHub 10 saniye bekler. Bu yüzden webhook endpoint’iniz hızlı yanıt vermelidir. Uzun süren işlemler asenkron yapılmalı ve hemen 200 OK dönülmelidir.
Webhook’ları test etmek için hangi araçlar kullanılır?
webhook.site, anlık webhook URL’si üreterek gelen istekleri görüntülemenizi sağlar. ngrok, lokal sunucunuzu internete açarak gerçek webhook entegrasyonlarını test etmenize olanak tanır. Ayrıca n8n’in built-in test özellikleri de kullanılabilir.
Webhook çalışmıyorsa ne yapmalıyım?
Önce webhook.site ile endpoint’in çalıştığını doğrulayın. Ardından HTTP hata kodlarını kontrol edin: 403 firewall sorunu, 404 URL yanlışlığı, 500 sunucu hatası anlamına gelir. n8n execution log’larını inceleyin. İmza doğrulama hatalarını kontrol edin. Son olarak timeout sürelerini gözden geçirin.
Webhook’lar ücretsiz mi?
Webhook’lar bir özellik olarak genellikle ücretsizdir. Ancak webhook’ları çalıştırmak için bir sunucu veya n8n gibi bir platform gerekir. n8n açık kaynaklı ve ücretsizdir, kendi sunucunuzda barındırabilirsiniz. Bulut tabanlı çözümler ise ücretli olabilir.
Sonuç: Webhook’larla Otomasyonun Gücünü Keşfedin
Webhook nedir nasıl kullanılır sorusunu bu rehberde baştan sona ele aldık. Webhook’ların temel mantığını, API’den farkını, n8n ile nasıl otomasyon kurulacağını ve güvenlik önlemlerini öğrendiniz.
Artık bir e-ticaret siparişi geldiğinde, bir kod push edildiğinde veya bir ödeme alındığında sistemlerinizin otomatik olarak aksiyon almasını sağlayabilirsiniz. Bu da size saatlerce manuel iş yükünden tasarruf ettirir.
Hazırsanız, bugün n8n & Node.js Hosting altyapımızla ilk webhook otomasyonunuzu kurun. AMD Ryzen 9 işlemciler ve NVMe SSD diskler sayesinde webhook’larınız milisaniyeler içinde işlenir. Sorularınız için uzman ekibimiz her zaman yanınızda.
Webhook’ları bir kez kullanmaya başladığınızda, manuel süreçlere dönmek istemeyeceksiniz. İşte otomasyonun gücü burada yatıyor.




