PrimaryCheck

Monitoring

A monitor re-runs one claim on a cadence and emits monitor.changed when the record differs from the last snapshot: status, expiration, a new disciplinary action, an exclusion hit, or a verdict change.

curl -X POST https://api.primarycheck.com/v1/monitors \
  -H "Authorization: Bearer pc_live_…" \
  -H "Content-Type: application/json" \
  -d '{
    "person": {
      "firstName": "Amy",
      "lastName": "Kowalski",
      "dob": "1976-02-14"
    },
    "claim": {
      "type": "license",
      "state": "PA",
      "profession": "rn",
      "number": "RN353077L"
    },
    "cadence": "weekly",
    "consent": {
      "consentId": "cons_8f1…"
    }
  }'
MethodPathPurpose
POST/v1/monitorsCreate; first check runs immediately.
GET/v1/monitors/{id}Current snapshot, lastCheckedAt, nextCheckAt.
GET/v1/monitorsList; ?status=active.
GET/v1/monitors/{id}/eventsChange events with the diff.
DELETE/v1/monitors/{id}Stop. Billing stops at period end.

Monitoring cadence

daily, weekly (default for boards) or monthly. Exclusion lists are re-screened every time the dataset refreshes. Nurse licenses also receive Nursys e-Notify pushes where the state participates.

monitor.changed payload

{ "id": "evt_…", "type": "monitor.changed",
  "data": { "object": { "id": "mon_…", "claim": {...}, "person": {...},
            "diff": { "status": { "from": "Active - Multistate", "to": "Suspension (Single State)" },
                      "actions": { "from": 0, "to": 1 } },
            "snapshot": {...}, "previous": {...} } } }

Monitors require consent like any order; use a hosted consent that covers ongoing checks during employment. See monitoring.