Calls services on the device.
Request syntax
POST /2019-09-30/things/ ProductKey/DeviceName/services HTTP/1.1
Cookie: Cookie
Payload
Request Parameters
Parameter | Type | Required | Description |
---|---|---|---|
ProductKey | String | Yes | The unique identifier of product to which the device belongs. You can obtain the value of this parameter from the IoT Platform console. |
DeviceName | String | Yes | The name of the device. You can obtain the value of this parameter from the IoT Platform console. |
Cookie | String | Yes | The authentication cookie generated when the CreateAuthCookie API operation is called. |
Payload | JSON | Yes | The name and the parameters of the called service. The name and the parameters of the service must be the same as those that are defined in the product TSL of the device in IoT Platform. For more information, see the request Payload format. |
The format of the request Payload is as follows:
{
"Services": [
{
"Name": "string",
"Args": args // Optional arguments for the service.
}
]
}
Response syntax
HTTP/1.1 StatusCode
Content-Type: application/json
Payload
Response Parameters
Parameter | Type | Description |
---|---|---|
StatusCode | Number | The status code of the operation. If the request is successful, 200 is returned. If the request fails, other status codes are returned. For information, see Status codes. |
Payload | JSON | The response of the service call. |
The format of the returned Payload is as follows:
{
"Code": 200,
"Message": "sucess|reason for failure",
"Data": {
"Services": [
{
"Name": "string",
"Returns": {
"Message": "success|reason for failure",
"Data": string|boolean|number|array|object, // A optional data that returned from the underlying call services call.
}
}
],
"Timestamp": 1568262117344
}
}
Example
$ curl -i -b token.cookie -d '{"Services":[{"Name":"setColor","Args": {"color":"red"}}]}' -k -X POST https://127.0.0.1:9999/2019-09-30/things/a1WabAEC***/N0hB9tiVWWZFMpALK***/services
HTTP/1.1 200 OK
Server: openresty/1.13.6.2
Date: Thu, 31 Oct 2019 11:17:47 GMT
Content-Type: application/json; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
{"Data":{"Services":[{"Name":"setColor","Returns":{"Message":"success","Data":[]}}],"Timestamp":1572520667899},"Code":200,"Message":"success"}