Skip to Content
Devnet Preview: data may reset, no production guarantees.
API ReferenceGET /agent/beat-status/:hash

GET /api/v1/agent/beat-status/:hash

Detailed beat chain status for an agent — heartbeat state, whitelist standing, spawn eligibility, and proof-of-existence metrics.

Auth: None (public)

curl https://provenonce.io/api/v1/agent/beat-status/0xfd752396...
{ "agent_hash": "0xfd752396...", "beat_initialized": true, "beat_stale": false, "beat_age_seconds": 42, "sigil": { "sigil": "genesis-v2*provenonce*sov", "sigil_name": "genesis-v2", "principal": "provenonce", "tier": "sov", "identity_class": "orchestrator", "issued_at": "2026-02-12T...", "birth_tx": "BmcxxSCk..." }, "heartbeat": { "status": "active", "genesis_hash": "0xabc...", "latest_beat": 2200, "latest_hash": "0x9f8e7d6c5b4a3...", "total_beats": 2200, "lifetime_beats": 2200, "available_beats": 0, "difficulty": 1000, "frozen_since": null, "refused": false, "refused_reason": null }, "heartbeat_epoch": { "billing_epoch": 0, "count_in_epoch": 142, "volume_cap": 20000, "remaining": 19858, "lineage_chain_hash": "0x651db240..." }, "whitelist": { "standing": "GOOD", "last_checkin_beat": 9600, "last_global_sync": 9600, "current_global_beat": 10423, "beats_behind": 823, "beats_until_freeze": 0, "deadline_anchors": 60 }, "gestation": { "depth": 0, "children_spawned": 2, "next_child_cost": 1440, "beats_accumulated": 0, "progress_pct": 0, "can_spawn": false, "deficit": 1440 }, "proof_of_existence": { "total_beats": 2200, "available_beats": 0, "total_hash_operations": 2200000, "estimated_cpu_time_ms": 1100 }, "recent_checkins": [], "lineage": { "type": "root", "parent": null, "depth": 0, "name": "provenonce-genesis-v2", "registered_at": "2026-02-12T..." } }

Standing values

StandingMeaning
GOODActive, recently heartbeating
WARNINGApproaching staleness threshold
STALESIGIL holder with stale heartbeat — market staleness applies
OVERDUENon-SIGIL agent overdue on anchor sync — freeze imminent
FROZENDMS triggered — agent must resync
REFUSEDHeartbeat refused due to identity complaint flag

Response sections

sigil

Present for agents that hold a SIGIL. null otherwise.

FieldTypeDescription
sigilstringFull SIGIL string (name*principal*tier)
sigil_namestringName segment
principalstringPrincipal segment
tierstringTrust tier (sov, org, ind, eph, sbx)
identity_classstringPricing class (narrow_task, autonomous, orchestrator)
issued_atstringISO timestamp
birth_txstring | nullSolana transaction signature

heartbeat

Beat chain state.

FieldTypeDescription
statusstring"active" or "frozen"
total_beats / lifetime_beatsnumberTotal accepted beats over lifetime
available_beatsnumberSpendable beats for spawn gating
difficultynumberCurrent VDF difficulty
refusedbooleanWhether heartbeats are currently refused

whitelist

Anchor sync standing and freeze proximity.

FieldTypeDescription
standingstringOne of the six standing values above
beats_behindnumberHow many anchors behind the agent is
beats_until_freezenumberAnchors remaining before DMS freeze (0 = already frozen/overdue)
deadline_anchorsnumberDMS threshold (60)

gestation

Spawn eligibility.

FieldTypeDescription
can_spawnbooleanWhether the agent has enough beats
next_child_costnumberBeat cost for the next child
progress_pctnumberPercentage toward spawn cost (0–100)

Not found

Returns HTTP 404 if the agent has no beat chain:

{ "agent_hash": "0x...", "beat_initialized": false, "_message": "Agent has no beat chain. Initialize with POST /api/v1/agent/init" }

Rate limit: 60/min per IP

Last updated on