# Record a NethLink heartbeat (last-seen) **POST /user/nethlink** Upserts the NethLink last-seen row for the authenticated user (one row per user). The username is taken from the JWT and the timestamp is generated server-side. The optional body carries the client's extension and, additionally to the legacy nethcti-server endpoint, the NethLink version and OS details. ## Servers - Local development server: http://localhost:8080 (Local development server) - Production server: https://middleware.example.com/api (Production server) ## Authentication methods - Bearer auth ## Parameters ### Body: application/json (object) - **extension** (string) NethLink extension id (the JWT does not carry it) - **nethlink_version** (string) NethLink application version - **os_type** (string) OS family (win32, linux, darwin) - **os_release** (string) OS release/kernel version - **arch** (string) CPU architecture (x64, arm64, ...) ## Responses ### 200 Heartbeat recorded #### Body: application/json (object) - **code** (integer) - **message** (string) - **data** () - **error** (string) ### 401 Unauthorized #### Body: application/json (object) - **code** (integer) - **message** (string) - **data** () - **error** (string) ### 500 Failed to store the heartbeat #### Body: application/json (object) - **code** (integer) - **message** (string) - **data** () - **error** (string) [Powered by Bump.sh](https://bump.sh)