---
title: "Record worker heartbeat"
method: POST
path: "/v1/workers/{id}/activity-heartbeat"
tags: ["Workers", "Worker Activity"]
---

# Record worker heartbeat

`POST /v1/workers/{id}/activity-heartbeat`

Accepts signed heartbeat and recent-activity updates from a worker so Den can track worker health and recent usage.

## Path parameters

- `id` string, typeid, required

## Request body

- object
  - `sentAt` string, date-time
  - `isActiveRecently` boolean, required
  - `lastActivityAt` string, date-time, nullable
  - `openSessionCount` integer

## Response `200`

Worker heartbeat accepted successfully.

- WorkerHeartbeatResponse
  - `ok` true, required
  - `workerId` string, required
  - `isActiveRecently` boolean, required
  - `openSessionCount` integer, nullable, required
  - `lastHeartbeatAt` string, date-time, required
  - `lastActiveAt` string, date-time, nullable, required

## Other responses

- `400` — The heartbeat payload or worker path parameters were invalid.
- `401` — The worker heartbeat token was missing or invalid.
- `404` — The worker could not be found.

---

[API](https://skmtc.net/openworklabs/apis/den-api.md) · [All operations](https://skmtc.net/openworklabs/apis/den-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/openworklabs/den-api/versions/073bc652adfb/schema)
