پرش به محتوا

وب هوک ها

هنگامی که اتفاقی در شرکت می افتد، Cyzyra یک POST در JSON به آدرسی که شما ثبت نام کرده اید ارسال می کند. پیکربندی در پلتفرم API → Webhooks, ، انتخاب رویدادها

آنچه می رسد

X-Cyzyra-Event cabeçalho

نوع رویداد، به عنوان مثال پرداخت.پرداخت

X-Cyzyra-Delivery cabeçalho

شناسه این تحویل برای نادیده گرفتن تکرارها استفاده کنید.

X-Cyzyra-Signature cabeçalho

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

بدن
{
  "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"
    }
  }
}

مثال گویا

تایید اشتراک

HMAC-SHA256 را محاسبه کنید <t>.<بدنه خام> با راز نقطه پایانی و مقایسه با 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));
}

تلاش های جدید

در عرض 10 ثانیه با وضعیت 2xx پاسخ دهید. اگر ناموفق بود، Cyzyra دوباره تا 5 بار، با افزایش فواصل، تلاش میکند و هر تلاش را روی داشبورد نمایش میدهد.

رویدادها

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
پیشنهاد ارسال شدproposal.sent
پیشنهاد پذیرفته شدproposal.accepted
Proposta recusadaproposal.rejected
قرارداد ارسال شدcontract.sent
Contrato assinadocontract.signed
شارژ ایجاد شدpayment.created
Pagamento recebidopayment.paid
Pagamento falhoupayment.failed
Pagamento estornadopayment.refunded
Ordem de serviço criadawork_order.created
Mensagem recebidamessage.received