Integrations
PagerDuty
Connecting PagerDuty raises an incident when your AI-coding spend breaches a budget, so a runaway bill pages someone instead of waiting in an inbox until Monday.
Not generally available yet. The PagerDuty destination sits behind a feature flag while we finish it, so its page will not appear in your dashboard unless your account has been switched on. Ask us before you set the PagerDuty side up, or you will have a key and nowhere to paste it.
Create the integration in PagerDuty
- 1In PagerDuty, open the service you want cost incidents on, or create one, then open its Integrations tab.
- 2Choose Add an integration and pick Events API v2. It has to be v2: v1 expects a different payload and rejects what we send, and a v1 key looks much like a v2 one, so nothing appears wrong until the moment you needed the page. Pressing Test in Lineman is what catches it.
- 3Copy the Integration Key. PagerDuty sometimes calls this the routing key. It is 32 letters and numbers.
Paste the key, not the service URL. Copying the address of the PagerDuty page you are looking at is the most common first-run mistake. Lineman refuses anything starting with http, and anything that is not 32 letters and numbers, so you find out at the form rather than during an incident.
Connect it in Lineman
- 1In the Lineman dashboard, open Integrations, then PagerDuty.
- 2Paste the integration key and press Save. Naming the service is optional and worth doing: months later that label is the only thing telling you which PagerDuty service these incidents land on.
- 3Press Test. It raises a real incident on that service and immediately resolves it, so you can watch one arrive without leaving anything open for someone to clear up. A wrong key, or a v1 key, fails here with PagerDuty's own error returned to the form.
Treat the key like a password. Anyone holding it can raise incidents on your service, so Lineman stores it encrypted and never shows it back. There is no way to reveal it later: to change it, paste a new one. Pause stops paging but keeps the key, so resuming does not mean fetching it again.
How incidents behave
- One incident per alert rule, not per firing. A budget that stays breached re-fires every hour, and each firing updates the same incident instead of opening another. Being paged twelve times overnight for one problem is how an integration gets muted, and a muted integration reports nothing at all.
- Different alert rules get separate incidents. Acknowledging one therefore does not quietly acknowledge the rest.
- Dismissing the alert in Lineman resolves its incident, and that is the only thing that closes it. Spend alerts have no automatic all-clear, because spend does not un-happen, so an incident nobody dismisses stays open.
- The incident summary is the alert rule's name, and the alert's own figures ride along in PagerDuty's custom details, so whoever is paged can see what breached before opening Lineman.
Severity
Incidents are raised as warning by default, deliberately, rather than critical. A budget threshold being crossed is a look-at-today thing, not a production outage, and cost alerts that page at critical are the ones people mute, after which the integration reports nothing at all.
Severity is held per connection and can be critical, error, warning or info, so it can be raised if you would rather be woken.
Why there is no Opsgenie
We have not built Opsgenie. It reaches end of support in April 2027 and is already closed to new sales, so building against it would mean shipping a destination with a known expiry date. If you are moving off Opsgenie, PagerDuty is the supported path here.