Toode

Allkirjastatud webhookid

HMAC-allkirjaga tarnesündmused.

HMAC-SHA256
// Headers: Postline-Timestamp, Postline-Event-Id, Postline-Signature
signed   = timestamp + "\0" + event_id + "\0" + raw_body
expected = "v1=" + hex(HMAC-SHA256(webhook_secret, signed))
constant_time_compare(expected, Postline-Signature)

// 2xx acknowledges the event. Otherwise up to 6 attempts:
// now, +1m, +5m, +30m, +2h, +8h (15 s timeout each)

Sündmused

Telli iga lõpp-punkt 1–20 järgmisele sündmusetüübile:

  • email.accepted
  • email.queued
  • email.sent
  • email.delivered
  • email.deferred
  • email.bounced
  • email.complained
  • email.opened
  • email.clicked
  • email.received
  • email.suppressed
  • domain.verified
  • domain.failed

Vastuvõtja nõuded

  • Arvuta signatuur täpsest töötlemata (raw) päringu kehast.
  • Võrdle signatuure constant-time meetodil.
  • Lükka tagasi ajatemplid, mis jäävad lubatud akna väliseks.
  • Salvesta event_id ja töötle iga sündmust üks kord.
  • Ära eelda, et sündmused saabuvad elutsükli järjekorras.

Väljuvad kontrollid

Lõpp-punkti loomine nõuab HTTPS-i. Privaatsed, loopback-, link-local-, metadata- ja mandaate sisaldavad ning sisemised sihtkohad on blokeeritud ja lahendatakse (resolve) uuesti helistamise hetkel. Ümbersuunamisi ei järgita. Kohaletoimetamine kasutab piiratud ajalõppe ja korduskatsete arvu.

Ajalõpud ja kordused

Iga 2xx vastus kinnitab sündmuse. Ajalõpp (15 s), võrguviga või muu olek on ebaõnnestumine. Postline teeb kuni 6 katset: esimese ning kordused 1 min, 5 min, 30 min, 2 h ja 8 h järel. Iga katse salvestatakse logisse ja iga kohaletoimetamist saab käsitsi korrata API või töölaua kaudu.