Creating an Attribute
Function
Creating an Attribute
URI
POST /v2/{project_id}/link/instances/{instance_id}/services/{service_id}/properties
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| project_id | Yes | String | Project ID. The default value is default for compatibility with 20.0.Project ID. For details about how to get the project ID, see "Appendix" > "Obtaining a Project ID" in this document. |
| instance_id | Yes | String | Instance ID. The default value is default for compatibility with 20.0. |
| service_id | Yes | String | Service ID. |
Request Parameters
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| X-Auth-Token | Yes | String | User token, which can be obtained by calling the IAM API (value of X-Subject-Token in the response header). |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| property_name | Yes | String | Attribute name, which is a string of 2 to 50 characters containing letters, digits, hyphens (-), and underscores (_). The value must start with a letter. |
| description | No | String | Description, which contains a maximum of 200 characters. |
| data_type | Yes | String | Property data type. Options: enumerated values of boolean (case sensitive); number (ranging from ±1.0 x 10^-28 to ±7.9228 x 10^28); string; integer; datetime (in yyyyMMddTHHmmss format); json; array |
| required | Yes | Integer | Whether a field is mandatory. The options are as follows: 0: no; 1: yes. |
| min | No | String | Minimum value. This parameter is mandatory if data_type is set to integer or number. |
| max | No | String | Maximum value. This parameter is mandatory when data_type is set to integer or number. |
| step | No | String | Step. This parameter is mandatory if data_type is set to integer or number. |
| max_length | No | Integer | Maximum length of a character string. This parameter is mandatory if data_type is set to string, datetime, or json. The value is automatically rounded down. |
| unit | No | String | Attribute unit. |
| enum_list | No | String | Array of enumerated values of the string type. The values are separated by commas (,). The length of a single value is determined by the max_length parameter. |
| enum_dict | No | Object | For the boolean data type, use the JSON format. Example: "enum_dict":{"0":"xxx","1":"xxx"} |
| method | No | String | Access mode (compatible with 20.0. The options are as follows: R: the attribute is readable; W: the attribute is writable; E: the attribute is executable.). |
Response Parameters
Status code: 201
| Parameter | Type | Description |
|---|---|---|
| property_id | Integer | Attribute ID. |
| property_name | String | Attribute name, which is a string of 2 to 50 characters containing letters, digits, hyphens (-), and underscores (_). The value must start with a letter. |
| description | String | Description, which contains a maximum of 200 characters. |
| data_type | String | Property data type. Options: enumerated values of boolean (case sensitive); number (ranging from ±1.0 x 10^-28 to ±7.9228 x 10^28); string; integer; datetime (in yyyyMMddTHHmmss format); json; array |
| required | Integer | Whether a field is mandatory. The options are as follows: 0: no; 1: yes. |
| min | String | Minimum value. This parameter is available if data_type is set to integer or number. |
| max | String | Maximum value. This parameter is valid when data_type is set to integer or number. |
| step | String | Step. This parameter is available if data_type is set to integer or number. |
| max_length | Integer | Maximum length of a character string. This parameter is available if data_type is set to string, datetime, or json. |
| unit | String | Attribute unit. |
| enum_list | String | Array of enumerated values of the string type. The values are separated by commas (,). The length of a single value is determined by the max_length parameter. |
| enum_dict | Object | For the boolean data type, use the JSON format. Example: "enum_dict":{"0":"xxx","1":"xxx"} |
| method | String | Access mode (compatible with 20.0. The options are as follows: R: the attribute is readable; W: the attribute is writable; E: the attribute is executable.). |
Status code: 400
| Parameter | Type | Description |
|---|---|---|
| error_code | String | System error code, which is the detailed error code of HTTP error codes 4xx and 5xx. |
| error_msg | String | Error description. |
| request_id | String | Message ID. |
Status code: 404
| Parameter | Type | Description |
|---|---|---|
| error_code | String | System error code, which is the detailed error code of HTTP error codes 4xx and 5xx. |
| error_msg | String | Error description. |
| request_id | String | Message ID. |
Status code: 500
| Parameter | Type | Description |
|---|---|---|
| error_code | String | System error code, which is the detailed error code of HTTP error codes 4xx and 5xx. |
| error_msg | String | Error description. |
| request_id | String | Message ID. |
Example Requests
Add an optional attribute for a specified service with the data type as integer, and set the minimum and maximum values.
{
"property_name" : "power_usage",
"description" : "power_usage",
"data_type" : "integer",
"required" : 0,
"min" : "0",
"max" : "100",
"step" : "1",
"unit" : "W"
} Example Responses
Status code: 201
Created
{
"property_id" : 3320,
"property_name" : "p2",
"description" : null,
"data_type" : "datetime",
"required" : 0,
"min" : 0,
"max" : 65536,
"step" : 1,
"max_length" : "10",
"unit" : "yuan",
"enum_list" : null,
"method" : "RWE"
} Status code: 400
Bad Request
{
"error_code" : "SCB.00000000",
"error_msg" : "Parameter is not valid for operation [romalink.link-command.saveProperty]. Parameter is [service_id]. Processor is [path].",
"request_id" : "cb39e78a-afd3-4e04-901d-70468b1c23dc-1619602712496-cnnorth7a-P-romalink-service01"
} Status code: 404
Not Found
{
"error_code" : "ROMA.00110006",
"error_msg" : "The resource does not exist. Check whether the resource ID 1 is correct.",
"request_id" : "13984193-ca65-4954-9b7f-4b7d680399d6-1619678681445-cnnorth7a-P-romalink-service01"
} Status code: 500
Internal Server Error
{
"error_code" : "ROMA.00110002",
"error_msg" : "The instance does not exist. project_id: 397cd10b30544c588b2f4a56d83856c4, instance_id: f3bb386a-23ec-47aa-9943-4c60ac658611",
"request_id" : "c8c06d0a-be92-4fdf-9d10-bc20131ab158-1619593104919-cnnorth7a-P-romalink-service01"
} Status Codes
| Status Code | Description |
|---|---|
| 201 | Created |
| 400 | Bad Request |
| 404 | Not Found |
| 500 | Internal Server Error |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.