This document explains how to manage workspaces. It shows how to create, edit and delete workspaces using the user interface and platform REST API. We assume you are familiar with hierarchical structure of the platform and why we need workspaces.
Every contract member can create a workspace on the user interface or using a REST API call.
Please note no matter which method you use to create, a workspace name must adhere to the following standards:
-
) and underscore (_
).When you start from an empty contract you can open the menu (1), click to create a workspace (2) either from the menu item + Create Workspace or by clicking on a + Create New Workspace button in the middle:
The following animation shows workspace creation in case of fully operation contract:
You can create a Workspace when viewing all workspaces page as well. Open the menu, and expand the workspace list and click on View All Workspaces menu item to navigate to all workspaces page. Here you can create a new one by clicking on + Create New Workspace button.
To create a workspace using our REST API you must use your email
and APIKEY
to authenticate. Check the platform tour profile information section if unsure where to find this information.
Make an HTTP POST
to https://api.elastic.io/v2/workspaces
using the
following request parameters:
Payload Parameter | Required | Description |
---|---|---|
type |
yes | Allowed value: workspace |
attributes.name |
yes | Name of the new workspace |
relationships.contract.data.id |
yes | ID of the contract |
relationships.contract.data.type |
yes | Allowed value: contract |
Check our REST API documentation workspace creation section for more details.
With the right permissions a workspace member can perform workspace management via the UI or the API.
You can rename the workspace via the user interface open the menu and click on the Organize > Workspace item to navigate to the workspace management page. Now click on the name of the workspace to edit.
Please note to edit the workspace type from
limited
tofull
or back you must contact your tenant administration. They can edit the type usingtenantAdmin
access rights via an API call.
You can edit the workspace record using our REST API providing your email
and APIKEY
to authenticate.
To change the workspace parameters make an HTTP PATCH
call to
https://api.elastic.io/v2/workspaces/{WORKSPACE_ID}
endpoint using the
following request parameters:
Payload Parameter | Required | Description |
---|---|---|
type |
yes | The value must be workspace . |
attributes.name |
yes | Name of the workspace. |
attributes.flow_stats_enabled_default |
no | Boolean true /false . Read more: Flow Stats Toggle |
attributes.type |
no | Type of the Workspace. Allowed values: full or limited. |
Check our REST API documentation update workspace section for more details.
To change the workspace type you need to have at least tenant administration access rights (
tenantAdmin
).
As with most operations described on this page, you can delete a workspace either via the UI or the API.
Before you can proceed with this operation you must keep in mind that this is an irreversible process. This means we cannot undo this and all the following associated resources will be deleted:
To delete a workspace click on Organize > Workspace item to navigate to the workspace management page. Scroll down to find Delete workspace button.
When you click on this button a warning message would show with the following text:
Delete workspace Name
Are you sure you want to delete this workspace permanently? Deleting this workspace is an irreversible process, we cannot undo a deletion if you complete the process by accident.
You can press Cancel to stop deletion process or press on Delete workspace to permanently delete it.
To delete workspace via the API we make an HTTP DELETE
call to the the following
endpoint https://api.elastic.io/v2/workspaces/{WORKSPACE_ID}
. Here you
must only provide the ID of the workspace.
Please note No warning message comes when you execute this call via the API.
You can add, invite and manage members in your workspace using either the UI or the API.
The workspace Owner
role allows you to add and manage members in your workspace.
To invite new members not included in the contract to your workspace you must
have an Owner
role in contract as well.
You can do all user related tasks on the workspace management page. Choose the workspace where you need to perform this operations (1), click on Organise > Workspace to load the page (2). Here you can add, invite, edit and delete members (3). Let us consider each case separately.
Please Note when you have lower than Admin role in the contract you will not see Invite new member button.
To add a member to your workspace follow these steps:
To invite a new member to your workspace follow these steps:
Owner
, Admin
and Member
user roles.From this page you can edit user roles or delete them
When you delete a members. the system would transfer all Flows, security credentials and Data Samples to your member.
Editing the member means changing the roles. The following animation shows more:
You can manage members in your workspace using our REST API workspace unit section. In includes information abour adding new members, managing their workspace user roles and removing members.
To add a new member via the API, use the following request:
POST https://api.elastic.io/v2/workspaces/{WORKSPACE_ID}/members
Below are request parameters:
Payload Parameter | Required | Description |
---|---|---|
id |
yes | ID of an already registered user, who will be added as a member of the workspace |
type |
yes | Allowed value: member . |
attributes.roles[] |
yes | New member roles. |
To update user roles via the API, use the following request:
PATCH https://api.elastic.io/v2/workspaces/{WORKSPACE_ID}/members/{USER_ID}/
Below are request parameters:
URL Parameter | Required | Description |
---|---|---|
WORKSPACE_ID |
yes | Workspace ID |
USER_ID |
yes | Target user ID |
Payload Parameter | Required | Description |
---|---|---|
id |
yes | ID of an already registered user, match URL parameter {USER_ID} |
type |
yes | Allowed value: member . |
attributes.roles[] |
yes | Roles. |
To remove a member from the workspace via the API we will use the following request:
DELETE https://api.elastic.io/v2/workspaces/{WORKSPACE_ID}/members/{USER_ID}/
Below are request parameters:
URL Parameter | Description |
---|---|
WORKSPACE_ID |
The ID of the Workspace. |
USER_ID |
The ID of the user, which requires deletion. |