Device Management
Production - DeviceController at /api/v1/devices
Device management tracks the devices users employ to access the platform. Each device is fingerprinted based on browser, OS, and hardware characteristics.
6.7.4Device Endpoints
List All Devices
curl -X GET http://localhost:8081/api/v1/devices \
-H "Authorization: Bearer <access-token>"Response
[
{
"id": 1,
"deviceName": "MacBook Pro",
"deviceType": "desktop",
"browser": "Chrome",
"browserVersion": "121.0",
"os": "macOS",
"osVersion": "14.3",
"trusted": true,
"trustedAt": "2026-02-01T10:00:00Z",
"blocked": false,
"lastIpAddress": "203.0.113.50",
"lastSeenAt": "2026-02-12T10:30:00Z",
"useCount": 45,
"createdAt": "2026-01-15T08:00:00Z"
}
]Register Device
curl -X POST http://localhost:8081/api/v1/devices/register \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <access-token>" \
-d '{
"fingerprint": "a1b2c3d4e5f6...",
"deviceName": "Work Laptop",
"deviceType": "desktop",
"browser": "Firefox",
"browserVersion": "122.0",
"os": "Windows",
"osVersion": "11"
}'Rename Device
curl -X PUT http://localhost:8081/api/v1/devices/1/name \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <access-token>" \
-d '{ "name": "Personal MacBook" }'Remove Device
curl -X DELETE http://localhost:8081/api/v1/devices/1 \
-H "Authorization: Bearer <access-token>"Device Response Fields
| Field | Type | Description |
|---|---|---|
id | Long | Device identifier |
deviceName | String | User-assigned device name |
deviceType | String | desktop, mobile, tablet |
browser | String | Browser name |
browserVersion | String | Browser version |
os | String | Operating system |
osVersion | String | OS version |
trusted | boolean | Whether device is trusted |
blocked | boolean | Whether device is blocked |
lastIpAddress | String | Last known IP |
lastSeenAt | Instant | Last activity time |
useCount | int | Total login count from this device |