Adding a Product Topic
Function
Adding a Product Topic
URI
POST /v2/{project_id}/link/instances/{instance_id}/products/{product_id}/topics
|
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. |
|
product_id |
Yes |
Integer |
Product 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 |
|---|---|---|---|
|
permission |
Yes |
Integer |
Topic permission. The options are as follows: 0: publish; 1: subscribe. |
|
name |
Yes |
String |
Product-level topic name. Separate different parts of a topic class with slashes (/). The first class is the user-defined version number. The second class is defined as ${deviceId} (wildcard device ID). The third class is the user-defined topic class name. The topic consists of ${version}/${deviceId}/${customizePart}. In brief, the topic class a/b/c/${deviceId}/customizePart is a set of topics such as a/b/c/deviceid1/customizePart1 and a/b/c/deviceid2/customizePart2. |
|
version |
Yes |
String |
Version number, which is a string of 1 to 64 characters. The value must start and end with a letter or digit. Only letters, digits, underscores (_), hyphens (-), periods (.), slashes (/), and backslashes () are allowed. |
|
description |
No |
String |
Description. |
Response Parameters
Status code: 200
|
Parameter |
Type |
Description |
|---|---|---|
|
product_id |
Integer |
Homing product ID. |
|
topic_id |
String |
Product topic ID. |
|
permission |
Integer |
Topic permission. The options are as follows: 0: publish; 1: subscribe. |
|
topic_name |
String |
Topic name. |
|
version |
String |
Version number. |
|
description |
String |
Description. |
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 a topic for a specified product with the permission as publishing.
{
"permission" : 0,
"name" : "datas",
"version" : "v1",
"description" : "/v1/${deviceId}/datas"
}
Example Responses
Status code: 200
Created
{
"product_id" : 122888,
"topic_id" : "17",
"permission" : 1,
"topic_name" : "/3.0/${deviceId}/t1",
"version" : "3.0",
"description" : "description"
}
Status code: 400
Bad Request
{
"error_code" : "SCB.00000000",
"error_msg" : "Parameter is not valid for operation [romalink.link-product-topic.createProductTopic]. Parameter is [productId]. 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 ff38023c-0854-4779-847d-72528e1f5da5 is correct.",
"request_id" : "72b07918-f6a2-4721-81bf-f3fd5486025e-1619663576836-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 |
|---|---|
|
200 |
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.