Everything Sentinel does

One platform from the first failed request to the quarterly SLA report

Sentinel brings checks, validation, uptime, incidents, status pages, backups and an API under one roof — so you’re not stitching five tools together to answer one question: is it working?

Checks for every layer

HTTP, database and custom checks

Watch your endpoints, the databases behind them, and the flows that matter — with full request-phase timings and reach into private infrastructure.

  • HTTP — method, headers, body and redirect handling, with DNS / TCP / TLS / TTFB phase timings and TLS cert-expiry tracking.
  • Postgres & Redis — run a query or command, directly or through an SSH tunnel to private hosts.
  • Custom — an HTTP request or a shell command over SSH, judged on exit code and stdout.
  • Tune each monitor’s interval, timeout and the latency threshold that marks it degraded rather than down.
GET https://api.acme.com/health
200 OK
DNS9ms
TCP21ms
TLS34ms
TTFB82ms
TLS cert expires in61 days
The standout difference

Three ways to validate a result

A 200 doesn’t mean it worked. Decide what “healthy” means declaratively, in sandboxed code, or with a model that reads the response like a human would.

  • Static assertions — status code, response time, headers, JSON paths, row count, exit code and stdout, combined with AND/OR.
  • Sandboxed JavaScript — your validate(result) runs in isolated-vm with no IO and capped memory and time.
  • LLM validation — describe a healthy result in plain English; Claude or OpenAI returns a structured verdict with reasoning.
  • Page only when it matters — LLM checks can fail-open so a provider outage never wakes you.
Static
statusCode eq 200 · responseTimeMs lt 500
pass
JavaScript
validate(result) in isolated-vm
pass
LLM
“no error banner, ≥3 products listed”
pass
Prove it

Availability, SLAs & error budgets

Roll raw checks up into the numbers leadership and customers ask for — and get told the moment an objective is at risk.

  • Uptime across 24h, 7d, 30d and 90d windows, computed from rolled-up results.
  • Define SLA objectives per monitor and track the remaining error budget in real time.
  • Automatic breach detection flags an objective before it’s blown, not after.
  • p50 / p95 / p99 latency percentiles so averages never hide a slow tail.
Checkout API
On track
24h
100%
7d
99.99%
30d
99.98%
90d
99.96%
Error budget · target 99.95%38% remaining
Get told, fast

Incidents & alerting that fit your workflow

Failures open incidents automatically and notify the right channel — then resolve themselves when the service recovers, so your timeline stays honest.

  • Incidents open on consecutive failures and auto-resolve on recovery.
  • Notify over Email, Webhook and Slack.
  • Mute windows and per-monitor maintenance keep planned work from paging anyone.
  • A full incident timeline — detected, notified, acknowledged, resolved — for every event.
Incident · api.acme.com unreachable
  1. Detected
    3 consecutive failures on api.acme.com
  2. Notified
    Slack #on-call · Email · Webhook
  3. Acknowledged
    Picked up by the on-call engineer
  4. Resolved
    Recovered after 4m 12s — auto-closed
Share your reliability

Status pages, embeds & badges

Turn live monitoring into public trust. A hosted status page, an embeddable widget, and README badges — all driven by the same data you act on internally.

  • A hosted, theme-aware status page at your own slug.
  • An embeddable iframe widget with origin allow-listing for safe inlining.
  • SVG badges for 30-day uptime, ready to drop in any README or docs site.
  • Every other route ships with strict frame protection by default.
status.acme.com
Operational
API99.99%
Dashboard99.98%
Webhooks100%
![uptime](https://sentinel.dev/embed/badge/…?metric=uptime)
Sleep better

PG & Redis dump and restore, over SSH to S3

Scheduled, verifiable backups for the databases you monitor — streamed straight to object storage, with restores you can trust.

  • Postgres via pg_dump/psql and Redis via logical DUMP/RESTORE — locally or over SSH.
  • Dumps stream through gzip to S3 with sha256 checksums and retention policies.
  • Live progress so you always know a backup actually finished.
  • Guarded restores: explicit destination required, refuses to overwrite the source, dry-run supported.
Nightly backup · primary-postgres
pg_dump over SSHdone
gzip → streamdone
upload → s3://backups/done
sha256 + retentiondone
Restore is guarded — dry-run supported, refuses to overwrite the source.
Your data, your way

A read-only REST API with scoped keys

Everything Sentinel knows is available over a clean JSON API — pull it into your own dashboards, data warehouse, or internal tooling.

  • Endpoints for monitors, results, availability, incidents, SLAs and status pages under /api/v1.
  • Issue scoped API keys; every request is organization-isolated and rate-limited per key.
  • CORS-enabled so browser dashboards can read directly.
  • Read-only by design — your monitoring data can’t be mutated through the API.
curl
$ curl -H "Authorization: Bearer skl_live_…" \
https://app.sentinel.dev/api/v1/monitors
 
{
"data": [
{ "name": "api.acme.com", "status": "up", "uptime30d": 99.98 }
]
}
And the details that matter

Thoughtful where it counts

The small things that make a monitoring tool something you actually keep using.

Per-monitor intervals
From tight loops on critical paths to relaxed cadences elsewhere.
Degraded thresholds
Mark a slow-but-up service degraded before it tips into an outage.
SSH tunnels
Reach private databases and hosts without exposing them publicly.
Encrypted credentials
Passwords, keys and tokens encrypted at rest, per organization.
Rollups & retention
Hourly and daily rollups keep dashboards fast and history lean.
Multi-tenant
Strict organization isolation across every monitor and API call.

See how it all comes together in the dashboard.

Compare plans

Ready to see it on your stack?

Spin up your first monitor free and watch Sentinel work against your real endpoints.