Files
bookhoard/docs/developer/api/libraries/browse-folders.md
john-okeefe 4d321528b2 docs: update comprehensive API documentation and project guides
This commit updates all documentation files throughout the project:

- Updated IMPLEMENTATION_PLAN.md with new implementation details
- Updated PROJECT_GUIDELINES.md with coding standards and practices
- Updated README.md with current project information
- Updated SCREENSHOT_AUTOMATION.md with new automation details
- Added TEST_DATA.md with test fixtures data
- Updated cover_image_serving_plan.md with static URL patterns

Documentation API updates:
- Updated API reference documentation for all endpoints including:
  - Authentication (login, logout, register, refresh_token)
  - Book matching (auto_link, bulk_link, link_book, search)
  - Collections (CRUD operations, shelf mappings, auto-assign rules)
  - Conflicts (bulk operations, resolve/dismiss)
  - Devices (registration, approval, shelf management)
  - Highlights (create, update, delete, get)
  - Kobo sync (bookmark, markup, initialization, sync)
  - KOReader sync (library, metadata, bookmarks, progress)
  - Libraries (CRUD, folders, media items, stats)
  - Media items (bulk operations, CRUD)
  - Notes (CRUD operations)
  - OPDS (acquisition, feeds, publication)
  - Progress (reading progress tracking)
  - Queue (device queue management)
  - Ratings (star ratings)
  - Scanner (watch mode, scan operations)
  - Sync protocols (Kobo, KOReader)
  - Users (profile, password, admin operations)
  - WebSocket protocols

- Updated user guides (admin, dashboard, settings, sync)
- Updated device setup guides (Kobo, KOReader)
- Updated developer guides (testing, contributing, operations)
- Updated scripts/README.md
2026-02-27 17:06:22 -05:00

1.5 KiB

Browse Library Folders

Browse server directories for folder selection in library management.

Endpoint: GET /api/libraries/browse Auth: Required (Admin only)

Query Parameters

Parameter Type Required Description
path string No Directory path to browse (default: "/")

Request Headers

Header Type Required Description
Authorization string Yes Bearer token (admin only)

Example Request

GET /api/libraries/browse?path=/home/user
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...

Response (200 OK)

{
  "current_path": "/home/user",
  "parent_path": "/home",
  "directories": ["Documents", "Downloads", "Books", "Music"]
}

Error Responses

Code Description
400 Path traversal attempt or invalid path
401 Invalid or expired token
403 User is not an admin
400 Path does not exist
400 Path is not a directory

Security

  • Path traversal protection: Blocks requests containing ".."
  • Admin only: Regular users receive 403 Forbidden
  • Directories only: Returns only directory names, not file listings
  • Server filesystem: Browses server's filesystem, not client's