> ## Documentation Index
> Fetch the complete documentation index at: https://docs.upmetr.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Status Pages

> Share public status pages with clients to build transparency and trust

Status pages let you share real-time service health with your clients — no login required. Visitors see monitor statuses, uptime history bars, and current incidents on a clean public page.

Upmetr supports two types of status pages:

* **Global Status Page** — a single page showing selected monitors from your organization
* **Client Status Pages** — individual pages per client, ideal for MSPs and agencies managing multiple accounts

<Note>
  Status pages require the **Status Pages** module. The page is accessible to Admin and Superadmin roles.
</Note>

## Global Status Page

The global status page displays selected uptime monitors at `/status`. It represents your organization's overall service health.

### Setting Up

1. Navigate to **Status Pages** (from Settings)
2. On the **Global** tab, toggle **Enable Status Page** on
3. Configure the page settings:

| Setting                    | Description                          | Default       |
| -------------------------- | ------------------------------------ | ------------- |
| **Page Title**             | Heading shown on the public page     | System Status |
| **Company Name**           | Displayed below the title (optional) | —             |
| **Custom Logo URL**        | URL to your logo image (optional)    | Upmetr logo   |
| **History Days**           | How many days of uptime bars to show | 90            |
| **Show Response Times**    | Display latency in milliseconds      | On            |
| **Show Uptime Percentage** | Display rolling uptime % per monitor | On            |

4. In the **Public Monitors** panel, select which monitors to display
5. Click **Save Changes**

### Access Token (Optional)

By default, the global status page is open to anyone with the URL. To restrict access:

1. Toggle **Require Access Token** on
2. Click **Save Changes** — a unique token is generated automatically
3. The access URL changes to `/status?token=<secret>`
4. Share this tokenized URL with the people who need access

<Tip>
  When access token is enabled, all logged-in team members automatically see the tokenized link in the sidebar.
</Tip>

### Generating History Data

If you already have monitor metrics but no uptime history bars, use the **Generate History** button to backfill historical data from existing check results.

## Client Status Pages

Client status pages are designed for MSPs, agencies, and teams that manage infrastructure for multiple clients. Each client gets their own dedicated status page with a unique URL and access token.

### Creating a Client

1. Go to **Status Pages** and switch to the **Clients** tab
2. Click **New Client**
3. Enter the client name (e.g., "Acme Corp")
4. The **slug** is auto-generated from the name — this becomes part of the public URL (`/status/acme-corp`)
5. Click **Create**

<Tip>
  You can customize the slug to anything URL-friendly. Only lowercase letters, numbers, and hyphens are allowed.
</Tip>

### Assigning Cloud Accounts

After creating a client, assign cloud accounts to them. All uptime monitors associated with those accounts will appear on the client's status page.

1. On the client card, click the **link icon**
2. Select the cloud accounts that belong to this client
3. Click **Assign**

### Enabling the Status Page

1. On the client card, click **Create Status Page**
2. Toggle the page **on** using the switch
3. A unique access token is generated automatically
4. Click **Copy URL** to get the shareable link — it follows the format `/status/<slug>?token=<secret>`

Share this URL with your client so they can check their service status at any time.

## Access Control

All status pages use **token-based access control**:

* Each status page (global or per-client) has its own unique access token
* The token is embedded in the URL as a query parameter (`?token=...`)
* Anyone with the URL can view the page — no account or login needed
* The global status page can optionally be made fully public (no token required)

### Regenerating Tokens

If a token is compromised or you need to revoke access:

1. Click **Regenerate Token** on the status page settings
2. Confirm the action
3. A new token is generated instantly
4. The old URL **immediately stops working**

<Warning>
  Regenerating a token invalidates the previous URL. Anyone using the old link will lose access. You must share the new URL with your clients.
</Warning>

## Public Page Features

When visitors open a status page, they see:

* **Overall status banner** — "All Systems Operational", "Partial Outage", or "Major Outage" based on monitor states
* **Monitor cards** — each selected monitor shows its current status (Up, Down, Degraded), last check time, response time, and uptime percentage
* **Uptime history bars** — visual timeline showing daily availability for the configured history period
* **Search and sort** — visitors can search monitors by name and sort by status or name
* **Auto-refresh** — the page refreshes automatically every 60 seconds with a visible countdown
* **Custom branding** — your logo and company name are displayed in the header (global page)

## Troubleshooting

<AccordionGroup>
  <Accordion title="Status page shows 'Not Available'">
    The status page is either disabled or the access token is invalid. Verify that the page is enabled in settings and that the URL contains the correct token.
  </Accordion>

  <Accordion title="No monitors appear on the public page">
    Make sure you have selected monitors in the Global tab, or assigned cloud accounts with active monitors to the client. Only monitors with at least one check result will display data.
  </Accordion>

  <Accordion title="Uptime history bars are empty">
    History bars are generated from aggregated daily data. If you recently set up monitors, wait 24 hours for the first bar to appear. For existing data, use the **Generate History** button to backfill.
  </Accordion>

  <Accordion title="Client's status page shows no monitors">
    Verify that cloud accounts are assigned to the client (link icon on the client card) and that those accounts have active uptime monitors.
  </Accordion>

  <Accordion title="Old URL still works after regenerating token">
    Token regeneration is instant. If the old URL still loads, clear your browser cache or try in an incognito window. The backend invalidates the token immediately.
  </Accordion>

  <Accordion title="I can't access the Status Pages settings">
    Status pages configuration requires Admin or Superadmin role and the Status Pages module on your plan.
  </Accordion>
</AccordionGroup>
