Create status page

Launch a new branded status page — choose from three templates.

Create status page

POST /status-pages

Create a status page.

Auth: Bearer token (write scope)

Body parameters

name string required

Page display name.

slug string required

URL slug (used in /status/:slug).

template string default: minimal

Template: minimal, brand, or terminal.

Hex color for branding.

Request

bash
curl -X POST -H "Authorization: Bearer hu_..." \ -H "Content-Type: application/json" \ -d '{ "name": "Acme Status", "slug": "acme", "template": "brand", "brand_color": "#059669" }' \ "https://happyuptime.com/api/v1/status-pages"

Response

json
{ "data": { "id": "sp_002", "project_id": "proj_xyz", "name": "Acme Status", "slug": "acme", "template": "brand", "is_published": false, "brand_color": "#059669", "created_at": "2026-03-07T16:00:00Z" } }

Templates

TemplateLook & feel
minimalClean and professional — white background, simple uptime bars
brandHero, cards, Inter typography — best for marketing-heavy sites
terminalDark monochrome monospace with ASCII dividers — hacker vibes
Ask a question... ⌘I