Querying Device Topics
Function
Querying Device Topics
URI
GET /v2/{project_id}/link/instances/{instance_id}/devices/{device_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. |
| device_id | Yes | Integer | Device ID. |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| limit | No | Integer | Number of items displayed on each page. |
| offset | No | Integer | Offset, which is the position where the query starts. The value must be greater than or equal to 0. |
| name | No | String | Topic name. |
| topic_permission | No | Integer | Topic permission. 0: publish 1: subscribe |
| topic_type | No | Integer | Topic type. 0: device topic 1: product topic |
| is_private | No | Integer | Whether a topic is customized. 0: basic topic 1: customized topic |
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). |
Response Parameters
Status code: 200
| Parameter | Type | Description |
|---|---|---|
| total | Integer | Total. |
| size | Integer | Number of records displayed on each page. |
| items | Array of Topic objects | Topic list. |
| Parameter | Type | Description |
|---|---|---|
| id | Integer | Topic ID. |
| name | String | Topic name. |
| description | String | Topic description. |
| permission | Integer | Topic permission. The options are as follows: 0: publish; 1: subscribe. |
| is_private | Integer | Topic type. The options are as follows: 0: basic topic; 1: custom topic. |
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
GET /{project_id}/link/instances/{instance_id}/devices/{device_id}/topics Example Responses
Status code: 200
OK
{
"total" : 1,
"size" : 1,
"items" : [ {
"id" : 1528605,
"name" : "/v1/devices/device/datas",
"description" : "Device data report",
"permission" : 0,
"is_private" : 0
} ]
} Status code: 400
Bad Request
{
"error_code" : "SCB.00000000",
"error_msg" : "Parameter is not valid for operation [romalink.link-device-topics.queryTopics]. Parameter is [deviceOid]. 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" : "624c8be1-39b6-47b7-941d-c159aced368a-1619602544650-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 | OK |
| 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.