# What Pingtower is

Source: https://www.pingtower.com/docs/

Point your services at Pingtower. When something breaks, the alert reaches your phone the moment it opens. Ack it, resolve it, or read the log lines behind it, without opening a laptop.

<div class="docs-cards">
<a class="docs-card" href="/docs/getting-started/quickstart/"><b>Quickstart</b><span>Sign up, mint a token, send one log line, watch it become an alert. About five minutes.</span></a>
<a class="docs-card" href="/docs/service/rules/"><b>Write a rule</b><span>Match on shape, level, source or tag. Fire after N in M minutes. Renotify until someone acks.</span></a>
<a class="docs-card" href="/docs/addons/"><b>Run probes with addons</b><span>A small Go agent for external servers: HTTP, TCP, DNS, TLS expiry, ping, host metrics and more.</span></a>
<a class="docs-card" href="/docs/self-hosting/"><b>Run your own box</b><span>Keep alert data on your hardware. pingtower.com holds only the account and relays the page.</span></a>
</div>

## How the pieces fit

Pingtower is two halves. The **service** is the inbound half: it ingests structured log lines, recovers each message's shape, evaluates your rules, and keeps alert state with re-notify escalation until someone acknowledges. The **iOS app** is the outbound half: it is what actually wakes a human at 3 a.m.

<div class="docs-flow"><span class="st">your app</span><span class="ar">→</span><span class="st">POST /v1/ingest</span><span class="ar">→</span><span class="st">template &#43; dedup</span><span class="ar">→</span><span class="st">rules</span><span class="ar">→</span><span class="st open">alert</span><span class="ar">→</span><span class="st">push · webhook · Slack · Telegram</span></div>


Anything that can make an HTTP request can be a source: an application, a cron job, a log shipper, or the [addons agent](/docs/addons/) probing something from the outside.

## What it is not

- **Not an uptime prober.** The service itself runs no HTTP, TCP or ping checks, and nothing in it alerts on silence. Outside-in checks are the [addons agent's](/docs/addons/) job, and its measurements arrive as ordinary events.
- **Not a status page.** Pingtower tells you first. Telling your customers is a different product.
- **Not a ticketing system.** An alert opens, gets acked, gets resolved. That is the whole lifecycle.
- **Not a dashboard you have to remember to check.** If you are looking at Pingtower, it is because it paged you.

## Where it runs

The service is hosted at **api.pingtower.com**. Accounts, tenants, memberships and push live there, and signups are open and free during preview. If you would rather keep alert data on hardware you own, run the daemon yourself and [pair it](/docs/self-hosting/relay/) from the app: your box keeps the sources, logs and alerts, and pingtower.com only relays the page to your phone.

<div class="docs-callout note"><svg viewBox="0 0 16 16" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"><circle cx="8" cy="8" r="6.5"/><path d="M8 7v4M8 5v.5"/></svg><div><span class="t">Hosted first</span>Everything in these docs works on the hosted service without installing anything. Self-hosting and the addons agent are optional layers on top.</div>
</div>


## Where things are

- [Getting started](/docs/getting-started/quickstart/): quickstart, the seven nouns, and the three kinds of credential.
- [The service](/docs/service/): ingest, rules, alerts, integrations, actions, on-call, reports, team, plans.
- [iOS app](/docs/ios/): install, the feed, critical alerts, pairing.
- [Self-hosting](/docs/self-hosting/): what is hosted and what is not, installing the daemon, TLS, the relay.
- [Addons agent](/docs/addons/): install, configure, every addon and sensor.
- [Reference](/docs/reference/): errors, rate limits, and links to the generated API reference.
- [FAQ](/docs/help/faq/) and [troubleshooting](/docs/help/troubleshooting/).

## Every page



### Getting started

- [What Pingtower is](https://www.pingtower.com/docs/index.md): Point your services at Pingtower. When something breaks, the alert reaches your phone the moment it opens. Ack it, resolve it, or read the log lines behind it, without opening a laptop.
- [Quickstart](https://www.pingtower.com/docs/getting-started/quickstart/index.md): From nothing to an alert on your phone in five steps. You need a terminal, and the iOS app if you want the phone to ring.
- [Concepts](https://www.pingtower.com/docs/getting-started/concepts/index.md): Seven nouns. Everything else in the docs is built out of these.
- [Credentials](https://www.pingtower.com/docs/getting-started/credentials/index.md): Three kinds of bearer token, each with a prefix that makes it impossible to hand one where another belongs.

### The service

- [The service](https://www.pingtower.com/docs/service/index.md): 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.
- [Ingest](https://www.pingtower.com/docs/service/ingest/index.md): One endpoint, one JSON object per line, one bearer token per source. Everything Pingtower knows starts here.
- [Rules](https://www.pingtower.com/docs/service/rules/index.md): 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](https://www.pingtower.com/docs/service/alerts/index.md): An alert has three states and two verbs. Everything about paging follows from that.
- [Log tail & templates](https://www.pingtower.com/docs/service/logtail/index.md): The actual lines behind an alert, filtered to the shape that matched. Kept only for sources that ask for it.
- [Projects & sources](https://www.pingtower.com/docs/service/projects/index.md): A project is a namespace inside a tenant. A source is one thing that sends into it, with its own token.
- [Integrations](https://www.pingtower.com/docs/service/integrations/index.md): 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](https://www.pingtower.com/docs/service/actions/index.md): 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](https://www.pingtower.com/docs/service/oncall/index.md): 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](https://www.pingtower.com/docs/service/reports/index.md): A running incident report with a shareable status page. Write it in Markdown from the phone while the incident is still going.
- [Team & account](https://www.pingtower.com/docs/service/team/index.md): Invite teammates, manage members, mint and revoke API keys, and read the audit log of who did what.
- [Plans & quotas](https://www.pingtower.com/docs/service/plans/index.md): Limits are per tenant. Usage against them is on the Account → Plan & usage screen in the app and at GET /v1/tenants/{tid}/plan.

### The iOS app

- [The iOS app](https://www.pingtower.com/docs/ios/index.md): A native pager for your alerts. The feed updates live, one swipe acks, and critical alerts sound through Silent mode.
- [Install & sign in](https://www.pingtower.com/docs/ios/install/index.md): Get the app, sign up with an email and password, then create or join a tenant.
- [The alert feed](https://www.pingtower.com/docs/ios/feed/index.md): One list, updating while you watch it. Ack and resolve by swiping. Everything an alert carries is one tap away.
- [Critical alerts](https://www.pingtower.com/docs/ios/critical/index.md): A 3 a.m. page you sleep through is not a page. An escalation is delivered with Apple's critical-alert entitlement, which sounds at full volume through Silent mode, Do Not Disturb and every Focus.
- [Pairing your own box](https://www.pingtower.com/docs/ios/pairing/index.md): Redeem a join code from a self-hosted daemon and the app opens that tenant directly, while pingtower.com relays the pages.

### Self-hosting

- [Self-hosting](https://www.pingtower.com/docs/self-hosting/index.md): What is hosted, what you can run yourself, and where the line is drawn and why.
- [Install the daemon](https://www.pingtower.com/docs/self-hosting/install/index.md): A single static Go binary on a Linux box, verified before it runs, under systemd, with its data in one directory of SQLite files.
- [Reverse proxy & TLS](https://www.pingtower.com/docs/self-hosting/proxy/index.md): The daemon serves plain HTTP on localhost. One line of Caddy, or a small nginx block, puts a certificate in front of it.
- [Relay & pairing](https://www.pingtower.com/docs/self-hosting/relay/index.md): How a box you run pages a phone it cannot push to. The box calls out; pingtower.com forwards; nothing calls in.

### The addons agent

- [The addons agent](https://www.pingtower.com/docs/addons/index.md): A single Go binary you install on external servers. It runs addons, small tasks that measure something about a target, on a schedule, and reports the measurements to the tower as ordinary events. Your rules do the rest.
- [Install](https://www.pingtower.com/docs/addons/install/index.md): One command on a fresh Linux box, after you have verified what you are about to run.
- [Configure](https://www.pingtower.com/docs/addons/config/index.md): One YAML file. The agent refuses to start on anything it does not understand, which is the point.
- [httpcheck](https://www.pingtower.com/docs/addons/httpcheck/index.md): Fetch a URL and time every stage of it separately, because a slow resolver and a slow server wake up different people.
- [tcpcheck](https://www.pingtower.com/docs/addons/tcpcheck/index.md): Connect to a port and say how long it took, with DNS timed apart from the connect.
- [dnscheck](https://www.pingtower.com/docs/addons/dnscheck/index.md): Resolve a name, optionally against a specific resolver, and check what came back.
- [tlscert](https://www.pingtower.com/docs/addons/tlscert/index.md): Complete a TLS handshake and report how long the leaf certificate has left. Reported on every run, so the threshold lives in a rule, not the agent.
- [icmpping](https://www.pingtower.com/docs/addons/icmpping/index.md): Send a few pings and report round-trip and loss.
- [hostmetrics](https://www.pingtower.com/docs/addons/hostmetrics/index.md): CPU, load, memory, swap and paging on the box the agent runs on. Unprivileged, Linux only, reads a handful of files under /proc.
- [sshcheck](https://www.pingtower.com/docs/addons/sshcheck/index.md): Open an SSH session with a key, optionally run one command, and time every stage. Key-based auth only.
- [portscan](https://www.pingtower.com/docs/addons/portscan/index.md): Scan a host's ports and compare against a baseline. Needs nmap.
- [traceroute](https://www.pingtower.com/docs/addons/traceroute/index.md): Trace the path to a host and notice when it changes. Needs traceroute.
- [logwatch](https://www.pingtower.com/docs/addons/logwatch/index.md): Tail a local file for a pattern. Counts matches, notices rotation, and never sends a line off the box.
- [securityupdates](https://www.pingtower.com/docs/addons/securityupdates/index.md): Count pending package updates on a Debian host, and whether it wants a reboot. Reads only; never installs anything.
- [Sensors](https://www.pingtower.com/docs/addons/sensors/index.md): Checks run on a schedule. Sensors run continuously, subscribed to the kernel, and report the moment something happens on the box the agent runs on.

### Reference

- [Reference](https://www.pingtower.com/docs/reference/index.md): Every endpoint, generated from the server's own route table and gated against drift.
- [API reference](https://www.pingtower.com/docs/reference/api/index.md): Every endpoint on Pingtower's ingest and API-key data planes, generated from the daemon's own route table.
- [Errors](https://www.pingtower.com/docs/reference/errors/index.md): Every non-2xx response is a JSON object with an error string. Some carry more.
- [Rate limits](https://www.pingtower.com/docs/reference/limits/index.md): Per-plan rates on the ingest and data planes, and fixed limits on the routes that take a password.

### Help

- [FAQ](https://www.pingtower.com/docs/help/faq/index.md): Short answers. Each one links to the page with the long one.
- [Troubleshooting](https://www.pingtower.com/docs/help/troubleshooting/index.md): The symptom, what it usually means, and the one command that tells you.

