Überwachung und Automatisierung

Webhook-Alarm-API

Senden Sie Alarme zu Überwachungsliste, Domain-Änderungen und Markenüberwachung als signiertes JSON an Ihre eigenen HTTPS-Endpunkte. Wählen Sie, welche Ereignisse jeder Endpunkt erhält, prüfen Sie jede Anfrage mit HMAC-SHA256 und bezahlen Sie nur für Alarme, die Ihr Endpunkt annimmt.

Kategorie Überwachung und Automatisierung
Endpunkte 7
Hauptfunktionen 6
Häufig gestellte Fragen 6

Wird von Mitarbeitenden dieser Unternehmen genutzt

InstantOutseerMongoDBRespondentSage Expense ManagementInstantlyD.R. HortonWhatConvertsAdobeLLM Pulse

Vertrauenssignale vor der Integration

Transparente Dokumentation, authentifizierte Anfragen und sichtbare Zuverlässigkeitsdetails erleichtern die Bewertung von DomScan vor dem Launch.

Live Dienststatus

Prüfen Sie vor der Integration den aktuellen Dienstzustand und die dokumentierten Fehlerantworten.

OpenAPI API-Artefakte

OpenAPI, Swagger, Postman, CLI, SDK und MCP-Links sind nur einen Klick entfernt.

API-Schlüssel Geschützter Zugriff

Authentifizierte Endpunkte nutzen API-Schlüssel mit klaren Credit-Kosten vor dem Aufruf.

10,000 Kostenloses Kontingent

Starte mit 10.000 monatlichen Credits und upgrade erst, wenn die Nutzung wächst.

Wobei diese API beim Bauen hilft

Nutze diese Seite als Produktionsbriefing: Endpoints, Beispiele, Antwortstruktur und Workflow-Bausteine, um DomScan in dein Produkt einzubinden.

Produkt-Workflows

Bette Domainchecks, DNS-Intelligence, Risikosignale oder Anreicherung in Onboarding, Suche und interne Tools ein.

Analysten-Automatisierung

Ersetze wiederholte manuelle Lookups durch geplante Jobs, Alerts und reproduzierbare Untersuchungsschritte.

Saubere JSON-Daten

Nutze vorhersehbare Felder, dokumentierte Statuscodes und Credit-Kosten statt Provider-Seiten zu scrapen.

KI- und Ops-Tools

Versorge Agenten, Dashboards, SOAR-Playbooks und CRMs über OpenAPI, SDK, Postman oder MCP.

Integrationsablauf

Ein einfacher Weg von der ersten Anfrage bis zur wiederholbaren Nutzung in Produktion.

1
Einmal authentifizieren

Sende deinen API-Schlüssel mit dem dokumentierten Header und halte Anfragen über Services hinweg konsistent.

2
Mit Beispielen abfragen

Starte mit den curl- und HTTP-Beispielen und übertrage die Parameter dann in deinen Anwendungscode.

3
Betreiben und überwachen

Nutze Statuscodes, Credit-Kosten und Antwortfelder, um Retries, Logs und Alerts zu bauen.

Developer-Kit

Wechsle von dieser Seite zu maschinenlesbaren Docs, Request-Sammlungen, SDKs oder Agenten-Tools.

Parameter- und Antwortkarte

Prüfe Eingaben, Ausgabefelder und Statuscodes, bevor du den Endpoint in deinen Client einbindest.

Request-Parameter

Parameter

urldescriptioneventsenabledwebhook_idlimit
Antwortfelder

Beispielantwort

endpointendpoint.idendpoint.urlendpoint.eventsendpoint.statusendpoint.disabled_reasonendpoint.consecutive_failuresendpoint.secret_hintendpoint.previous_secret_expires_atsecret
Statusabdeckung

HTTP-Statuscodes

200201400401409429

Endpunkte

POST /v1/webhooks
Credits: 0Authentifizierung: Authentifizierung erforderlich
urldescriptionevents
GET /v1/webhooks
Credits: 0Authentifizierung: Authentifizierung erforderlich
PATCH /v1/webhooks/:webhook_id
Credits: 0Authentifizierung: Authentifizierung erforderlich
enabledeventsdescription
POST /v1/webhooks/:webhook_id/rotate-secret
Credits: 0Authentifizierung: Authentifizierung erforderlich
POST /v1/webhooks/:webhook_id/test
Credits: 0Authentifizierung: Authentifizierung erforderlich
GET /v1/webhooks/:webhook_id/deliveries
Credits: 0Authentifizierung: Authentifizierung erforderlich
limit
DELETE /v1/webhooks/:webhook_id
Credits: 0Authentifizierung: Authentifizierung erforderlich

Jeden Alarm prüfen

Verwenden Sie den Anfrage-Body genau so, wie er eingegangen ist. Der Header enthält eine Signatur, während einer Rotation des Geheimnisses zwei. Akzeptieren Sie die Anfrage, wenn eine der Signaturen passt.

import crypto from 'node:crypto';

// rawBody: the request body exactly as received, before JSON parsing.
function verifyDomScanWebhook(rawBody, headers, secret) {
  const timestamp = headers['x-domscan-timestamp'];
  const header = headers['x-domscan-signature'] || '';
  if (!/^\d{10}$/.test(timestamp || '')) return false;
  if (Math.abs(Date.now() / 1000 - Number(timestamp)) > 300) return false;
  const expected = Buffer.from('sha256=' + crypto
    .createHmac('sha256', secret)
    .update(timestamp + '.' + rawBody)
    .digest('hex'));
  // One entry normally; two during a secret rotation (new secret first).
  return header.split(',').some((entry) => {
    const candidate = Buffer.from(entry.trim());
    return candidate.length === expected.length &&
      crypto.timingSafeEqual(candidate, expected);
  });
}

Geheimnisse mit 24 Stunden Übergangsfrist rotieren

Beim Rotieren wird einmalig ein neues Geheimnis zurückgegeben. Bis die Übergangsfrist endet, wird jeder Alarm zuerst mit dem neuen und danach mit dem vorherigen Geheimnis signiert, sodass Empfänger, die noch das alte Geheimnis verwenden, weiter funktionieren.

X-DomScan-Signature: sha256=<new>,sha256=<previous>

Vertrauenssignale vor der Integration

Transparente Dokumentation, authentifizierte Anfragen und sichtbare Zuverlässigkeitsdetails erleichtern die Bewertung von DomScan vor dem Launch.

Live Dienststatus

Prüfen Sie vor der Integration den aktuellen Dienstzustand und die dokumentierten Fehlerantworten.

OpenAPI API-Artefakte

OpenAPI, Swagger, Postman, CLI, SDK und MCP-Links sind nur einen Klick entfernt.

API-Schlüssel Geschützter Zugriff

Authentifizierte Endpunkte nutzen API-Schlüssel mit klaren Credit-Kosten vor dem Aufruf.

10,000 Kostenloses Kontingent

Starte mit 10.000 monatlichen Credits und upgrade erst, wenn die Nutzung wächst.

Hauptfunktionen

Signierte Anfragen

Jeder Alarm trägt eine HMAC-SHA256-Signatur über einen Zeitstempel und den unveränderten Body, sodass Ihr Empfänger gefälschte und wiederholt eingespielte Anfragen ablehnen kann.

Ereignisse frei wählen

Abonnieren Sie für jeden Endpunkt Alarme zu Verfügbarkeit, Ablauf, Status, DNS, Zertifikaten, Registrierung, Hosting, Technologie, E-Mail-Sicherheit oder Markenbedrohungen, oder zu allen.

Wiederholungen mit stabilen Ereignis-IDs

Fehlgeschlagene Zustellungen werden mit zunehmenden Abständen wiederholt, bis zu 6 Versuche. Jede Wiederholung enthält dieselbe Ereignis-ID, sodass Sie bereits verarbeitete Alarme ignorieren können.

Nur zugestellte Alarme bezahlen

Ein Alarm kostet nur dann 2 Credits, wenn Ihr Endpunkt mit einem 2xx-Status antwortet. Fehlgeschlagene Zustellungen werden erstattet, Testereignisse und die Rotation von Geheimnissen sind kostenlos.

Automatische Pausierung mit E-Mail

Ein Endpunkt, der dauerhaft fehlschlägt, wird pausiert, und Sie erhalten eine E-Mail mit dem Host des Endpunkts und dem letzten Fehler. Aktivieren Sie ihn nach der Korrektur wieder, dann beginnt der Fehlerzähler bei null.

Rotation von Geheimnissen ohne Ausfallzeit

Rotieren Sie ein Signaturgeheimnis jederzeit. 24 Stunden lang wird jeder Alarm mit dem neuen und dem vorherigen Geheimnis signiert, sodass Sie den Empfänger umstellen können, ohne Alarme zu verpassen.

Beispielanfrage

POST /v1/webhooks bash
curl -X POST "https://domscan.net/v1/webhooks" \
  -H "X-API-Key: $DOMSCAN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://hooks.example.com/domscan","events":["domain.expiring_30","domain.available","domain.dns_changed"]}'
POST /v1/webhooks/:webhook_id/rotate-secret bash
curl -X POST "https://domscan.net/v1/webhooks/whe_3f1c0a9b8e7d6c5b4a39281706f5e4d3/rotate-secret" \
  -H "X-API-Key: $DOMSCAN_API_KEY"
PATCH /v1/webhooks/:webhook_id bash
curl -X PATCH "https://domscan.net/v1/webhooks/whe_3f1c0a9b8e7d6c5b4a39281706f5e4d3" \
  -H "X-API-Key: $DOMSCAN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"enabled":true}'

Beispielantwort

200 OK json
{
  "endpoint": {
    "id": "whe_3f1c0a9b8e7d6c5b4a39281706f5e4d3",
    "url": "https://hooks.example.com/domscan",
    "events": ["domain.available", "domain.expiring_30", "domain.dns_changed"],
    "status": "active",
    "disabled_reason": null,
    "consecutive_failures": 0,
    "secret_hint": "9c2e",
    "previous_secret_expires_at": null
  },
  "secret": "whsec_..."
}

Häufig gestellte Fragen

Welche Alarme können an einen Webhook gesendet werden?

Änderungen bei Verfügbarkeit, Ablauf und Status der Überwachungsliste, die Überwachung von Domain-Änderungen bei DNS, Zertifikaten, Registrierung, Hosting, Technologie und E-Mail-Sicherheit sowie neu registrierte Lookalikes einer von Ihnen überwachten Marke.

Wie prüfe ich, ob eine Anfrage von DomScan stammt?

Berechnen Sie mit dem Geheimnis Ihres Endpunkts einen HMAC-SHA256 aus dem Wert von X-DomScan-Timestamp, einem Punkt und dem unveränderten Body, vergleichen Sie ihn in konstanter Zeit mit jedem Eintrag von X-DomScan-Signature und lehnen Sie Zeitstempel ab, die älter als 5 Minuten sind.

Was kosten Webhook-Alarme?

Jeder mit einer 2xx-Antwort zugestellte Alarm kostet 2 Credits. Das Anlegen von Endpunkten, Testereignisse und die Rotation von Geheimnissen sind kostenlos, und für eine fehlgeschlagene Zustellung reservierte Credits werden erstattet.

Was passiert, wenn mein Endpunkt nicht erreichbar ist?

Jeder Alarm wird bis zu 6 Mal über etwa 6 Stunden wiederholt. Nach 15 aufeinanderfolgenden fehlgeschlagenen Versuchen wird der Endpunkt pausiert und Sie erhalten eine E-Mail. Aktivieren Sie ihn in den Monitor-Einstellungen oder über die API wieder, um die Zustellung fortzusetzen.

Wie rotiere ich ein Signaturgeheimnis sicher?

Rufen Sie den Endpunkt zum Rotieren des Geheimnisses auf oder nutzen Sie die Monitor-Einstellungen. Das neue Geheimnis wird nur einmal angezeigt, und 24 Stunden lang trägt jeder Alarm die Signaturen beider Geheimnisse, sodass Ihr Empfänger während der Umstellung beide akzeptieren kann.

Kann ich denselben Alarm zweimal erhalten?

Eine Wiederholung kann eintreffen, nachdem Ihr Endpunkt den Alarm bereits verarbeitet hat, zum Beispiel nach einer Zeitüberschreitung. Jede Wiederholung enthält die Ereignis-ID im Body und in X-DomScan-Event-Id. Speichern Sie daher verarbeitete IDs und überspringen Sie Duplikate.

Verwandte Tools und Ressourcen

HTTP-Statuscodes

Das sind die HTTP-Statuscodes, die Sie behandeln sollten, damit Sie erfolgreiche Antworten, Authentifizierungsprobleme, Credits, Ratenlimits, fehlende Daten und Upstream-Fehler unterscheiden können.

OK 200

Anfrage erfolgreich

Erstellt 201

Ressource erfolgreich erstellt.

Ungültige Anfrage 400

Ungültige Parameter

Nicht autorisiert 401

API-Schlüssel oder Sitzung fehlt oder ist ungültig.

HTTP 409 409

Das sind die HTTP-Statuscodes, die Sie behandeln sollten, damit Sie erfolgreiche Antworten, Authentifizierungsprobleme, Credits, Ratenlimits, fehlende Daten und Upstream-Fehler unterscheiden können.

Zu viele Anfragen 429

Ratenlimit überschritten

Ersten Webhook-Endpunkt hinzufügen