Workspaces

A Workspace is a lightweight way to organize related resources inside a single Files.com Site.

Customers commonly group resources by project, department, client, or region. Workspaces provide a built-in structure for that grouping, so the UI can operate within a clear “workspace context” and admins can delegate management for a subset of resources without requiring full site-level isolation.

Every Site has an implicit Default workspace (ID 0). Resources that are not explicitly assigned to a named workspace are considered part of the Default workspace.

List Workspaces

SDK Method

Files::Workspace.list

Return Object

List<Workspace>

Authorization Requirement

Available to all authenticated keys or sessions.

Additional Arguments

Example Request

begin
  workspaces = Files::Workspace.list
  workspaces.auto_paging_each do |workspace|
    # Operate on workspace
  end
rescue Files::NotAuthenticatedError => e
  puts "Authentication Error Occurred (#{e.class.to_s}): " + e.message
rescue Files::Error => e
  puts "Unknown Error Occurred (#{e.class.to_s}): " + e.message
end

Show Workspace

SDK Method

Files::Workspace.find

Return Object

Workspace

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Site Admin permissions.

Method Arguments

ArgumentDescription
id
int64
Required
Workspace ID.

Example Request

begin
  workspace = Files::Workspace.find(id)
  # Operate on workspace
rescue Files::NotAuthenticatedError => e
  puts "Authentication Error Occurred (#{e.class.to_s}): " + e.message
rescue Files::Error => e
  puts "Unknown Error Occurred (#{e.class.to_s}): " + e.message
end

Create Workspace

SDK Method

Files::Workspace.create

Return Object

Workspace

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Site Admin permissions.

Method Arguments

ArgumentDescription
name
string
Workspace name

Example Request

begin
  workspace = Files::Workspace.create(
    name: "Project Alpha"
  )
  # Operate on workspace
rescue Files::NotAuthenticatedError => e
  puts "Authentication Error Occurred (#{e.class.to_s}): " + e.message
rescue Files::Error => e
  puts "Unknown Error Occurred (#{e.class.to_s}): " + e.message
end

Update Workspace

SDK Method

workspace.update

Return Object

Workspace

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Site Admin permissions.

Method Arguments

ArgumentDescription
name
string
Workspace name

Example Request

begin
  # Find the workspace object by its id.
  workspace = Files::Workspace.find(id)
  workspace.update(
    name: "Project Alpha"
  )
rescue Files::NotAuthenticatedError => e
  puts "Authentication Error Occurred (#{e.class.to_s}): " + e.message
rescue Files::Error => e
  puts "Unknown Error Occurred (#{e.class.to_s}): " + e.message
end

Delete Workspace

SDK Method

workspace.delete

Return Object

nil

Authorization Requirement

Requires either a Site-Wide API key or User API key or session from a User with Site Admin permissions.

Example Request

begin
  # Find the workspace object by its id.
  workspace = Files::Workspace.find(id)
  workspace.delete
rescue Files::NotAuthenticatedError => e
  puts "Authentication Error Occurred (#{e.class.to_s}): " + e.message
rescue Files::Error => e
  puts "Unknown Error Occurred (#{e.class.to_s}): " + e.message
end

The Workspace Object

Some of the methods above return a Workspace object. The attributes of this object are listed below.

AttributeDescription
id
int64
Workspace ID
name
string
Workspace name