Clean up API documentation files by removing Phase X references: Remove 'API Explorer will be inserted here in Phase X' placeholders from: - 70+ API endpoint documentation files - Authentication endpoints (login, logout, register, refresh) - User endpoints (profile, settings, password) - Device endpoints (registration, sync, shelves) - Library endpoints (CRUD, folders, visibility) - Media endpoints (items, progress, highlights, notes) - Admin endpoints (users, analytics) - Sync endpoints (Kobo, KOReader) - OPDS endpoints - Scanner endpoints - Queue endpoints These placeholders were from planning documents and have no meaning to API consumers. The documentation is now clean and ready for use.
58 lines
1.3 KiB
Markdown
58 lines
1.3 KiB
Markdown
# Bulk Link Books
|
|
|
|
Link multiple books to media items at once.
|
|
|
|
**Endpoint**: `POST /api/sync/bulk-link-books`
|
|
**Auth**: Required
|
|
**Content-Type**: `application/json`
|
|
|
|
## Request Body
|
|
|
|
| Field | Type | Required | Description |
|
|
|--------|------|-----------|-------------|
|
|
| links | array | Yes | Array of book-media link objects |
|
|
|
|
Each link object contains:
|
|
| Field | Type | Required | Description |
|
|
|--------|------|-----------|-------------|
|
|
| device_id | string (UUID) | Yes | Device UUID |
|
|
| book_id | string (UUID) | Yes | Book ID from device |
|
|
| media_item_id | string (UUID) | Yes | Media item UUID to link to |
|
|
|
|
### Example Request
|
|
|
|
```json
|
|
{
|
|
"links": [
|
|
{
|
|
"device_id": "550e8400-e29b-41d4-a716-446655440000",
|
|
"book_id": "book-123",
|
|
"media_item_id": "660e8400-e29b-41d4-a716-446655440001"
|
|
},
|
|
{
|
|
"device_id": "550e8400-e29b-41d4-a716-446655440000",
|
|
"book_id": "book-456",
|
|
"media_item_id": "770e8400-e29b-41d4-a716-446655440002"
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
## Response (200 OK)
|
|
|
|
```json
|
|
{
|
|
"message": "Books linked successfully",
|
|
"linked_count": 2,
|
|
"failed_count": 0
|
|
}
|
|
```
|
|
|
|
## Error Responses
|
|
|
|
| Code | Description |
|
|
|------|-------------|
|
|
| 400 | Invalid request data |
|
|
| 401 | Invalid or expired token |
|
|
| 404 | Device, book, or media item not found |
|