Introduction
This documentation aims to provide all the information you need to work with our API.
<aside>As you scroll, you'll see code examples for working with the API in different programming languages in the dark area to the right (or as part of the content on mobile).
You can switch the language used with the tabs at the top right (or from the nav menu at the top left on mobile).</aside>
Authenticating requests
To authenticate requests, include an Authorization header with the value "Bearer {YOUR_AUTH_KEY}".
All authenticated endpoints are marked with a requires authentication badge in the documentation below.
You can generate an API token in your dashboard under API Tokens. Pass it as Authorization: Bearer YOUR_TOKEN and set the X-Tenant-Id header to scope requests to a workspace.
Endpoints
Get the current statuspage details.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/statuspage" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/statuspage"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update the statuspage settings.
requires authentication
Example request:
curl --request PATCH \
"https://statuswerk.eu/api/v1/statuspage" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"b\",
\"timezone\": \"Asia\\/Ulaanbaatar\",
\"language\": \"gzmiyv\",
\"is_public\": false,
\"allow_subscriptions\": true,
\"show_uptime\": false,
\"uptime_days_to_show\": 1,
\"allow_email_subscribers\": false,
\"allow_sms_subscribers\": false,
\"allow_webhook_subscribers\": true,
\"allow_rss_subscribers\": true,
\"meta_title\": \"l\",
\"meta_description\": \"j\"
}"
const url = new URL(
"https://statuswerk.eu/api/v1/statuspage"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "b",
"timezone": "Asia\/Ulaanbaatar",
"language": "gzmiyv",
"is_public": false,
"allow_subscriptions": true,
"show_uptime": false,
"uptime_days_to_show": 1,
"allow_email_subscribers": false,
"allow_sms_subscribers": false,
"allow_webhook_subscribers": true,
"allow_rss_subscribers": true,
"meta_title": "l",
"meta_description": "j"
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get overall status summary (useful for CI/CD checks).
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/statuspage/status" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/statuspage/status"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List all components.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/components" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/components"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new component.
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/components" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"b\",
\"description\": \"Et animi quos velit et fugiat.\",
\"group_id\": \"5707ca55-f609-3528-be8b-1baeaee1567e\",
\"status\": \"partial_outage\",
\"position\": 9,
\"show_uptime\": false,
\"uptime_start_date\": \"2026-09-10T11:02:16\",
\"visible\": true
}"
const url = new URL(
"https://statuswerk.eu/api/v1/components"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "b",
"description": "Et animi quos velit et fugiat.",
"group_id": "5707ca55-f609-3528-be8b-1baeaee1567e",
"status": "partial_outage",
"position": 9,
"show_uptime": false,
"uptime_start_date": "2026-09-10T11:02:16",
"visible": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get a specific component.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/components/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/components/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update a component.
requires authentication
Example request:
curl --request PUT \
"https://statuswerk.eu/api/v1/components/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"b\",
\"description\": \"Et animi quos velit et fugiat.\",
\"group_id\": \"5707ca55-f609-3528-be8b-1baeaee1567e\",
\"status\": \"partial_outage\",
\"position\": 9,
\"show_uptime\": false,
\"uptime_start_date\": \"2026-09-10T11:02:16\",
\"visible\": true
}"
const url = new URL(
"https://statuswerk.eu/api/v1/components/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "b",
"description": "Et animi quos velit et fugiat.",
"group_id": "5707ca55-f609-3528-be8b-1baeaee1567e",
"status": "partial_outage",
"position": 9,
"show_uptime": false,
"uptime_start_date": "2026-09-10T11:02:16",
"visible": true
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete a component.
requires authentication
Example request:
curl --request DELETE \
"https://statuswerk.eu/api/v1/components/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/components/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update component status (CI/CD-friendly endpoint).
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/components/architecto/status" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"status\": \"major_outage\"
}"
const url = new URL(
"https://statuswerk.eu/api/v1/components/architecto/status"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"status": "major_outage"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Reorder components.
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/components/reorder" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"components\": [
{
\"id\": \"6ff8f7f6-1eb3-3525-be4a-3932c805afed\",
\"position\": 84
}
]
}"
const url = new URL(
"https://statuswerk.eu/api/v1/components/reorder"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"components": [
{
"id": "6ff8f7f6-1eb3-3525-be4a-3932c805afed",
"position": 84
}
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List all component groups.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/component-groups" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/component-groups"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new component group.
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/component-groups" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"b\",
\"description\": \"Et animi quos velit et fugiat.\",
\"position\": 42,
\"collapsed_by_default\": true,
\"visible\": true
}"
const url = new URL(
"https://statuswerk.eu/api/v1/component-groups"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "b",
"description": "Et animi quos velit et fugiat.",
"position": 42,
"collapsed_by_default": true,
"visible": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get a specific component group.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/component-groups/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/component-groups/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update a component group.
requires authentication
Example request:
curl --request PUT \
"https://statuswerk.eu/api/v1/component-groups/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"b\",
\"description\": \"Et animi quos velit et fugiat.\",
\"position\": 42,
\"collapsed_by_default\": false,
\"visible\": true
}"
const url = new URL(
"https://statuswerk.eu/api/v1/component-groups/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "b",
"description": "Et animi quos velit et fugiat.",
"position": 42,
"collapsed_by_default": false,
"visible": true
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete a component group.
requires authentication
Example request:
curl --request DELETE \
"https://statuswerk.eu/api/v1/component-groups/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/component-groups/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List all incidents.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/incidents" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/incidents"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new incident.
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/incidents" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"title\": \"b\",
\"message\": \"n\",
\"status\": \"resolved\",
\"severity\": \"major\",
\"impact\": \"g\",
\"visible\": true,
\"stickied\": true,
\"notify_subscribers\": false,
\"occurred_at\": \"2026-09-10T11:02:16\",
\"components\": [
{
\"id\": \"c90237e9-ced5-3af6-88ea-84aeaa148878\",
\"status\": \"degraded_performance\"
}
]
}"
const url = new URL(
"https://statuswerk.eu/api/v1/incidents"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"title": "b",
"message": "n",
"status": "resolved",
"severity": "major",
"impact": "g",
"visible": true,
"stickied": true,
"notify_subscribers": false,
"occurred_at": "2026-09-10T11:02:16",
"components": [
{
"id": "c90237e9-ced5-3af6-88ea-84aeaa148878",
"status": "degraded_performance"
}
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get a specific incident.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/incidents/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/incidents/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update an incident.
requires authentication
Example request:
curl --request PUT \
"https://statuswerk.eu/api/v1/incidents/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"title\": \"b\",
\"message\": \"n\",
\"status\": \"investigating\",
\"severity\": \"major\",
\"impact\": \"g\",
\"visible\": true,
\"stickied\": false,
\"notify_subscribers\": true,
\"components\": [
{
\"id\": \"c90237e9-ced5-3af6-88ea-84aeaa148878\",
\"status\": \"operational\"
}
]
}"
const url = new URL(
"https://statuswerk.eu/api/v1/incidents/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"title": "b",
"message": "n",
"status": "investigating",
"severity": "major",
"impact": "g",
"visible": true,
"stickied": false,
"notify_subscribers": true,
"components": [
{
"id": "c90237e9-ced5-3af6-88ea-84aeaa148878",
"status": "operational"
}
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete an incident.
requires authentication
Example request:
curl --request DELETE \
"https://statuswerk.eu/api/v1/incidents/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/incidents/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List all updates for an incident.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/incidents/architecto/updates" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/incidents/architecto/updates"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new incident update.
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/incidents/architecto/updates" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"status\": \"identified\",
\"message\": \"b\",
\"notify_subscribers\": true
}"
const url = new URL(
"https://statuswerk.eu/api/v1/incidents/architecto/updates"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"status": "identified",
"message": "b",
"notify_subscribers": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Resolve an incident (CI/CD-friendly endpoint).
requires authentication
Example request:
curl --request PATCH \
"https://statuswerk.eu/api/v1/incidents/architecto/resolve" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"message\": \"b\",
\"notify_subscribers\": false
}"
const url = new URL(
"https://statuswerk.eu/api/v1/incidents/architecto/resolve"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"message": "b",
"notify_subscribers": false
};
fetch(url, {
method: "PATCH",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List all incident templates.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/incident-templates" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/incident-templates"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new incident template.
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/incident-templates" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"b\",
\"title_template\": \"n\",
\"message_template\": \"g\",
\"default_status\": \"monitoring\",
\"default_severity\": \"minor\",
\"visible\": false,
\"stickied\": false,
\"notify_subscribers\": false,
\"default_component_ids\": [
\"c90237e9-ced5-3af6-88ea-84aeaa148878\"
]
}"
const url = new URL(
"https://statuswerk.eu/api/v1/incident-templates"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "b",
"title_template": "n",
"message_template": "g",
"default_status": "monitoring",
"default_severity": "minor",
"visible": false,
"stickied": false,
"notify_subscribers": false,
"default_component_ids": [
"c90237e9-ced5-3af6-88ea-84aeaa148878"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get a specific incident template.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/incident-templates/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/incident-templates/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update an incident template.
requires authentication
Example request:
curl --request PUT \
"https://statuswerk.eu/api/v1/incident-templates/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"b\",
\"title_template\": \"n\",
\"message_template\": \"g\",
\"default_status\": \"identified\",
\"default_severity\": \"minor\",
\"visible\": false,
\"stickied\": true,
\"notify_subscribers\": true,
\"default_component_ids\": [
\"c90237e9-ced5-3af6-88ea-84aeaa148878\"
]
}"
const url = new URL(
"https://statuswerk.eu/api/v1/incident-templates/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "b",
"title_template": "n",
"message_template": "g",
"default_status": "identified",
"default_severity": "minor",
"visible": false,
"stickied": true,
"notify_subscribers": true,
"default_component_ids": [
"c90237e9-ced5-3af6-88ea-84aeaa148878"
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete an incident template.
requires authentication
Example request:
curl --request DELETE \
"https://statuswerk.eu/api/v1/incident-templates/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/incident-templates/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Open an incident from this template.
requires authentication
The endpoint CI/CD and alerting hooks use: name the template, optionally pass variables for the placeholders, and every other field comes from the template.
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/incident-templates/architecto/apply" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"occurred_at\": \"2026-09-10T11:02:16\",
\"variables\": [
\"b\"
]
}"
const url = new URL(
"https://statuswerk.eu/api/v1/incident-templates/architecto/apply"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"occurred_at": "2026-09-10T11:02:16",
"variables": [
"b"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List all scheduled maintenances.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/maintenances" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/maintenances"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new scheduled maintenance.
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/maintenances" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"title\": \"b\",
\"message\": \"n\",
\"scheduled_start_at\": \"2052-10-03\",
\"scheduled_end_at\": \"2052-10-03\",
\"auto_start\": true,
\"auto_complete\": true,
\"notify_subscribers\": true,
\"notify_at_scheduled\": false,
\"send_reminder_1h\": false,
\"notify_at_start\": true,
\"notify_at_end\": false,
\"update_component_status\": false,
\"component_ids\": [
\"a4855dc5-0acb-33c3-b921-f4291f719ca0\"
]
}"
const url = new URL(
"https://statuswerk.eu/api/v1/maintenances"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"title": "b",
"message": "n",
"scheduled_start_at": "2052-10-03",
"scheduled_end_at": "2052-10-03",
"auto_start": true,
"auto_complete": true,
"notify_subscribers": true,
"notify_at_scheduled": false,
"send_reminder_1h": false,
"notify_at_start": true,
"notify_at_end": false,
"update_component_status": false,
"component_ids": [
"a4855dc5-0acb-33c3-b921-f4291f719ca0"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get a specific maintenance.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/maintenances/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/maintenances/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update a maintenance.
requires authentication
Example request:
curl --request PUT \
"https://statuswerk.eu/api/v1/maintenances/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"title\": \"b\",
\"message\": \"n\",
\"scheduled_start_at\": \"2026-09-10T11:02:16\",
\"scheduled_end_at\": \"2052-10-03\",
\"auto_start\": true,
\"auto_complete\": true,
\"notify_subscribers\": false,
\"notify_at_scheduled\": false,
\"send_reminder_1h\": false,
\"notify_at_start\": false,
\"notify_at_end\": false,
\"update_component_status\": false,
\"component_ids\": [
\"a4855dc5-0acb-33c3-b921-f4291f719ca0\"
]
}"
const url = new URL(
"https://statuswerk.eu/api/v1/maintenances/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"title": "b",
"message": "n",
"scheduled_start_at": "2026-09-10T11:02:16",
"scheduled_end_at": "2052-10-03",
"auto_start": true,
"auto_complete": true,
"notify_subscribers": false,
"notify_at_scheduled": false,
"send_reminder_1h": false,
"notify_at_start": false,
"notify_at_end": false,
"update_component_status": false,
"component_ids": [
"a4855dc5-0acb-33c3-b921-f4291f719ca0"
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete a maintenance.
requires authentication
Example request:
curl --request DELETE \
"https://statuswerk.eu/api/v1/maintenances/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/maintenances/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Start a maintenance (CI/CD-friendly endpoint).
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/maintenances/architecto/start" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/maintenances/architecto/start"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Complete a maintenance (CI/CD-friendly endpoint).
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/maintenances/architecto/complete" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/maintenances/architecto/complete"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List all maintenance templates.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/maintenance-templates" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/maintenance-templates"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new maintenance template.
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/maintenance-templates" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"b\",
\"title_template\": \"n\",
\"message_template\": \"g\",
\"default_duration_minutes\": 16,
\"notify_subscribers\": true,
\"send_reminder_1h\": true,
\"auto_start\": false,
\"notify_at_start\": false,
\"auto_complete\": false,
\"notify_at_end\": false,
\"update_component_status\": false,
\"default_component_ids\": [
\"977e5426-8d13-3824-86aa-b092f8ae52c5\"
]
}"
const url = new URL(
"https://statuswerk.eu/api/v1/maintenance-templates"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "b",
"title_template": "n",
"message_template": "g",
"default_duration_minutes": 16,
"notify_subscribers": true,
"send_reminder_1h": true,
"auto_start": false,
"notify_at_start": false,
"auto_complete": false,
"notify_at_end": false,
"update_component_status": false,
"default_component_ids": [
"977e5426-8d13-3824-86aa-b092f8ae52c5"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get a specific maintenance template.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/maintenance-templates/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/maintenance-templates/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update a maintenance template.
requires authentication
Example request:
curl --request PUT \
"https://statuswerk.eu/api/v1/maintenance-templates/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"b\",
\"title_template\": \"n\",
\"message_template\": \"g\",
\"default_duration_minutes\": 16,
\"notify_subscribers\": false,
\"send_reminder_1h\": false,
\"auto_start\": true,
\"notify_at_start\": false,
\"auto_complete\": true,
\"notify_at_end\": true,
\"update_component_status\": true,
\"default_component_ids\": [
\"977e5426-8d13-3824-86aa-b092f8ae52c5\"
]
}"
const url = new URL(
"https://statuswerk.eu/api/v1/maintenance-templates/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "b",
"title_template": "n",
"message_template": "g",
"default_duration_minutes": 16,
"notify_subscribers": false,
"send_reminder_1h": false,
"auto_start": true,
"notify_at_start": false,
"auto_complete": true,
"notify_at_end": true,
"update_component_status": true,
"default_component_ids": [
"977e5426-8d13-3824-86aa-b092f8ae52c5"
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete a maintenance template.
requires authentication
Example request:
curl --request DELETE \
"https://statuswerk.eu/api/v1/maintenance-templates/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/maintenance-templates/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a scheduled maintenance from this template.
requires authentication
This is the endpoint CI/CD and schedulers use: pick the template, give it a start time, and every other field comes from the template.
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/maintenance-templates/architecto/apply" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"scheduled_start_at\": \"2026-09-10T11:02:16\",
\"scheduled_end_at\": \"2052-10-03\",
\"variables\": [
\"n\"
]
}"
const url = new URL(
"https://statuswerk.eu/api/v1/maintenance-templates/architecto/apply"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"scheduled_start_at": "2026-09-10T11:02:16",
"scheduled_end_at": "2052-10-03",
"variables": [
"n"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
GET api/v1/metrics
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/metrics" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/metrics"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
POST api/v1/metrics
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/metrics" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"key\": \"b\",
\"name\": \"n\",
\"suffix\": \"gzmiyvdljnikhway\",
\"decimals\": 1,
\"aggregation\": \"avg\",
\"description\": \"Omnis nostrum aut adipisci quidem nostrum qui commodi.\",
\"visible\": false,
\"position\": 3,
\"y_axis_min\": 4326.41688,
\"y_axis_max\": 4326.41688
}"
const url = new URL(
"https://statuswerk.eu/api/v1/metrics"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"key": "b",
"name": "n",
"suffix": "gzmiyvdljnikhway",
"decimals": 1,
"aggregation": "avg",
"description": "Omnis nostrum aut adipisci quidem nostrum qui commodi.",
"visible": false,
"position": 3,
"y_axis_min": 4326.41688,
"y_axis_max": 4326.41688
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
GET api/v1/metrics/{metricKey}
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/metrics/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/metrics/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
PUT api/v1/metrics/{metricKey}
requires authentication
Example request:
curl --request PUT \
"https://statuswerk.eu/api/v1/metrics/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"key\": \"b\",
\"name\": \"n\",
\"suffix\": \"gzmiyvdljnikhway\",
\"decimals\": 1,
\"aggregation\": \"min\",
\"description\": \"Omnis nostrum aut adipisci quidem nostrum qui commodi.\",
\"visible\": false,
\"position\": 3,
\"y_axis_min\": 4326.41688,
\"y_axis_max\": 4326.41688
}"
const url = new URL(
"https://statuswerk.eu/api/v1/metrics/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"key": "b",
"name": "n",
"suffix": "gzmiyvdljnikhway",
"decimals": 1,
"aggregation": "min",
"description": "Omnis nostrum aut adipisci quidem nostrum qui commodi.",
"visible": false,
"position": 3,
"y_axis_min": 4326.41688,
"y_axis_max": 4326.41688
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
DELETE api/v1/metrics/{metricKey}
requires authentication
Example request:
curl --request DELETE \
"https://statuswerk.eu/api/v1/metrics/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/metrics/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Push one point or a batch.
requires authentication
Idempotent: points are bucketed on write, so a client retrying a failed request overwrites rather than duplicates.
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/metrics/architecto/points" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"points\": [
{
\"value\": 4326.41688,
\"timestamp\": \"2026-09-10T11:02:16\"
}
]
}"
const url = new URL(
"https://statuswerk.eu/api/v1/metrics/architecto/points"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"points": [
{
"value": 4326.41688,
"timestamp": "2026-09-10T11:02:16"
}
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Read points back, for the customer's own dashboards or to verify an import.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/metrics/architecto/points" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"from\": \"2026-09-10T11:02:16\",
\"to\": \"2026-09-10T11:02:16\",
\"resolution\": 16
}"
const url = new URL(
"https://statuswerk.eu/api/v1/metrics/architecto/points"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"from": "2026-09-10T11:02:16",
"to": "2026-09-10T11:02:16",
"resolution": 16
};
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List all subscribers.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/subscribers" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/subscribers"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new subscriber.
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/subscribers" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"email\": \"gbailey@example.net\",
\"phone\": \"m\",
\"webhook_url\": \"https:\\/\\/www.gulgowski.com\\/nihil-accusantium-harum-mollitia-modi-deserunt\",
\"webhook_type\": \"generic\",
\"webhook_secret\": \"w\",
\"channels\": [
\"sms\"
],
\"component_ids\": [
\"3c85cf54-98c1-36ed-b65a-abaafdecdfa9\"
],
\"locale\": \"es_MX\",
\"skip_verification\": true
}"
const url = new URL(
"https://statuswerk.eu/api/v1/subscribers"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"email": "gbailey@example.net",
"phone": "m",
"webhook_url": "https:\/\/www.gulgowski.com\/nihil-accusantium-harum-mollitia-modi-deserunt",
"webhook_type": "generic",
"webhook_secret": "w",
"channels": [
"sms"
],
"component_ids": [
"3c85cf54-98c1-36ed-b65a-abaafdecdfa9"
],
"locale": "es_MX",
"skip_verification": true
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get a specific subscriber.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/subscribers/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/subscribers/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete a subscriber.
requires authentication
Example request:
curl --request DELETE \
"https://statuswerk.eu/api/v1/subscribers/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/subscribers/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Resend verification email.
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/subscribers/architecto/resend-verification" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/subscribers/architecto/resend-verification"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
List all integrations for the current statuspage.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/integrations" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/integrations"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Create a new integration.
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/integrations" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"type\": \"discord\",
\"name\": \"b\",
\"url\": \"http:\\/\\/bailey.com\\/\",
\"is_enabled\": true,
\"events\": [
\"incident.resolved\"
]
}"
const url = new URL(
"https://statuswerk.eu/api/v1/integrations"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"type": "discord",
"name": "b",
"url": "http:\/\/bailey.com\/",
"is_enabled": true,
"events": [
"incident.resolved"
]
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Get a specific integration.
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/integrations/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/integrations/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Update an integration.
requires authentication
Example request:
curl --request PUT \
"https://statuswerk.eu/api/v1/integrations/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"type\": \"slack\",
\"name\": \"b\",
\"url\": \"http:\\/\\/bailey.com\\/\",
\"is_enabled\": true,
\"events\": [
\"incident.created\"
]
}"
const url = new URL(
"https://statuswerk.eu/api/v1/integrations/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"type": "slack",
"name": "b",
"url": "http:\/\/bailey.com\/",
"is_enabled": true,
"events": [
"incident.created"
]
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Delete an integration.
requires authentication
Example request:
curl --request DELETE \
"https://statuswerk.eu/api/v1/integrations/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/integrations/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Send a test webhook to an integration.
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/integrations/architecto/test" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/integrations/architecto/test"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
GET api/v1/statuspages
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/statuspages" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/statuspages"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
POST api/v1/statuspages
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/statuspages" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"name\": \"b\",
\"subdomain\": \"n\",
\"timezone\": \"Antarctica\\/Rothera\",
\"language\": \"zmiyvd\"
}"
const url = new URL(
"https://statuswerk.eu/api/v1/statuspages"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"name": "b",
"subdomain": "n",
"timezone": "Antarctica\/Rothera",
"language": "zmiyvd"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
GET api/v1/statuspages/{id}
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/statuspages/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/statuspages/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
DELETE api/v1/statuspages/{id}
requires authentication
Example request:
curl --request DELETE \
"https://statuswerk.eu/api/v1/statuspages/architecto" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/statuspages/architecto"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
GET api/v1/statuspages/{statuspage_id}/custom-domain
requires authentication
Example request:
curl --request GET \
--get "https://statuswerk.eu/api/v1/statuspages/architecto/custom-domain" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/statuspages/architecto/custom-domain"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());Example response (401):
Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
{
"message": "Unauthenticated."
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
PUT api/v1/statuspages/{statuspage_id}/custom-domain
requires authentication
Example request:
curl --request PUT \
"https://statuswerk.eu/api/v1/statuspages/architecto/custom-domain" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"domain\": \"b\"
}"
const url = new URL(
"https://statuswerk.eu/api/v1/statuspages/architecto/custom-domain"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"domain": "b"
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
POST api/v1/statuspages/{statuspage}/custom-domain/verify
requires authentication
Example request:
curl --request POST \
"https://statuswerk.eu/api/v1/statuspages/architecto/custom-domain/verify" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/statuspages/architecto/custom-domain/verify"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
DELETE api/v1/statuspages/{statuspage_id}/custom-domain
requires authentication
Example request:
curl --request DELETE \
"https://statuswerk.eu/api/v1/statuspages/architecto/custom-domain" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json"const url = new URL(
"https://statuswerk.eu/api/v1/statuspages/architecto/custom-domain"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.