n8n ile Blog Yazısını Otomatik Sosyal Medya Gönderisine Çevir

AgentRoost · May 7, 2026 · 5 dk okuma · Markdown olarak görüntüle
AgentRoost — n8n Automation

Her hafta zaman ayırıp blog yazıyorsun; ama yazdıktan sonra aynı içeriği dört farklı platforma, dört farklı tonda uyarlamak başlı başına bir iş. X'te kısa ve dikkat çekici, LinkedIn'de profesyonel ve bağlam dolu, Instagram'da görsel odaklı bir metin — bunları elle yazmak saatlerce sürebilir.

Bu kılavuzda, yeni bir blog yazısı yayınlandığı anda RSS beslemesini otomatik olarak yakalayan, AI düğümüyle üç farklı platform için metin üreten ve zamanlanmış olarak paylaşan bir n8n akışını adım adım kuruyoruz.


Akışın Genel Mimarisi

RSS Feed Trigger
  → HTTP Request (makale içeriğini çek)
  → AI/LLM Düğümü (X, LinkedIn, Instagram metinleri üret)
  → Code (JSON ayrıştır)
  → X Post | LinkedIn Post | Buffer HTTP Request

Her düğüm ne yapıyor, nasıl yapılandırılıyor — tek tek bakalım.


Adım 1 — RSS Feed Trigger ile Yeni Yazıyı Yakala

Düğüm: RSS Feed Read (n8n yerleşik)

n8n'in yerleşik RSS düğümünü sürükle ve şu ayarları gir:

  • Feed URL: https://senin-blogun.com/rss.xml
  • Poll Times: Her 15 dakikada bir (ya da Schedule Trigger ile birleştirip saatte bir de kullanabilirsin)

İpucu: n8n varsayılan olarak yalnızca daha önce görmediği öğeleri geçirir. "Only New Items" seçeneğinin açık olduğundan emin ol — aksi hâlde her çalışmada eski yazılar da işlenir.

Düğüm çıktısında şu alanlar gelir:

  • title — yazının başlığı
  • link — tam URL
  • content:encodedSnippet — HTML içerik (veya contentSnippet — düz metin özet)
  • pubDate — yayın tarihi

Adım 2 — Tam İçeriği Çek (İsteğe Bağlı ama Önerilir)

Düğüm: HTTP Request

RSS beslemesi çoğu zaman yalnızca özet sunar. AI'ya daha iyi malzeme vermek için tam makale metnini çekmek işe yarar:

  • Method: GET
  • URL: {{ $json["link"] }}
  • Response Format: Text

Çıktı HTML olacaktır. Bunu temizlemek için bir Code düğümüyle basit bir regex uygulayabilirsin:

const raw = $input.first().json.data;
const text = raw.replace(/<[^>]+>/g, ' ').replace(/\s+/g, ' ').trim();
return [{ json: { cleanText: text.slice(0, 3000) } }];

3000 karakterle sınırlamak, AI düğümüne gereksiz yük bindirmez ve token maliyetini düşürür.


Adım 3 — AI Düğümü ile Üç Platforma Özel Metin Üret

Düğüm: AI Agent veya LLM Chain (n8n'in yerleşik AI düğümleri)

Bu düğümü yapılandırırken System Prompt alanına şunu yaz:

Sen bir sosyal medya uzmanısın. Sana bir blog yazısının başlığı ve özeti verilecek.
Şu üç platform için ayrı ayrı metin üret ve JSON formatında döndür:
{
  "x_post": "...",         // maks 280 karakter, çarpıcı, 1-2 hashtag
  "linkedin_post": "...",  // 150-300 kelime, profesyonel ton, öğretici
  "instagram_caption": "..." // 100-150 kelime, ilham verici, 5-8 hashtag
}
Yalnızca geçerli JSON döndür, başka hiçbir şey yazma.

User Prompt alanına:

Başlık: {{ $json["title"] }}
İçerik özeti: {{ $json["cleanText"] }}

Model olarak farklı seçenekler arasından istediğini seçebilirsin — GPT-4o, Claude Sonnet, Mistral veya açık kaynaklı modeller dahil. AgentRoost'ta bu AI düğümü ek bir API anahtarı gerektirmez; AI kredisi aboneliğine dahildir.


Adım 4 — JSON Çıktısını Ayrıştır

Düğüm: Code (JavaScript)

AI düğümü JSON string döndürür; bunu ayrıştırman gerekir:

const raw = $input.first().json.output; // ya da .text, modele göre değişir
try {
  const parsed = JSON.parse(raw);
  return [{ json: parsed }];
} catch (e) {
  // Parse hatası varsa ham metni logla ve akışı durdur
  return [{ json: { error: true, raw } }];
}

Çıktıda artık x_post, linkedin_post ve instagram_caption alanları var.


Adım 5 — Her Platforma Gönder

Code düğümünün çıktısını üç ayrı dal olarak bağla: her platform için bir düğüm. n8n'de bir düğümün çıktısını birden fazla alt düğüme bağlamak mümkündür — bu sayede X, LinkedIn ve Instagram paylaşımları aynı veriyi alarak paralel çalışır.

X (Twitter) — Kısa Gönderi

Düğüm: X (Twitter) → Create Tweet

  • Text: {{ $json["x_post"] }}

LinkedIn — Profesyonel Gönderi

Düğüm: LinkedIn → Create Post

  • Text: {{ $json["linkedin_post"] }}
  • Visibility: PUBLIC

Instagram — Buffer veya HTTP Request

Instagram'ın API'si doğrudan kişisel hesapları desteklemez; bir Buffer veya Publer hesabı üzerinden HTTP Request düğümüyle gönderebilirsin:

Düğüm: HTTP Request

  • Method: POST
  • URL: https://api.bufferapp.com/1/updates/create.json
  • Body:
    {
      "text": "{{ $json['instagram_caption'] }}",
      "profile_ids": ["<buffer_profil_id>"],
      "scheduled_at": "{{ $now.plus({ hours: 4 }).toISO() }}"
    }
    

Adım 6 — Zamanlama ve Hata Yönetimi

Her platform için farklı saatlerde paylaşmak istersen her posting düğümünden önce birer Wait düğümü ekle:

  • X için hemen paylaş
  • LinkedIn için 2 saat sonra (Wait → 7200 saniye)
  • Instagram için 4 saat sonra (Wait → 14400 saniye)

Hata yönetimi için: Her HTTP Request düğümünün Continue on Fail seçeneğini aç ve sonuna bir IF düğümü ekle — status kodu 200 değilse seni e-posta veya Telegram mesajıyla uyarsın.


Bu Akışı AgentRoost'ta Çalıştır

Bu akışı kendi bilgisayarında ya da bir VPS'te çalıştırmayı düşünüyorsan şu sorunlarla karşılaşırsın: sunucu kurulumu, SSL sertifikası, Docker Compose, sistem güncellemeleri ve bilgisayar kapandığında akışın durması.

AgentRoost'ta bunların hiçbiri yok.

Nasıl başlanır:

  1. agentroost.app adresine gir ve hesap oluştur (Google, Microsoft veya Discord ile de olur).
  2. Framework olarak n8n seç, instance'ına bir isim ver.
  3. Yaklaşık 2 dakika içinde https://<senin-id'in>.agentroost.app adresinde kendi n8n editörün açılır — bu sana özel, sadece senin erişebildiğin bir instance.
  4. Yukarıdaki akışı oluştur. AI/LLM düğümüne geldiğinde API anahtarı girme ekranı seni karşılamaz — krediler zaten dahil.
  5. Webhookların için otomatik olarak public bir HTTPS URL'i alırsın; ek ayar gerekmez.

Fiyat: $19.99/ay'dan başlar, aylık iptal edilebilir, 14 günlük para iade garantisi. Plus ve Pro planlarında daha fazla compute ve dahili AI kredisi bulunur.

Planları karşılaştır


Sık Yapılan Hatalar

"AI düğümü her seferinde farklı format döndürüyor." System prompt'a Yalnızca geçerli JSON döndür, başka hiçbir şey yazma. ekle ve Code düğümünde try/catch kullan — parse hatası varsa ham metni logla.

"RSS düğümü eski yazıları tekrar gönderiyor." Only New Items seçeneğini kontrol et; n8n eski sürümlerde bunu farklı yönetir. Alternatif olarak yayın tarihini bir Set düğümüyle kaydet ve IF ile karşılaştır.

"LinkedIn paylaşımı oluşturuyor ama görünmüyor." LinkedIn API'sinde lifecycleState: PUBLISHED ve shareMediaCategory: NONE (metin gönderisi için) parametrelerini unutma.


Akış bir kez kuruldu mu, tek yapman gereken blog yazmak. Gerisi otomatik.

Sıkça sorulan sorular

Bu akışı kurmak için hangi platformlara API erişimi gerekiyor?

X (Twitter) ve LinkedIn için kendi uygulama API anahtarlarını n8n'in kimlik bilgisi yöneticisine tek seferlik girmen gerekiyor. Instagram doğrudan API desteği kişisel hesaplar için kısıtlı olduğundan genellikle Meta Business Suite entegrasyonu ya da Buffer/Publer gibi bir ara servis HTTP Request düğümüyle bağlanır. AgentRoost'taki n8n örneğinde bu kimlik bilgilerini güvenli biçimde saklayabilirsin.

AgentRoost'ta AI düğümü için ayrıca OpenAI API anahtarı almam gerekiyor mu?

Hayır. AgentRoost aboneliğine AI/LLM kredisi dahildir. n8n içindeki AI Agent ya da LLM düğümünü, herhangi bir harici API anahtarı girmeden doğrudan kullanabilirsin. Bu, rakip servislerden temel farkıdır; n8n Cloud, Zapier veya Elestio'da AI düğümleri için kendi OpenAI/Anthropic anahtarını getirmen gerekir.

RSS beslemem yoksa bu akış çalışır mı?

Çoğu blog platformu (WordPress, Ghost, Webflow, Substack) varsayılan olarak RSS/Atom beslemesi sunar. Aksi hâlde Webhook Trigger kullanabilirsin: blog yazısı yayınlandığında bir HTTP POST isteği gönderen bir otomasyon n8n'i tetikler ve akış aynı şekilde devam eder.

Üretilen metinleri onaylamadan doğrudan paylaşmak güvenli mi?

Bu tamamen sana kalmış. Akışa bir onay adımı ekleyebilirsin: AI çıktısını önce bir Google Sheets satırına ya da e-postana yaz, içeriği gözden geçirip onayladıktan sonra ayrı bir HTTP isteğiyle yayınla. Başlangıçta bu yöntemi öneririz; modelin tonunu ve kalitesini beğendikten sonra tam otomasyona geçebilirsin.

Aboneliği istediğim zaman iptal edebilir miyim?

Evet. AgentRoost aylık, istediğin zaman iptal edilebilir bir abonelik sunar. Ayrıca ilk 14 gün içinde memnun kalmazsan para iade garantisi mevcuttur.