audiobookshelf/server/controllers
Boris Rybalkin 669e0255a9 Add chunked, resumable uploads
Split each uploaded file into 5 MB chunks posted sequentially to a new
/api/upload/chunk endpoint, then assemble them on the server via
/api/upload/finalize. The client queries /api/upload/chunk/:uploadId/:fileIndex
to skip chunks already received, so an interrupted upload resumes instead
of restarting. Each chunk is retried with backoff. Path components are
sanitized and the same canUpload/library-access checks as /api/upload are
enforced. The legacy /api/upload endpoint is left intact.

The chunk staging directory defaults to <metadata>/uploads and can be
relocated with UPLOAD_TEMP_DIR so large in-progress uploads can be staged
off the metadata volume.
2026-06-10 22:06:38 +01:00
..
ApiKeyController.js Update jwt secret handling 2025-07-08 16:39:50 -05:00
AuthorController.js Add ignoreDuplicates for bookAuthor when renaming to respect unique index 2026-05-21 21:06:17 -07:00
BackupController.js Update API JS docs 2024-08-11 17:01:25 -05:00
CacheController.js Update API JS docs 2024-08-11 17:01:25 -05:00
CollectionController.js Update collection endpoints to check user library access 2026-04-22 16:29:47 -05:00
CustomMetadataProviderController.js Update API JS docs 2024-08-11 17:01:25 -05:00
EmailController.js Fix local playback sync 2025-01-04 15:35:05 -06:00
FileSystemController.js Update filesystem/pathexists endpoint to use existing isSameOrSubPath func 2026-04-18 16:24:48 -05:00
LibraryController.js Update bulk download endpoint ensure items are from the same library requested 2026-04-19 16:20:31 -05:00
LibraryItemController.js Update podcast create/update endpoints to validate autoDownloadSchedule cron expression, validate cron expression before starting in CronManager 2026-04-24 16:55:42 -05:00
MeController.js Fix IDOR bugs 2026-02-15 22:01:36 -05:00
MiscController.js Add chunked, resumable uploads 2026-06-10 22:06:38 +01:00
NotificationController.js Update NotificationManager to singleton 2024-09-27 17:33:23 -05:00
PlaylistController.js Update playlist endpoints to check user still has library access 2026-04-22 16:42:58 -05:00
PodcastController.js Update podcast create/update endpoints to validate autoDownloadSchedule cron expression, validate cron expression before starting in CronManager 2026-04-24 16:55:42 -05:00
RSSFeedController.js Remove old Feed/FeedEpisode/FeedMeta objects 2024-12-15 17:54:36 -06:00
SearchController.js Fix Upload Lookup 2025-11-29 11:02:42 +01:00
SeriesController.js Remove old Feed/FeedEpisode/FeedMeta objects 2024-12-15 17:54:36 -06:00
SessionController.js Fix admin user unable to close sessions of other users #4746 2025-10-13 09:50:01 -05:00
ShareController.js ShareController check ?t param is less than duration, revert frontend mounted usage of param 2026-04-25 17:13:22 -05:00
StatsController.js Add admin middleware for StatsController 2025-03-29 17:37:13 -05:00
ToolsController.js Replace advanced options with presets/advanced card 2025-05-02 17:24:46 -05:00
UserController.js Update sessions modal to show username & update sessions endpoints to always return username 2025-07-16 16:56:07 -05:00