Skip to main content
Every monitor check produces a result record containing timing data, assertion outcomes, region information, and protocol-specific details.

Result fields

FieldTypeDescription
idUUIDUnique check result identifier
timestampdatetimeWhen the check ran
regionstringProbe region that executed the check
responseTimeMsintegerTotal response time in milliseconds
passedbooleanWhether all fail-severity assertions passed
failureReasonstringHuman-readable failure description (null if passed)
severityHintstringdown, degraded, or null

Assertion results

Each check evaluates all configured assertions. The result includes per-assertion outcomes:
FieldTypeDescription
typestringAssertion type (e.g., status_code, response_time)
passedbooleanWhether this assertion passed
severitystringfail or warn
expectedstringWhat was expected
actualstringWhat was observed
messagestringHuman-readable result description
A check is marked as failed if any assertion with fail severity fails. Assertions with warn severity don’t cause the check to fail but do record a degraded severity hint.

Protocol-specific details

Check results include protocol-specific data depending on the monitor type.

HTTP details

FieldDescription
statusCodeHTTP response status code
responseHeadersKey-value map of response headers
responseBodySnapshotTruncated response body
responseSizeBytesResponse body size in bytes
redirectCountNumber of redirects followed
redirectTargetFinal URL after redirects
tlsInfoTLS certificate and connection details

TLS information

When verifyTls is enabled, HTTP check results include:
FieldDescription
subjectCnCertificate common name
subjectSanSubject Alternative Names
issuerCnIssuer common name
issuerOrgIssuer organization
notBeforeCertificate validity start
notAfterCertificate expiry date
tlsVersionTLS protocol version (e.g., TLSv1.3)
cipherSuiteNegotiated cipher suite
chainValidWhether the certificate chain is valid

Viewing results

Dashboard

The monitor detail page shows check results in a timeline view with pass/fail status, response times, and assertion breakdowns.

CLI

devhelm monitors get <monitor-id>

API

curl https://api.devhelm.io/api/v1/monitors/<id>/check-results?limit=10 \
  -H "Authorization: Bearer $DEVHELM_API_TOKEN"

Retention

Check results are retained based on your plan:
PlanResult retention
Free7 days
Starter30 days
Pro90 days
Business365 days
Aggregated metrics (uptime percentage, average response time) are retained longer than individual check results.

Next steps

Monitoring overview

How monitors and check flow work.

Incident policies

How check results trigger incidents.