Updated on 2024-12-25 GMT+08:00

Creating a Workspace

Function

Before using the baseline check, alarm management, security analysis, and security orchestration functions of the SecMaster, you need to create a workspace. The workspace can divide resources into different working scenarios to avoid inconvenience in searching for resources.

Calling Method

For details, see Calling APIs.

URI

POST /v1/{project_id}/workspaces

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

User token

It can be obtained by calling the IAM API used to obtain a user token. The value of X-Subject-Token in the response header is the user token.

content-type

Yes

String

application/json;charset=UTF-8

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

region_id

Yes

String

Region ID.

enterprise_project_id

No

String

Enterprise project ID.

enterprise_project_name

No

String

Enterprise project name.

view_bind_id

No

String

Space ID bound to the view.

is_view

No

Boolean

Indicates whether the view is used.

name

Yes

String

Workspace name.

description

No

String

Workspace description

project_name

Yes

String

Project name.

tags

No

Array of TagsPojo objects

You can tag resources under your account for classification. TMS provides you with a visualized table to manage resource tags, including editing tags in batches.

Table 4 TagsPojo

Parameter

Mandatory

Type

Description

key

No

String

Tag key.

value

No

String

Tag value.

Response Parameters

Status code: 200

Table 5 Response body parameters

Parameter

Type

Description

id

String

Workspace ID.

create_time

String

Creation time.

update_time

String

Update time.

name

String

Workspace name.

description

String

Workspace description.

creator_id

String

Creator ID.

creator_name

String

Creator name.

modifier_id

String

Modifier ID.

modifier_name

String

Modifier name.

project_id

String

Project ID.

project_name

String

Project name.

domain_id

String

Tenant ID.

domain_name

String

Tenant name.

enterprise_project_id

String

Enterprise project ID.

enterprise_project_name

String

Enterprise project name.

is_view

Boolean

Indicates whether the view is used.

region_id

String

Region ID.

view_bind_id

String

Space ID bound to the view.

view_bind_name

String

Space name bound to the view.

workspace_agency_list

Array of workspace_agency_list objects

This parameter is used only in the view scenario. The spaces managed by the view are listed.

Table 6 workspace_agency_list

Parameter

Type

Description

project_id

String

ID of the project to which the agency space belongs.

id

String

Space agency ID.

name

String

Space agency name.

region_id

String

ID of the region to which the agency space belongs

workspace_attribution

String

THIS_ACCOUNT: current account space; CROSS_ACCOUNT: cross-account space

agency_version

String

IAM agency version used when a user creates a hosting space. The value can be V3 or V5.

domain_id

String

ID of the tenant agency.

domain_name

String

Name of the tenant agency.

iam_agency_id

String

IAM agency ID.

iam_agency_name

String

IAM agency name.

resource_spec_code

Array of strings

The purchased version of agency space

selected

Boolean

Indicates whether a view is selected.

Status code: 400

Table 7 Response body parameters

Parameter

Type

Description

code

String

Error code.

message

String

Error description.

Status code: 500

Table 8 Response body parameters

Parameter

Type

Description

code

String

Error code.

message

String

Error description.

Example Requests

Request body for creating a workspace

{
  "name" : "My Workspace",
  "region_id" : "cn-north-4",
  "project_name" : "cn-north-4",
  "enterprise_project_id" : "",
  "enterprise_project_name" : "",
  "tags" : [ {
    "key" : "tag1",
    "value" : "value1"
  } ],
  "description" : "My workspace"
}

Example Responses

Status code: 200

Request successful.

{
  "create_time" : "2024-07-02T09:25:17Z+0800",
  "creator_id" : "b4*****************************46a",
  "creator_name" : "l00644738",
  "description" : "My workspace",
  "domain_id" : "ac*****************************bf4",
  "domain_name" : "scc****09",
  "enterprise_project_id" : "",
  "enterprise_project_name" : "",
  "id" : "39*************bf",
  "is_view" : false,
  "modifier_id" : "",
  "modifier_name" : "",
  "name" : "My Workspace",
  "project_id" : "15**************************da6",
  "project_name" : "cn-north-4",
  "region_id" : "cn-north-4",
  "update_time" : "2024-07-02T09:25:17Z+0800",
  "view_bind_id" : "",
  "view_bind_name" : "",
  "workspace_agency_list" : [ ]
}

Status Codes

Status Code

Description

200

Request successful.

400

Invalid request parameter.

500

Request failed.

Error Codes

See Error Codes.