Skip to main content
Document folders let you organize knowledge base documents into logical groups. Each folder has a name, optional color, icon, and a position for display ordering.
Standard users can only manage their own folders. Admin users can manage folders for any user by passing adminMode: true and a userId.

List all folders

Retrieves all folders for the authenticated user with full folder fields including user_id and updated_at.
resource
string
required
Must be "document-folders"
action
string
required
Must be "all"
data
object
success
boolean
Whether the request succeeded.
data
object
const response = await ApiService.invoke("document-folders", "all");

List folders (compact)

Retrieves folders in a compact format optimized for dropdowns and select menus. Excludes user_id and updated_at.
resource
string
required
Must be "document-folders"
action
string
required
Must be "list"
data
object
success
boolean
Whether the request succeeded.
data
object
const response = await ApiService.invoke("document-folders", "list");

Get folder

Retrieves a single folder by ID.
resource
string
required
Must be "document-folders"
action
string
required
Must be "get"
id
string
required
The folder UUID to retrieve.
data
object
success
boolean
Whether the request succeeded.
data
object
const response = await ApiService.invoke(
  "document-folders",
  "get",
  "folder_123"
);

Create folder

Creates a new document folder. The folder is automatically assigned the next available position.
resource
string
required
Must be "document-folders"
action
string
required
Must be "create"
data
object
required
success
boolean
Whether the request succeeded.
data
object
const response = await ApiService.invoke(
  "document-folders",
  "create",
  undefined,
  {
    name: "Training Materials",
    color: "#10B981",
    icon: "folder",
  }
);

Update folder

Updates an existing folder’s properties. Only the fields you provide are changed.
resource
string
required
Must be "document-folders"
action
string
required
Must be "update"
id
string
required
The folder UUID to update.
data
object
required
success
boolean
Whether the request succeeded.
data
object
const response = await ApiService.invoke(
  "document-folders",
  "update",
  "folder_123",
  {
    name: "Company Policies",
    color: "#F59E0B",
    icon: "briefcase",
  }
);

Delete folder

Permanently deletes a folder. Documents in the folder are not deleted; they become uncategorized.
When a folder is deleted, any documents inside it are unlinked, not deleted. Their folder_id is set to null, making them appear as uncategorized in the knowledge base. You do not need to manually move documents before deleting a folder.
resource
string
required
Must be "document-folders"
action
string
required
Must be "delete"
id
string
required
The folder UUID to delete.
data
object
success
boolean
Whether the request succeeded.
data
object
const response = await ApiService.invoke(
  "document-folders",
  "delete",
  "folder_123"
);

Reorder folders

Updates the display order of folders based on an ordered array of folder IDs. The position of each folder is set to its index in the array.
resource
string
required
Must be "document-folders"
action
string
required
Must be "reorder"
data
object
required
success
boolean
Whether the request succeeded.
data
object
const response = await ApiService.invoke(
  "document-folders",
  "reorder",
  undefined,
  {
    folderIds: ["folder_456", "folder_123", "folder_789"],
  }
);

Get folder document counts

Returns the number of documents in each folder. Useful for displaying counts in folder lists without fetching all documents.
resource
string
required
Must be "document-folders"
action
string
required
Must be "counts"
data
object
success
boolean
Whether the request succeeded.
data
object
const response = await ApiService.invoke("document-folders", "counts");

Error codes

CodeStatusDescription
UNAUTHORIZED401Missing or invalid authentication token
FORBIDDEN403Only admins can manage folders for other users
NOT_FOUND404Folder not found
VALIDATION_ERROR400Missing or invalid parameters (for example folder ID required)
INTERNAL_ERROR500Server-side error