GET/v1/status_pages/{status_page_id}

Retrieve a status page

Security: Bearer Auth

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

Example: Authorization: Bearer 123

Path parameters

status_page_id:string
Status Page ID

Responses

StatusMeaningDescription
200OKRetrieve the specified OnlineOrNot Status Page
500Internal Server ErrorInternal Server Error

Response Schema

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

Request

GET
/v1/status_pages/{status_page_id}
curl --request GET \
  --url https://api.onlineornot.com/v1/status_pages/a1b2c3d4 \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}'

Response

{
  "result": {
    "id": "a1b2c3d4",
    "name": "My Example SaaS",
    "subdomain": "status",
    "custom_domain": "https://status.yourdomain.com",
    "status": "ALL_SYSTEMS_OPERATIONAL",
    "favicon_url": "https://example.com/favicon.ico",
    "logo_url": "https://example.com/logo.png",
    "dark_logo_url": "https://example.com/logo-dark.png",
    "description": "Real-time status updates for My Example SaaS",
    "hide_from_search_engines": false,
    "has_password": false,
    "allowed_ips": [
      "192.168.1.1",
      "10.0.0.0/8"
    ]
  },
  "success": true,
  "errors": [],
  "messages": []
}

POST/v1/status_pages/{status_page_id}

Update a status page

Security: Bearer Auth

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

Example: Authorization: Bearer 123

Path parameters

status_page_id:string
Status Page ID

Body parameters

name:string
Name of the Status Page
subdomain:string
The subdomain your status page will be hosted at. For example "status" would become "status.onlineornot.com"
custom_domain:string(uri)optional
The custom domain your status page is hosted at.
password:stringnulloptional
The password required to view your status page. If omitted, keeps existing password. If null or empty string, removes password protection. If non-empty string, sets new password.
description:stringoptional
A description of your status page
hide_from_search_engines:booleanoptional
Whether to hide the status page from search engines
allowed_ips:string[]optional
List of IP addresses or CIDR ranges allowed to access this status page

Responses

StatusMeaningDescription
200OKUpdate an existing OnlineOrNot Status Page
500Internal Server ErrorInternal Server Error

Response Schema

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

Request

POST
/v1/status_pages/{status_page_id}
curl --request POST \
  --url https://api.onlineornot.com/v1/status_pages/a1b2c3d4 \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}' \
  --header 'Content-Type: application/json' \
  --data '{"name":"My Example SaaS","subdomain":"status","custom_domain":"https://status.yourdomain.com","password":"string","description":"Real-time status updates for My Example SaaS","hide_from_search_engines":false,"allowed_ips":["192.168.1.1","10.0.0.0/8"]}'

Response

{
  "result": {
    "id": "a1b2c3d4",
    "name": "My Example SaaS",
    "subdomain": "status",
    "custom_domain": "https://status.yourdomain.com",
    "status": "ALL_SYSTEMS_OPERATIONAL",
    "favicon_url": "https://example.com/favicon.ico",
    "logo_url": "https://example.com/logo.png",
    "dark_logo_url": "https://example.com/logo-dark.png",
    "description": "Real-time status updates for My Example SaaS",
    "hide_from_search_engines": false,
    "has_password": false,
    "allowed_ips": [
      "192.168.1.1",
      "10.0.0.0/8"
    ]
  },
  "success": true,
  "errors": [],
  "messages": []
}

DELETE/v1/status_pages/{status_page_id}

Delete a status page

Security: Bearer Auth

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

Example: Authorization: Bearer 123

Path parameters

status_page_id:string
Status Page ID

Responses

StatusMeaningDescription
200OKReturns the deleted OnlineOrNot Check's ID
500Internal Server ErrorInternal Server Error

Response Schema

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

Request

DELETE
/v1/status_pages/{status_page_id}
curl --request DELETE \
  --url https://api.onlineornot.com/v1/status_pages/a1b2c3d4 \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}'

Response

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

GET/v1/status_pages/{status_page_subdomain}/summary

Get a status page's overview.

This operation does not require authentication

Path parameters

status_page_subdomain:string
The subdomain part of a status page's URL

Responses

StatusMeaningDescription
200OKRetrieve the specified OnlineOrNot status page summary
404Not FoundNot found
500Internal Server ErrorInternal Server Error

Response Schema

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

Request

GET
/v1/status_pages/{status_page_subdomain}/summary
curl --request GET \
  --url https://api.onlineornot.com/v1/status_pages/hackernews/summary \
  --header 'Accept: application/json'

Response

{
  "result": {
    "status": {
      "description": "All Systems Operational"
    },
    "status_page": {
      "id": "a1b2c3d4",
      "name": "My Example SaaS",
      "subdomain": "status",
      "custom_domain": "https://status.yourdomain.com",
      "status": "ALL_SYSTEMS_OPERATIONAL",
      "favicon_url": "https://example.com/favicon.ico",
      "logo_url": "https://example.com/logo.png",
      "dark_logo_url": "https://example.com/logo-dark.png",
      "description": "Real-time status updates for My Example SaaS",
      "hide_from_search_engines": false,
      "has_password": false,
      "allowed_ips": [
        "192.168.1.1",
        "10.0.0.0/8"
      ]
    },
    "components": [
      {
        "id": "a1b2c3d4",
        "name": "Website",
        "status": "MAJOR_OUTAGE",
        "display_uptime": true,
        "display_metrics": true,
        "created_at": "2021-01-01T00:00:00.000Z",
        "updated_at": "2021-02-01T00:00:00.000Z",
        "group_id": "a1b2c3d4",
        "is_external_component": false
      }
    ],
    "active_incidents": [
      {
        "id": "a1b2c3d4",
        "title": "API is inaccessible",
        "impact": "MAJOR_OUTAGE",
        "started": "2021-01-01T00:00:00.000Z",
        "ended": "2021-02-01T00:00:00.000Z",
        "created_at": "2021-01-01T00:00:00.000Z",
        "updated_at": "2021-02-01T00:00:00.000Z"
      }
    ],
    "scheduled_maintenance": [
      {
        "id": "a1b2c3d4",
        "title": "API is inaccessible",
        "impact": "MAJOR_OUTAGE",
        "started": "2021-01-01T00:00:00.000Z",
        "ended": "2021-02-01T00:00:00.000Z",
        "created_at": "2021-01-01T00:00:00.000Z",
        "updated_at": "2021-02-01T00:00:00.000Z",
        "start_date": "2021-01-01T00:00:00.000Z",
        "duration_minutes": 60,
        "notifications": {
          "an_hour_before": false,
          "at_start": true,
          "at_end": true
        },
        "components": [
          {
            "id": "comp123",
            "name": "API Server"
          }
        ]
      }
    ]
  },
  "success": true,
  "errors": [],
  "messages": []
}

POST/v1/status_pages

Create a status page

Security: Bearer Auth

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

Example: Authorization: Bearer 123

Body parameters

name:string
Name of the Status Page
subdomain:string
The subdomain your status page will be hosted at. For example "status" would become "status.onlineornot.com"
custom_domain:string(uri)optional
The custom domain your status page is hosted at.
password:stringnulloptional
The password required to view your status page. If omitted, keeps existing password. If null or empty string, removes password protection. If non-empty string, sets new password.
description:stringoptional
A description of your status page
hide_from_search_engines:booleanoptional
Whether to hide the status page from search engines
allowed_ips:string[]optional
List of IP addresses or CIDR ranges allowed to access this status page

Responses

StatusMeaningDescription
201CreatedCreate a new OnlineOrNot Status Page
500Internal Server ErrorInternal Server Error

Response Schema

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

Request

POST
/v1/status_pages
curl --request POST \
  --url https://api.onlineornot.com/v1/status_pages \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}' \
  --header 'Content-Type: application/json' \
  --data '{"name":"My Example SaaS","subdomain":"status","custom_domain":"https://status.yourdomain.com","password":"string","description":"Real-time status updates for My Example SaaS","hide_from_search_engines":false,"allowed_ips":["192.168.1.1","10.0.0.0/8"]}'

Response

{
  "result": {
    "id": "a1b2c3d4",
    "name": "My Example SaaS",
    "subdomain": "status",
    "custom_domain": "https://status.yourdomain.com",
    "status": "ALL_SYSTEMS_OPERATIONAL",
    "favicon_url": "https://example.com/favicon.ico",
    "logo_url": "https://example.com/logo.png",
    "dark_logo_url": "https://example.com/logo-dark.png",
    "description": "Real-time status updates for My Example SaaS",
    "hide_from_search_engines": false,
    "has_password": false,
    "allowed_ips": [
      "192.168.1.1",
      "10.0.0.0/8"
    ]
  },
  "success": true,
  "errors": [],
  "messages": []
}

GET/v1/status_pages

List all status pages

Security: Bearer Auth

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

Example: Authorization: Bearer 123

Query parameters

page:stringoptional
Page number of paginated results.
Default: "1"
per_page:stringoptional
Number of items per page.
Default: "20"

Responses

StatusMeaningDescription
200OKReturns a list of OnlineOrNot Status Pages
500Internal Server ErrorInternal Server Error

Response Schema

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

Request

GET
/v1/status_pages
curl --request GET \
  --url https://api.onlineornot.com/v1/status_pages \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer {access-token}'

Response

{
  "result": [
    {
      "id": "a1b2c3d4",
      "name": "My Example SaaS",
      "subdomain": "status",
      "custom_domain": "https://status.yourdomain.com",
      "status": "ALL_SYSTEMS_OPERATIONAL",
      "favicon_url": "https://example.com/favicon.ico",
      "logo_url": "https://example.com/logo.png",
      "dark_logo_url": "https://example.com/logo-dark.png",
      "description": "Real-time status updates for My Example SaaS",
      "hide_from_search_engines": false,
      "has_password": false,
      "allowed_ips": [
        "192.168.1.1",
        "10.0.0.0/8"
      ]
    }
  ],
  "result_info": {
    "page": 1,
    "per_page": 20,
    "count": 1,
    "total_count": 1
  },
  "success": true,
  "errors": [],
  "messages": []
}

Was this page helpful?