Tovább a tartalomhoz

Webhookok

A webhook a csatlakoztatás legegyszerűbb formája: egy HTTP-üzenet egy olyan címre, amelyet te határozol meg. A Slack, a Discord és a Microsoft Teams közvetlenül csatornabejegyzésként fogadja az ilyen üzeneteket; a saját rendszerek pedig azt kezdenek velük, amit csak akarnak.

Jellemző bevetések: a támogatási cím az új megkereséseket a csapatcsatornába jelenti. A megrendelés-visszaigazolás elindítja az árukezelő rendszert. Egy ügyfél szerverriasztása megjelenik a Discord-ban.

  1. Nyisd meg a Beállítások → Integrációk → Webhookok oldalt, és kapcsold be a Webhookok engedélyezése kapcsolót.
  2. Válaszd a Végpont hozzáadása lehetőséget, és add meg a Név és az URL értékét.
  3. A Tartalom-előbeállítás alatt válaszd a Slack, Discord, Microsoft Teams vagy Generic JSON lehetőséget. Az előbeállítás egy megfelelő alapvázzal tölti ki a Tartalomsablon (JSON) mezőt, amelyet szabadon módosíthatsz.
  4. A Teszt példaadatokkal küld próbaüzenetet. A Slack-nél és társainál azonnal látod a csatornán.

Az URL-t az adott szolgáltatásnál kapod meg:

  • Slack: az api.slack.com/apps címen hozz létre egy alkalmazást Incoming Webhooks funkcióval; a létrejött URL a végpont.
  • Discord: Csatornabeállítások → Integrációk → Webhookok.
  • Teams: a csatornán a Workflows alkalmazással, a webhook-kérés esetén történő közzététel sablonjával.
  • Saját rendszerek: minden cím, amely HTTP-POST-tal vagy PUT-tal fogad JSON-t.

Több végpont is lehetséges, mindegyik külön kikapcsolható: a támogatási csatorna és a saját szkript megfér egymás mellett.

A küldés kizárólag az automatizáláson keresztül történik: a Webhook küldése művelet egy szabályban, célként az általad választott végponttal.

Hogy pontosan mi kerül elküldésre, az a végpont tartalomsablonjában áll. Ebbe dupla kapcsos zárójelek közé írt változókat illesztesz, amelyeket küldéskor a kiváltó levél adatai töltenek ki: {{subject}}, {{from}}, {{from_name}}, {{to}}, {{cc}}, {{date}}, {{preview}} (a szöveg eleje), {{tags}}, {{mailbox}}, {{account_id}} és {{rule_name}}. A sablon alatti Változók referenciája mindegyiket elmagyarázza. Egy Slack-üzenet a támogatási csatornára nagyjából így néz ki:

{ "text": "Új megkeresés tőle: {{from_name}}: {{subject}}" }
  • Aláírás: ha megadsz egy HMAC-titok (opcionális) értéket, minden kérés tartalmazza az X-YouniqMail-Signature: sha256=… fejlécet a tartalom HMAC-SHA256-aláírásával. A szervered ezzel ellenőrzi, hogy az üzenet tőled jön.
  • Ismétlések: szerverhibák (5xx) és hálózati problémák esetén a YouniqMail legfeljebb háromszor újrapróbálkozik, 1, 2 és 4 másodperces szünetekkel. Az elutasítások (4xx) nem ismétlődnek. Az időkorlátot végpontonként állítod be, legfeljebb 30 másodpercre.
  • Metódus: a POST az alapértelmezés, a PUT csak akkor, ha a végpontod megköveteli. Az átirányításokat nem követi.
  • Az üzenet arra a végpontra megy, amelyet megadsz. Gondosan ellenőrizd az URL-t, mert bárki, aki ismeri, írhat a csatornába. A webhook-URL-eket kezeld úgy, mint a jelszavakat.
  • A tartalmat te határozod meg: az kerül átvitelre, ami a sablonban áll. Ha csak a tárgyat és a feladót illeszted be, csak azokat is adod tovább.
  • Pro funkció: a webhookok a Pro körhöz tartoznak.