- New get_sidecar_config.md for GET /api/devices/:id/sidecar and /sidecar/download: the .bookhoard.json config served to devices (endpoints, books keyed by per-format SHA-256 with UUID fallback, collections, format availability) used by the KOReader plugin to self-configure - register_device.md: correct the response — no device_id at registration; auth_url is /devices/approve/:id (was the nonexistent /devices/auth/confirm/:id); document poll_interval and setup_instructions, and the approve-then-poll flow - get_devices.md: fix the status endpoint path to POST /api/devices/register/status (was /api/devices/auth/status)
1.5 KiB
1.5 KiB
Get Device / Check Registration Status
Check device registration status or get device details.
Endpoint: POST /api/devices/register/status or GET /api/devices/{device_id}
Auth: Not required for status check, Required for device details
Content-Type: application/json (for status check)
Request Body (Status Check)
| Field | Type | Required | Description |
|---|---|---|---|
| registration_id | string | Yes | Registration UUID |
Example Request (Status Check)
{
"registration_id": "registration-uuid"
}
Response (200 OK)
{
"status": "pending|approved|expired",
"auth_token": "device-bearer-token...",
"device_id": "uuid",
"sync_endpoints": {
"progress": "https://bookhoard.com/api/sync/progress",
"metadata": "https://bookhoard.com/api/sync/metadata",
"annotations": "https://bookhoard.com/api/sync/annotations"
}
}
Response (200 OK) - Device Details
{
"id": "uuid",
"device_name": "My Kobo Clara",
"device_type": "kobo",
"last_sync": "2026-01-31T10:00:00Z",
"last_seen": "2026-01-31T10:05:00Z",
"sync_enabled": true,
"auto_sync": true,
"sync_frequency_minutes": 5
}
Error Responses
| Code | Description |
|---|---|
| 401 | Invalid or expired token (for device details) |
| 404 | Device or registration not found |