Status Page Resources API

Manage your status page resources using a simple HTTP API.

Do you need help with the integration?

Let us know at [email protected]

Obtaining an API token

Please, see Obtaining an API token.

get
Listing existing resources of a status page

https://betteruptime.com/api/v2/status-pages/:status_page_id/resources
Returns a list of the resources of your status page.
Request
Response
Request
Path Parameters
status_page_id
required
string
The ID of your status page
Headers
Authorization
required
string
Bearer YOUR_API_TOKEN
Response
200: OK
Returns a list of the resources of your status page.
{
"data": [
{
"id": "12345",
"type": "status_page_resource",
"attributes": {
"resource_id": 112233,
"resource_type": "Monitor",
"public_name": "https://betteruptime.com/",
"explanation": "",
"history": true,
"widget_type": "history",
"position": 0
}
},
{
"id": "12346",
"type": "status_page_resource",
"attributes": {
"resource_id": 112234,
"resource_type": "Monitor",
"public_name": "https://wallmine.com/",
"explanation": "",
"history": true,
"widget_type": "history",
"position": 1
}
}
],
"pagination": {
"first": "https://betteruptime.com/api/v2/status-pages/123456789/resources?page=1",
"last": "https://betteruptime.com/api/v2/status-pages/123456789/resources?page=1",
"prev": null,
"next": null
}
}
Example cURL
Example cURL
curl --request GET \
--url https://betteruptime.com/api/v2/status-pages/123456789/resources \
--header 'Authorization: Bearer YOUR_API_TOKEN'

get
Getting a single status page resource

https://betteruptime.com/api/v2/status-pages/:status_page_id/resources/:resource_id
Returns a single status page resource
Request
Response
Request
Path Parameters
status_page_id
required
string
The ID of your status page
resource_Id
required
string
The ID of the resource you want to get
Headers
Authorization
required
string
Bearer YOUR_API_TOKEN
Response
200: OK
Returns a single status page resource
{
"data": {
"id": "12345",
"type": "status_page_resource",
"attributes": {
"resource_id": 112233,
"resource_type": "Monitor",
"public_name": "https://betteruptime.com/",
"explanation": "",
"history": true,
"widget_type": "history",
"position": 0
}
}
}
Example cURL
Example cURL
curl --request GET \
--url https://betteruptime.com/api/v2/status-pages/123456789/resources/12345 \
--header 'Authorization: Bearer YOUR_API_TOKEN'

post
Creating a new status page resource

https://betteruptime.com/api/v2/status-pages/:status_page_id/resources
Returns a newly created status page resource.
Request
Response
Request
Path Parameters
status_page_id
required
string
The ID of your status page
Headers
Authorization
required
string
Bearer YOUR_API_TOKEN
Content-Type
required
string
application/json
Form Data Parameters
status_page_section_id
optional
integer
The ID of the section which should contain this resource. When omitted, defaults to the first section on the status page.
widget_type
optional
string
What widget to display for this resource. Expects one of three values: plain - only display status history - display detailed historical status response_times - add a response times chart (only for Monitor . This takes preference over history when both parameters are present.
resource_id
required
string
The ID of the resource you are adding
resource_type
required
string
The type of the resource you are adding. Available values: Monitor, Heartbeat, WebhookIntegration, EmailIntegration
public_name
required
string
The resource name displayed publicly on your status page.
explanation
optional
string
A detailed text displayed as a help icon.
history (deprecated)
optional
boolean
Do you want to show the incident history for this item? Default: true Deprecated; please use widget_type for this setting.
position
optional
integer
The position of this resource on your status page, indexed from zero. If you don't specify a position, we add the resource to the end of the status page. When you specify a position of an existing resource, we add the resource to this position and shift resources below to accommodate.
Response
201: Created
{
"id": "12345",
"type": "resource",
"attributes": {
"resource_id": 112233,
"resource_type": "Monitor",
"public_name": "The best monitor",
"explanation": "Hide easter eggs here",
"history": false,
"widget_type": "plain",
"position": 0
}
}
Example cURL
Example cURL
curl --request POST \
--url https://betteruptime.com/api/v2/status-pages/123456789/resources \
--header 'Authorization: Bearer YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"resource_id": "112233",
"resource_type": "Monitor",
"public_name": "The best monitor",
"explanation": "Hide easter eggs here",
"history": false,
"position": 0
}'

patch
Updating an existing status page resource

https://betteruptime.com/api/v2/status-pages/:status_page_id/resources/:resource_id
Update an existing status page resource. Send only the parameters you wish to change (e.g. public_name), and note that resource_id and resource_type should be sent together.
Request
Response
Request
Path Parameters
status_page_id
required
string
The ID of your status page
resource_id
required
string
The resource you want to update
Headers
Authorization
required
string
Bearer YOUR_API_TOKEN
Content-Type
required
string
application/json
Form Data Parameters
status_page_section_id
optional
integer
The ID of the section which should contain this resource. When omitted, defaults to the first section on the status page.
widget_type
optional
string
What widget to display for this resource. Expects one of three values: plain - only display status history - display detailed historical status response_times - add a response times chart (only for Monitor. This takes preference over history when both parameters are present.
resource_id
optional
string
The ID of the resource you are adding
resource_type
optional
string
The type of the resource you are adding Available values: Monitor, Heartbeat, WebhookIntegration, EmailIntegration
public_name
optional
string
The resource name displayed publicly on your status page
explanation
optional
string
A detailed text displayed as a help icon
history (deprecated)
optional
string
Do you want to show the 90-day incident history for this item? Default: true Deprecated; please use widget_type for this setting.
position
optional
integer
The position of this resource on your status page, indexed from zero. If you don't specify a position, we add the resource to the end of the status page. When you specify a position of an existing resource, we add the resource to this position and shift resources below to accommodate.
Response
200: OK
{
"id": "12345",
"type": "resource",
"attributes": {
"resource_id": 112233,
"resource_type": "Monitor",
"public_name": "My great monitor, updated",
"explanation": "Hide easter eggs here",
"history": false,
"widget_type": "plain",
"position": 0
}
}
Example cURL
Example cURL
curl --request PATCH \
--url https://betteruptime.com/api/v2/status-pages/123456789/resources/12345 \
--header 'Authorization: Bearer YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"public_name": "My great monitor, updated"
}'

delete
Deleting an existing status page resource

https://betteruptime.com/api/v2/status-pages/:status_page_id/resources/:resource_id
Permanently deletes a status page resource.
Request
Response
Request
Path Parameters
status_page_id
required
string
The ID of your status page
resource_id
required
string
The ID of the resource you want to delete
Headers
Authorization
required
string
Bearer YOUR_API_TOKEN
Response
204: No Content
Returns empty body
Example cURL
Example cURL
curl --request DELETE \
--url https://betteruptime.com/api/v2/status-pages/123456789/resources/12345 \
--header 'Authorization: Bearer YOUR_API_TOKEN'