POST Pause / Resume / End Date / Run Now
Pause or resume a monitor, change its end date, or trigger an immediate check
Last updated Jul 22, 2026
These action endpoints control a monitor's schedule without editing its full configuration.
https://api.anakin.io/v1/monitors/{id}/pausePause the schedule. The monitor stops checking until resumed. Returns the updated Monitor object with isActive: false.
https://api.anakin.io/v1/monitors/{id}/resumeResume a paused or expired monitor. Returns the updated Monitor object with isActive: true and expired: false.
Optionally start a fresh end date by sending a body — { "expiresAt": "2026-08-06" } runs it until that date; omit the body (or send null) to resume with no end date. A future ISO 8601 timestamp or YYYY-MM-DD is accepted.
Returns 402 monitor_limit_reached if resuming would exceed your plan's active-monitor cap.
https://api.anakin.io/v1/monitors/{id}/expiryChange only the end date of a running monitor — extend it or remove it — without pausing/resuming. Body { "expiresAt": "2026-09-05" } sets a new future date; { "expiresAt": null } (or an empty value) removes the end date so it runs indefinitely. Returns the updated Monitor object.
After an end date passes, a background sweep auto-pauses the monitor and sets expired: true (a distinct state from a manual pause) — resume it to start a new window.
https://api.anakin.io/v1/monitors/{id}/runQueue an immediate check now, independent of the schedule (the regular cadence is unaffected). A successful run also clears a stale sessionExpired flag.
Response
200 OK{ "success": true, "jobId": "job_abc123xyz" }| Field | Type | Description |
|---|---|---|
jobId | string | The scrape job enqueued for this check (url/site monitors). |
For wire monitors the check runs against the Wire engine instead of the scrape queue, so the response carries no jobId:
{ "success": true, "message": "Wire check started" }Errors
| Status | error | When |
|---|---|---|
409 | session_expired | The monitor's saved browser session is no longer valid. Re-authenticate and re-select the session, then run again. |
404 | not_found | The monitor doesn't exist or isn't yours. |
503 | wire_unavailable | Wire monitors only — the Wire engine couldn't be reached; try again shortly. |
Code Examples
curl -X POST https://api.anakin.io/v1/monitors/b1e7c2a4-.../pause -H "X-API-Key: your_api_key"
curl -X POST https://api.anakin.io/v1/monitors/b1e7c2a4-.../resume -H "X-API-Key: your_api_key"
curl -X POST https://api.anakin.io/v1/monitors/b1e7c2a4-.../run -H "X-API-Key: your_api_key"import requests
headers = {"X-API-Key": "your_api_key"}
base = "https://api.anakin.io/v1/monitors/b1e7c2a4-..."
requests.post(f"{base}/pause", headers=headers)
requests.post(f"{base}/resume", headers=headers)
run = requests.post(f"{base}/run", headers=headers).json()
print("Check queued:", run["jobId"])const headers = { "X-API-Key": "your_api_key" };
const base = "https://api.anakin.io/v1/monitors/b1e7c2a4-...";
await fetch(`${base}/pause`, { method: "POST", headers });
await fetch(`${base}/resume`, { method: "POST", headers });
const run = await (await fetch(`${base}/run`, { method: "POST", headers })).json();
console.log("Check queued:", run.jobId);