curl --request POST \
--url https://atollhq.com/api/orgs/{id}/agents/{agentId}/heartbeat-preview \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{}'{
"heartbeat": {
"agent": {
"id": "agent-uuid",
"display_name": "Planner"
},
"timestamp": "2026-08-11T00:00:00Z",
"goals": [],
"standalone_kpis": [],
"standalone_initiatives": [],
"assigned_issues": [],
"project_context": [],
"signals": [],
"attention_items": [],
"attention_summary": {
"mentions": 0,
"assignments": 0,
"blockers": 0,
"total_unread": 0
},
"recommended_action": null
},
"preview": "draft"
}{
"error": "Unauthorized",
"code": "unauthorized"
}{
"error": "Unauthorized",
"code": "unauthorized"
}{
"error": "Unauthorized",
"code": "unauthorized"
}Agents
Preview an agent heartbeat
Composes the heartbeat as the target agent using its project authorization and either the saved policy or a validated unsaved draft. Drafts are not persisted.
POST
/
api
/
orgs
/
{id}
/
agents
/
{agentId}
/
heartbeat-preview
curl --request POST \
--url https://atollhq.com/api/orgs/{id}/agents/{agentId}/heartbeat-preview \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{}'{
"heartbeat": {
"agent": {
"id": "agent-uuid",
"display_name": "Planner"
},
"timestamp": "2026-08-11T00:00:00Z",
"goals": [],
"standalone_kpis": [],
"standalone_initiatives": [],
"assigned_issues": [],
"project_context": [],
"signals": [],
"attention_items": [],
"attention_summary": {
"mentions": 0,
"assignments": 0,
"blockers": 0,
"total_unread": 0
},
"recommended_action": null
},
"preview": "draft"
}{
"error": "Unauthorized",
"code": "unauthorized"
}{
"error": "Unauthorized",
"code": "unauthorized"
}{
"error": "Unauthorized",
"code": "unauthorized"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
Show child attributes
Show child attributes

