feat: Add admin ebook folder management routes to Bruno collection
- Add POST /api/auth/ebook-folders for adding ebook folders - Add GET /api/auth/ebook-folders for retrieving configured folders - Add DELETE /api/auth/ebook-folders for removing ebook folders - Include comprehensive documentation and request examples - Support path normalization and admin-only access
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
meta {
|
||||
name: Add Ebook Folder
|
||||
type: http
|
||||
seq: 8
|
||||
}
|
||||
|
||||
post {
|
||||
url: {{base_url}}/api/auth/ebook-folders
|
||||
body: json
|
||||
auth: inherit
|
||||
}
|
||||
|
||||
body:json {
|
||||
{
|
||||
"folder_path": "/path/to/ebooks"
|
||||
}
|
||||
}
|
||||
|
||||
settings {
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
}
|
||||
|
||||
docs {
|
||||
## Add Ebook Folder
|
||||
|
||||
Adds a new ebook folder for the authenticated user.
|
||||
|
||||
**Method:** POST
|
||||
|
||||
**Endpoint:** /api/auth/ebook-folders
|
||||
|
||||
**Authentication:** Required (Admin only)
|
||||
|
||||
**Request Body:** JSON object with:
|
||||
- `folder_path` (string, required): Path to the ebook folder
|
||||
|
||||
**Response:** Folder object with:
|
||||
- `id` (string): Folder ID (UUID)
|
||||
- `user_id` (string): User ID (UUID)
|
||||
- `folder_path` (string): Normalized folder path
|
||||
- `created_at` (string): Creation timestamp (ISO 8601)
|
||||
|
||||
**Status Codes:**
|
||||
- 201: Folder created successfully
|
||||
- 400: Bad request (invalid folder path)
|
||||
- 401: Unauthorized
|
||||
- 403: Forbidden (admin access required)
|
||||
- 500: Internal server error
|
||||
|
||||
**Features:**
|
||||
- Admin-only endpoint for adding ebook folders
|
||||
- Path normalization for consistent storage
|
||||
- Supports both absolute paths and home directory (~) paths
|
||||
- Prevents duplicate folders for the same user
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
meta {
|
||||
name: Delete Ebook Folder
|
||||
type: http
|
||||
seq: 10
|
||||
}
|
||||
|
||||
delete {
|
||||
url: {{base_url}}/api/auth/ebook-folders
|
||||
body: json
|
||||
auth: inherit
|
||||
}
|
||||
|
||||
body:json {
|
||||
{
|
||||
"folder_path": "/path/to/ebooks"
|
||||
}
|
||||
}
|
||||
|
||||
settings {
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
}
|
||||
|
||||
docs {
|
||||
## Delete Ebook Folder
|
||||
|
||||
Deletes an ebook folder for the authenticated user.
|
||||
|
||||
**Method:** DELETE
|
||||
|
||||
**Endpoint:** /api/auth/ebook-folders
|
||||
|
||||
**Authentication:** Required (Admin only)
|
||||
|
||||
**Request Body:** JSON object with:
|
||||
- `folder_path` (string, required): Path to the ebook folder to delete
|
||||
|
||||
**Response:** Success message object:
|
||||
- `message` (string): "ebook folder deleted successfully"
|
||||
|
||||
**Status Codes:**
|
||||
- 200: Folder deleted successfully
|
||||
- 400: Bad request (invalid folder path)
|
||||
- 401: Unauthorized
|
||||
- 403: Forbidden (admin access required)
|
||||
- 404: Folder not found
|
||||
- 500: Internal server error
|
||||
|
||||
**Features:**
|
||||
- Admin-only endpoint for deleting ebook folders
|
||||
- Path normalization for matching
|
||||
- Supports both absolute paths and home directory (~) paths
|
||||
- Prevents deletion of non-existent folders
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
meta {
|
||||
name: Get Ebook Folders
|
||||
type: http
|
||||
seq: 9
|
||||
}
|
||||
|
||||
get {
|
||||
url: {{base_url}}/api/auth/ebook-folders
|
||||
body: none
|
||||
auth: inherit
|
||||
}
|
||||
|
||||
settings {
|
||||
encodeUrl: true
|
||||
timeout: 0
|
||||
}
|
||||
|
||||
docs {
|
||||
## Get Ebook Folders
|
||||
|
||||
Retrieves all ebook folders configured for the authenticated user.
|
||||
|
||||
**Method:** GET
|
||||
|
||||
**Endpoint:** /api/auth/ebook-folders
|
||||
|
||||
**Authentication:** Required (Admin only)
|
||||
|
||||
**Response:** Array of folder objects with:
|
||||
- `id` (string): Folder ID (UUID)
|
||||
- `user_id` (string): User ID (UUID)
|
||||
- `folder_path` (string): Normalized folder path
|
||||
- `created_at` (string): Creation timestamp (ISO 8601)
|
||||
|
||||
**Status Codes:**
|
||||
- 200: Success (empty array if no folders found)
|
||||
- 401: Unauthorized
|
||||
- 403: Forbidden (admin access required)
|
||||
- 500: Internal server error
|
||||
|
||||
**Features:**
|
||||
- Admin-only endpoint for retrieving configured folders
|
||||
- Returns all folders configured for the user
|
||||
- Useful for folder management interfaces
|
||||
- Empty array returned if no folders configured
|
||||
}
|
||||
Reference in New Issue
Block a user