List Members
Workspace — Membership
List Members
The unified roster — one entry per distinct user, each with a reasons array
List Members
Returns the roster as a single unified array, one entry per distinct user, each carrying a
The same roster read by a caller who cannot manage people here — the
Response (
reasons array explaining why the user appears. Requires roster visibility — any relation to the workspace (owner, ancestor-owner, member, or reach-holder). A caller with no relation gets a 404.
Always returned in full — never paginated. include flags only add entries; they never change the shape. countOnly is the numbers-only escape hatch.
Path Parameters
string
required
The workspace UUID.
Query Parameters
string
Comma-separated add-on buckets. Default returns
owner + direct members. Options: ancestorOwners, reachHolders, descendants.boolean
When
true, returns per-reason counts + a distinct-user total instead of the array (never materializes the roster). Honors the same includes.Reasons
Each entry’sreasons[] contains { type, ...detail } objects. A user present for several reasons is one entry carrying multiple reasons.
Response (array mode)
member reason keeps its identity fields but drops the authority-bearing ones:
Response (countOnly=true)
total is the distinct-user seat number (owner + direct members), not the sum of buckets (buckets overlap). Ancestor-owners and reach-holders are never counted as seats.
See also: useFetchWorkspaceMembers · Fetch Member Standing
