Přejít na hlavní obsah
Webhooky posílají data do vašich systémů v reálném čase, když v Twenty dojde k událostem — bez potřeby průběžného dotazování. Použijte je k udržování externích systémů v synchronizaci, spouštění automatizací nebo zasílání upozornění.

Vytvořit Webhook

  1. Přejděte na Nastavení → API & Webhooks → Webhooks
  2. Klikněte na + Vytvořit webhook
  3. Zadejte adresu URL svého webhooku (musí být veřejně přístupná)
  4. Klikněte na Uložit
Webhook se aktivuje okamžitě a začne odesílat oznámení.

Spravovat Webhooky

Upravit: Klikněte na webhook → Aktualizovat adresu URL → Uložit Odstranit: Klikněte na webhook → Odstranit → Potvrdit

Události

Twenty odesílá webhooky pro tyto typy událostí:
UdálostPříklad
Záznam je vytvořenperson.created, company.created, note.created
Záznam je aktualizovánperson.updated, company.updated, opportunity.updated
Záznam je odstraněnperson.deleted, company.deleted
Všechny typy událostí jsou odesílány na adresu URL vašeho webhooku. Filtrování událostí může být přidáno v budoucích verzích.

Formát payloadu

Každý webhook odesílá HTTP POST s tělem ve formátu JSON:
{
  "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"
}
PolePopis
událostCo se stalo (např. person.created)
dataCelý záznam, který byl vytvořen/aktualizován/odstraněn
časové razítkoKdy k události došlo (UTC)
Odpovězte se stavem HTTP 2xx (200–299) pro potvrzení přijetí. Odpovědi mimo 2xx se zaznamenávají jako selhání doručení.

Ověření Webhooku

Twenty kvůli bezpečnosti podepisuje každý požadavek webhooku. Ověřujte podpisy, abyste zajistili, že požadavky jsou autentické.

Záhlaví

HlavičkaPopis
X-Twenty-Webhook-SignaturePodpis HMAC SHA256
X-Twenty-Webhook-TimestampČasové razítko požadavku

Kroky ověření

  1. Získejte časové razítko z X-Twenty-Webhook-Timestamp
  2. Vytvořte řetězec: {timestamp}:{JSON payload}
  3. Vypočítejte HMAC SHA256 pomocí vašeho tajného klíče webhooku
  4. Porovnejte s X-Twenty-Webhook-Signature

Příklad (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"];

Webhooky vs. pracovní postupy

MetodaSměrPřípad použití
WebhookyOUTAutomaticky informujte externí systémy o jakékoli změně záznamu
Pracovní postup + požadavek HTTPOUTOdesílejte data ven s vlastní logikou (filtry, transformace)
Spouštěč webhooku v pracovním postupuINPřijímejte data do Twenty z externích systémů
Pro příjem externích dat viz Nastavení spouštěče webhooku.