Appearance
Service monitors
Use a service monitor when the failure exists outside one device. Dataplicity monitors HTTP endpoints, CORS baselines, DNS records, and heartbeats.
Monitor an HTTP endpoint
Prerequisites are an absolute HTTP or HTTPS URL reachable from Dataplicity and permission to manage monitors.
- Open Service endpoints, choose Endpoint, and add a monitor.
- Enter a concise label and URL.
- Optionally add one header in
Name: Valueform. Treat its value as a secret and use a narrowly scoped credential. - Keep status
200, or add accepted codes such as204. - Optionally require a response-body substring such as
ready. - Save, wait for a result, and inspect HTTP status, response time, checked time, and error.
Endpoint checks are dispatched by a global scheduler and are also subject to the organisation's minimum monitor interval. The effective cadence can therefore be slower than a stored interval. Disabling a monitor stops polling. Hiding it from a status page does not.
Detect CORS drift
A CORS monitor checks a domain and path, captures expected response headers, and compares later responses with the confirmed baseline.
- Choose CORS, enter the domain and an optional path.
- Run the baseline preview.
- Review and confirm the expected headers.
- Save and test against a non-production target.
Changing the domain or path invalidates the old baseline. Reconfirm only after verifying that a changed policy is intentional. CORS checks use warning severity.
Monitor DNS records
DNS monitors expand a base domain and optional prefixes, then evaluate A, AAAA, CNAME, NS, or TXT records.

Choose a comparison mode that reflects the provider:
- Pinned answers requires exact values.
- Rotating pool requires overlap with the expected answer set.
- Managed edge tolerates dynamic provider pools.
Rules can require exact values, overlap, non-empty answers, required or forbidden text, regular-expression matches, or answer-count bounds. DNS caching, TTLs, resolver differences, and staged propagation can produce temporary differences. Preview from more than one resolver before accepting a new baseline.
Monitor scheduled work
A heartbeat has a private ping URL and one of four intervals: 1, 5, 15, or 60 minutes. Call the URL only after successful work:
sh
curl --fail --silent --show-error "$DATAPLICITY_HEARTBEAT_URL"The displayed state progresses through up, degraded, failed, and down as pings become late. Protect the URL and regenerate it if exposed.
Troubleshooting
- No HTTP result: confirm public reachability, TLS validity, and header format.
- Unexpected body failure: matching is a substring check, so verify casing and actual response body.
- CORS drift: compare each captured header before re-baselining.
- DNS drift: choose a mode appropriate to static or dynamic answers.
- Late heartbeat: confirm the job calls the URL only on success and uses the intended interval.