Files
bookhoard/docs/developer/api/devices/get_devices.md
T
john-okeefe df90938c5c docs(api): document device sidecar endpoints; fix registration docs
- 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)
2026-08-20 14:40:54 -04:00

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