> For the complete documentation index, see [llms.txt](https://agpt.co/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://agpt.co/docs/integrations/block-integrations/on_call.md).

# All Quiet On Call

A block for reading All Quiet's on-call rotation: who is responsible right now, or who was (or will be) at any other point in time.

## AllQuiet Get On Call

### What it is

Looks up who is on call in All Quiet, now or at a given time

### How it works

Reads All Quiet's computed rotation rather than a static schedule, so overrides, escalation tiers and rotation handoffs are all reflected. Leaving `timestamp` empty asks who is on call right now; supplying an ISO-8601 timestamp asks who was or will be on call then. A user covering several teams appears once per team in `shifts`, so the block also emits a de-duplicated `users`/`user_ids`/`emails` set to avoid notifying the same person repeatedly. `has_coverage` is false when nobody is on call, which is worth branching on before assuming an alert will reach someone.

### Inputs

| Input     | Description                                                                               | Type         | Required |
| --------- | ----------------------------------------------------------------------------------------- | ------------ | -------- |
| team\_ids | Limit to these teams. Leave empty for every team.                                         | List\[str]   | No       |
| user\_ids | Limit to these users. Leave empty for every user.                                         | List\[str]   | No       |
| timestamp | ISO-8601 timestamp to evaluate the rotation at. Leave empty for right now.                | str          | No       |
| region    | The All Quiet deployment your API key belongs to. Use EU if you signed up on allquiet.eu. | "us" \| "eu" | No       |

### Outputs

| Output                | Description                                                                                                                                                                | Type                |
| --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------- |
| error                 | Error message if the request failed                                                                                                                                        | str                 |
| shifts                | Every matching on-call assignment                                                                                                                                          | List\[OnCallShift]  |
| shift                 | Each on-call assignment, emitted one at a time                                                                                                                             | OnCallShift         |
| users                 | The on-call users, deduplicated across teams                                                                                                                               | List\[AllQuietUser] |
| user\_ids             | IDs of the on-call users                                                                                                                                                   | List\[str]          |
| emails                | Email addresses of the on-call users                                                                                                                                       | List\[str]          |
| users\_without\_email | On-call users carrying no email address. These are counted in users/has\_coverage but absent from emails, so a graph that notifies by email alone would silently skip them | List\[AllQuietUser] |
| has\_coverage         | False when nobody is on call for the requested teams/time, so a graph can branch to a fallback instead of silently paging no one                                           | bool                |

### Possible use case

Before an agent takes a disruptive automated action such as a production deploy, it checks who is on call and includes their name in the change notice. Wired to `has_coverage`, the same graph can refuse to deploy at all when the rotation has a gap.

***


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://agpt.co/docs/integrations/block-integrations/on_call.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
