Sidrocjenici

Dokumentacija

Odlazni webhookovi

Obavijesti vašem sustavu o objavama i izmjenama, s potpisom.

U paketima Pro i Lanac Sidro može javljati vašem sustavu (API i webhookovi → Novi webhook):

Događaj Kada
publication.created objavljen je cjenik lokacije (URL-ovi, broj stavki, ocjena provjere)
publication.failed objava nije uspjela
anchor.changed promijenjena je sidrena cijena (ručno ili API-jem)
validation.issues provjera objave našla je greške

Tijelo: { "id", "type", "created_at", "data" }. Zaglavlja: Sidro-Event i Sidro-Signature: t=<unix>,v1=<hex>, gdje je v1 HMAC-SHA256 tajnom nad "<t>.<tijelo>". Odbijte zahtjeve starije od 5 minuta.

import crypto from 'node:crypto';
export function provjeri(tijelo, zaglavlje, tajna) {
  const { t, v1 } = Object.fromEntries(zaglavlje.split(',').map((p) => p.split('=')));
  const ocekivano = crypto.createHmac('sha256', tajna).update(`${t}.${tijelo}`).digest('hex');
  return Math.abs(Date.now() / 1000 - Number(t)) < 300 && crypto.timingSafeEqual(Buffer.from(v1), Buffer.from(ocekivano));
}
function sidro_provjeri(string $tijelo, string $zaglavlje, string $tajna): bool {
  parse_str(str_replace(',', '&', $zaglavlje), $p);
  $ocekivano = hash_hmac('sha256', $p['t'] . '.' . $tijelo, $tajna);
  return abs(time() - (int) $p['t']) < 300 && hash_equals($ocekivano, $p['v1']);
}

Sidro pokuša isporuku dvaput; stanje zadnjeg pokušaja vidi se u ploči. Gumb Pošalji probu šalje probni događaj.