Skip to main content
Folders organize files inside a bucket. The hierarchy is a tree with a maximum depth of 8.

Operations

Folder details fields

GET /folders/details/{folderId} returns:

Folder content

GET /folders/{folderId}/content returns a paginated object with subfolders before files:
Use sortBy, sortOrder, searchTerm, page, and limit to control the result.

Subfolders

GET /folders/{folderId}/subfolders is not paginated. It returns the full list plus a parent descriptor:
Prefer folder content when you need pagination on wide trees.

Create and update

Create body:
Update body accepts either or both:
parentId semantics:
  • omitted on create: the folder is created at the bucket root,
  • null on update: move to root,
  • a UUID: move under that folder.

Delete and restore

Delete body:
Delete returns data: null. Restore behavior:
  • a folder that is not in trash returns HTTP 200 with a message stating it is not in trash — this is not an error,
  • a folder past the trash window returns 410,
  • a missing folder returns 404.

Copy and move

Copy body requires a destination bucket and optionally a destination folder:
Move body:
For move, null means “move to the destination root”, while omitting the field entirely is rejected. Send null explicitly when you mean root.
Both operations answer with HTTP 200 and a data payload describing the result: newFolderId is the root of the copy. The copy gets a collision-free name such as <name> (copy); the original folder name is unchanged by a move.

Depth limit

The maximum folder depth is 8. Creating a deeper path fails. Plan flattening before migrating a deep source tree.

Organize folders

Practical guide with examples.

Pagination

List shape and consistency.

Files overview

File operations.

Conventions

Envelopes and identifiers.