---
title: "Create a status page"
method: POST
path: "/api/v1/status-pages"
---

# Create a status page

`POST /api/v1/status-pages`

## Request

- Base URL: `https://app.pingvera.com`
- URL: `https://app.pingvera.com/api/v1/status-pages`
- Auth: HTTP bearer

Scope write:status-pages. Organization — from the token. custom_domain requires a white-label plan.

## Request body

- object
  - `slug` string, required: 3..40 chars a-z0-9-, no leading/trailing hyphens
  - `title` string, required
  - `monitors` string[]: monitor public_ids
  - `hosts` string[]: server public_ids
  - `logo_url` string
  - `brand_color` string: #rrggbb
  - `header_md` string
  - `footer_md` string
  - `embed_domains` string
  - `timezone` string
  - `theme` '' | 'light' | 'dark' | 'midnight'
  - `custom_domain` string

## Response `201`

Created — {status_page: {...}}

## Other responses

- `400`: invalid fields
- `401`: missing/invalid token
- `402`: custom_domain without a white-label plan
- `403`: missing write:status-pages scope
- `409`: slug/domain already taken

---

[API](https://skmtc.dev/pingvera/apis/pingvera-api.md) · [All operations](https://skmtc.dev/pingvera/apis/pingvera-api/llms.txt) · [OpenAPI document](https://skmtc.dev/pingvera/apis/pingvera-api/revisions/3b0db4cd7cca?raw)
