Integratsioonid

Saada vormivastused veebihaakide kaudu

Veebihaagid on YeetFormi universaalne viis saata vastuseandmeid kuhu iganes: oma taustasüsteemi, andmebaasi sünkroonimistöösse või teise automatiseerimisplatvormi. Lisa HTTPS-lõpp-punkt vormi Integratsioonide vahekaardile ja YeetForm saadab iga uue vastuse kohta allkirjastatud JSON-kasuliku koormuse POST-päringuna, koos saladusega, mille vastu saad kontrollida HMAC-SHA256 abil. Ebaõnnestunud edastusi proovitakse automaatselt uuesti. See leht käsitleb täpset allkirja vormingut, kasuliku koormuse kuju ja uuesti proovimise ajakava, et saaksid vastuvõtja enesekindlalt üles ehitada.

Seadistus

1

Lisa lõpp-punkt

Kleebi oma HTTPS-lõpp-punkti URL vormi Integratsioonide vahekaardil Webhooks-i alla ja klõpsa Lisa veebihaak. YeetForm loob sellele lõpp-punktile allkirjastamise saladuse (whsec_...).

2

Kontrolli allkirja

Iga edastus kannab päist X-YeetForm-Signature: t=<unix-ajatempel>,v1=<HMAC-SHA256 hex kujust `${t}.${body}`>. Kontrolli seda toore päringukeha vastu enne kasuliku koormuse usaldamist.

import { createHmac, timingSafeEqual } from "crypto";

function verify(secret, signatureHeader, rawBody) {
  const [tPart, v1Part] = signatureHeader.split(",");
  const timestamp = tPart.split("=")[1];
  const signature = v1Part.split("=")[1];

  const expected = createHmac("sha256", secret)
    .update(`${timestamp}.${rawBody}`)
    .digest("hex");

  const a = Buffer.from(signature, "hex");
  const b = Buffer.from(expected, "hex");
  if (a.length !== b.length) return false;
  return timingSafeEqual(a, b);
}
3

Loe kasulikku koormust

POST-päringud käivituvad sündmusest response.created (ja webhook.test käsitsi testinupu kaudu), sisaldades vormi ID-d, vastuse ID-d, vastuste arvu ja välja ID järgi võtmestatud vastuseid ning fields-massiivi iga välja nimega.

{
  "event": "response.created",
  "form_id": "<uuid>",
  "form_title": "Customer Feedback",
  "response_id": "<uuid>",
  "response_count": 42,
  "answers": { "fld_x": "..." },
  "submitted_at": "2026-09-13T12:00:00.000Z"
}
4

Käsitle uuesti proovimisi

Mitte-2xx vastus (või ajalõpp) käivitab uue katse: kohe, siis 30 sekundi pärast, siis 5 minuti pärast - kokku 3 katset enne kui YeetForm märgib edastuse ebaõnnestunuks. Ümbersuunamisi ei järgita, seega suuna URL otse oma lõpp-punktile.

Vihjed

  • Väljanimed sisalduvad kasuliku koormuse fields-massiivis (id, label, type), nii et sul pole vaja välja ID-sid järgnevas süsteemis kõvasti kodeerida.
  • Igal vastusel on stabiilne response_id - kasuta seda idempotentsusvõtmena, kuna uuesti proovitud edastus kasutab sama ID-d.
  • Ebaõnnestunud edastust proovitakse kokku 3 korda (kohe, 30 s, 5 min) enne ebaõnnestunuks märkimist - õnnestumiseks on vaja 2xx vastust, ümbersuunamisi ei järgita.

Ehita oma vorm tehisintellektiga sekunditega

Alusta tasuta

KKK

Mis käivitab veebihaagi?+
response.created käivitub iga uue vastuse korral; webhook.test käivitub, kui klõpsad integratsiooni testinuppu, et saaksid lõpp-punkti enne kasutuselevõttu kontrollida.
Kuidas ma tean, et päring tuli tõesti YeetFormilt?+
Kontrolli päist X-YeetForm-Signature oma lõpp-punkti saladuse vastu HMAC-SHA256 abil kujust `${ajatempel}.${toores_keha}` - vaata ülaltoodud kontrollimise näidet.
Mis juhtub, kui mu lõpp-punkt on maas?+
YeetForm proovib kokku 3 korda: kohe, 30 sekundi pärast, siis 5 minuti pärast. Kui kõik kolm ebaõnnestuvad, märgitakse edastus ebaõnnestunuks ja seda enam ei proovita.
Kas saan lisada kohandatud päiseid?+
Jah, veebihaagi seadistamisel saad määrata kohandatud päiseid - need liidetakse sisse, kuid YeetFormi enda Content-Type ja X-YeetForm-* päised võidavad alati konflikti korral.