Notices
New notices should be created for each incident, maintenance or general notice you want listed on your status page, with additional comments added or state changes made using PUT requests.
Note: Creating new notices, and updating existing notices will trigger their publication not only to the Status Page but also to any configured integrations such as X (Twitter), Email, SMS, MS Teams, Slack and Google Chat.
Endpoints
https://api.sorryapp.com/v1/pages/:page_id/notices/
https://api.sorryapp.com/v1/pages/:page_id/notices/:notice_id
Objects
These are the attributes which represent the object, most of which can be posted too and received in response to the available methods.
Properties
- Name
id
- Description
The unique identifier for the notices.
- Name
type
- Description
Either 'planned' or 'unplanned', planned notices include expected start times and durations, often used for maintenance.
- Name
subject
- Description
The subject for a notice i.e. API Performance Issues
- Name
synopsis
- Description
A short description of the notice, taken from the first comment/update.
- Name
state
- Description
The current state of the notice. Available states depend on the notice type. For planned: 'scheduled', 'underway', 'complete' and for unplanned: 'investigating', 'identified', 'recovering', 'resolved' and 'false_alarm'
- Name
timeline_state
- Description
This gives you an idea of whether a notice is 'future', 'present', 'past_recent' or 'past_distant'. Past notices are those which are closed or resolved, _recent and _distant depend on whether it was closed in the past 7 days, or previously. (Read-only)
- Name
begins_at
- Description
The date/time a planned notice is expected to go underway.
- Name
ends_at
- Description
The date/time a planned notice is expected to be complete.
- Name
began_at
- Description
The date/time the notice was opened (if unplanned), or went underway (if planned).
- Name
ended_at
- Description
The date/time the notice was closed (if unplanned), or was complete (if planned).
- Name
should_automate_schedule
- Description
A boolean to determine if planned notices should automatically switch to 'underway' and 'complete' at the scheduled times.
- Name
created_at
- Description
The date/time the record was created.
- Name
updated_at
- Description
The date/time the record was last updated.
- Name
link
- Description
A permanent link to the notice on the public status page.
- Name
include
- Description
components, updates
List notices
This endpoint displays a list of all subscribers in a single status page.
Request
curl -X GET https://api.sorryapp.com/v1/pages/12ab34cd/notices \
-H "Authorization: Bearer {token}"
Response
{
"response": [
{
"id": 432500,
"type": "unplanned",
"state": "investigating",
"timeline_state": "present",
"subject": "Investigating issues with Customer Portal",
"synopsis": "We know some customers are experiencing an unexpected issue with the Customer Portal. We are actively investigating the cause. We will provide updates as soon as we know more. Thank you for your patience.\n",
"link": "https://status.acme.com/notices/shkx7ggxfur0uewo-investigating-issues-with-customer-portal",
"began_at": "2025-01-27T13:30:27.650Z",
"ended_at": null,
"created_at": "2025-01-27T13:30:27.667Z",
"updated_at": "2025-01-27T13:30:39.874Z",
"tag_list": []
},
{
"id": 432499,
"type": "planned",
"state": "complete",
"timeline_state": "past_recent",
"subject": "DNS Maintenance",
"synopsis": "We will be performing maintenance on [month] [day] starting at [time] for [minutes/hours]. During this time, the [service] will be unavailable or degraded. We will provide updates in this notice as the maintenance progresses. \n",
"link": "https://status.acme.com/notices/pmtjhjemrjolot2e-dns-maintenance",
"began_at": "2025-01-27T13:34:54.398Z",
"ended_at": "2025-01-30T15:28:00.180Z",
"created_at": "2025-01-27T13:28:49.104Z",
"updated_at": "2025-01-30T15:28:00.199Z",
"tag_list": [],
"begins_at": "2025-01-29T13:28:00.000Z",
"ends_at": "2025-01-30T15:28:00.000Z",
"should_automate_schedule": true
}
],
"count": 2
}
Including components
To include a list of affected components in a notice, append ?include=components onto the end of the endpoint. This will return an array list of components.
Request
curl -X GET https://api.sorryapp.com/v1/pages/12ab34cd/notices?include=components \
-H "Authorization: Bearer {token}"
Create a notice
This endpoint allows you to create a new notice. The example includes passing through a list of components.
Optional attributes
- Name
initial_comment
- Description
Pass this to create a single update to introduce the notice.
- Name
should_publish
- Description
Boolean, Send these changes out through Email, Slack Twitter etc.
- Name
component_ids
- Description
An array of numeric IDs for the components which are affected by this incident. The component will then be 'degraded' the whole time the notice is ongoing. i.e. [1, 2, 3]
- Name
begins_at_date
- Description
planned only The date that the planned notice should start. In the format 'YYYY-MM-DD'. i.e. '2019-01-29'
- Name
begins_at_time
- Description
planned only The time that the planned notice should start. In the 24 hour format 'HH:MM:SS'. i.e. '16:30:00'
- Name
duration_in_minutes
- Description
planned only The number of minutes that the maintenance is expected to last.
Request
curl -X POST https://api.sorryapp.com/v1/pages/12ab34cd/notices \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {token}' \
-d "{"type":"unplanned",
"subject":"API Performance Issues",
"initial_comment":"Some people are experiencing problems with our service right now. We\'re so sorry about that. Please standby for further updates, and we\'ll be in touch as soon as we know more.",
"should_publish":"1",
"component_ids":[85878,85879]
}"
Response
{
"response": {
"id": 433244,
"type": "unplanned",
"state": "investigating",
"timeline_state": "present",
"subject": "API Performance Issues",
"synopsis": "Some people are experiencing problems with our service right now. We're so sorry about that. Please standby for further updates, and we'll be in touch as soon as we know more.\n",
"link": "https://status.acme.com/notices/nrcuzirp2fpmyokw-api-performance-issues",
"began_at": "2025-02-03T14:04:17.145Z",
"ended_at": null,
"created_at": "2025-02-03T14:04:17.163Z",
"updated_at": "2025-02-03T14:04:17.229Z",
"tag_list": []
}
}
Retrieve a notice
This endpoint allows you to retrieve a single notice.
Request
curl -X GET https://api.sorryapp.com/v1/pages/12ab34cd/notices/433244 \
-H "Authorization: Bearer {token}"
Response
{
"response": {
"id": 433244,
"type": "unplanned",
"state": "investigating",
"timeline_state": "present",
"subject": "API Performance Issues",
"synopsis": "Some people are experiencing problems with our service right now. We're so sorry about that. Please standby for further updates, and we'll be in touch as soon as we know more.\n",
"link": "https://status.acme.com/notices/nrcuzirp2fpmyokw-api-performance-issues",
"began_at": "2025-02-03T14:04:17.145Z",
"ended_at": null,
"created_at": "2025-02-03T14:04:17.163Z",
"updated_at": "2025-02-03T14:04:17.229Z",
"tag_list": []
}
}
Update a notice
This endpoint allows you to update a notice's details.
Optional attributes
- Name
additional_comment
- Description
Pass this to create a single update to introduce the notice.
- Name
state
- Description
Allows you to change the state of the notice.
- Name
should_publish
- Description
Boolean, Send these changes out through Email, Slack Twitter etc.
- Name
component_ids
- Description
An array of numeric IDs for the components which are affected by this incident. The component will then be 'degraded' the whole time the notice is ongoing. i.e. [1, 2, 3]
- Name
begins_at_date
- Description
planned only The date that the planned notice should start. In the format 'YYYY-MM-DD'. i.e. '2019-01-29'
- Name
begins_at_time
- Description
planned only The time that the planned notice should start. In the 24 hour format 'HH:MM:SS'. i.e. '16:30:00'
- Name
duration_in_minutes
- Description
planned only The number of minutes that the maintenance is expected to last.
Request
curl -X PATCH https://api.sorryapp.com/v1/pages/12ab34cd/notices/433244 \
-d subject="API v1 Performance Issues" \
-H "Authorization: Bearer {token}"
Response
{
"response": {
"id": 433244,
"type": "unplanned",
"state": "investigating",
"timeline_state": "present",
"subject": "API v1 Performance Issues",
"synopsis": "Some people are experiencing problems with our service right now. We're so sorry about that. Please standby for further updates, and we'll be in touch as soon as we know more.\n",
"link": "https://status.acme.com/notices/r9cjlguanrtr5duc-api-v1-performance-issues",
"began_at": "2025-02-03T14:04:17.145Z",
"ended_at": null,
"created_at": "2025-02-03T14:04:17.163Z",
"updated_at": "2025-02-03T14:18:34.146Z",
"tag_list": []
}
}
Delete a notice
This endpoint allows you to delete a notice.
Request
curl -X DELETE https://api.sorryapp.com/v1/pages/12ab34cd/notices/433244 \
-H "Authorization: Bearer {token}"