Workspaces

Arcadia Enterprise provides URL access to the ArcViz server object, workspaces.

In addition to the standard public workspace that all users share, and the single private workspace that each user has, Arcadia Enterprise users with Create Workspace privilege can create custom workspaces. These workspaces may be shared by specific users and user groups, so they can develop and view dashboards that are inherently useful to their line of business. Within each of these workspaces, each user has a defined access level: View Only, Edit, or Manage. For more information on workspaces, see Working with Workspaces.

Workspace Data Types

The JSON fields for workspace data type are defined as follows:

JSON Fields for Workspace Data Type
Field Detail Only Updatable Description
id No No Workspace ID
name No Yes Workspace name
desc No Yes Workspace description
editable Yes No Permission to update only a non system-managed workspace (Custom workspace). The system managed workspaces are Public and Private workspaces.
private_user_id Yes No ID of the user for private workspaces
acl Yes Yes Access Control List (ACL) for a workspace

Access Control List in Workspaces

The workspace ACL is a list of privilege entries. Each entry contains three items. The following acl syntax shows two entries:
"acl": [
  [entry_type, access_level, group_name],
  [entry_type, access_level, user_name]]
Entry Encoding
entry_type 1 = User, 2 = Group
access_level 1 = View, 2 = Edit, 3 = Manage
user_name/group_name User or group name of the entry_type

Creating Workspaces

The following code creates a new workspace Test workspace and provides View access to a special group Everyone and Manage access to user admin.

The example in this article use an APIKey obtained through the Manage API Keys interface, on the host:port/arc/apps/apikeys browser page of the ArcViz installation (see Creating New API Keys). The actual APIKey and the method of retrieving the key depends on the user system.

curl -s \
 -X POST \
 -H "Content-Type: application/x-www-form-urlencoded" \
 -H "Authorization: apikey apikey" \
 -d 'data=[{
      "name": "Test workspace",
      "desc": "Workspace created via admin api",
      "acl": [[2, 1, "Everyone"], [1, 3, "admin"]]
   }]' \
 127.0.0.1:7999/arc/adminapi/workspaces

When viewing this workspace through the ArcViz GUI, it appears on the workspace edit modal window like this:

Creating a workspace