---
title: "Create a new v3 status page."
method: POST
path: "/v3/status-pages"
tags: ["Status Pages V3"]
---

# Create a new v3 status page.

`POST /v3/status-pages`

## Request

- Base URL: `https://api.checklyhq.com`
- URL: `https://api.checklyhq.com/v3/status-pages`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/checklyhq/apis/checkly-public-api/docs/v3/status-pages/post.ts> (a function with typed inputs; its response is checked against the schema)

Create a new v3 status page. Add components afterwards via the components endpoints.

## Headers

- `x-checkly-account` string: Your Checkly account ID, you can find it at https://app.checklyhq.com/settings/account/general

## Request body

- PublicStatusPageV3Mutation
  - `name` string, required
  - `description` string, nullable
  - `url` string, required
  - `customDomain` string, nullable: A custom user domain, e.g. "status.example.com". See the docs on updating your DNS and SSL usage.
  - `themeColors` StatusPageV3ThemeColors, nullable
    - `light` StatusPageV3ThemeColorsGroup, required
      - `bodyBackgroundColor` string, required
      - `headerBackgroundColor` string, required
      - `headerFontColor` string, required
      - `titleFontColor` string, required
      - `bodyFontColor` string, required
      - `bodyFontColorMuted` string, required
      - `navigationFontColor` string, required
      - `linkFontColor` string, required
      - `cardBackgroundColor` string, required
      - `borderColor` string, required
      - `primaryButtonBackgroundColor` string, required
      - `primaryButtonFontColor` string, required
    - `dark` StatusPageV3ThemeColorsGroup, required
      - `bodyBackgroundColor` string, required
      - `headerBackgroundColor` string, required
      - `headerFontColor` string, required
      - `titleFontColor` string, required
      - `bodyFontColor` string, required
      - `bodyFontColorMuted` string, required
      - `navigationFontColor` string, required
      - `linkFontColor` string, required
      - `cardBackgroundColor` string, required
      - `borderColor` string, required
      - `primaryButtonBackgroundColor` string, required
      - `primaryButtonFontColor` string, required
  - `logo` string, nullable
  - `logoDark` string, nullable
  - `redirectTo` string, nullable
  - `favicon` string, nullable
  - `defaultTheme` 'LIGHT' | 'DARK' | 'AUTO'
  - `privacyPolicyLink` string, nullable
  - `termsOfServiceLink` string, nullable
  - `supportLink` string, nullable
  - `footerText` string, nullable
  - `googleAnalyticsTag` string, nullable
  - `allowIndexing` boolean
  - `isPrivate` boolean

## Response `201`

Created

- PublicStatusPageV3
  - `name` string, required
  - `description` string, nullable
  - `url` string, required
  - `customDomain` string, nullable: A custom user domain, e.g. "status.example.com". See the docs on updating your DNS and SSL usage.
  - `themeColors` StatusPageV3ThemeColors, nullable
    - `light` StatusPageV3ThemeColorsGroup, required
      - `bodyBackgroundColor` string, required
      - `headerBackgroundColor` string, required
      - `headerFontColor` string, required
      - `titleFontColor` string, required
      - `bodyFontColor` string, required
      - `bodyFontColorMuted` string, required
      - `navigationFontColor` string, required
      - `linkFontColor` string, required
      - `cardBackgroundColor` string, required
      - `borderColor` string, required
      - `primaryButtonBackgroundColor` string, required
      - `primaryButtonFontColor` string, required
    - `dark` StatusPageV3ThemeColorsGroup, required
      - `bodyBackgroundColor` string, required
      - `headerBackgroundColor` string, required
      - `headerFontColor` string, required
      - `titleFontColor` string, required
      - `bodyFontColor` string, required
      - `bodyFontColorMuted` string, required
      - `navigationFontColor` string, required
      - `linkFontColor` string, required
      - `cardBackgroundColor` string, required
      - `borderColor` string, required
      - `primaryButtonBackgroundColor` string, required
      - `primaryButtonFontColor` string, required
  - `logo` string, nullable
  - `logoDark` string, nullable
  - `redirectTo` string, nullable
  - `favicon` string, nullable
  - `defaultTheme` 'LIGHT' | 'DARK' | 'AUTO'
  - `privacyPolicyLink` string, nullable
  - `termsOfServiceLink` string, nullable
  - `supportLink` string, nullable
  - `footerText` string, nullable
  - `googleAnalyticsTag` string, nullable
  - `allowIndexing` boolean
  - `isPrivate` boolean
  - `id` string, required
  - `accountId` string, required
  - `version` 3, required
  - `created_at` string, date, required
  - `updated_at` string, date, nullable

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `429`: Too Many Requests

## Changes

- **2026-10-31** `bc90d1bfa738`: 1 info
  - added the optional property `errorCode` to the response with the `403` status
- **2026-10-07** `aba5d34c749b`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/checklyhq/apis/checkly-public-api/changes/v3/status-pages/post.md)

---

[API](https://skmtc.dev/checklyhq/apis/checkly-public-api.md) - [All operations](https://skmtc.dev/checklyhq/apis/checkly-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/checklyhq/apis/checkly-public-api/revisions/bc90d1bfa738?raw)
