Overview
TheWorkspaceResource provides methods for managing Speckle workspaces. Access it via client.workspace after authenticating your SpeckleClient.
Workspaces are organizational units that group projects and team members together on workspace-enabled servers.
Methods
get()
Get a single workspace by ID.The ID of the workspace to retrieve
The workspace object
get_projects()
Get all projects in a workspace with pagination support.The ID of the workspace
Maximum number of projects to return
Cursor for pagination
Filter criteria
Collection with
items, totalCount, and cursorget_projects_with_permissions()
Get all projects in a workspace with detailed permission information.The ID of the workspace
Maximum number of projects to return
Cursor for pagination
Filter criteria
Collection of projects with permission details
permissions(ProjectPermissions) - Detailed permission checkscanCreateModel- Model creation permissioncanDelete- Project deletion permissioncanLoad- Project loading permissioncanPublish- Version publishing permission
authorized(bool) - Whether the action is authorizedcode(str) - Permission codemessage(str, optional) - Human-readable message
Types
Workspace
Represents a Speckle workspace.Workspace ID
Workspace name
URL-safe identifier
Your role in the workspace
Workspace logo URL
Workspace description
Creation timestamp
Last update timestamp
Whether workspace is read-only
Creation state information
completed(bool) - Whether workspace setup is complete
Permission checks
canCreateProject- Project creation permission
Filters
WorkspaceProjectsFilter
get_projects() and get_projects_with_permissions().
Fields:
search(str, optional) - Filter by project namewith_project_role_only(bool, optional) - Only return projects where user has explicit project role
Frequently Asked Questions
Which servers support workspaces?
Which servers support workspaces?
Workspace features are available on:
- app.speckle.systems (hosted Speckle server)
- Enterprise deployments with workspace features enabled
- Self-hosted open-source Speckle servers
- Community edition deployments
How do I check if workspace features are available?
How do I check if workspace features are available?
Attempt to get workspaces and handle the error:
How do I get my workspace ID?
How do I get my workspace ID?
Use the
active_user resource to list your workspaces:What's the difference between workspace projects and personal projects?
What's the difference between workspace projects and personal projects?
- Workspace projects: Owned by a workspace, shared with workspace members, managed by workspace admins
- Personal projects: Owned by individual users, independent of workspaces
workspaceId field on a project to determine ownership.Can I create workspace projects?
Can I create workspace projects?
Project creation happens through the
ProjectResource, but you can specify the workspace: