Skip to main content
POST
Create a maintenance window

Authorizations

Authorization
string
header
required

The Checkly Public API uses API keys to authenticate requests. You can get the API Key here. Your API key is like a password: keep it secure! Authentication to the API is performed using the Bearer auth method in the Authorization header and using the account ID. For example, set Authorization header while using cURL: curl -H "Authorization: Bearer [apiKey]" "X-Checkly-Account: [accountId]"

Headers

x-checkly-account
string

Your Checkly account ID, you can find it at https://app.checklyhq.com/settings/account/general

Body

application/json
name
string
required

The maintenance window name.

Maximum string length: 200
Example:

"Maintenance Window"

startsAt
string<date>
required

The start date of the maintenance window.

Example:

"2022-08-24"

endsAt
string<date>
required

The end date of the maintenance window.

Example:

"2022-08-25"

repeatUnit
string
required

The repeat strategy for the maintenance window.

Example:

"DAY"

tags
string[]

The names of the checks and groups maintenance window should apply to.

Example:
repeatInterval
integer | null

The repeat interval of the maintenance window from the first occurrence.

Required range: 1 <= x <= 365
Example:

null

repeatEndsAt
string<date> | null

An inclusive calendar date in the configured timezone (UTC when unset) on which occurrences may start. Prefer YYYY-MM-DD. For backward compatibility, other accepted date-time values are normalized to the UTC calendar date of the parsed instant. The final occurrence runs for its full configured duration.

Example:

null

timezone
string | null

Named IANA time zone used for recurring maintenance scheduling. UTC offset identifiers such as "+05:00" are not accepted. On create, omission or null uses UTC. On update, omission preserves the existing value; null or UTC resets scheduling to UTC. Changing only this field keeps startsAt and endsAt as the same absolute instants; include recalculated anchors to preserve the existing local date and time.

Example:

"America/New_York"

pauseAllChecks
boolean
default:false

Whether to pause all checks in the account (overrides tag scope).

silenceAlertsTags
string[]

Tags defining which checks have alerts silenced (when silenceAllAlerts is false).

silenceAllAlerts
boolean
default:false

Whether to silence alerts for all checks (overrides silenceAlertsTags scope).

description
string | null

A description of the maintenance window. When the window is visible on status pages, this description is shown there too.

Maximum string length: 2000
statusPageVisibility
object

Status page visibility and subscriber-facing maintenance settings.

Response

Created

id
number
required

The id of the maintenance window.

Example:

1

name
string
required
startsAt
string<date>
required
endsAt
string<date>
required
created_at
string<date>
required

The creation date of the maintenance window.

updated_at
string<date> | null
required

The last date that the maintenance window was updated.

tags
string[]

The names of the checks and groups maintenance window should apply to.

Example:
repeatInterval
number | null
repeatUnit
enum<string> | null
Available options:
DAY,
WEEK,
MONTH
repeatEndsAt
string<date> | null
timezone
string | null
description
string | null
statusPageVisibility
object
pauseAllChecks
boolean
silenceAlertsTags
string[]
silenceAllAlerts
boolean