Docs
The service
The service The service The inbound half. It ingests structured log lines, recovers each message's shape, evaluates declarative rules, and keeps alert state with re-notify escalation until a human acknowledges.
The service is one Go binary that keeps its data in PostgreSQL or SQLite. It runs hosted at api.pingtower.com and, unchanged, on your own box . Every page in this section applies to both.
ingest → template + dedup → rules → alert → renotify · escalate → deliver
A line arrives with a level and a message. Its shape is recovered so repeats collapse into one alert with a count. Every rule in the project is evaluated against it. A rule that fires opens an alert, and the alert re-pages on the rule’s cadence and climbs its escalation ladder until someone acks. Delivery goes to the phone apps by push and to anything else through integrations.
Around that core: on pingtower.com, hosted checks and browser checks run from Pingtower’s own servers and feed the same rules. Alerts gather into incidents , which a status page tells your customers about. Maintenance windows keep planned work quiet, uptime reports measure the result, and stored lines are open to log search and secret detection .
In this section Ingest One endpoint, one JSON object per line or up to 1,000 in a batch, one bearer token per source. Everything Pingtower knows starts here.
Hosted checks On pingtower.com, Pingtower runs your checks from its own servers in multiple regions of the world. A check names an addon, its parameters, a cadence and where it runs from; its results are ordinary events that your rules alert on.
Browser checks A Playwright test that walks through your site in a real Chromium, run on a schedule from Pingtower's browser runners, each run in its own gVisor sandbox. Each step is reported up or down with its time, and a failed run keeps its screenshot and video, plus its trace when the check has no environment variables.
Rules A rule says what to look for, how much of it is a problem, and what to do about it. Rules are per project, declarative, and editable from the phone.
Alerts & escalation An alert has three states and two verbs. Everything about paging follows from that.
Incidents An incident is the team's record of one outage. It collects the alerts the outage raised and the notes people wrote while working it, and it closes with what caused it and what fixed it. It stays internal until someone publishes an update.
Status pages A page that tells your customers what is down, fed by the alerts that page you. An outage reaches it once someone acknowledges it, backdated to when it began; a blip that clears first never does.
Maintenance windows A maintenance window is a mute that comes back on a schedule. Alerts are still recorded, nobody is paged, and the time is left out of uptime.
Uptime reports Uptime, outages and downtime for every check and status-page component over a period you pick, and how fast your team acknowledges and resolves alerts.
Log tail & templates The actual lines behind an alert, filtered to the shape that matched, and a live tail you can follow. New sources keep their lines unless told not to.
Log search Search every kept line across your projects with one query language. Counts by field, a chart over time, the lines around a hit, and saved searches.
Secret detection Every line is checked for things shaped like credentials. A match opens a warning, never rewrites the line on a guess, and the finding never holds the secret. Block an exact value and it is redacted everywhere Pingtower kept it.
Projects & sources A project is a namespace inside a tenant. A source is one thing that sends into it, with its own token.
Integrations Tell something other than your phone. Every integration keeps a per-event delivery log, so when Slack goes quiet you can see whether it was you or them.
Actions A runbook action is an HTTP call the service makes for you when an alert opens. Restart the worker, open the ticket, flip the feature flag, before anyone wakes up.
On-call schedules A schedule answers "who is on call right now". Rules name schedules in their escalation ladders, so the rule never changes when the rota does.
Reports The project report routes that older clients and scripts use. A report is now an incident with a home project, so these routes read and write team incidents.
Team & account Invite teammates, manage members, mint and revoke API keys, and read the audit log of who did what.
Plans & quotas Limits are per tenant. Usage against them is on the Account → Plan & usage screen in the app and at GET /v1/tenants/{tid}/plan.
AI assistants Connect Claude, ChatGPT or another MCP client to a hosted team, ask what is firing, whether it has fired before, and who is on call, and, if you allow it, let it acknowledge alerts, mute rules and edit checks.