GET/v1/maintenance-windows

List all maintenance windows

Retrieve a paginated list of all maintenance windows

Requires MAINTENANCE_WINDOWS:READ; EDIT also grants READ. Session cookies are accepted only when no bearer credential is supplied.

Security: Bearer Auth

Provide your bearer token in the Authorization header when making requests to protected resources.

Example: Authorization: Bearer 123

Header parameters

X-OnlineOrNot-Organisation:stringoptional
Public organization ID to select from an OAuth grant. Required for grants authorizing multiple organizations. Omit for single-organization grants and API tokens.

Query parameters

page:integeroptional
Page number of paginated results, starting at 1.
Default: 1
per_page:integeroptional
Number of items per page. Defaults to 20. Continue requesting subsequent pages until the accumulated item count reaches result_info.total_count or a page is empty.
Default: 20
search:stringoptional
Search term to filter maintenance windows by name

Responses

StatusMeaningDescription
200OKReturns a list of maintenance windows. May also return a canonical failure envelope with success: false at HTTP200.
400Bad RequestInvalid request
401UnauthorizedUnauthorized - Invalid or missing API token
403ForbiddenInsufficient permissions
500Internal Server ErrorInternal Server Error

Response Schema

success:boolean
false
result:null
errors:object[]
messages:[any]

Request

GET
/v1/maintenance-windows
curl --request GET \
  --url https://api.onlineornot.com/v1/maintenance-windows \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}' \
  --header 'X-OnlineOrNot-Organisation: string'

Response

{
  "result": [
    {
      "id": "abc123def456",
      "name": "Weekly Maintenance",
      "start_date": "2026-09-13T09:00:00.000Z",
      "duration_minutes": 60,
      "timezone": "America/New_York",
      "days_of_week": ["MONDAY", "WEDNESDAY", "FRIDAY"],
      "status": "ENABLED"
    }
  ],
  "result_info": {
    "page": 1,
    "per_page": 20,
    "count": 1,
    "total_count": 1
  },
  "success": true,
  "errors": [],
  "messages": []
}

POST/v1/maintenance-windows

Create a new maintenance window

Create a new maintenance window with associated checks and heartbeats

Requires MAINTENANCE_WINDOWS:EDIT; EDIT also grants READ. Session cookies are accepted only when no bearer credential is supplied.

Security: Bearer Auth

Provide your bearer token in the Authorization header when making requests to protected resources.

Example: Authorization: Bearer 123

Header parameters

X-OnlineOrNot-Organisation:stringoptional
Public organization ID to select from an OAuth grant. Required for grants authorizing multiple organizations. Omit for single-organization grants and API tokens.

Body parameters

name:string
start_date:string
Start date and time of the maintenance window, as a timestamp
duration_minutes:integer
Duration of the maintenance window in minutes
timezone:string
Timezone for the maintenance window
days_of_week:enum[]
Days of the week when the maintenance window is active
Accepted values: "SUNDAY" | "MONDAY" | "TUESDAY" | "WEDNESDAY" | "THURSDAY" | "FRIDAY" | "SATURDAY"
checks:string[]optional
Uptime check IDs to associate with this maintenance window
Default: []
heartbeats:string[]optional
Heartbeat IDs to associate with this maintenance window
Default: []

Responses

StatusMeaningDescription
201CreatedReturns the created maintenance window
400Bad RequestBad Request - Invalid input (e.g., invalid check/heartbeat IDs, empty name)
401UnauthorizedUnauthorized - Invalid or missing API token
403ForbiddenInsufficient permissions
500Internal Server ErrorInternal Server Error

Response Schema

result:any
*anonymous*:objectoptional
*anonymous*:objectoptional
success:boolean
Whether the API call was successful
errors:object[]
messages:object[]

Request

POST
/v1/maintenance-windows
curl --request POST \
  --url https://api.onlineornot.com/v1/maintenance-windows \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}' \
  --header 'Content-Type: application/json' \
  --header 'X-OnlineOrNot-Organisation: string' \
  --data '{"name":"Weekly Server Maintenance","start_date":"2026-09-13T03:00:00.000Z","duration_minutes":60,"timezone":"America/New_York","days_of_week":["SUNDAY"]}'

Response

{
  "result": {
    "id": "abc123def456",
    "name": "Weekly Maintenance",
    "start_date": "2026-09-13T09:00:00.000Z",
    "duration_minutes": 60,
    "timezone": "America/New_York",
    "days_of_week": ["MONDAY", "WEDNESDAY", "FRIDAY"],
    "status": "ENABLED",
    "checks": ["abc123", "def456"],
    "heartbeats": ["ghi789"]
  },
  "success": true,
  "errors": [],
  "messages": []
}

GET/v1/maintenance-windows/{maintenance_window_id}

Get a maintenance window by ID

Retrieve a maintenance window with associated checks and heartbeats

Requires MAINTENANCE_WINDOWS:READ; EDIT also grants READ. Session cookies are accepted only when no bearer credential is supplied.

Security: Bearer Auth

Provide your bearer token in the Authorization header when making requests to protected resources.

Example: Authorization: Bearer 123

Header parameters

X-OnlineOrNot-Organisation:stringoptional
Public organization ID to select from an OAuth grant. Required for grants authorizing multiple organizations. Omit for single-organization grants and API tokens.

Path parameters

maintenance_window_id:string
Maintenance Window ID

Responses

StatusMeaningDescription
200OKReturns a maintenance window with associated check and heartbeat IDs
400Bad RequestInvalid request
401UnauthorizedUnauthorized - Invalid or missing API token
403ForbiddenInsufficient permissions
404Not FoundNot Found - Maintenance window does not exist or belongs to different organization
500Internal Server ErrorInternal Server Error

Response Schema

result:any
*anonymous*:objectoptional
*anonymous*:objectoptional
success:boolean
Whether the API call was successful
errors:object[]
messages:object[]

Request

GET
/v1/maintenance-windows/{maintenance_window_id}
curl --request GET \
  --url https://api.onlineornot.com/v1/maintenance-windows/abc123def456 \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}' \
  --header 'X-OnlineOrNot-Organisation: string'

Response

{
  "result": {
    "id": "abc123def456",
    "name": "Weekly Maintenance",
    "start_date": "2026-09-13T09:00:00.000Z",
    "duration_minutes": 60,
    "timezone": "America/New_York",
    "days_of_week": ["MONDAY", "WEDNESDAY", "FRIDAY"],
    "status": "ENABLED",
    "checks": ["abc123", "def456"],
    "heartbeats": ["ghi789"]
  },
  "success": true,
  "errors": [],
  "messages": []
}

PATCH/v1/maintenance-windows/{maintenance_window_id}

Update a maintenance window

Update a maintenance window. All fields are optional - only provided fields will be updated. Updating checks or heartbeats replaces existing associations.

Requires MAINTENANCE_WINDOWS:EDIT; EDIT also grants READ. Session cookies are accepted only when no bearer credential is supplied.

Security: Bearer Auth

Provide your bearer token in the Authorization header when making requests to protected resources.

Example: Authorization: Bearer 123

Header parameters

X-OnlineOrNot-Organisation:stringoptional
Public organization ID to select from an OAuth grant. Required for grants authorizing multiple organizations. Omit for single-organization grants and API tokens.

Path parameters

maintenance_window_id:string
Maintenance Window ID

Body parameters

name:stringoptional
start_date:stringoptional
Start date and time of the maintenance window, as a timestamp
duration_minutes:integeroptional
Duration of the maintenance window in minutes
timezone:stringoptional
Timezone for the maintenance window
days_of_week:enum[]optional
Days of the week when the maintenance window is active
Accepted values: "SUNDAY" | "MONDAY" | "TUESDAY" | "WEDNESDAY" | "THURSDAY" | "FRIDAY" | "SATURDAY"
status:stringoptional
Accepted values: "ENABLED" | "DISABLED"
checks:string[]optional
Uptime check IDs. Replaces existing associations.
heartbeats:string[]optional
Heartbeat IDs. Replaces existing associations.

Responses

StatusMeaningDescription
200OKReturns the updated maintenance window
400Bad RequestBad Request - Invalid input (e.g., invalid check/heartbeat IDs, no fields to update)
401UnauthorizedUnauthorized - Invalid or missing API token
403ForbiddenInsufficient permissions
404Not FoundNot Found - Maintenance window does not exist or belongs to different organization
500Internal Server ErrorInternal Server Error

Response Schema

result:any
*anonymous*:objectoptional
*anonymous*:objectoptional
success:boolean
Whether the API call was successful
errors:object[]
messages:object[]

Request

PATCH
/v1/maintenance-windows/{maintenance_window_id}
curl --request PATCH \
  --url https://api.onlineornot.com/v1/maintenance-windows/abc123def456 \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}' \
  --header 'Content-Type: application/json' \
  --header 'X-OnlineOrNot-Organisation: string' \
  --data '{"name":"Updated Maintenance Window"}'

Response

{
  "result": {
    "id": "abc123def456",
    "name": "Weekly Maintenance",
    "start_date": "2026-09-13T09:00:00.000Z",
    "duration_minutes": 60,
    "timezone": "America/New_York",
    "days_of_week": ["MONDAY", "WEDNESDAY", "FRIDAY"],
    "status": "ENABLED",
    "checks": ["abc123", "def456"],
    "heartbeats": ["ghi789"]
  },
  "success": true,
  "errors": [],
  "messages": []
}

DELETE/v1/maintenance-windows/{maintenance_window_id}

Delete a maintenance window

Delete a maintenance window and all its associations with checks and heartbeats

Requires MAINTENANCE_WINDOWS:EDIT; EDIT also grants READ. Session cookies are accepted only when no bearer credential is supplied.

Security: Bearer Auth

Provide your bearer token in the Authorization header when making requests to protected resources.

Example: Authorization: Bearer 123

Header parameters

X-OnlineOrNot-Organisation:stringoptional
Public organization ID to select from an OAuth grant. Required for grants authorizing multiple organizations. Omit for single-organization grants and API tokens.

Path parameters

maintenance_window_id:string
Maintenance Window ID

Responses

StatusMeaningDescription
200OKReturns the deleted maintenance window ID
400Bad RequestInvalid request
401UnauthorizedUnauthorized - Invalid or missing API token
403ForbiddenInsufficient permissions
404Not FoundNot Found - Maintenance window does not exist or belongs to different organization
500Internal Server ErrorInternal Server Error

Response Schema

result:object
success:boolean
Whether the API call was successful
errors:object[]
messages:object[]

Request

DELETE
/v1/maintenance-windows/{maintenance_window_id}
curl --request DELETE \
  --url https://api.onlineornot.com/v1/maintenance-windows/abc123def456 \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}' \
  --header 'X-OnlineOrNot-Organisation: string'

Response

{
  "result": {
    "id": "abc123def456"
  },
  "success": true,
  "errors": [],
  "messages": []
}

Was this page helpful?