client.ActiveUser for the authenticated user’s profile and accessible projects. Use after Authentication.
ActiveUserResource
Gets the authenticated user’s profile. Returns
null if the client’s account is unauthenticated.Updates the authenticated user’s profile fields.
GetProjects
Task<ResourceCollection<Project>> GetProjects(int limit = 25, string? cursor = null, UserProjectsFilter? filter = null, CancellationToken cancellationToken = default)
Lists projects the authenticated user has access to.
GetProjectsWithPermissions
Task<ResourceCollection<ProjectWithPermissions>> GetProjectsWithPermissions(int limit = 25, string? cursor = null, UserProjectsFilter? filter = null, CancellationToken cancellationToken = default)
Same as
GetProjects, but each project includes a permissions field typed as ProjectPermissionChecks. This query populates canCreateModel, canDelete, and canLoad only — not canPublish (which client.Project.GetPermissions still queries but is obsolete in the SDK; use client.Model.GetPermissions(...).canCreateVersion for publish checks).GetProjectInvites
Task<List<PendingStreamCollaborator>> GetProjectInvites(CancellationToken cancellationToken = default)
Lists pending project invitations for the authenticated user.
CanCreatePersonalProjects
Task<PermissionCheckResult> CanCreatePersonalProjects(CancellationToken cancellationToken = default)
Checks whether the user can create personal (non-workspace) projects.
GetWorkspaces
Task<ResourceCollection<Workspace>> GetWorkspaces(int limit = 25, string? cursor = null, UserWorkspacesFilter? filter = null, CancellationToken cancellationToken = default)
Lists workspaces the authenticated user belongs to. Only available on workspace-enabled servers.
GetActiveWorkspace
Task<LimitedWorkspace?> GetActiveWorkspace(CancellationToken cancellationToken = default)
Gets the user’s last-selected workspace. Returns a
LimitedWorkspace because the user may not be a member.Most
ActiveUser methods throw SpeckleException if the client’s account is unauthenticated — check Get() for null first if you’re unsure.OtherUserResource
Gets a limited public profile for any user by id. Returns
null if the user doesn’t exist.UserSearch
Task<UserSearchResultCollection> UserSearch(string query, int limit = 25, string? cursor = null, bool emailOnly = false, CancellationToken cancellationToken = default)
Searches for users by name or email (minimum 3 characters).
Usage
FAQ
ActiveUser.Get returns null
ActiveUser.Get returns null
The client’s account is not authenticated. Build an
Account with IAccountFactory or reuse a stored account — see Authentication.Next Steps
Core concepts
How users relate to projects
Authentication
Build an Account and IClient
ProjectResource
Create and list projects