Napojení na CRM (Make, Zapier, webhook)
Kontakty ze soutěží a připomínky klientů hned ve Vašich systémech.
Napojení nastavíte v Nastavení organizace › Integrace. U každého nového kontaktu (a volitelně připomínky klienta) pošleme údaje ve formátu JSON na adresu, kterou zadáte. Je v balíčcích Pro, Agentura a Enterprise a ve zkušebním období.
Make
- Nový scénář › modul Webhooks › Custom webhook › Add › zkopírujte adresu.
- Ve studiu přidejte napojení s touto adresou a klikněte na Poslat zkušební kontakt; Make podle něj pozná strukturu údajů.
- Přidejte další modul, například HubSpot, Pipedrive, Google Sheets nebo Mailchimp, a namapujte pole.
Zapier
- Nový Zap › spouštěč Webhooks by Zapier › Catch Hook › zkopírujte adresu.
- Ve studiu přidejte napojení a pošlete zkušební kontakt, v Zapieru klikněte na Test trigger.
- Přidejte akci do Vašeho CRM.
Formát údajů
{
"id": "6f1c…",
"event": "lead.created",
"created_at": "2026-10-29T10:15:00.000Z",
"data": {
"project": { "id": "…", "slug": "sutaz-kavovar", "name": "Súťaž o kávovar" },
"contact": {
"id": "…",
"name": "Eva Nováková",
"email": "[email protected]",
"phone": null,
"locale": "sk",
"detail": "win",
"consent_text": "Súhlasím so spracúvaním údajov na účel súťaže.",
"created_at": "2026-10-29T10:15:00.000Z"
}
}
}Hlavičky: X-Dimenzum-Event (lead.created, review.created nebo test), X-Dimenzum-Delivery (identifikátor doručení, stejný při opakování) a X-Dimenzum-Signature s podpisem.
Ověření podpisu (vlastní server)
Podpis je HMAC SHA-256 z textu „čas.tělo“ s klíčem, který vidíte u napojení. Ověřte ho a odmítněte zprávy starší než 5 minut.
// Node.js: overenie podpisu webhooku Dimenzum
import { createHmac, timingSafeEqual } from 'node:crypto';
function verify(body, header, secret) {
const parts = Object.fromEntries(header.split(',').map((p) => p.split('=')));
const expected = createHmac('sha256', secret).update(`${parts.t}.${body}`).digest('hex');
const fresh = Math.abs(Date.now() / 1000 - Number(parts.t)) < 300;
return fresh && timingSafeEqual(Buffer.from(expected), Buffer.from(parts.v1));
}<?php // PHP: overenie podpisu webhooku Dimenzum
$body = file_get_contents('php://input');
parse_str(str_replace(',', '&', $_SERVER['HTTP_X_DIMENZUM_SIGNATURE'] ?? ''), $sig);
$expected = hash_hmac('sha256', $sig['t'] . '.' . $body, getenv('DIMENZUM_SECRET'));
if (!hash_equals($expected, $sig['v1'] ?? '') || abs(time() - (int) $sig['t']) > 300) {
http_response_code(400);
exit;
}
$event = json_decode($body, true);Chyby a opakování
Pokud Váš server neodpoví kódem 2xx do 10 sekund, zkusíme to znovu po 1, 5 a 30 minutách, po 2 a 12 hodinách. Po 20 neúspěších za sebou se napojení pozastaví; zapnete ho jedním klikem. Stav posledních odeslání vidíte u napojení.
Adresa musí být https a vést na veřejný server. Po doručení obsah z naší fronty mažeme, nedoručený nejpozději po 14 dnech.