n8n iş akışlarında rate limit hatalarını önlemek için Wait node, Split in Batches, HTTP Request ayarları ve hata yönetimiyle uygulanabilir kontrol yöntemleri.
n8n ile farklı API servislerini, veritabanlarını ve otomasyon adımlarını birbirine bağlarken en sık karşılaşılan teknik sınırlardan biri rate limit kısıtıdır. Bir servis belirli bir süre içinde kabul edeceği istek sayısını sınırladığında, iş akışı doğru tasarlanmadıysa hata dönebilir, veri işleme yarıda kalabilir veya aynı kayıtlar tekrar tekrar işlenebilir. Bu nedenle n8n rate limit kontrolü, yalnızca hata önleme değil, sürdürülebilir ve güvenilir otomasyon tasarımının da önemli bir parçasıdır.
Rate limit, bir API’nin saniye, dakika veya saat bazında kabul ettiği istek sayısını ifade eder. Örneğin bir servis dakikada 60 istek kabul ediyorsa, n8n iş akışınız bu sınırı aşınca 429 Too Many Requests hatası alabilir. Bazı servisler isteği tamamen reddederken bazıları geçici bloklama, gecikmeli yanıt veya erişim kısıtı uygulayabilir.
Bu durum özellikle büyük veri senkronizasyonlarında, toplu e-posta işlemlerinde, CRM entegrasyonlarında ve webhook sonrası zincirleme API çağrılarında kritik hale gelir. Hatanın kaynağı çoğu zaman n8n değil, hedef servisin kullanım politikasıdır.
En pratik yöntemlerden biri, yoğun API çağrıları arasına Wait node eklemektir. Bu node sayesinde her işlem arasında belirli bir süre beklenir. Örneğin bir API saniyede 1 istek kabul ediyorsa, her HTTP Request node işleminden önce veya sonra 1 saniyelik bekleme tanımlanabilir.
Burada dikkat edilmesi gereken nokta, bekleme süresini tahmine göre değil, API dokümantasyonundaki limite göre ayarlamaktır. Çok kısa bekleme hataya, gereğinden uzun bekleme ise iş akışının yavaşlamasına neden olur.
Bir liste içindeki yüzlerce kaydı tek seferde işlemek yerine Split in Batches node ile veriyi küçük parçalara bölmek daha kontrollü bir yaklaşımdır. Örneğin 1.000 müşteri kaydını tek akışta göndermek yerine 20’lik veya 50’lik gruplar halinde işlemek API üzerindeki baskıyı azaltır.
Bu yapı, özellikle tekrar deneme ve hata yönetimi açısından da avantaj sağlar. Bir batch hata aldığında tüm veri setini baştan çalıştırmak yerine yalnızca ilgili parça üzerinde işlem yapılabilir.
HTTP Request node içinde hata yönetimi ve yanıt kontrolü dikkatle yapılandırılmalıdır. API 429 hatası döndürüyorsa akışı doğrudan durdurmak yerine hata yakalama mantığı kurulabilir. Bazı API’ler yanıt başlıklarında kalan istek sayısını veya beklenmesi gereken süreyi belirtir. Bu değerler okunarak daha dinamik bir bekleme mekanizması tasarlanabilir.
n8n rate limit kontrolü yapılırken yalnızca istekleri yavaşlatmak yeterli değildir. Hata oluştuğunda iş akışının nasıl davranacağı da net olmalıdır. 429, 500 veya zaman aşımı gibi hatalarda tekrar deneme mekanizması kullanılabilir; ancak her hatada sınırsız tekrar deneme yapmak yeni bir yük oluşturur.
Kurumsal yapılarda bu hataların ayrıca bir log tablosuna, izleme sistemine veya bildirim kanalına yazılması operasyonel görünürlük sağlar. Böylece sorun yalnızca akış durduğunda değil, limitlere yaklaşırken de fark edilebilir.
n8n’in queue mode kullanıldığı yapılarda aynı anda birden fazla workflow çalışabilir. Bu performans açısından faydalı olsa da rate limit açısından risk oluşturabilir. Aynı API’ye paralel çalışan çok sayıda iş akışı istek gönderiyorsa, tek bir workflow içinde bekleme tanımlamak yeterli olmayabilir.
Bu durumda eş zamanlı worker sayısı, workflow tetikleme sıklığı ve batch boyutu birlikte değerlendirilmelidir. Özellikle cron tabanlı akışlarda tüm işlerin aynı dakikada başlaması yerine zamana yayılması daha dengeli bir kullanım sağlar.
Rate limit yönetimi, n8n otomasyonlarının uzun vadede kararlı çalışması için tasarım aşamasında ele alınmalıdır. Küçük bir bekleme süresi, doğru batch boyutu ve bilinçli hata yönetimi sayesinde hem API sağlayıcısının kurallarına uyulur hem de iş akışlarının beklenmedik kesintilerle durması önlenir.