API referenceConsumerConsumer.devices
Bump the device's last-seen timestamp
Headless devices (Linux exit-node agent, etc.) hit this every 30 s so the dashboard can show liveness. Authenticated with the device session bearer token issued by /v1/auth/device/register/. Returns 204 on success.
Authorization
bearer_auth AuthorizationBearer <token>
In: header
Path Parameters
id*string
Device ID
Format
uuidResponse Body
application/json
application/json
application/json
curl -X POST "https://example.com/consumer/v1/devices/55555555-5555-5555-5555-555555555555/heartbeat"Empty
{ "detail": "Pool slug must be unique.", "instance": "urn:forestvpn:trace:a1b2c3d4", "title": "Validation Error", "type": "https://fvpn.net/errors/validation"}{ "detail": "Pool slug must be unique.", "instance": "urn:forestvpn:trace:a1b2c3d4", "title": "Validation Error", "type": "https://fvpn.net/errors/validation"}{ "detail": "Pool slug must be unique.", "instance": "urn:forestvpn:trace:a1b2c3d4", "title": "Validation Error", "type": "https://fvpn.net/errors/validation"}