Overview
Update an existing status page with new configuration. All fields are optional, allowing partial updates. You can modify branding, settings, publication status, custom domain, and password protection. This endpoint supports both PATCH (partial update) and PUT (full replacement) methods.Authentication
Requires Project Admin authentication via API Key:- API Key:
X-API-Key: YOUR_API_KEY
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
projectId | UUID | Yes | Project UUID |
id | UUID | Yes | Status page UUID |
Request Body
All fields are optional. Only include fields you want to update.Basic Settings
Branding Configuration
Settings Configuration
Custom Domain and Password Protection
Complete Update Example
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | No | Status page name |
description | string | No | Status page description |
branding | object | No | Branding configuration object |
settings | object | No | Settings configuration object |
is_published | boolean | No | Publication status (true/false) |
custom_domain | string | No | Custom domain for status page |
is_password_protected | boolean | No | Enable password protection |
password | string | No | Password for protected pages |
Branding Object
| Field | Type | Description |
|---|---|---|
logo_url | string | Organization logo URL |
favicon_url | string | Favicon URL |
primary_color | string | Primary brand color (hex format) |
accent_color | string | Accent color (hex format) |
company_name | string | Organization name |
custom_css | string | Custom CSS (sanitized server-side) |
Settings Object
| Field | Type | Description |
|---|---|---|
show_uptime_history | boolean | Display uptime history chart |
uptime_history_days | number | Days of uptime history to display |
show_incident_history | boolean | Show incident history |
incident_history_days | number | Days of incident history to show |
allow_subscriptions | boolean | Allow user subscriptions |
subscription_types | array | Allowed subscription types |
Response
Success Response (200 OK)
Error Response (400/404)
Plan Limit Enforcement
When updating status pages, the system validates against your plan limits:- Custom Branding: Advanced branding options may be restricted on lower plans
- Custom Domain: Custom domain support requires higher-tier plans
- Password Protection: May require specific plan features
- Custom CSS: Available on plans that support advanced customization
Error Codes
| Code | Status | Description |
|---|---|---|
INVALID_STATUS_PAGE_ID | 400 | Missing or invalid status page ID |
VALIDATION_ERROR | 400 | Request validation failed |
AUTHENTICATION_REQUIRED | 401 | Missing or invalid authentication |
FORBIDDEN | 403 | Insufficient permissions (requires Project Admin) |
STATUS_PAGE_NOT_FOUND | 404 | Status page not found or access denied |
INVALID_BRANDING | 400 | Branding configuration is invalid |
INVALID_SETTINGS | 400 | Settings configuration is invalid |
PLAN_LIMIT_EXCEEDED | 403 | Feature not available on current plan |
STATUS_PAGE_UPDATE_FAILED | 500 | Unexpected update failure |
Examples
PATCH vs PUT
| Method | Behavior |
|---|---|
PATCH | Partial update - only updates fields provided in the request |
PUT | Full replacement - replaces entire resource with provided data |
Partial Update Example (PATCH)
Notes
- Custom CSS is sanitized server-side to prevent XSS attacks
- All changes are logged to the audit trail
- Plan limits are validated before applying changes
- Branding and settings objects support partial updates (only specified nested fields are changed)
- Password is required when enabling password protection
- Custom domain changes may require DNS verification