Meldingskanalen

Een kanaal is een bestemming voor meldingen. Voeg er zoveel toe als u nodig hebt en koppel ze vervolgens aan afzonderlijke monitors (of standaard aan alle monitors).

Kanalen versus monitor-overrides

Kanalen worden gedefinieerd op organisatieniveau. Elk kanaal kan worden gemarkeerd als standaard — wat betekent dat nieuwe monitors er automatisch naartoe sturen. Op elke afzonderlijke monitor kunt u de standaardinstelling overschrijven en een aangepaste selectie kiezen.

Slack

  1. Ga in Slack naar Apps → Incoming Webhooks → Add to Slack en selecteer het kanaal dat de meldingen moet ontvangen.
  2. Kopieer de webhook-URL die Slack u geeft.
  3. Open in Page Deltas de pagina Channels, Add a channel, kies Slack, plak de URL en sla op.
  4. Klik op Send test om te bevestigen dat het bericht in het juiste Slack-kanaal aankomt.

Discord

Open in uw Discord-server Server Settings → Integrations → Webhooks → New Webhook. Kopieer de URL en plak deze in een nieuw Discord-kanaal in Page Deltas.

Microsoft Teams

Klik in Teams met de rechtermuisknop op het doelkanaal, Connectors → Incoming Webhook → Configure. Noem het Page Deltas, sla op en kopieer de URL naar Page Deltas.

E-mail

Voeg het ontvangeradres toe. We sturen eerst een verificatie-e-mail naar dat adres — het kanaal blijft in de status verificatie in behandeling en ontvangt geen meldingen totdat de ontvanger bevestigt. Uitgaande post wordt verzonden vanaf een geverifieerd domein dat we beheren. Gebruik voor teamdistributie een groepsalias in plaats van afzonderlijke adressen één voor één toe te voegen.

Generieke webhook

Gebruik dit wanneer u uw eigen systeem vanuit meldingen wilt aansturen (Linear, Jira, een Lambda, een Slack-maar-via-bot, enz.).

Payload

De body is een plat JSON-object. Er kunnen na verloop van tijd nieuwe velden worden toegevoegd, dus negeer onbekende sleutels in plaats van ze af te wijzen.

POST <your URL>
Content-Type: application/json
X-Signature: sha256=<hex>

{
  "event": "change.detected",
  "monitor_id": "...",
  "monitor_url": "https://example.com/pricing",
  "monitor_name": "Competitor pricing page",
  "change_id": "...",
  "detected_at": "2026-06-01T12:00:00Z",
  "summary": "Pro plan increased from $29 to $39/month.",
  "before_screenshot_url": "https://.../before.png",
  "after_screenshot_url": "https://.../after.png",
  "dashboard_url": "https://app.pagedeltas.com/monitors/..."
}

Handtekeningverificatie (HMAC)

Elk verzoek bevat een X-Signature-header van de vorm sha256=&lt;hex&gt;, waarbij de waarde de HMAC-SHA256 is van de ruwe verzoekbody met behulp van het geheim van uw kanaal — dat eenmalig wordt getoond bij het aanmaken. Er is geen tijdstempelcomponent.

# Node.js example
import crypto from "node:crypto";

function verify(req, rawBody, secret) {
  const header = req.headers["x-signature"]; // "sha256=<hex>"
  const expected =
    "sha256=" +
    crypto.createHmac("sha256", secret).update(rawBody).digest("hex");
  return crypto.timingSafeEqual(
    Buffer.from(header),
    Buffer.from(expected),
  );
}

Bezorging en mislukkingen

GedragDetail
PogingenElke melding wordt afgeleverd met één enkele poging per kanaal. Er zijn momenteel geen automatische nieuwe pogingen — zorg dat uw ontvanger snel reageert en duplicaten defensief accepteert.
MislukkingenEen niet-2xx-respons of netwerkfout markeert die bezorging als mislukt. De monitor zelf wordt niet gepauzeerd vanwege bezorgmislukkingen.
AuditElke poging (geslaagd of mislukt, met HTTP-status) wordt aan de serverzijde vastgelegd in het logboek met bezorgpogingen.

Best practices

  • Gebruik één kanaal per Slack-werkruimtekanaal — hergebruik geen webhook voor meerdere Slack-ruimtes.
  • Stuur bij monitors met veel volume naar een speciaal Slack-kanaal in plaats van een druk #general.
  • Koppel bij bedrijfskritische meldingen twee kanalen van verschillende types (bijv. Slack + e-mail) zodat een Slack-storing een wijziging niet verbergt.
Meldingskanalen · Documentatie · Page Deltas