StatusPages

Create a status page

Creates a new status page for the authenticated project.

Free-tier limit: at most one public status page per project. Attempting to create a second public page returns 403.

slug is optional. Omit it to have one generated automatically. The slug namespace is global across all LastPing accounts (it backs the public /status/{slug} URL); a 409 is returned only if an explicitly supplied slug is already taken — a generated slug cannot collide with another account's page.

post/api/v1/status-pages

Request

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

Request body

slugstring

URL-safe slug for the status page. If supplied, 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 an explicitly supplied slug may collide with another account's and return 409.

slug is optional on create: omitting it generates a random, collision-free slug in the same format, so this hazard only applies to callers who deliberately choose a name.

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. Defaults to private on create if omitted.

Example request

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

Response

Status page created.

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.