Skip to content

Schedule a maintenance that repeats daily, weekly or monthly at a local time. Its occurrences appear on the page 14 days ahead; subscribers get one notice per occurrence plus its reminder.

POST
/status_page/{status_page_id}/maintenance_series
curl --request POST \
--url https://api.siteqwality.com/status_page/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/maintenance_series \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "title": "example", "body": "example", "whole_page": true, "affected_http_job_ids": [ "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" ], "reminder_minutes": 1, "notify_each_occurrence": true, "timezone": "example", "start_time": "example", "duration_minutes": 1, "frequency": "daily", "weekdays": [ 1 ], "month_day": 1, "starts_on": "example", "ends_on": "example" }'
status_page_id
required
string format: uuid

Status page identifier

Media type application/json

A series on create, and its full new state on edit.

object
title
required
string
body
string | null
whole_page

The whole page is under maintenance. Leave affected_http_job_ids empty.

boolean
affected_http_job_ids

The monitors under maintenance. Required unless whole_page is true.

array | null
reminder_minutes

Minutes before each start that subscribers get a reminder (5 to 10080). Null sends none.

integer | null format: int32
notify_each_occurrence

Tell subscribers about every occurrence (scheduled, reminder, started, completed). By default they hear once, when the series is made or its schedule changes.

boolean
timezone
required

IANA zone, e.g. Europe/Berlin.

string
start_time
required

Local start time, HH:MM.

string
duration_minutes
required

5 to 10080 minutes; at most 1440 for a daily series.

integer format: int32
frequency
required
string
Allowed values: daily weekly monthly
weekdays

ISO weekdays, 1 = Monday to 7 = Sunday. Required for weekly; ignored otherwise.

Array<integer>
month_day

1 to 28. Required for monthly; ignored otherwise.

integer | null format: int32
starts_on
required

First day an occurrence may fall on, YYYY-MM-DD in timezone.

string
ends_on

Last day an occurrence may fall on. Null repeats with no end.

string | null

Series created and its first occurrences made

Media type application/json

A maintenance that repeats. Each occurrence is an ordinary maintenance with series_id set, materialized 14 days ahead. Subscribers hear once per schedule unless notify_each_occurrence.

object
id
required
string format: uuid
status_page_id
required
string format: uuid
title
required
string
body
string | null
whole_page
required
boolean
affected_http_job_ids
required
Array<string>
reminder_minutes
integer | null format: int32
notify_each_occurrence
required

Subscribers hear about every occurrence. False: once when the series is made or rescheduled.

boolean
timezone
required

IANA zone the start time and days are read in.

string
start_time
required

Local start time, HH:MM.

string
duration_minutes
required
integer format: int32
frequency
required
string
Allowed values: daily weekly monthly
weekdays
required

ISO weekdays (1 = Monday), weekly only.

Array<integer>
month_day

Day of the month (1 to 28), monthly only.

integer | null format: int32
starts_on
required

YYYY-MM-DD.

string
ends_on
string | null
next_occurrence_at

The next occurrence still to start.

string | null format: date-time
created_at
required
string format: date-time
updated_at
required
string format: date-time
Example
{
"frequency": "daily"
}

Invalid schedule, title, scope or reminder

Missing or invalid authentication

Status page or affected monitor not found

The page already has 25 series

Internal server error