Updated on 2022-12-05 GMT+08:00

Sending Commands

Function

This API is used to send commands.

URI

POST /v2/{project_id}/link/instances/{instance_id}/devices/{device_id}/send-command

Table 1 Path parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID. For details about how to obtain the project ID, see Appendix > Obtaining a Project ID in the ROMA Connect API Reference.

Minimum: 0

Maximum: 32

instance_id

Yes

String

Instance ID.

Minimum: 0

Maximum: 36

device_id

Yes

Integer

Device ID.

Minimum: 0

Maximum: 99999999999999999

Request Parameters

Table 2 Request body parameters

Parameter

Mandatory

Type

Description

service_id

Yes

Integer

Service ID. The value is automatically rounded down.

Minimum: 1

Maximum: 99999999999999999

command_id

Yes

Integer

Command ID. The value is automatically rounded down.

Minimum: 1

Maximum: 99999999999999999

is_sync

Yes

Boolean

Whether a command is synchronous. true: synchronous false: asynchronous If the system sends a synchronous command to the device as an MQTT message, it waits for the MQTT response from the device (the timeout interval is 5 seconds by default) and then returns a response. If no response is received from the device within the timeout period, an error message is reported by the interface. If the system sends an asynchronous command to the device, it immediately returns a response without waiting for a response from the device.

requests

No

Array of RequestParameter objects

Request parameter list.

Table 3 RequestParameter

Parameter

Mandatory

Type

Description

parameter_name

No

String

Request parameter name.

Minimum: 2

Maximum: 32

parameter_value

No

String

Request parameter value.

Minimum: 2

Maximum: 32

Response Parameters

Status code: 400

Table 4 Response body parameters

Parameter

Type

Description

error_code

String

System error code, which is the detailed error code of HTTP error codes 4xx and 5xx.

Minimum: 0

Maximum: 64

error_msg

String

Error description.

Minimum: 0

Maximum: 200

request_id

String

Message ID.

Minimum: 0

Maximum: 64

Status code: 404

Table 5 Response body parameters

Parameter

Type

Description

error_code

String

System error code, which is the detailed error code of HTTP error codes 4xx and 5xx.

Minimum: 0

Maximum: 64

error_msg

String

Error description.

Minimum: 0

Maximum: 200

request_id

String

Message ID.

Minimum: 0

Maximum: 64

Status code: 500

Table 6 Response body parameters

Parameter

Type

Description

error_code

String

System error code, which is the detailed error code of HTTP error codes 4xx and 5xx.

Minimum: 0

Maximum: 64

error_msg

String

Error description.

Minimum: 0

Maximum: 200

request_id

String

Message ID.

Minimum: 0

Maximum: 64

Example Requests

{
  "service_id" : 10001,
  "command_id" : 20001,
  "is_sync" : 1
}

Example Responses

Status code: 400

Bad Request

{
  "error_code" : "SCB.00000000",
  "error_msg" : "Parameter is not valid for operation [romalink.link-device.sendCommand]. Parameter is [device_id]. Processor is [path].",
  "requestId" : "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.",
  "requestId" : "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

204

No Content

400

Bad Request

404

Not Found

500

Internal Server Error

Error Codes

See Error Codes.