Search within a workspace

GET/api/search

Searches and filters the items (Leaves and standalone reports) of one workspace. Requires reports:read. The search always covers exactly one workspace — the one named by owner. The response states this explicitly in searchedScope, and fullText reports whether report contents were searched. Both fields are always present so a client can show the caller which scope produced the results; searchedScope.kind is currently always workspace and fullText is always false (titles, names, codes, folder names, and tag names are matched — not the HTML body). Filters combine with AND: an item must satisfy every one of q, the folder/drawer filter, each tag_id, and visibility. Results are paginated with an opaque keyset cursor rather than an offset, so pages stay stable while items are added.

Query Parameters

ownerstringrequired
Workspace owner slug. The search never leaves this workspace.
qstring
Case-insensitive substring match against the item name, title, code, its folder name, and its tag names. Omitted or empty means no text filter (pure filtering). Wildcards are not interpreted — % and _ match themselves.
folder_idstring
Exact folder id, or none for unfiled items. Mutually exclusive with drawer_id.
drawer_idstring
Drawer id — matches items in any folder of that drawer. none behaves like folder_id=none (unfiled). Mutually exclusive with folder_id.
tag_idany[]
Repeatable, at most 15 per request. Multiple values are ANDed (an item must carry all of them). The single value none selects items with no tags at all and cannot be combined with tag ids.
tag_modestring
With subtree (the default) a tag also matches items carrying any of its descendants; self matches only the exact tag.
visibilitystring
Restricts results to one visibility.
sortstring
recent orders by last upload, newest first; name orders by Leaf name (or title, for standalone reports).
limitinteger
Page size.
cursorstring
The nextCursor of the previous page. Opaque; it is tied to the sort it was issued for, and reusing it under a different sort is rejected.