Ana içeriğe atla
Webhook’lar, Twenty’de olaylar gerçekleştiğinde verileri sistemlerinize gerçek zamanlı olarak iletir — sürekli sorgulamaya gerek yok. Harici sistemleri senkron tutmak, otomasyonları tetiklemek veya uyarılar göndermek için bunları kullanın.

Webhook oluştur

  1. Ayarlar → API’ler ve Webhook’lar → Webhook’lar’a gidin
  2. + Webhook oluştur’a tıklayın
  3. Webhook URL’nizi girin (herkese açık olarak erişilebilir olmalıdır)
  4. Kaydet’e tıklayın
Webhook anında etkinleşir ve bildirim göndermeye başlar.

Webhook’ları Yönet

Düzenle: Webhook’u tıklayın → URL’yi güncelleyin → Kaydet Sil: Webhook’u tıklayın → Sil → Onayla

Etkinlikler

Twenty, şu olay türleri için webhook’lar gönderir:
EtkinlikÖrnek
Kayıt Oluşturulduperson.created, company.created, note.created
Kayıt Güncellendiperson.updated, company.updated, opportunity.updated
Kayıt Silindiperson.deleted, company.deleted
Tüm olay türleri webhook URL’nize gönderilir. Olay filtreleme özelliği ilerideki sürümlerde eklenebilir.

Yük Biçimi

Her webhook, JSON gövdeli bir HTTP POST gönderir:
{
  "event": "person.created",
  "data": {
    "id": "abc12345",
    "firstName": "Alice",
    "lastName": "Doe",
    "email": "alice@example.com",
    "createdAt": "2025-02-10T15:30:45Z",
    "createdBy": "user_123"
  },
  "timestamp": "2025-02-10T15:30:50Z"
}
AlanAçıklama
etkinlikNe oldu (ör. person.created)
veriOluşturulan/güncellenen/silinen kaydın tamamı
zaman damgasıOlayın ne zaman gerçekleştiği (UTC)
Alındığını onaylamak için 2xx HTTP durumu (200-299) ile yanıt verin. 2xx dışı yanıtlar teslimat hataları olarak kaydedilir.

Webhook Doğrulaması

Twenty, güvenlik için her webhook isteğini imzalar. İsteklerin gerçekliğini sağlamak için imzaları doğrulayın.

Üstbilgiler

BaşlıkAçıklama
X-Twenty-Webhook-SignatureHMAC SHA256 imzası
X-Twenty-Webhook-Timestampİstek zaman damgası

Doğrulama Adımları

  1. X-Twenty-Webhook-Timestamp değerinden zaman damgasını alın
  2. Dizeyi oluşturun: {timestamp}:{JSON payload}
  3. Webhook gizli anahtarınızı kullanarak HMAC SHA256 hesaplayın
  4. X-Twenty-Webhook-Signature ile karşılaştırın

Örnek (Node.js)

const crypto = require("crypto");

const timestamp = req.headers["x-twenty-webhook-timestamp"];
const payload = JSON.stringify(req.body);
const secret = "your-webhook-secret";

const stringToSign = `${timestamp}:${payload}`;
const expectedSignature = crypto
  .createHmac("sha256", secret)
  .update(stringToSign)
  .digest("hex");

const isValid = expectedSignature === req.headers["x-twenty-webhook-signature"];

Webhook’lar ve İş Akışları

YöntemYönKullanım Senaryosu
Webhook’larOUTHerhangi bir kayıt değişikliğini harici sistemlere otomatik olarak bildirin
İş Akışı + HTTP İsteğiOUTÖzel mantıkla (filtreler, dönüşümler) verileri dışarı gönderin
İş Akışı Webhook TetikleyicisiINHarici sistemlerden Twenty’ye veri alın
Harici verileri almak için bkz. Bir Webhook Tetikleyicisi Kurun.