Creating a topic
Function
Creating a topic
Calling Method
For details, see Calling APIs.
URI
POST /v2/{project_id}/design/subjects
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
project_id |
Yes |
String |
Project ID. For details about how to obtain the project ID, see Project ID and Account ID. |
Request Parameters
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
X-Auth-Token |
Yes |
String |
IAM token, which is obtained by calling the IAM API for obtaining a user token (value of X-Subject-Token in the response header). This field is mandatory for authentication using tokens. |
|
workspace |
Yes |
String |
Workspace ID. For details about how to obtain the workspace ID, see Instance ID and Workspace ID. |
|
X-Project-Id |
No |
String |
Project ID. For details about how to obtain the project ID, see Project ID and Account ID. This parameter is mandatory for API requests that use AK/SK authentication in multi-project scenarios. |
|
Content-Type |
No |
String |
Default value: application/json;charset=UTF-8 This parameter is optional. If the body is available, this parameter is mandatory. If the body is unavailable, you do not need to set this parameter or verify it. |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
entity |
Yes |
CatalogEntityVO object |
Catalog entity. |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
typeName |
No |
String |
Type name. Set this parameter to BusinessCatalog (service layer). |
|
attributes |
Yes |
CatalogAttributeVO object |
Attribute List |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
path |
Yes |
String |
Path. Use slashes (/) to separate them, for example, Operation Domain/Cloud Academy/Cloud Academy Training Solution. |
|
qualifiedName |
Yes |
String |
Asset name. |
|
level |
Yes |
String |
Level to which a theme belongs. |
|
name |
Yes |
String |
Name. |
|
nameEng |
Yes |
String |
English name. |
|
alias |
No |
String |
Alias |
|
description |
Yes |
String |
Description. |
|
dataOwner |
Yes |
String |
Data subject. |
|
owner |
No |
String |
Owner of the instance. |
|
dataOwnerList |
Yes |
Array of strings |
List of data subjects. |
|
createTime |
No |
String |
Creation time. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z. |
|
createBy |
No |
String |
Creator. |
|
updateTime |
No |
String |
Update time. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z. |
|
updateBy |
No |
String |
Person who updates the information. |
|
parent |
No |
parent object |
Parent node. |
|
parentId |
No |
String |
Parent node ID. |
|
l1 |
No |
Boolean |
Indicates whether the layer is L1. Subject area group. |
|
l2 |
No |
Boolean |
Indicates whether the layer is L2. Subject area. |
|
l3 |
No |
Boolean |
Indicates whether the layer is L3. Business object. |
|
ordinal |
No |
Integer |
Sequence number. Topics are sorted in ascending order based on the ID. |
|
tenantId |
No |
String |
Specifies the tenant ID. For details about how to obtain the value, see the path parameter project_id of this API. |
|
self_defined_fields |
No |
Array of SelfDefinedFieldVO objects |
User-defined item. Customized attribute item of a theme. |
Response Parameters
Status code: 200
|
Parameter |
Type |
Description |
|---|---|---|
|
data |
data object |
data: unified outermost data structure of the returned result. |
|
Parameter |
Type |
Description |
|---|---|---|
|
value |
CatalogVO object |
value: unified outer data structure of the returned result. |
|
Parameter |
Type |
Description |
|---|---|---|
|
name_ch |
String |
Chinese name |
|
name_en |
String |
English name. |
|
description |
String |
Description |
|
qualified_name |
String |
File name extension. |
|
guid |
String |
GUID, which is automatically generated. |
|
code |
String |
Code. |
|
alias |
String |
Alias |
|
status |
String |
Release status of an entity. This parameter is read-only and does not need to be set during creation and update. Options:
|
|
new_biz |
BizVersionManageVO object |
Service version management. This parameter is read-only. |
|
data_owner |
String |
Data owner. |
|
data_owner_list |
String |
Data owner set. |
|
data_department |
String |
Data domain. |
|
path |
String |
Path information. |
|
level |
Integer |
Level information. |
|
ordinal |
Integer |
Sequence number. |
|
owner |
String |
Owner of the instance. |
|
parent_id |
String |
Parent directory ID, which is a string. If no parent directory ID exists, the parent directory is the root directory. |
|
swap_order_id |
String |
ID of the target node at the same layer, which is a string |
|
id |
String |
Subject ID, which is a string |
|
qualified_id |
String |
Authentication ID, which is automatically generated. |
|
from_public |
Boolean |
Indicates whether the data is from the public layer. |
|
create_by |
String |
Creator. |
|
update_by |
String |
Person who updates the information. |
|
create_time |
String |
Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z. |
|
update_time |
String |
Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z. |
|
children_num |
Integer |
Number of subprocesses, excluding subprocesses. This parameter is not transferred from the front end. |
|
children |
Array of CatalogVO objects |
Lower-level subdirectory, which is read-only. |
|
self_defined_fields |
Array of SelfDefinedFieldVO objects |
Customize Attribute Field: |
|
Parameter |
Type |
Description |
|---|---|---|
|
id |
String |
Field ID, which is a string |
|
biz_type |
String |
Business entity type. Options:
|
|
biz_id |
String |
Business ID, which is a string |
|
biz_info |
String |
Business object information. |
|
status |
String |
Release status of an entity. This parameter is read-only and does not need to be set during creation and update. Options:
|
|
biz_version |
Integer |
Service version, which is read-only. |
|
create_time |
String |
Creation time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z. |
|
update_time |
String |
Update time, which is read-only. The format complies with RFC3339 and is accurate to seconds. The UTC time zone is yyyy-mm-ddTHH:MM:SSZ, for example, 1970-01-01T00:00:00Z. |
|
Parameter |
Type |
Description |
|---|---|---|
|
fd_name_ch |
String |
Chinese name of a user-defined item. |
|
fd_name_en |
String |
English name of a customized item. |
|
not_null |
Boolean |
Whether a parameter is mandatory. |
|
fd_value |
String |
Attribute value |
Status code: 400
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Error code, for example, DS.6000, indicating that the request fails to be processed. |
|
error_msg |
String |
Error message |
|
data |
Object |
Returned data information. |
Status code: 401
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Error code, for example, DS.6000, indicating that the request fails to be processed. |
|
error_msg |
String |
Error message |
|
data |
Object |
Returned data information. |
Status code: 403
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Error code, for example, DS.6000, indicating that the request fails to be processed. |
|
error_msg |
String |
Error message |
|
data |
Object |
Returned data information. |
Status code: 404
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Error code, for example, DS.6000, indicating that the request fails to be processed. |
|
error_msg |
String |
Error message |
|
data |
Object |
Returned data information. |
Example Requests
Create a topic based on the request parameters.
POST https://{endpoint}/v2/{project_id}/design/subjects
{
"entity" : {
"attributes" : {
"path" : "test_create_catalog",
"qualifiedName" : "test_create_catalog@Business",
"level" : "L1",
"name" : "test_create_catalog",
"nameEng" : "test_create_catalog",
"alias" : "",
"description" : "this is a demo.",
"createTime" : 1713576437311,
"updateTime" : 1713576437311,
"dataOwner" : "dataOwner",
"dataOwnerList" : [ "test_uesr" ],
"self_defined_fields" : [ ]
},
"typeName" : "BusinessCatalog"
}
}
Example Responses
Status code: 200
This operation succeeds, and the returned data is entity details.
{
"data" : {
"value" : {
"name_ch" : "test_create_catalog",
"name_en" : "test_create_catalog",
"description" : "this is a demo.",
"qualified_name" : "test_create_catalog@Business.0833a5737480d53b2f25c010dc1a7b88-workspace-9ce2cfd08fda4f3b95faa5ba65fa5ec3",
"guid" : null,
"code" : null,
"status" : "DRAFT",
"new_biz" : null,
"alias" : "",
"data_owner" : "dataOwner",
"data_owner_list" : "[\"test_uesr\"]",
"data_department" : null,
"path" : "test_create_catalog",
"level" : 1,
"ordinal" : 10,
"owner" : "test_uesr",
"parent_id" : null,
"swap_order_id" : null,
"id" : "1231174343611035648",
"qualified_id" : null,
"from_public" : null,
"create_by" : "test_uesr",
"update_by" : "test_uesr",
"create_time" : "2024-04-20T09:27:17.63+08:00",
"update_time" : "2024-04-20T09:27:17.63+08:00",
"self_defined_fields" : [ ],
"children_num" : null,
"children" : null
}
}
}
Status code: 400
BadRequest
{
"error_code" : "DS.60xx",
"error_msg" : "The user request is illegal."
}
Status code: 401
Unauthorized
{
"error_code" : "DS.60xx",
"error_msg" : "User authentication failed."
}
Status code: 403
Forbidden
{
"error_code" : "DS.60xx",
"error_msg" : "The user does not have permission to call this API."
}
Status code: 404
Not Found
{
"error_code" : "DS.60xx",
"error_msg" : "The User Request API does not exist."
}
Status Codes
|
Status Code |
Description |
|---|---|
|
200 |
This operation succeeds, and the returned data is entity details. |
|
400 |
BadRequest |
|
401 |
Unauthorized |
|
403 |
Forbidden |
|
404 |
Not Found |
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.