Update status page
curl --request PATCH \
--url https://app.larm.dev/api/v1/status-pages/{id} \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"slug": "<string>",
"description": "<string>",
"theme": "<string>",
"primary_color": "<string>",
"logo_light_url": "<string>",
"logo_dark_url": "<string>",
"show_theme_switcher": true,
"enabled": true,
"subscribers_enabled": true
}
'import requests
url = "https://app.larm.dev/api/v1/status-pages/{id}"
payload = {
"name": "<string>",
"slug": "<string>",
"description": "<string>",
"theme": "<string>",
"primary_color": "<string>",
"logo_light_url": "<string>",
"logo_dark_url": "<string>",
"show_theme_switcher": True,
"enabled": True,
"subscribers_enabled": True
}
headers = {"Content-Type": "application/json"}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
slug: '<string>',
description: '<string>',
theme: '<string>',
primary_color: '<string>',
logo_light_url: '<string>',
logo_dark_url: '<string>',
show_theme_switcher: true,
enabled: true,
subscribers_enabled: true
})
};
fetch('https://app.larm.dev/api/v1/status-pages/{id}', 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://app.larm.dev/api/v1/status-pages/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'slug' => '<string>',
'description' => '<string>',
'theme' => '<string>',
'primary_color' => '<string>',
'logo_light_url' => '<string>',
'logo_dark_url' => '<string>',
'show_theme_switcher' => true,
'enabled' => true,
'subscribers_enabled' => true
]),
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://app.larm.dev/api/v1/status-pages/{id}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"slug\": \"<string>\",\n \"description\": \"<string>\",\n \"theme\": \"<string>\",\n \"primary_color\": \"<string>\",\n \"logo_light_url\": \"<string>\",\n \"logo_dark_url\": \"<string>\",\n \"show_theme_switcher\": true,\n \"enabled\": true,\n \"subscribers_enabled\": true\n}")
req, _ := http.NewRequest("PATCH", 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.patch("https://app.larm.dev/api/v1/status-pages/{id}")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"slug\": \"<string>\",\n \"description\": \"<string>\",\n \"theme\": \"<string>\",\n \"primary_color\": \"<string>\",\n \"logo_light_url\": \"<string>\",\n \"logo_dark_url\": \"<string>\",\n \"show_theme_switcher\": true,\n \"enabled\": true,\n \"subscribers_enabled\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.larm.dev/api/v1/status-pages/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"slug\": \"<string>\",\n \"description\": \"<string>\",\n \"theme\": \"<string>\",\n \"primary_color\": \"<string>\",\n \"logo_light_url\": \"<string>\",\n \"logo_dark_url\": \"<string>\",\n \"show_theme_switcher\": true,\n \"enabled\": true,\n \"subscribers_enabled\": true\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Acme Status",
"slug": "acme",
"description": "Current status of Acme services",
"theme": "dark",
"primary_color": "#4F46E5",
"enabled": true,
"subscribers_enabled": true,
"custom_domain": null,
"domain_status": "none",
"logo_light_url": null,
"logo_dark_url": null,
"url": "https://acme.status.larm.dev",
"components": [],
"inserted_at": "2025-03-01T12:00:00Z",
"updated_at": "2025-03-01T14:30:00Z"
}
}
Status pages
Update status page
Updates an existing status page
PATCH
/
api
/
v1
/
status-pages
/
{id}
Update status page
curl --request PATCH \
--url https://app.larm.dev/api/v1/status-pages/{id} \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"slug": "<string>",
"description": "<string>",
"theme": "<string>",
"primary_color": "<string>",
"logo_light_url": "<string>",
"logo_dark_url": "<string>",
"show_theme_switcher": true,
"enabled": true,
"subscribers_enabled": true
}
'import requests
url = "https://app.larm.dev/api/v1/status-pages/{id}"
payload = {
"name": "<string>",
"slug": "<string>",
"description": "<string>",
"theme": "<string>",
"primary_color": "<string>",
"logo_light_url": "<string>",
"logo_dark_url": "<string>",
"show_theme_switcher": True,
"enabled": True,
"subscribers_enabled": True
}
headers = {"Content-Type": "application/json"}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
slug: '<string>',
description: '<string>',
theme: '<string>',
primary_color: '<string>',
logo_light_url: '<string>',
logo_dark_url: '<string>',
show_theme_switcher: true,
enabled: true,
subscribers_enabled: true
})
};
fetch('https://app.larm.dev/api/v1/status-pages/{id}', 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://app.larm.dev/api/v1/status-pages/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'slug' => '<string>',
'description' => '<string>',
'theme' => '<string>',
'primary_color' => '<string>',
'logo_light_url' => '<string>',
'logo_dark_url' => '<string>',
'show_theme_switcher' => true,
'enabled' => true,
'subscribers_enabled' => true
]),
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://app.larm.dev/api/v1/status-pages/{id}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"slug\": \"<string>\",\n \"description\": \"<string>\",\n \"theme\": \"<string>\",\n \"primary_color\": \"<string>\",\n \"logo_light_url\": \"<string>\",\n \"logo_dark_url\": \"<string>\",\n \"show_theme_switcher\": true,\n \"enabled\": true,\n \"subscribers_enabled\": true\n}")
req, _ := http.NewRequest("PATCH", 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.patch("https://app.larm.dev/api/v1/status-pages/{id}")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"slug\": \"<string>\",\n \"description\": \"<string>\",\n \"theme\": \"<string>\",\n \"primary_color\": \"<string>\",\n \"logo_light_url\": \"<string>\",\n \"logo_dark_url\": \"<string>\",\n \"show_theme_switcher\": true,\n \"enabled\": true,\n \"subscribers_enabled\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.larm.dev/api/v1/status-pages/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"slug\": \"<string>\",\n \"description\": \"<string>\",\n \"theme\": \"<string>\",\n \"primary_color\": \"<string>\",\n \"logo_light_url\": \"<string>\",\n \"logo_dark_url\": \"<string>\",\n \"show_theme_switcher\": true,\n \"enabled\": true,\n \"subscribers_enabled\": true\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Acme Status",
"slug": "acme",
"description": "Current status of Acme services",
"theme": "dark",
"primary_color": "#4F46E5",
"enabled": true,
"subscribers_enabled": true,
"custom_domain": null,
"domain_status": "none",
"logo_light_url": null,
"logo_dark_url": null,
"url": "https://acme.status.larm.dev",
"components": [],
"inserted_at": "2025-03-01T12:00:00Z",
"updated_at": "2025-03-01T14:30:00Z"
}
}
Requires
status_pages:read_write permission. Only include the fields you want to change.
Updates only the page’s own fields. To modify components and groups, use the dedicated CRUD endpoints or replace the entire structure with PUT structure. To attach a custom domain, use the custom-domain endpoint (separate from this one).
Status page ID (UUID)
Page name (1–255 characters)
URL identifier (3–63 characters, lowercase alphanumeric and hyphens; cannot start or end with a hyphen)
Brief description (up to 1000 characters)
system, light, or darkBrand color in hex format (e.g.
#4F46E5)URL of the logo to use on light backgrounds
URL of the logo to use on dark backgrounds
Show a light/dark theme switcher on the public page
Whether the page is publicly visible
Allow email subscriptions
{
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Acme Status",
"slug": "acme",
"description": "Current status of Acme services",
"theme": "dark",
"primary_color": "#4F46E5",
"enabled": true,
"subscribers_enabled": true,
"custom_domain": null,
"domain_status": "none",
"logo_light_url": null,
"logo_dark_url": null,
"url": "https://acme.status.larm.dev",
"components": [],
"inserted_at": "2025-03-01T12:00:00Z",
"updated_at": "2025-03-01T14:30:00Z"
}
}
⌘I