Files
bookhoard/docs/developer/api/book-matching/get_unlinked_books.md
T
john-okeefe de4f2ba7d8 docs(api): add universal progress tracking documentation
- get_universal_progress.md - GET /api/progress/:id
- update_universal_progress.md - POST /api/progress/:id
- get_progress_history.md - GET /api/progress/:id/history

Documents device-agnostic (universal) reading progress tracking
that works across all devices (Kobo, KOReader, etc.)
2026-02-08 12:38:14 -05:00

63 lines
1.4 KiB
Markdown

# Get Unlinked Books
Get all books that haven't been linked to media items yet for a specific device.
**Endpoint**: `GET /api/devices/:deviceId/sync/unlinked-books`
**Auth**: Required
## Path Parameters
| Parameter | Type | Required | Description |
|-----------|------|-----------|-------------|
| deviceId | string (UUID) | Yes | Device UUID |
## Query Parameters
| Parameter | Type | Required | Description |
|-----------|------|-----------|-------------|
| limit | integer | No | Maximum number of items to return (default: 50) |
| offset | integer | No | Number of items to skip (default: 0) |
## Request Headers
| Header | Type | Required | Description |
|--------|------|-----------|-------------|
| Authorization | string | Yes | Bearer token |
### Example Request
```http
GET /api/devices/550e8400-e29b-41d4-a716-446655440000/sync/unlinked-books?limit=10
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
```
## Response (200 OK)
```json
{
"items": [
{
"id": "uuid",
"file_name": "book.epub",
"file_path": "/path/to/book.epub",
"size_bytes": 1234567,
"modified_at": "2026-02-08T10:00:00Z"
}
],
"total": 15,
"limit": 10,
"offset": 0
}
```
## Error Responses
| Code | Description |
|------|-------------|
| 401 | Invalid or expired token |
| 404 | Device not found |
## Try It Out
<!-- API Explorer will be inserted here in Phase 3 -->