Update NewDevDBSetup collection to create Ebook, Comic, and Manga libraries with separate IDs (ebook_library_id, comic_library_id, manga_library_id) instead of a single library_id. - Fix CreateComicLibrary and CreateMangaLibrary to use correct names, descriptions, and types instead of duplicating Ebook values - Update NewDB.sh to run the full setup sequence: register user, create all three libraries, add folders, then scan all - Add AddEbookLibraryFolder, AddComicLibraryFolder, and AddMangaLibraryFolder requests with per-type subfolder paths - Add ScanAllLibraries request using bru.sendRequest() to scan each library sequentially via the /api/scanner/scan endpoint - Update Get Libraries (Admin) to save all three library IDs - Update List Media Items requests to use ebook_library_id - Rename library_id to ebook_library_id in Create Library and Add Library Folder requests - Add comic_library_id and manga_library_id to environment
84 lines
2.1 KiB
YAML
84 lines
2.1 KiB
YAML
info:
|
|
name: Create Library
|
|
type: http
|
|
seq: 2
|
|
|
|
http:
|
|
method: POST
|
|
url: "{{base_url}}/api/libraries"
|
|
body:
|
|
type: json
|
|
data: |-
|
|
{
|
|
"name": "My Ebook Library",
|
|
"description": "A collection of technical books and novels",
|
|
"type": "ebooks"
|
|
}
|
|
auth: inherit
|
|
|
|
runtime:
|
|
scripts:
|
|
- type: after-response
|
|
code: |-
|
|
function onResponse(res) {
|
|
try {
|
|
const responseBody = res.getBody();
|
|
const id = responseBody.id;
|
|
|
|
if (id) {
|
|
bru.setEnvVar("ebook_library_id", id, { persist: true });
|
|
console.log("Library ID saved:", id);
|
|
}
|
|
|
|
if (!id) {
|
|
console.log("No id found in response.");
|
|
}
|
|
} catch (error) {
|
|
console.error("Error in post-response script:", error.message);
|
|
}
|
|
}
|
|
onResponse(res);
|
|
|
|
settings:
|
|
encodeUrl: true
|
|
timeout: 0
|
|
followRedirects: true
|
|
maxRedirects: 5
|
|
|
|
docs: |-
|
|
## Create Library
|
|
|
|
Creates a new library for organizing media items.
|
|
|
|
**Method:** POST
|
|
|
|
**Endpoint:** /api/libraries
|
|
|
|
**Authentication:** Required (Bearer token)
|
|
|
|
**Request Body:**
|
|
- `name` (string, required): Library name
|
|
- `description` (string, optional): Library description
|
|
- `type` (string, required): Library type
|
|
- `"ebooks"`: Electronic books
|
|
- `"audiobooks"`: Audio books
|
|
- `"videos"`: Video content
|
|
- `"other"`: Other media types
|
|
|
|
**Response:** Library object
|
|
- `id` (string): Library UUID
|
|
- `name` (string): Library name
|
|
- `description` (string, optional): Library description
|
|
- `type` (string): Library type
|
|
- `is_visible` (boolean): Library visibility status
|
|
- `created_at` (string): Creation timestamp
|
|
- `updated_at` (string): Last update timestamp
|
|
|
|
**Status Codes:**
|
|
- 201: Library created successfully
|
|
- 400: Invalid request data
|
|
- 401: Unauthorized
|
|
- 403: Forbidden (insufficient permissions)
|
|
- 409: Library name already exists
|
|
- 500: Internal server error
|