Ga naar de inhoud
Cyzyra

Webhaken

Wanneer er iets gebeurt in het bedrijf, stuurt Cyzyra een POST in JSON naar het adres dat u registreert. Configureer binnen API-platform → Webhooks, het kiezen van de evenementen.

Wat arriveert

X-Cyzyra-Event cabeçalho

Het gebeurtenistype, b.v. betaling.betaald

X-Cyzyra-Delivery cabeçalho

Het ID van deze levering. Gebruik om herhalingen te negeren.

X-Cyzyra-handtekening cabeçalho

t=<unix-tijd>,v1=<HMAC-SHA256>

Lichaam
{
  "id": "evt_3f9c…",
  "type": "payment.paid",
  "created_at": "2026-11-08T14:02:11Z",
  "data": {
    "entity_type": "payment",
    "entity_id": "a93e…",
    "title": "Pagamento confirmado",
    "object": {
      "id": "a93e…",
      "amount": 1500,
      "currency": "BRL",
      "status": "paid"
    }
  }
}

Anschauliches Beispiel.

Bevestig abonnement

Bereken HMAC-SHA256 uit <t>.<rauw lichaam> met het eindpuntgeheim en vergelijk ermee v1. Recuse horários muito antigos para evitar reenvio por terceiros.

import { createHmac, timingSafeEqual } from "node:crypto";

function verify(rawBody, header, secret) {
  const parts = Object.fromEntries(header.split(",").map((p) => p.split("=")));
  const expected = createHmac("sha256", secret).update(`${parts.t}.${rawBody}`).digest("hex");
  const fresh = Math.abs(Date.now() / 1000 - Number(parts.t)) < 300;
  return fresh && timingSafeEqual(Buffer.from(expected), Buffer.from(parts.v1));
}

Nieuwe pogingen

Reageer binnen 10 seconden met een 2xx-status. Als het niet lukt, probeert Cyzyra het maximaal vijf keer opnieuw, met toenemende tussenpozen, en geeft elke poging weer op het dashboard.

Evenementen

Lead criadolead.created
Status do lead mudoulead.status_changed
Cadastros unificadoslead.merged
Negociação criadadeal.created
Negociação mudou de etapadeal.stage_changed
Venda ganhadeal.won
Venda perdidadeal.lost
Voorstel verzondenproposal.sent
Voorstel geaccepteerdproposal.accepted
Proposta recusadaproposal.rejected
Contract verzondencontract.sent
Contrato assinadocontract.signed
Charge aangemaaktpayment.created
Pagamento recebidopayment.paid
Pagamento falhoupayment.failed
Pagamento estornadopayment.refunded
Ordem de serviço criadawork_order.created
Mensagem recebidamessage.received