Skip to main content
POST
Issue a new heartbeat ping URL (the old one stops working)

Authorizations

Authorization
string
header
required

An organization API key (obs_pub_…) sent as Authorization: Bearer <key>. Each key carries scopes; an endpoint lists the scope it needs.

Path Parameters

id
string<uuid>
required

Metric id.

Response

ok, body includes the new ping_url

metric_id
string<uuid>
required
period_seconds
integer
required
grace_seconds
integer
required
state
enum<string>
required

Evaluator phase. waiting = no ping received yet (no status is written).

Available options:
waiting,
up,
running,
late,
failed,
runtime_exceeded
pings
object[]
required
max_runtime_seconds
integer | null
status
enum<string> | null
Available options:
healthy,
degraded,
unhealthy,
null
due_at
string<date-time> | null

When the check goes late without a success ping.

last_ping_at
string<date-time> | null
last_ping_kind
enum<string> | null
Available options:
success,
start,
fail,
null
last_success_at
string<date-time> | null
last_start_at
string<date-time> | null
last_fail_at
string<date-time> | null
last_exit_code
integer | null
last_duration_ms
integer | null
token_rotated_at
string<date-time> | null
ping_url
string<uri>

The check's ping URL. Present only for keys with write:metrics or write:config (a config writer creates heartbeat checks and needs the URL to wire up the job): anyone holding it can record pings.