---
title: "Pagerly Integration"
description: "Pagerly manages on-call rotations for Slack and Microsoft Teams. Workflows list teams, look up who is on call right now in Slack or Jira-ready shape, and subscribe a callback URL to rotation changes."
url: https://flowrunner.ai/integrations/pagerly
date_modified: 2026-09-04T14:59:52-07:00
---

# Pagerly

[Developer Tools](https://flowrunner.ai/integrations/category/developer-infrastructure)

Pagerly manages on-call rotations for Slack and Microsoft Teams. Workflows list teams, look up who is on call right now in Slack or Jira-ready shape, and subscribe a callback URL to rotation changes.

5 actions · API key · available

[Pagerly website](https://pagerly.io/) · [Platform Documentation](https://pagerly.io/) · Capability data verified 2026-08-25

1.  A production incident is declared by the monitoring stack
2.  List Teams resolves the owning team by name, which is the only identifier the other operations accept
3.  Get Current On Call For Jira returns the responsible person as the account id the tracker will accept
4.  The returned result is checked for emptiness, which here is a real state rather than an error
5.  The ticket is assigned and the incident channel is updated with the current responder
6.  The thread names who holds it, so nobody has to ask in the channel
7.  An empty rotation stops here, and the service owner names who is taking it

## What This Integration Enables

Pagerly is a small connector with a narrow claim, and the claim is correct. It manages on call rotations for Slack and Microsoft Teams, and what it exposes to automation is one question: who is responsible for this team at this moment. Five operations. That is not a gap in the [connector](https://flowrunner.ai/concepts/connectors), it is the shape of the product.

What makes those five operations worth having is a detail that only shows up when you try to use the answer. Get Current On Call returns the on call person as a Slack user id, which is exactly right for posting a mention or setting a channel topic and completely useless in a ticket assignee field. Get Current On Call For Jira returns the same person as an Atlassian account id instead, which is the only thing that field accepts. Two operations exist because the answer to "who is on call" has to arrive in the format of whatever the workflow is about to write to. Teams are addressed by name rather than by id throughout, which keeps flows readable and means renaming a team in Pagerly is a change worth coordinating.

FlowRunner agents use this read to address the right person at the moment they matter: assigning work, opening threads, updating topics, and routing approvals. The connector never pages anybody by itself, and the [human-in-the-loop](https://flowrunner.ai/concepts/human-in-the-loop) discipline here is about the case where the read comes back empty.

### Without FlowRunner

**Names hard coded into templates**: An escalation template names a person who moved teams two quarters ago

**The wrong kind of identifier**: The rota is read from a chat tool and written into a tracker that does not accept chat ids

**Silent coverage gaps**: Nobody is on call, the automation picks a fallback, and the hole never gets fixed

### With FlowRunner

**The rota read at the moment it is needed**: Every assignment resolves who is responsible right now rather than who was when the workflow was built

**The identifier the destination expects**: Chat writes get the chat id, tracker writes get the account id, from two purpose built reads

**An empty rota is an event**: No coverage produces a question to a named owner rather than an arbitrary assignment

## Use Case Scenarios

### Escalation addressed to whoever actually holds the pager

An incident opens in [ServiceNow](https://flowrunner.ai/integrations/servicenow) or an alert crosses a threshold. Instead of mentioning a group and hoping, the agent calls Get Current On Call for the owning team and posts to [Slack](https://flowrunner.ai/integrations/slack) or [Microsoft Teams](https://flowrunner.ai/integrations/microsoft-teams) addressing the person by their real chat id, with the incident context attached. The same lookup sets the incident channel topic, so anybody arriving later knows who has it without asking. When the rota rolls over mid incident, the next run of the same lookup names the new person rather than the one who started the night.

### Ticket assignment that does not fail on the identifier

A defect gets triaged and needs an owner in the tracker. The agent calls Get Current On Call For Jira rather than the Slack shaped read, because a tracker assignee field takes an account id and nothing else, and the two operations even differ in shape: one returns a list, the other a single record. The ticket is assigned to the person actually responsible, and the assignment note records which team's rota supplied the name and when the lookup ran. The audit trail then explains an assignment that would otherwise look arbitrary a month later.

### Reacting to the handover rather than polling for it

Subscribe Rotation Change URL registers a callback that Pagerly calls when a rotation changes, whether that is a scheduled handover, an override, or a swap. FlowRunner uses that to run handover work: reading the still open items assigned to the outgoing person, summarizing them into a message for the incoming one, and updating the topic and any routing that names the on call person. Because the vendor documents this route's existence more thoroughly than its payload, the connector sends the callback URL under every field name a REST hook conventionally uses, and the sensible operational practice is to confirm a delivery arrives before a workflow depends on it.

## Human-in-Loop Highlight

There is nothing destructive in this connector. There is something worse: a read that returns an empty result and means it. Get Current On Call answers with a list, and an empty list is a genuine state rather than a failure. It says nobody is on call for that team right now. The tempting thing for an automation to do is fall back to a default owner, a team channel, or the last person who held it. That papers over a real coverage hole and guarantees nobody ever fixes it, because the incident got assigned and the rota looked like it worked. So a FlowRunner escalation stops instead: "Payments has no one on call at 02:14. Incident INC-9942 is unassigned and P1. Who is taking it, and should the rota gap be raised with the team lead in the morning?" The service owner answers in the channel and the agent proceeds with a real name. The agent's job here was to notice the silence and refuse to fill it in, which is exactly what a [digital andon cord](https://flowrunner.ai/concepts/digital-andon-cord) is for.

Agent processes routinely

Detects exception requiring judgment

Clear match Continues automatically

Ambiguous Routes to human via preferred channel

Human decides

Agent resumes with decision

## Agent Capabilities

5 actions

### On Call

3

-   **List Teams** Returns the teams in the organization the API key belongs to. Use the name rather than the id, because the name is what every other operation accepts.
-   **Get Current On Call** Returns the people currently on call for a team, identified by their chat user id. The operation this connector exists for, and the read behind assigning a ticket, mentioning somebody, or updating a channel topic. An empty result is a real state.
-   **Get Current On Call For Jira** Returns the on call person as an Atlassian account id rather than a chat identity. The one to use for tracker assignment, since an assignee field takes nothing else, and it returns a single record where its sibling returns a list.

### Rotation Changes

2

-   **Subscribe Rotation Change URL** Registers a URL that Pagerly calls when an on call rotation changes: a handover, an override, or a swap. Worth confirming a delivery arrives before a workflow depends on it.
-   **Unsubscribe Rotation Change URL** Stops Pagerly calling a previously registered URL.

## Frequently Asked Questions

### What can FlowRunner do with Pagerly?

FlowRunner agents can run List Teams, Get Current On Call, and Get Current On Call For Jira in Pagerly, plus 2 more actions.

### Does connecting Pagerly to FlowRunner require OAuth?

No. Pagerly connects to FlowRunner with an API key, no OAuth flow required.

### Can Pagerly trigger a FlowRunner workflow automatically?

Pagerly doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.

**Work at Pagerly?** This integration exposes Pagerly to AI agents on every FlowRunner plan, including through MCP, at no cost to you. [See what FlowRunner offers integration partners](https://flowrunner.ai/integrations/partners), including how to keep this page current.

---
Markdown version of https://flowrunner.ai/integrations/pagerly. Site index: https://flowrunner.ai/llms.txt
