Zum Hauptinhalt springen
Ein Monitor kann Ihnen mitteilen, wenn sich etwas bewegt, damit Sie seinen Bericht nicht abfragen müssen:
  • Änderungsereignisse gehen an Ihre webhookUrl, wenn sich die Antworten auf einen Prompt ändern: Ihre Marke taucht auf oder verschwindet, ein Wettbewerber zieht vorbei, oder eine Website wird zum ersten Mal zitiert.
  • Alarme schicken den Admins Ihres Kontos eine E-Mail, wenn die Nennungsquote der Marke über die letzten sieben Tage unter alertBelowPct fällt.

Änderungsereignisse

Setzen Sie webhookUrl, wenn Sie einen Monitor anlegen oder aktualisieren:
Die URL muss HTTPS auf einem öffentlichen Host sein. Setzen Sie sie mit einem API-Schlüssel: Ereignisse werden mit dem Schlüssel signiert, der sie gesetzt hat, daher liefert eine Anfrage ohne Schlüssel (eine Dashboard-Sitzung) 400 VALIDATION_ERROR. webhookUrl: null schaltet Ereignisse ab und verwirft den Ereigniszustand des Monitors; beim erneuten Einschalten beginnt er wieder bei seiner Historie.

Ereignistypen

Marken-Ereignisse verfolgen jeden Prompt getrennt auf jeder Engine und bei einem Raster-Monitor an jedem Punkt. Der Zustand wird aus den letzten fünf Antworten gelesen, mit samples: 5 liefert also ein Lauf einen vollständigen Zustand.
  • Ein Ereignis wird einmal gesendet, wenn sich der Zustand ändert. Bleibt eine Marke den Antworten fern, kommt ein monitor.mention.stopped und danach nichts mehr, bis sie zurückkehrt.
  • Ein Prompt hat einen Zustand, sobald er fünf Antworten hat. Dieser erste Zustand ist die Ausgangsbasis und sendet nichts.
  • Ein Kategorie-Monitor hat keine eigene Marke und sendet nur monitor.source.first_cited.
Wann Ereignisse beginnen:
  • webhookUrl für einen Monitor einschalten, der schon Antworten hat: Der Zustand jedes Prompts wird aus seinen letzten fünf Antworten der vergangenen 30 Tage rekonstruiert, und jede bereits zitierte Domain gilt als bekannt. Ereignisse beginnen mit der nächsten Antwort.
  • Einen Monitor mit webhookUrl anlegen oder sie einschalten, bevor es Antworten gibt: Der erste Lauf legt die bekannten Domains fest, und monitor.source.first_cited zählt Antworten aus Tasks, die erstellt wurden, nachdem dieser Lauf vollständig eingereicht ist. Marken-Ereignisse beginnen, sobald ein Prompt fünf Antworten hat.

Payload

Jedes Ereignis ist ein POST mit JSON-Body. Zum Beispiel:

Signatur und Wiederholungen

Ereignisse werden wie Task-Webhooks signiert und wiederholt: dieselben drei querying-webhook-*-Header, dasselbe HMAC-SHA256-Verfahren und derselbe Wiederholungsplan. Prüfen Sie sie mit dem Code unter Webhooks. Zwei Dinge unterscheiden sich:
  • querying-webhook-id ist die id des Ereignisses. Deduplizieren Sie darüber.
  • Der HMAC-Schlüssel ist der SHA-256-Digest des API-Schlüssels, der webhookUrl gesetzt hat, nicht der eines Tasks.
Nach dem Rotieren des Schlüssels senden Sie webhookUrl erneut mit dem neuen Schlüssel, und Ereignisse werden damit signiert. Wird der Schlüssel, der webhookUrl gesetzt hat, widerrufen oder läuft er ab, stoppen die Ereignisse: Jedes wird als failed markiert, mit dem Grund in delivery.lastError, und nichts wird unsigniert gesendet.

Ereignisse auflisten und erneut senden

GET /v1/monitors/{id}/events (Referenz) listet Ereignisse, neueste zuerst. Die Antwort enthält webhookUrl, nextCursor (null auf der letzten Seite) und events. Jedes Ereignis hat id, type, createdAt, data (wie in der Payload) und delivery: POST /v1/monitors/{id}/events/{eventId}/redeliver (Referenz) sendet ein Ereignis jetzt erneut an die aktuelle webhookUrl, mit neu beginnenden Wiederholungen, und liefert das Ereignis mit aktualisiertem delivery. Auch zugestellte Ereignisse lassen sich erneut senden. Der Aufruf liefert 409 WEBHOOK_NOT_SET, wenn der Monitor keine webhookUrl hat, und 404 NOT_FOUND für ein unbekanntes Ereignis. Ereignisse werden 30 Tage aufbewahrt. Ein Ereignis, das noch wiederholt wird, bleibt bis zum Ende seiner Wiederholungen erhalten.

Alarme

Setzen Sie alertBelowPct an einem Marken-Monitor, einen ganzzahligen Prozentwert von 1 bis 100, um eine E-Mail zu erhalten, wenn die Nennungsquote der Marke darunter fällt:
So wird über den Alarm entschieden:
  • Fenster: die bewerteten Antworten der letzten 7 Tage, über alle Prompts und Engines des Monitors. Der Bericht nutzt standardmäßig 30 Tage, was sich zu langsam bewegt, um rechtzeitig zu warnen.
  • Zeitpunkt: jedes Mal, wenn ein geplanter Lauf startet. Die Prüfung liest die bereits bewerteten Antworten, spiegelt also die vorherigen Läufe.
  • Mindeststichprobe: Bei weniger als 5 bewerteten Antworten im Fenster wird nie ausgelöst. Ein neuer Monitor oder einer, dessen Engines fehlschlagen, bleibt still.
  • Unterschreitung, nicht Zustand: Der Alarm löst aus, wenn die Quote unter der Schwelle liegt und der Alarm scharf ist, und wird danach entschärft. Er wird wieder scharf, sobald die Quote wieder bei oder über der Schwelle liegt; ein dauerhaft niedriger Monitor schickt also eine E-Mail, nicht eine pro Lauf. Eine Änderung von alertBelowPct macht ihn wieder scharf.
Die E-Mail geht an jeden Admin des Kontos, das den Monitor bezahlt (bei einem Unterkonto an dessen Hauptkonto). Sie nennt die gerundete Quote, die Schwelle, das Fenster und die Zahl der bewerteten Antworten und verlinkt auf den Monitor im Dashboard. Ein Kategorie-Monitor hat keine Markenquote und lehnt alertBelowPct daher mit 400 VALIDATION_ERROR ab. alertBelowPct: null schaltet den Alarm ab.

Alarmhistorie

GET /v1/monitors/{id}/alerts (Referenz) liefert alertBelowPct, armed und deliveries: die 20 neuesten Alarm-E-Mails des Monitors, Tests eingeschlossen. Jede Zustellung hat id, status (pending, sent oder failed), attempts, createdAt, sentAt, lastError und payload (monitorId, name, ratePct, threshold, windowDays, runs). Zustelldatensätze werden 90 Tage aufbewahrt.

Einen Testalarm senden

POST /v1/monitors/{id}/alerts/test (Referenz) reiht eine Test-E-Mail über denselben Zustellweg wie ein echter Alarm ein, mit „(test)“ nach dem Monitornamen, und liefert data.queued: true. Prüfen Sie das Ergebnis in der Alarmhistorie. Sie können drei Test-E-Mails pro Monitor alle fünf Minuten senden; darüber hinaus folgt 429 RATE_LIMITED. Ein Kategorie-Monitor liefert 400 VALIDATION_ERROR.

Nächste Schritte

Webhooks

Signatur, Wiederholungen und sichere Handler für jeden Webhook.

Quellen und Antworten

Die Antwort hinter einem Ereignis öffnen.