Monitors

Retrieve a monitor run

Fetches one run for a monitor, including lifecycle status, timing, credits charged, and any detected change.

get/monitors/{monitor_id}/runs/{run_id}

Path parameters

monitor_idstring required
Example:mon_123
run_idstring required
Example:run_123

Response

The requested monitor run

idstring required
monitor_idstring required
status'queued' | 'running' | 'completed' | 'failed' | 'skipped' required

Lifecycle status of a run. skipped runs never executed — see skip_reason (insufficient credits, monitor paused, or superseded by a concurrent run).

run_type'baseline' | 'scheduled' required

The first run after monitor creation is a baseline run.

target_type'page' | 'sitemap' | 'extract' required
change_detection_type'exact' | 'semantic' required
started_atstring date-time nullable
completed_atstring date-time nullable
change_detectedboolean required
change_idstring nullable
baseline_createdboolean required

True when this run established the monitor's initial baseline; baseline runs perform no change detection.

credits_chargedinteger required

Credits charged for this run (0 for skipped/failed runs).

skip_reason'insufficient_credits' | 'monitor_paused' | 'superseded' | 'null' nullable

Why a skipped run never executed; null unless status is skipped.

Example response

{
  "id": "run_123",
  "monitor_id": "mon_123",
  "change_detected": true,
  "change_id": "chg_123",
  "credits_charged": 1,
  "error": {
    "code": "fetch_failed",
    "message": "The target URL could not be fetched."
  },
  "webhook_delivery": {
    "event_id": "evt_123",
    "http_status": 200,
    "error": {
      "code": "fetch_failed",
      "message": "The target URL could not be fetched."
    }
  },
  "webhook_deliveries": [
    {
      "event_id": "evt_123",
      "http_status": 200,
      "error": {
        "code": "fetch_failed",
        "message": "The target URL could not be fetched."
      }
    }
  ]
}

Changes