Run a monitor on demand
/api/v1/monitors/{monitor_uuid}/run
operationId: monitor.run
Base: https://portal.watcheye.com.au/api/v1/monitors/{monitor_uuid}/run
Queues an immediate run of the monitor and returns 202 Accepted once the run has been
scheduled. The actual screening happens in the background - poll
GET /monitors/{monitor_uuid} and wait for process_status to transition out of
pending / processing before reading the results.
Run types
The run_type field controls which entities the monitor processes:
new- process only entities created since the last run (the typical scheduled-run behaviour). On a never-run monitor this processes every active entity.all- process every active entity in the program, regardless of when it was created or whether it has been processed before. Use this to re-screen everything from scratch (for example, after a config change).
Both modes only ever bill for entities that are eligible to be screened by the underlying operation (e.g. a UK ASIC check skips non-AU businesses).
Pre-flight checks
The endpoint runs several pre-flight checks before queueing the job. Each rejection is surfaced with a distinct status code so you can branch appropriately:
404- the monitor was not found409 Conflict- the monitor is not currently runnable. The most common cause is that the monitor is already mid-run (process_statusofpending,processingorpaused); other causes include the monitor being paused or the parent account being inactive. The body'smessagedescribes the reason.402 Payment Required- the calling account has insufficient credit to cover the projected billable count. The response body includes abillingobject with the cost breakdown so you can show the user exactly what would have been charged versus what they have available.
Idempotency
This endpoint accepts the Idempotency-Key header so that retries on network failure
are safe. See the Idempotency section of
the API guide for the full contract.
Path parameters
| Field | Description |
|---|---|
monitor_uuidrequired |
string (uuid) The monitor UUID |
Header parameters
| Field | Description |
|---|---|
Idempotency-Key |
string [max 255 characters] Optional client-generated key (typically a UUID) that lets you safely retry a write
request without risk of duplicate work or duplicate billing. A retry with the same key
and body returns the original response verbatim, with the Honoured on |
Request body
Content type application/json.
The run parameters
| Field | Description |
|---|---|
run_typerequired |
string Which entities to process. See the description above for the difference
between |
Responses
Run accepted - the monitor has been queued for processing. The response body shows
the monitor with process_status: pending. Poll the show endpoint to observe the
status transition out of pending/processing.
application/json
| Field | Description |
|---|---|
data |
object A monitor is a scheduled (or manual) screening job that runs a single screening operation (PEP/sanction, ASIC, address verification, etc.) against the entities in its parent program. The operation type is fixed at creation; only configuration, name, status and schedule can be changed after that. |
data. |
string (uuid) The monitor's UUID |
data. |
string A short obfuscated public identifier for the monitor (e.g. "M-12-34-56") |
data. |
string The display name of the monitor |
data. |
string The screening operation this monitor runs. Cannot be changed after creation - create a new monitor instead. The list of allowed values depends on the products enabled on the calling account. |
data. |
string Human-readable name for |
data. |
string Lifecycle status:
|
data. |
string or null In-flight run state, or
Callers polling after |
data. |
string or null Optional human-readable detail accompanying |
data. |
string How often the monitor runs unattended. |
data. |
string or null Human-readable description of the schedule (e.g. "Every Day (Mon-Sun)") |
data. |
object (dynamic) Per-operation configuration. The shape depends on |
data. |
string (date-time) or null ISO 8601 timestamp of the most recent run, or |
data. |
boolean
|
data. |
string (uuid) UUID of the program this monitor belongs to |
data. |
string (date-time) ISO 8601 timestamp at which the monitor was created |
data. |
string (date-time) ISO 8601 timestamp at which the monitor was last updated |
api_reference |
string (uuid) |
Conflict - the monitor cannot be run in its current state. The most common cause is that the monitor is already mid-run; other causes include the monitor being paused or the parent account being inactive.
application/json
| Field | Description |
|---|---|
message |
string |
Idempotency-Key was reused with a different request body
application/json
| Field | Description |
|---|---|
message |
string |