Workspaces

Read, create, update or delete workspaces you have access to.

Usage

To manipulate workspaces, access the workspaces object on the SDK. Through that, you can invoke all workspace methods mentioned, like this:


                                                        
                                                        
                                                            const memberships = await sdk.workspaces.memberships(userId)
                                                        
                                                            

Read methods

Fetch a workspace

Fetches a specific workspace using its ID. Returns the full workspace object.


                                                        
                                                        
                                                            async deleteWorkspaceAvatar(workspaceId: string): Promise<void>
                                                        
                                                            

Fetch user's workspaces

Fetches all workspaces a user has access to.


                                                        
                                                        
                                                            async workspaces(userId: string): Promise<Array<Workspace>>
                                                        
                                                            

Fetch user's memberships

Fetches all memberships a user is part of. Each membership contains workspace and user role.


                                                        
                                                        
                                                            async memberships(userId: string): Promise<Array<Membership>>
                                                        
                                                            

Fetch workspace user memberships

Fetches all users that are part of a specific workspace. Each user contains their role as well.


                                                        
                                                        
                                                            async userMemberships(workspaceId: string): Promise<Array<UserMembership>>
                                                        
                                                            

Fetch subscription product features

Fetches subscription product features.


                                                        
                                                        
                                                            async subscriptionProductFeatures(): Promise<SubscriptionProductFeatures>
                                                        
                                                            

Fetch access control lists

Fetches access control lists.


                                                        
                                                        
                                                            async acls(): Promise<Acl>
                                                        
                                                            

Validate workspace handle availability

Validates if a given handle is available for use.


                                                        
                                                        
                                                            async validateIsWorkspaceHandleAvailable(handle: string): Promise<boolean>
                                                        
                                                            

Fetch workspace onboarding status

Fetches workspace onboarding status using its ID.


                                                        
                                                        
                                                            async workspaceOnboarding(workspaceId: string): Promise<WorkspaceOnboarding>
                                                        
                                                            

Fetch workspace IP whitelist settings

Fetches workspace IP whitelist settings using its ID.


                                                        
                                                        
                                                            async workspaceIPWhitelistSettings(workspaceId: string): Promise<WorkspaceIPWhitelistSettings | null>
                                                        
                                                            

Fetch workspace npm registry settings

Fetches workspace npm registry settings using its ID.


                                                        
                                                        
                                                            async workspaceNPMRegistrySettings(workspaceId: string): Promise<WorkspaceNPMRegistrySettings | null>
                                                        
                                                            

Fetch workspace SSO settings

Fetches workspace Single Sign-On (SSO) settings using its ID.


                                                        
                                                        
                                                            async workspaceSSOSettings(workspaceId: string): Promise<WorkspaceSSOSettingsUpdateModel | null>
                                                        
                                                            

Fetch workspace invitations

Fetches all invitations that are part of a specific workspace.


                                                        
                                                        
                                                            async workspaceInvitations(workspaceId: string): Promise<Array<WorkspaceInvitation>>
                                                        
                                                            

Create/update methods

Create a workspace

Creates a new workspace. The user who creates the workspace becomes its owner.


                                                        
                                                        
                                                            async createWorkspace(name: string, handle?: string): Promise<Workspace>
                                                        
                                                            

Update workspace profile

Updates workspace profile for a specific workspace.


                                                        
                                                        
                                                            async updateWorkspaceProfile(workspaceId: string, update: WorkspaceProfileUpdateModel): Promise<void>
                                                        
                                                            

Test IP whitelist settings

Tests the accessibility of IP allowlist settings for a workspace.


                                                        
                                                        
                                                            async testIpWhitelistSettings(workspaceId: string, ipWhitelistSettings: WorkspaceIPWhitelistSettingsUpdateModel): Promise<{ accessible: boolean }>
                                                        
                                                            

Update workspace onboarding

Updates workspace onboarding state for a specific workspace.


                                                        
                                                        
                                                            async updateWorkspaceOnboarding(workspaceId: string, update: WorkspaceOnboardingUpdateModel): Promise<void>
                                                        
                                                            

Update workspace avatar

Updates workspace avatar for a specific workspace.


                                                        
                                                        
                                                            async updateWorkspaceAvatar(workspaceId: string, avatar: File): Promise<void>
                                                        
                                                            

Update workspace SSO settings

Updates workspace Single Sign-On (SSO) settings for a specific workspace.


                                                        
                                                        
                                                            async updateWorkspaceSSOSettings(workspaceId: string, update: WorkspaceSSOSettingsUpdateModel): Promise<void>
                                                        
                                                            

Update workspace IP whitelist settings

Updates workspace IP whitelist settings for a specific workspace.


                                                        
                                                        
                                                            updateWorkspaceIPWhitelistSettings(workspaceId: string, ipWhitelistSettings: WorkspaceIPWhitelistSettingsUpdateModel): Promise<void>
                                                        
                                                            

Update workspace npm registry settings

Updates workspace npm registry settings for a specific workspace.


                                                        
                                                        
                                                            async updateWorkspaceNPMRegistrySettings(workspaceId: string, npmRegistrySettings: WorkspaceNPMRegistrySettingsUpdateModel): Promise<void>
                                                        
                                                            

Delete methods

Delete a workspace

Deletes a specific workspace. This action is irreversible and can only be performed by the workspace owner.


                                                        
                                                        
                                                            async deleteWorkspace(workspaceId: string): Promise<void>
                                                        
                                                            

Delete workspace avatar

Deletes the avatar of a specific workspace. This action is irreversible.


                                                        
                                                        
                                                            async deleteWorkspaceAvatar(workspaceId: string): Promise<void>
                                                        
                                                            

Delete workspace npm registry settings

Deletes the npm registry settings for a specific workspace.


                                                        
                                                        
                                                            async deleteWorkspaceNPMRegistrySettings(workspaceId: string): Promise<void>