External rotations
An external rotation is a Round Robin rotation whose schedule is owned by an outside on-call provider — PagerDuty or OpsGenie. Round Robin periodically reads the provider schedule and keeps the rotation in sync: the member list mirrors the schedule’s participants, and whoever is on shift in the provider becomes the on-duty user in Slack. You keep all the Slack-side features — mentions, channel topics, shift notifications — without managing the same shifts in two places.
Connect a rotation to an external schedule
Section titled “Connect a rotation to an external schedule”Before you start, connect your provider in the dashboard under Settings > Integrations — see Integrate PagerDuty or Integrate OpsGenie. Any existing rotation can be bound to an external schedule; there is no separate “external rotation” type to create.
- In the dashboard, open the rotation and go to its Edit Schedule page.
- In the schedule type picker, an External section shows a PagerDuty or OpsGenie card — only for providers you have connected.
- Pick the provider, then search for and select the schedule you want to bind. A details panel shows the schedule before you commit.
- Save. The rotation switches to external mode, and the first sync fills in members and the on-duty user.
Switching to external resets the rotation’s options and replaces any existing schedule with the external binding.
Viewing an external rotation
Section titled “Viewing an external rotation”On the rotation’s page in the dashboard:
- The Users tab shows a read-only roster of everyone on the linked provider schedule, with an “N of M linked to Slack” badge, each member’s Slack link status, and who is on duty — including an unmapped on-duty person matched by email.
- The schedule card shows a read-only view of the external schedule, with a timeline of upcoming shifts, instead of the internal schedule details.
How the sync works
Section titled “How the sync works”On every sync, Round Robin:
- Reads the linked schedule from PagerDuty or OpsGenie.
- Matches each schedule participant to a Slack user by email address.
- Overwrites the rotation’s member list with the matched users, and stores the schedule’s time zone.
- Sets whoever is currently on shift as on duty, until the end of their shift. If nobody is on shift, the duty is cleared.
If the person currently on shift has no Slack account with a matching email, Round Robin tracks them as an unmapped external duty: the shift is still visible on the dashboard, but no Slack user is assigned.
External rotations still behave like any other rotation for everything Slack-facing: shift start and end notifications, channel topic updates, and on-duty mentions and templating work as usual.
What you cannot change in Round Robin
Section titled “What you cannot change in Round Robin”Because the external schedule owns the rotation, some features are disabled:
| Feature | Behavior on an external rotation |
|---|---|
| Members and user groups | Not editable — the on-call pool is synced from the provider and any change would be overwritten |
| Manual rotation / set duty | Blocked — duty is driven by the external schedule |
| Internal schedules | Blocked — you cannot add a Round Robin schedule on top |
| Business hours | Not available |
| Incoming webhooks | Not available |
To change who is on call, edit the schedule in PagerDuty or OpsGenie; Round Robin picks it up on the next sync.
Disconnect an external schedule
Section titled “Disconnect an external schedule”- Open the rotation’s Edit Schedule page. External rotations show an External Schedule alert explaining that the schedule cannot be edited here.
- Click Disconnect external schedule and confirm.
Disconnecting removes the binding, stops the sync, and reverts the rotation to manual mode. The current on-call pool (as last synced) is kept as the starting member list, so you can keep rotating the same people by hand or add a Round Robin schedule — see Create or edit a schedule. You can re-link an external schedule at any time.
