# 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 |
