This takes about five minutes, once. You build one automation in the Shortcuts app, and Routine Run takes it from there: it picks the routine, ignores repeats of the same alert, and writes down why it did what it did.
What you need
- An iPhone on iOS 27. Routine Run itself runs on iOS 26.1, but Shortcuts can only react to another app's notification from iOS 27 on. On iOS 26 everything below works except the automatic start — see the last section.
- Your paging app installed, signed in, and allowed to send notifications.
- An Apple Watch is optional. If you have one, the run shows up there too.
Set up Routine Run
1. Say you are on call
The first time you open Routine Run it asks what brought you here. Pick Being on call. That adds When something pages you to your routines and turns on event handling. Nothing else needs changing: any page that reaches Routine Run starts that routine, at any hour.
Already past that screen? Go to Settings › Events from elsewhere and turn on Handling events for other things. Then tap the plus in the middle of the tab bar, Starter routines, and add When something pages you from the Being on call shelf.
The routine's five steps are: Read what actually fired, Say whether it is real, Acknowledge it, Write down what you think is happening, Fix it or hand it on.
2. Optional: make the first step ring
Notifications stay quiet under a Focus and with the silent switch on. If your phone lies face down at night, open the first step, Read what actually fired, and under Timing set When it is reached to Wake me. The step then rings as an alarm the moment the run starts, through Focus and the silent switch.
Build the automation in Shortcuts
3. Create an automation for your paging app
Open the Shortcuts app and make a New Shortcut. At the top of it, add the trigger When I receive a notification from and pick your paging app, so the card reads "When I receive a notification from PagerDuty".
Under the trigger there are two switches: Automation on, Notify off. With Notify on, every page waits for you to tap a banner first, which defeats the point.
Leave Add Filter alone. Routine Run already decides what to do with each alert.
Do not add your paging app to the Routine Run Bridge's trigger. Keep this a separate shortcut.
4. Add Handle Event and fill it in
Add an action, search for Handle Event, and pick the one from Routine Run. It reads Handle ⟨Title⟩ from ⟨Source App⟩ — the first slot is the alert's own title, the second is the app it came from. They are easy to fill the wrong way round, and doing so files every page under a source named after its headline.
Tap each blue slot and take these from the Notification variable the trigger hands you:
- First slot, after "Handle": Notification › Title.
- Second slot, after "from": Notification › App. Not "Current App", which is a Shortcuts variable meaning whatever is on screen.
- Tap the arrow to show the rest. Message: Notification › Body.
Both slots should end up with the bell icon on them.
Turn Show When Run off. The shortcut runs with the phone in a pocket and nobody looking, so there is nothing to show and it only stands between the page and the Lock Screen card.
Leave Event ID, Schema, Fields, Routine and Payload empty. A page nothing else is wired to goes to When something pages you, as long as that routine is in your routines.
PagerDuty sends no title at all. Its whole alert arrives in the body,
as ALRT #1 on Default Service: disk full on db-2, so Title comes over
empty. Routine Run takes the message's first line as the title when that happens, which
is where the run's name and the journal row come from. Fill both fields anyway: other
paging apps do use the title, and the one that does not costs nothing.
Test it
5. Send a test event
In Routine Run, go to Settings › Events from elsewhere and tap Send a test event. It goes through the same door as Handle Event, so the answer is what a real page would get. "Matched When something pages you." means the run started, and the line after it says the page went there because nothing else was wired.
That checks Routine Run's half. To check the whole chain, automation included, send a test push from your paging app's own settings.
6. Check what you see
Lock the phone and look:
- Lock Screen and Dynamic Island: a Live Activity for the run, on its first step, with its buttons. The first step counts down two minutes. It is there as the page lands — no wait worth measuring.
- Apple Watch: the same run.
- In the app: on the Routines tab, tap •••, then History, then Decisions. Every event is listed with what was decided and why.
The run is named after the incident: its number when the alert has one, such as
#4821, and its title when it does not.
What happens when pages arrive
- Any hour. Nothing is held at night. Quiet hours are off unless you turn them on under Settings › Events from elsewhere › When events arrive.
- Two pages, two runs. A second incident gets its own run. The one you are in stays where it is.
- Repeats are ignored for 5 minutes. A repeat is the same app, title and message — or the same incident number, where a source says where to find one. A new incident with the same title but a different message is a new run.
- At most 6 starts an hour. Past that, pages are written down in Decisions and start nothing, so a storm does not bury you in runs. The line says when there is room again. Raise the budget under When events arrive, or set it to 0 for no limit.
If nothing happened
Open History › Decisions first. The reason is written there in plain words:
- "No routine is wired to PagerDuty." When something pages you is not in your routines, or it is archived. Add it again (step 1), or set up a source (below).
- "Same alert from PagerDuty was handled in the last 5 minutes." Deduplication. Expected for repeats.
- "Interruption budget spent: ..." More starts this hour than the budget allows.
- "Quiet hours. Held until 07:00." You turned quiet hours on. Turn them off under When events arrive.
- "Nothing runs during this Focus." or "... is not allowed to interrupt during this Focus." A Focus rule is holding it back. Look under Data › Set up › Focus rules.
- Nothing in Decisions at all. The automation did not run. Check that it is switched on, that Run Immediately is on, and that the paging app's notifications are allowed.
Keep Ask before running in Settings off. An automation runs with nobody at the phone, so there is nobody to ask.
Several paging apps, or a routine per app
One automation per paging app, all with the same Handle Event action. To send one app's
pages to a different routine, go to the Data tab, Set
up, Sources, and tap New. Give it a name, set
Matches source containing to the app's name (for example
opsgenie), and pick the Routine. Sources are checked from
the top down and the first match wins. Anything no source matches still goes to When
something pages you.
A source is also where you say where the incident number is. Under Telling two
alerts apart, set Event ID is to an expression that finds it:
#(\d+) for PagerDuty, ([A-Z]+-\d+) for a tool that writes
INC-1234. Repeats are then matched on that number rather than on the
wording, and the run is named after it.
A source can also run its own routine when an event from that app cannot be handled, under When this source cannot be handled.
On iOS 26
Shortcuts has no notification trigger there, so nothing starts on a page by itself. Everything else works: Handle Event, the on-call routine, the rules, the journal, the Lock Screen card and the watch. The app says so on the phone itself, under Settings › Events from elsewhere and on the Sources screen.
What you can do instead:
- Send a test event works on iOS 26, so the Routine Run half can be checked there.
- Start When something pages you by hand when a page wakes you. The run is the same one an automation would have started.
- Use a trigger iOS 26 does have. If your paging tool can send an email or a message, an automation on that can call Handle Event.
- Anything else that can call a shortcut — a webhook through another app, a Mac, a colleague's script — reaches the same door.
