curl --request POST \
--url 'https://api.flashcat.cloud/status-page/change/create?app_key=' \
--header 'Content-Type: application/json' \
--data '
{
"page_id": 5750613685214,
"type": "incident",
"title": "Web Console Degraded Performance",
"description": "We are investigating degraded performance affecting the web console.",
"status": "investigating",
"start_at_seconds": 1712000000,
"notify_subscribers": true,
"updates": [
{
"status": "investigating",
"description": "We are currently investigating an issue affecting some users.",
"component_changes": [
{
"component_id": "01KC3GAZ6ZJE40H55GM31RPWZE",
"status": "degraded"
}
]
}
]
}
'import requests
url = "https://api.flashcat.cloud/status-page/change/create?app_key="
payload = {
"page_id": 5750613685214,
"type": "incident",
"title": "Web Console Degraded Performance",
"description": "We are investigating degraded performance affecting the web console.",
"status": "investigating",
"start_at_seconds": 1712000000,
"notify_subscribers": True,
"updates": [
{
"status": "investigating",
"description": "We are currently investigating an issue affecting some users.",
"component_changes": [
{
"component_id": "01KC3GAZ6ZJE40H55GM31RPWZE",
"status": "degraded"
}
]
}
]
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
page_id: 5750613685214,
type: 'incident',
title: 'Web Console Degraded Performance',
description: 'We are investigating degraded performance affecting the web console.',
status: 'investigating',
start_at_seconds: 1712000000,
notify_subscribers: true,
updates: [
{
status: 'investigating',
description: 'We are currently investigating an issue affecting some users.',
component_changes: [{component_id: '01KC3GAZ6ZJE40H55GM31RPWZE', status: 'degraded'}]
}
]
})
};
fetch('https://api.flashcat.cloud/status-page/change/create?app_key=', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.flashcat.cloud/status-page/change/create?app_key=",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'page_id' => 5750613685214,
'type' => 'incident',
'title' => 'Web Console Degraded Performance',
'description' => 'We are investigating degraded performance affecting the web console.',
'status' => 'investigating',
'start_at_seconds' => 1712000000,
'notify_subscribers' => true,
'updates' => [
[
'status' => 'investigating',
'description' => 'We are currently investigating an issue affecting some users.',
'component_changes' => [
[
'component_id' => '01KC3GAZ6ZJE40H55GM31RPWZE',
'status' => 'degraded'
]
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.flashcat.cloud/status-page/change/create?app_key="
payload := strings.NewReader("{\n \"page_id\": 5750613685214,\n \"type\": \"incident\",\n \"title\": \"Web Console Degraded Performance\",\n \"description\": \"We are investigating degraded performance affecting the web console.\",\n \"status\": \"investigating\",\n \"start_at_seconds\": 1712000000,\n \"notify_subscribers\": true,\n \"updates\": [\n {\n \"status\": \"investigating\",\n \"description\": \"We are currently investigating an issue affecting some users.\",\n \"component_changes\": [\n {\n \"component_id\": \"01KC3GAZ6ZJE40H55GM31RPWZE\",\n \"status\": \"degraded\"\n }\n ]\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.flashcat.cloud/status-page/change/create?app_key=")
.header("Content-Type", "application/json")
.body("{\n \"page_id\": 5750613685214,\n \"type\": \"incident\",\n \"title\": \"Web Console Degraded Performance\",\n \"description\": \"We are investigating degraded performance affecting the web console.\",\n \"status\": \"investigating\",\n \"start_at_seconds\": 1712000000,\n \"notify_subscribers\": true,\n \"updates\": [\n {\n \"status\": \"investigating\",\n \"description\": \"We are currently investigating an issue affecting some users.\",\n \"component_changes\": [\n {\n \"component_id\": \"01KC3GAZ6ZJE40H55GM31RPWZE\",\n \"status\": \"degraded\"\n }\n ]\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.flashcat.cloud/status-page/change/create?app_key=")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"page_id\": 5750613685214,\n \"type\": \"incident\",\n \"title\": \"Web Console Degraded Performance\",\n \"description\": \"We are investigating degraded performance affecting the web console.\",\n \"status\": \"investigating\",\n \"start_at_seconds\": 1712000000,\n \"notify_subscribers\": true,\n \"updates\": [\n {\n \"status\": \"investigating\",\n \"description\": \"We are currently investigating an issue affecting some users.\",\n \"component_changes\": [\n {\n \"component_id\": \"01KC3GAZ6ZJE40H55GM31RPWZE\",\n \"status\": \"degraded\"\n }\n ]\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
"data": {
"change_id": 6294539747131,
"change_name": "API Test Incident"
}
}{
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
"error": {
"code": "InvalidParameter",
"message": "The specified parameter is not valid."
}
}{
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
"error": {
"code": "Unauthorized",
"message": "You are unauthorized."
}
}{
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
"error": {
"code": "RequestTooFrequently",
"message": "Request too frequently."
}
}{
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
"error": {
"code": "InternalError",
"message": "We encountered an internal error, and it has been reported. Please try again later."
}
}Create status page event
Create a new incident or maintenance event on a status page.
curl --request POST \
--url 'https://api.flashcat.cloud/status-page/change/create?app_key=' \
--header 'Content-Type: application/json' \
--data '
{
"page_id": 5750613685214,
"type": "incident",
"title": "Web Console Degraded Performance",
"description": "We are investigating degraded performance affecting the web console.",
"status": "investigating",
"start_at_seconds": 1712000000,
"notify_subscribers": true,
"updates": [
{
"status": "investigating",
"description": "We are currently investigating an issue affecting some users.",
"component_changes": [
{
"component_id": "01KC3GAZ6ZJE40H55GM31RPWZE",
"status": "degraded"
}
]
}
]
}
'import requests
url = "https://api.flashcat.cloud/status-page/change/create?app_key="
payload = {
"page_id": 5750613685214,
"type": "incident",
"title": "Web Console Degraded Performance",
"description": "We are investigating degraded performance affecting the web console.",
"status": "investigating",
"start_at_seconds": 1712000000,
"notify_subscribers": True,
"updates": [
{
"status": "investigating",
"description": "We are currently investigating an issue affecting some users.",
"component_changes": [
{
"component_id": "01KC3GAZ6ZJE40H55GM31RPWZE",
"status": "degraded"
}
]
}
]
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
page_id: 5750613685214,
type: 'incident',
title: 'Web Console Degraded Performance',
description: 'We are investigating degraded performance affecting the web console.',
status: 'investigating',
start_at_seconds: 1712000000,
notify_subscribers: true,
updates: [
{
status: 'investigating',
description: 'We are currently investigating an issue affecting some users.',
component_changes: [{component_id: '01KC3GAZ6ZJE40H55GM31RPWZE', status: 'degraded'}]
}
]
})
};
fetch('https://api.flashcat.cloud/status-page/change/create?app_key=', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.flashcat.cloud/status-page/change/create?app_key=",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'page_id' => 5750613685214,
'type' => 'incident',
'title' => 'Web Console Degraded Performance',
'description' => 'We are investigating degraded performance affecting the web console.',
'status' => 'investigating',
'start_at_seconds' => 1712000000,
'notify_subscribers' => true,
'updates' => [
[
'status' => 'investigating',
'description' => 'We are currently investigating an issue affecting some users.',
'component_changes' => [
[
'component_id' => '01KC3GAZ6ZJE40H55GM31RPWZE',
'status' => 'degraded'
]
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.flashcat.cloud/status-page/change/create?app_key="
payload := strings.NewReader("{\n \"page_id\": 5750613685214,\n \"type\": \"incident\",\n \"title\": \"Web Console Degraded Performance\",\n \"description\": \"We are investigating degraded performance affecting the web console.\",\n \"status\": \"investigating\",\n \"start_at_seconds\": 1712000000,\n \"notify_subscribers\": true,\n \"updates\": [\n {\n \"status\": \"investigating\",\n \"description\": \"We are currently investigating an issue affecting some users.\",\n \"component_changes\": [\n {\n \"component_id\": \"01KC3GAZ6ZJE40H55GM31RPWZE\",\n \"status\": \"degraded\"\n }\n ]\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.flashcat.cloud/status-page/change/create?app_key=")
.header("Content-Type", "application/json")
.body("{\n \"page_id\": 5750613685214,\n \"type\": \"incident\",\n \"title\": \"Web Console Degraded Performance\",\n \"description\": \"We are investigating degraded performance affecting the web console.\",\n \"status\": \"investigating\",\n \"start_at_seconds\": 1712000000,\n \"notify_subscribers\": true,\n \"updates\": [\n {\n \"status\": \"investigating\",\n \"description\": \"We are currently investigating an issue affecting some users.\",\n \"component_changes\": [\n {\n \"component_id\": \"01KC3GAZ6ZJE40H55GM31RPWZE\",\n \"status\": \"degraded\"\n }\n ]\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.flashcat.cloud/status-page/change/create?app_key=")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"page_id\": 5750613685214,\n \"type\": \"incident\",\n \"title\": \"Web Console Degraded Performance\",\n \"description\": \"We are investigating degraded performance affecting the web console.\",\n \"status\": \"investigating\",\n \"start_at_seconds\": 1712000000,\n \"notify_subscribers\": true,\n \"updates\": [\n {\n \"status\": \"investigating\",\n \"description\": \"We are currently investigating an issue affecting some users.\",\n \"component_changes\": [\n {\n \"component_id\": \"01KC3GAZ6ZJE40H55GM31RPWZE\",\n \"status\": \"degraded\"\n }\n ]\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
"data": {
"change_id": 6294539747131,
"change_name": "API Test Incident"
}
}{
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
"error": {
"code": "InvalidParameter",
"message": "The specified parameter is not valid."
}
}{
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
"error": {
"code": "Unauthorized",
"message": "You are unauthorized."
}
}{
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
"error": {
"code": "RequestTooFrequently",
"message": "Request too frequently."
}
}{
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4",
"error": {
"code": "InternalError",
"message": "We encountered an internal error, and it has been reported. Please try again later."
}
}Restrictions
| Aspect | Value |
|---|---|
| Rate limits | 1,000 requests/minute; 50 requests/second per account |
| Permissions | Status Pages Events Manage (on-call) |
Authorizations
App key issued from the Flashduty console under Account → APP Keys. Required on every public API call. Keep it secret — it grants the same access as the owning account.
Body
Parameters for creating a status page incident or maintenance event. The first update must contain component_changes to define affected components; retrospective events require at least 2 updates.
Status page ID.
Event type.
incident, maintenance Event title, up to 255 characters.
255Initial event status. investigating/identified/monitoring/resolved apply to incidents; scheduled/ongoing/completed apply to maintenances.
investigating, identified, monitoring, resolved, scheduled, ongoing, completed Timeline updates. Immediate events normally pass one update; retrospective events must pass all historical updates.
Show child attributes
Show child attributes
Event description (Markdown). Required by the validator.
Event start time in unix seconds. Defaults to now when omitted.
Member IDs responsible for this event.
Linked change IDs (related incidents, deployments, etc.).
Scheduled close time for retrospective events. Must be greater than start_at_seconds.
Notify subscribers about this event and all its updates.
Maintenance only: automatically advance the status based on the scheduled window.
Mark this event as a retrospective (historical) one.
Response
Success
Success response envelope. On every 2xx response, request_id identifies the call (also mirrored in the Flashcat-Request-Id header) and data holds the endpoint-specific payload. Failure responses use a different shape — see ErrorResponse.
Was this page helpful?