Skip to content

Status page reference

The full request schemas live in the auto-generated API Reference. This page is the human-readable cheat sheet for the /status_page endpoint family.

FieldTypeDescription
friendly_namestringThe page name. The only writable field on the page object itself.
iduuidRead-only. Page ID, also the default subdomain slug.
account_iduuidRead-only. Owning account.
created_atrfc3339Read-only.

Branding, components, incidents, maintenance, and the custom domain are all nested resources (below).

Attach an HTTP check with POST /status_page/{status_page_id}/http_job/{http_job_id} or a browser check with POST /status_page/{status_page_id}/browser_check/{browser_check_id}.

FieldTypeOnDescription
friendly_namestringcreate + updatePublic-facing name shown on the page (independent of the monitor’s internal name).
sla_target_percentagenumber | nullupdate onlySLA target shown next to the component, e.g. 99.9. Send null to clear.

The component’s live status is the underlying monitor’s status; there is no separate status field to set.

PUT /status_page/{status_page_id}/branding. All fields optional; omitted fields keep their value.

FieldTypeConstraintDescription
page_titlestringmax 100 charsBrowser-tab and page title.
default_themeenumlight | dark | systemTheme for first-time visitors.
primary_colorstring#rrggbbPrimary brand color.
accent_colorstring#rrggbbAccent color.
header_textstringmax 500 charsText above the component list.
footer_textstringmax 500 charsText below the component list.
meta_descriptionstringmax 160 charsSEO / OG description.
custom_cssstringmax 50 KBInjected stylesheet.
white_labelboolpaid plansRemoves SiteQwality attribution.
logo_s3_key / favicon_s3_key / og_image_s3_keystringfrom upload flowSet after uploading the asset (below).
  1. POST /status_page/{id}/branding/upload with { "file_type": "logo" | "favicon" | "og_image", "content_type": "...", "file_size_bytes": n }.
  2. The response contains a presigned upload_url, the resulting s3_key, and expires_in_seconds.
  3. PUT the file to upload_url, then PUT /branding with the returned key in the matching *_s3_key field.
  4. Remove an asset with DELETE /status_page/{id}/branding/asset/{asset_type}.

Public responses expose CDN URLs (logo_url, favicon_url, og_image_url), never S3 keys.

POST /status_page/{status_page_id}/custom_domain with { "domain": "status.example.com" }. Creating one requires a verified email address; reads and deletes do not.

FieldTypeDescription
domainstringYour domain, lowercased. No scheme prefix, no spaces.
statusenumpending_validation, provisioning, active, failed, deleting.
cname_targetstringThe intermediate CNAME to point your domain at: <status_page_id>.custom.siteqwality.com.
acm_validation.name / .valuestringThe DNS validation CNAME record to create while status is pending_validation.
failure_reasonstring | nullPopulated when status is failed.
created_at / updated_atrfc3339Timestamps.

See the custom domain guide for the DNS walkthrough.

Customer-facing planned-downtime entries under /status_page/{status_page_id}/maintenance. These render on the page; to silence internal paging use maintenance windows.

FieldTypeOnDescription
titlestringcreate + updateMaintenance title.
bodystring | nullcreate + updateLonger description.
scheduled_start_atrfc3339create + updatePlanned start.
scheduled_end_atrfc3339create + updatePlanned end.
affected_http_job_idsuuid[]create + updateWhich components the maintenance covers.
statusenumupdate onlyscheduled, in_progress, or completed. New entries start as scheduled.

Incidents published to a page (via status_page_id at creation, or POST /incident/{id}/publish) render with their updates. Field-by-field: Incident reference.

MethodPathPurpose
POST / GET/status_pageCreate / list pages.
PUT / DELETE/status_page/{status_page_id}Rename / delete a page.
GET/status_page/{id}/http_jobList attached HTTP checks.
POST / PUT / DELETE/status_page/{id}/http_job/{http_job_id}Attach / update / detach an HTTP check.
GET/status_page/{id}/browser_checkList attached browser checks.
POST / PUT / DELETE/status_page/{id}/browser_check/{browser_check_id}Attach / update / detach a browser check.
POST / GET/status_page/{id}/incidentCreate / list page incidents.
POST / GET/status_page/{id}/maintenanceCreate / list scheduled maintenance.
PUT / DELETE/status_page/{id}/maintenance/{maintenance_id}Update / delete maintenance.
GET / PUT/status_page/{id}/brandingRead / update branding.
POST/status_page/{id}/branding/uploadPresigned asset upload.
DELETE/status_page/{id}/branding/asset/{asset_type}Remove an asset.
POST / GET / DELETE/status_page/{id}/custom_domainProvision / read / remove the custom domain.