n8n iş akışlarınızı yönlendiren WhatsApp etkinlikleri.

Flowella’nın imzalı webhook’ları, n8n’in kendi Webhook tetikleyicisi aracılığıyla n8n iş akışlarınızı başlatır ve HTTP İsteği düğümü, WhatsApp şablonlarını Flowella API’si üzerinden geri gönderir.

  • Bugün çalışıyorFlowella API’si ve webhook’lar aracılığıyla
  • Yakından8n için bir Flowella düğümü
Flowella’nın maskotu Flo, üç renkli düğümden sonuncusuna bir kablo takarak bunları birbirine bağlıyor

Bir olayı tetikle, yükü takip et.

İşte Flowella tarzında çizilmiş bir n8n iş akışı. Örnek bir olay seçip gönderin, ardından düğümden düğüme takip edin: Switch düğümü her olayı yönlendirir ve bir HTTP Request düğümü ekibinizi uyarır, e-posta listenizi günceller veya Flowella API'si aracılığıyla bir WhatsApp şablonu geri gönderir. Herhangi bir düğümü seçerek tam olarak ne aldığını veya ne gönderdiğini görebilirsiniz.

Flo, üç yön okundan birine doğru işaret ediyor; tıpkı bir iş akışı dalının bir yolu seçmesi gibi
Sadece n8n’in kendi düğümleri
Örnek etkinlik
Acme Clubİşletme hesabı
Örnek veriler

Bugün

Merhaba Ada, Acme Club üyeliğin 31 Ekim’de yenilenecek. Herhangi bir sorunun olursa buraya yanıt yazabilirsin.
Flowella etkinliklerin8n iş akışı
Örnek veriler

Flowella'nın webhook'a gönderdiği içerik Örnek veriler

POST/webhook/flowella-events

Content-Type
application/json
X-Flowella-Signature
Bir olay geldiğinde imzalanır

Flowella'nın buraya gönderdiği paylaşımları görmek için bir etkinlik gönderin.

POST/webhook/flowella-events

Content-Type
application/json
X-Flowella-Signature
5d2c9f1a…e19a
{
  "id": "6f1d8a2c-4b7e-4c19-9a53-0e2b7c4d9f10",
  "type": "message.received",
  "created_at": "2026-10-16T08:41:07.000Z",
  "payload_version": "1",
  "data": {
    "messageId": "clsamplemsg00000000000043",
    "conversationId": "clsampleconv0000000000007",
    "contactId": "clsamplecontact0000000003",
    "direction": "INBOUND",
    "type": "TEXT",
    "metaMessageId": "wamid.sample00000000000043"
  }
}

POST/webhook/flowella-events

Content-Type
application/json
X-Flowella-Signature
5d2c9f1a…e19a
{
  "id": "6f1d8a2c-4b7e-4c19-9a53-0e2b7c4d9f10",
  "type": "optout.created",
  "created_at": "2026-10-16T08:41:07.000Z",
  "payload_version": "1",
  "data": {
    "contactId": "clsamplecontact0000000003",
    "conversationId": "clsampleconv0000000000007",
    "phone": "+447700900123",
    "reason": "USER_KEYWORD"
  }
}

POST/webhook/flowella-events

Content-Type
application/json
X-Flowella-Signature
5d2c9f1a…e19a
{
  "id": "6f1d8a2c-4b7e-4c19-9a53-0e2b7c4d9f10",
  "type": "template.status_updated",
  "created_at": "2026-10-16T08:41:07.000Z",
  "payload_version": "1",
  "data": {
    "metaTemplateId": "1234567890123456",
    "templateName": "autumn_fair_invite",
    "status": "APPROVED",
    "language": "en_GB"
  }
}

Her gönderide aynı zarf bulunur ve etkinliğe özgü alanlar bu zarfın son anahtarında yer alır: id type created_at payload_version data

Harekete geçmeden önce X-Flowella-Signature’ı kontrol edin: Bu, ham gövdenin, imzalama gizli anahtarınızla şifrelenmiş HMAC-SHA256 onaltılık özetidir.

Değiştir: Her olay, koşullarının tamamı karşılanan ilk kuralı alır

Bu etkinlik: Henüz işaretlenmemiş type: message.received data.type: TEXT type: optout.created type: template.status_updated data.status: APPROVED

  1. Ekibi uyarmak {{ $json.body.type }} şuna eşittir message.received {{ $json.body.data.type }} şuna eşittir TEXT
  2. Posta listesini güncelle {{ $json.body.type }} şuna eşittir optout.created
  3. Kampanyayı gönder {{ $json.body.type }} şuna eşittir template.status_updated {{ $json.body.data.status }} şuna eşittir APPROVED

Bir etkinliği bekliyorum.

1. kural eşleştiği için olay, “Takımı uyar” aşamasına geçer.

Kural 2 ile eşleştiğinden, işlem “Posta listesini güncelle” adımına geçiyor.

Kural 3'e uyulduğu için işlem, “Kampanyayı gönder” adımına ilerler.

Switch, olayı değiştirmeden iletir; böylece bir sonraki düğüm de $json.body’yi okuyabilir.

HTTP İsteği düğümü tarafından gönderilenler Örnek veriler

POSThttps://alerts.example.com/hooks/whatsapp-replies

Content-Type
application/json

Bu düğüm, yalnızca kural 1 ile eşleştiğinde çalışır.

POSThttps://alerts.example.com/hooks/whatsapp-replies

Content-Type
application/json

conversationId, {{ $json.body.data.conversationId }} değerindencontactId, {{ $json.body.data.contactId }} değerinden

{
  "conversationId": "clsampleconv0000000000007",
  "contactId": "clsamplecontact0000000003"
}
200 OK

POSThttps://alerts.example.com/hooks/whatsapp-replies

Content-Type
application/json

Çalışmadı. Switch bu olayı başka bir çıkışa iletti.

Etkinlik, yanıtın kendisini değil, kimlik numaralarını içerir; bu nedenle ekibiniz, Flowella gelen kutusunda sohbeti açar ve oradan yanıt verir.

HTTP İsteği düğümü tarafından gönderilenler Örnek veriler

POSThttps://lists.example.com/v1/unsubscribes

Content-Type
application/json

Bu düğüm, yalnızca kural 2 ile eşleştiğinde çalışır.

POSThttps://lists.example.com/v1/unsubscribes

Content-Type
application/json

phone, {{ $json.body.data.phone }} değerindenreason, {{ $json.body.data.reason }} değerinden

{
  "phone": "+447700900123",
  "reason": "USER_KEYWORD"
}
200 OK

POSThttps://lists.example.com/v1/unsubscribes

Content-Type
application/json

Çalışmadı. Switch bu olayı başka bir çıkışa iletti.

optout.created, bir telefon numarasını içeren olaydır; böylece diğer araçlarınız da ona mesaj göndermeyi durdurabilir.

HTTP İsteği düğümü tarafından gönderilenler Örnek veriler

POSThttps://api.flowella.io/v1/templates/send

Authorization
Bearer flo_(gizli)n8n kimlik bilgilerinizden
Content-Type
application/json

Bu düğüm yalnızca kural 3 ile eşleştiğinde çalışır.

POSThttps://api.flowella.io/v1/templates/send

Authorization
Bearer flo_(gizli)n8n kimlik bilgilerinizden
Content-Type
application/json
Idempotency-Key
6f1d8a2c-4b7e-4c19-9a53-0e2b7c4d9f10

templateId, {{ $json.body.data.metaTemplateId }} değerindenIdempotency-Key, {{ $json.body.id }} değerinden, böylece yeniden denenen bir teslimat asla iki kez gönderilmezrecipients n8n’in tuttuğu üye listesinden

{
  "templateId": "1234567890123456",
  "whatsappChannelId": "clsamplechannel0000000001",
  "recipients": [
    { "phone": "+447700900123", "bodyParameters": ["Ada"] },
    { "phone": "+447700900456", "bodyParameters": ["Ben"] }
  ]
}
202 Accepted{ "id": "v1ts-0123456789abcdef", "status": "accepted" }

POSThttps://api.flowella.io/v1/templates/send

Authorization
Bearer flo_(gizli)n8n kimlik bilgilerinizden
Content-Type
application/json

Çalışmadı. Switch bu olayı başka bir çıkışa iletti.

API anahtarını bir n8n kimlik bilgisi içinde saklayın, asla iş akışının içinde saklamayın. “202 Accepted” mesajı, Flowella’nın gönderimi kuyruğa aldığını ve arka planda teslim ettiğini gösterir.

Üç adımda kurun.

WhatsApp'a bağlı bir Flowella hesabı, Meta tarafından onaylanmış bir şablon ve bir n8n iş akışına ihtiyacınız var. Ardından:

  1. Adım 1: Bir Webhook tetikleyicisi ekle

    İş akışını n8n’in Webhook düğümüyle başlatın, bunu POST olarak ayarlayın ve üretim ortamındaki URL’sini kopyalayın.

    Webhook düğümüÖrnek veriler
    Yöntem
    POST
    Yol
    flowella-events
    URL
    https://n8n.example.com/webhook/flowella-events
    Dinleme
    Giden webhook'lar
  2. Adım 2: Flowella'ya abone olun

    Ayarlar → Webhook’lar bölümünde bu URL’yi ekleyin, istediğiniz olayları seçin ve imzalama gizli anahtarını kaydedin. “Test gönder” seçeneği, bir webhook.test olayı tetikler. Bunun için “Sahip” veya “Yönetici” rolüne sahip olmanız gerekir.

    Webhook'larÖrnek veriler
    Uç nokta
    https://n8n.example.com/webhook/flowella-events
    Etkinlikler
    message.received, optout.created, template.status_updated
    İmza gizli
    Kaydedildi
    Test gönderildi
    Webhook ayarları
  3. Adım 3: HTTP İsteği ile geri gönder

    /v1/templates/send adresine POST isteği gönderen bir HTTP İsteği düğümü ekleyin; başlık bilgisi kısmına Flowella API anahtarınızı girin.

    HTTP İsteği düğümüÖrnek veriler
    Yöntem
    POST
    URL
    https://api.flowella.io/v1/templates/send
    Kimlik Bilgisi
    Header: Authorization
    202 Kabul Edildi
    API kılavuzu

Bugün ne işe yarıyor ve gelecekte neler olacak?

Yukarıda bahsedilen her şey, şu anda kullanıma açık olan Flowella API’si ve webhook’lar üzerinden çalışmaktadır. n8n için bir Flowella düğümü ise yakında kullanıma sunulacaktır.

Yakında

n8n için bir Flowella düğümü

Hazır olduğunda, nasıl çalıştığını burada paylaşacağız. O zamana kadar, n8n’in Webhook tetikleyicisi ve HTTP İsteği düğümü bu işi hallediyor.

Bilgiye değer

  • İmzayı kontrol edinHer istek, ham gövdenin HMAC-SHA256 hex özetini içeren X-Flowella-Signature başlığını taşır. İşlem yapmadan önce bunu doğrulayın. Gizli anahtarı yenilediğinizde, X-Flowella-Signature-Previous başlığı da eski anahtarın imzasını içerir.
  • 10 saniye içinde cevap verinFlowella, 2xx kodlu bir yanıt gelmesi için en fazla 10 saniye bekler ve 1 ile 2 saniye aralıklarla en fazla 3 kez gönderim denemesi yapar. Önce yanıt verin, ardından yavaş işleri halledin.
  • Tekrar yayınlar bekleniyorYeniden denenen bir teslimat aynı zarf kimliğini taşır; bu nedenle, daha önce işlediğiniz kimlikleri saklayın ve tekrarlanan bir teslimatı hiçbir işlem yapmadan geçiştirin.
  • Kimlikler, kelimeler değilmessage.received, mesajların kimliklerini, yönünü ve türünü içerir; metnini asla içermez. Ekibiniz, Flowella gelen kutusundaki yanıtları okur ve bunlara cevap verir.

Bugün satışta Bugün çalışıyor

HTTP istekleri gönderen ve alan herhangi bir araçla uyumludur; n8n de buna dahildir.

Bugün abone olabileceğiniz webhook olayları

  • message.received
  • message.sent
  • message.delivered
  • message.read
  • message.failed
  • conversation.opened
  • conversation.closed
  • optout.created
  • template.status_updated
  • contact.created
  • contact.updated
  • contact.deleted

Ayrıca, Send test'in isteğe bağlı olarak tetiklediği webhook.test de var.

Flo, yumruğunu havaya kaldırmış ve elinde telefonuyla sevinçten zıplıyor

Flowella ve n8n ile geliştirmeye başlayın.

Bu sayfadaki tüm özellikler şu anda Flowella API’si ve webhook’lar aracılığıyla çalışmaktadır. Teams üzerinden 30 dakikalık bir demo randevusu alın; iş akışlarınızı birlikte inceleyelim.

Tüm entegrasyonları gör