---
title: "uptimeify_status_page_design"
description: "The design of one status page (one per page). Unset arguments keep their current value; removing an argument from the configuration does not reset it. Destroying the resource resets the whole design to the defaults. Every option with examples: Status page design https://docs.uptimeify.io/status-pages/design. Import with the numeric status page id."
---

The design of one status page (one per page). Unset arguments keep their current value; removing an argument from the configuration does not reset it. Destroying the resource resets the whole design to the defaults. Every option with examples: [Status page design](https://docs.uptimeify.io/status-pages/design). Import with the numeric status page id.

## Example Usage

```terraform
resource "uptimeify_status_page_design" "acme" {
  status_page_id  = tonumber(uptimeify_status_page.acme.id)
  layout          = "statusboard"
  color_scheme    = "auto"
  accent_color    = "#0f766e"
  custom_title    = "ACME Status"
  show_powered_by = false
  history_days    = 90
  incident_limit  = 10

  # Own texts for the states; states left out show the default text.
  status_labels = {
    operational  = "All systems go"
    major_outage = "We are on it"
  }
}
```

## Schema

### Required

- `status_page_id` (Number) Numeric status page id. Changing it replaces the resource.

### Optional

- `accent_color` (String) 6-digit hex color, e.g. `#6366f1` (default).
- `card_radius` (String) `none`, `md` (default) or `xl`.
- `color_scheme` (String) `light`, `dark` or `auto` (default).
- `custom_css` (String) Own CSS for the public page only, at most 20000 bytes; empty string = none (default). No `url()`, `@import`, `@font-face` or other resource loads; a rejected stylesheet fails the apply. Kept as written in state; the server's regenerated form is `custom_css_stored`.
- `custom_subtitle` (String) Up to 200 characters.
- `custom_title` (String) Visible page title, up to 120 characters. Empty = the page name.
- `font_family` (String) `system` (default) or `mono`.
- `header_style` (String) `simple` (default), `centered` or `hero`.
- `history_days` (Number) Window of the availability bars, 1 to 3650 days. Default `30`.
- `incident_days` (Number) 1 to 3650 days. Default `30`.
- `incident_limit` (Number) 1 to 50 incidents. Default `5`.
- `layout` (String) Layout preset, with its name and caption in the design editor: `classic` (Classic, card and list), `cards` (Cards, service grid), `minimal` (Minimal, clean lines), `sleek` (Sleek, dark with glow), `board` (Board, color rows), `split` (Split, two columns), `timeline` (Timeline, event feed), `compact` (Compact, dense table) or `statusboard` (Statusboard, uptime bars; the default). All show the same data. Descriptions and screenshots: [Status page design](https://docs.uptimeify.io/status-pages/design#layouts).
- `maintenance_days` (Number) How far back past maintenance is shown, 1 to 3650 days. Default `30`.
- `maintenance_limit` (Number) 1 to 50 maintenance windows. Default `5`.
- `page_width` (String) `sm`, `md`, `lg` (default) or `xl`.
- `show_history` (Boolean) Show availability bars. Default `true`.
- `show_incidents` (Boolean) Default `true`. Same switch as `show_recent_incidents` of the page API.
- `show_last_checked` (Boolean) Default `false`.
- `show_maintenance` (Boolean) Default `true`.
- `show_powered_by` (Boolean) Default `true`.
- `show_service_urls` (Boolean) Show monitor URLs. Default `false`.
- `show_uptime_stats` (Boolean) Default `true`.
- `status_labels` (Map of String) Own public texts per state, used by every layout, the badge and the widget. Keys: `operational`, `degraded`, `partial_outage`, `major_outage`, `maintenance`; values 1 to 40 characters, no surrounding whitespace. When set, the map is the complete list: a state left out shows its default text.

### Read-Only

- `custom_css_stored` (String) `custom_css` as the server stored it (regenerated and minified). A change made outside Terraform shows up here and in `custom_css`.
- `id` (String) Same as `status_page_id`.
- `seo_title` (String) `<title>` override; not settable through the API.

## Import

Import is supported using the following syntax:

The [`terraform import` command](https://developer.hashicorp.com/terraform/cli/commands/import) can be used, for example:

```shell
# Numeric status page id
terraform import uptimeify_status_page_design.acme 42
```
