StatusPages

Update a status page

Replaces all mutable fields of the status page. All fields (slug, title, visibility, check_ids) must be supplied; this is a full replacement of the resource's config. Unlike create, slug is required here — it is not auto-generated on update.

Free-tier limit: upgrading visibility from private to public counts against the 1-public-page limit; returns 403 if already at limit.

Changing slug to one already taken returns 409. The slug namespace is global across all LastPing accounts, so this can be another account's page.

patch/api/v1/status-pages/{id}

Request

  • Base URL: https://app.lastping.dev
  • URL: https://app.lastping.dev/api/v1/status-pages/{id}
  • Auth: API key in header X-Api-Key

Request body

slugstring required

URL-safe slug for the status page, must match ^[a-z0-9][a-z0-9-]{1,48}[a-z0-9]$ (3–50 chars, lowercase alphanumeric with hyphens, start/end alphanumeric).

The slug namespace is global across all LastPing accounts (it backs the public /status/{slug} URL), so changing it to a name already taken returns 409 — possibly another account's.

Required on update: PATCH is a full replacement of the resource's config, so the current slug must be supplied even when unchanged.

titlestring required

Human-readable display title for the status page.

check_idsstring[]

Ordered list of check UUIDs to display on the page. All checks must belong to the authenticated project. Duplicates are silently deduped. Omit or pass an empty array for a page with no checks.

visibility'public' | 'private'

public pages are accessible without authentication at /status/{slug}. private pages are visible only in the dashboard. Required on update — no default is applied.

Example request

{
  "slug": "my-services",
  "title": "My Services",
  "check_ids": [
    "550e8400-e29b-41d4-a716-446655440000"
  ],
  "visibility": "public"
}

Response

Updated status page.

idstring uuid

Unique status page identifier.

slugstring

URL-safe slug for the page.

titlestring

Human-readable display title.

check_idsstring[]

Ordered list of check UUIDs displayed on this page (never null; may be empty).

visibility'public' | 'private'

Page visibility.

public_urlstring

Full URL of the public status page (e.g. https://app.lastping.dev/status/my-services). Empty string when visibility is private.

created_atstring date-time

RFC 3339 UTC timestamp when the status page was created.

Example response

{
  "id": "d1e2f3a4-0000-0000-0000-000000000001",
  "slug": "my-services",
  "title": "My Services",
  "check_ids": [
    "550e8400-e29b-41d4-a716-446655440000"
  ],
  "visibility": "public",
  "public_url": "https://app.lastping.dev/status/my-services",
  "created_at": "2026-07-01T12:00:00Z"
}

Changes

No recorded changes to this operation across all 2 revisions of this API.