Phase 2 part 3: Split library and media item endpoints - Libraries: get_visible_libraries, get_library, create_library, add_library_folder, set_library_visibility - Media Items: list_media_items, get_media_item, search_media_items, filter_sort_media_items, update_media_item, delete_media_item - Complete request/response examples for all endpoints
1.3 KiB
1.3 KiB
Get Media Item
Retrieve details of a specific media item.
Endpoint: GET /api/media-items/{media_id}
Auth: Required
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| media_id | string | Yes | Media item UUID |
Request Headers
| Header | Type | Required | Description |
|---|---|---|---|
| Authorization | string | Yes | Bearer token |
Example Request
GET /api/media-items/uuid-here
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Response (200 OK)
{
"id": "uuid",
"library_id": "uuid",
"title": "Book Title",
"author": "Author Name",
"description": "Book description",
"file_path": "/path/to/book.epub",
"file_size": 1024000,
"mime_type": "application/epub+zip",
"cover_image_path": "/path/to/cover.jpg",
"series": "Series Name",
"series_number": 1,
"tags": "sci-fi, space opera",
"language": "en",
"page_count": 350,
"genre": "Science Fiction",
"copyright_year": 2023,
"created_at": "2026-01-31T10:00:00Z"
}
Error Responses
| Code | Description |
|---|---|
| 401 | Invalid or expired token |
| 403 | User does not have access to this media item |
| 404 | Media item not found |