Monitor webhook payloads

Receive findings, summaries and attention notices. A notification is bounded; use the saved result for complete evidence and run history.

Choose destination and cadence

Register a JSON webhook, then choose it on the monitor. Immediate destinations apply minimum severity; daily or weekly destinations receive summaries. Account-wide digests and older subscription-based delivery also exist. Explicit monitor destinations and account-wide event subscriptions are different selection rules.

Use monitors/test-delivery or the dashboard sample alert. Sample events are marked and must not count as real findings. All JSON events use the shared signature and durable-acknowledgment contract.

monitor.findings: bounded result previews

Field under dataMeaning
monitor_id / run_idOwned monitor and run identifiers; run_id is a string.
name / title / purpose / subjectDisplay context. Subject query/name is not verified identity.
new_findingsCount for this notification group; the embedded preview can be shorter.
accounts / people / by_sourcePlatform-scoped account counts, not deduplicated people across platforms.
findingsUp to five previews: id, key, source, label, url, title, text, author, posted_at, relationship, matched, why and severity when available. Text is truncated.
url / summarySaved evidence link and readable delivery body.
report / textOptional report representation; not produced by every monitor.
event_type / resultScheduled-result variants can use event_type:monitor.result and include result. Inspect the variant before assuming finding rows.

Relevance-filtered delivery can send one confirmed finding at a time. The same finding can appear in a summary. Deduplicate transports by envelope id and correlate finding IDs separately. Previews are not a census.

JSON · illustrative abbreviated finding
{
  "id": "whd_example_finding",
  "type": "monitor.findings",
  "created_at": "2026-09-22T10:00:00.000Z",
  "data": {
    "monitor_id": "mon_example",
    "run_id": "42",
    "new_findings": 1,
    "findings": [
      {
        "id": "finding_example",
        "source": "reddit",
        "title": "Example discussion",
        "text": "Abbreviated source passage.",
        "url": "https://www.reddit.com/r/example/comments/example",
        "severity": "info"
      }
    ],
    "url": "https://www.monocrawl.com/dashboard/monitors/mon_example",
    "summary": "One matching discussion."
  }
}

monitor.digest: two summary shapes

VariantFields under data
Per-monitor summarymonitor_id, name, title, period, headline, counts, totals, lines, findings, sections, url, text and destination.
Account-wide digestdigest_id, period, totals, headline, sections and report_id. Sections contain monitor_id, name, findings count, severity and bounded threads previews (story_id, title, severity, count).
Shared delivery fieldsummary contains the readable delivery body.

Per-monitor summaries are transported as monitor.digest. Branch on supplied fields, not one assumed payload shape. Account and per-monitor summaries can overlap.

JSON · illustrative abbreviated account digest
{
  "id": "whd_example_digest",
  "type": "monitor.digest",
  "created_at": "2026-09-22T08:00:00.000Z",
  "data": {
    "digest_id": "digest_example",
    "headline": "Two monitors have updates.",
    "sections": [
      {
        "monitor_id": "mon_example",
        "name": "Example monitor",
        "findings": 3,
        "severity": "info",
        "threads": []
      }
    ],
    "report_id": null,
    "summary": "Two monitors have updates."
  }
}

The example omits period and totals for brevity. Preserve the actual window and counts; a summary is not a second collection of new source observations.

monitor.attention: action needed

CauseFields under data
Repeated failed checksmonitor_id, run_id, consecutive_failures. Inspect current status before resuming.
Ambiguous subjectmonitor_id, run_id, candidates. Candidates include id, label and count. Review the choice in the monitor UI.
Delivery bodysummary explains the issue. Additional cause-specific fields may appear.
JSON · illustrative attention notice
{
  "id": "whd_example_attention",
  "type": "monitor.attention",
  "created_at": "2026-09-22T10:00:00.000Z",
  "data": {
    "monitor_id": "mon_example",
    "run_id": "43",
    "consecutive_failures": 3,
    "summary": "Monitor paused after repeated failed checks."
  }
}

The example failure count is illustrative, not a global pause threshold. This notice does not establish a newly matched finding. Inspect health and run history.

Recover delivery separately from collection

Successful collection can have failed notification. Review the destination receipt and fix delivery before recreating a monitor or repeating paid collection. A successful check can cost credits with no matches. A webhook timeout does not prove the run or saved findings disappeared.

First call in under a minute

1,000 monthly free credits and a ready-made key the moment you sign up. No card.