Programmatic device control protocol

With this API, the user can automate the control of devices connected to Yandex Smart Home.

For user applications, management of devices, groups, and scenarios is supported.

Host for all API requests: https://api.iot.yandex.net

Method

Resource

OAuth scope

Description

GET

v1.0/user/info

iot:view

Getting full information about the user's smart home

GET

v1.0/devices/{device_id}

iot:view

Getting information about the device status

POST

v1.0/devices/actions

iot:control

Managing device capabilities

GET

v1.0/groups/{group_id}

iot:view

Getting information about the status of a device group

POST

v1.0/groups/{group_id}/actions

iot:control

Managing capabilities of a device group

POST

v1.0/scenarios/{scenario_id}/actions

iot:control

Managing scenario launch

DELETE

v1.0/devices/{device_id}

iot:control

Deleting the user's device

Access and authorization

To use the platform's API, register your app on the Yandex OAuth server and request the necessary permissions for smart home devices (iot:view, iot:control).

Note

If you want to get an OAuth token for testing, use a debug token for this purpose.

After the user grants permissions to the application, you can use their token to make requests to the Smart Home API. Make sure to specify the token in the Authorization header of each API request:

curl -i -X GET 'https://api.iot.yandex.net/v1.0/user/info' \
-H 'Authorization: Bearer YOUR_OAUTH_TOKEN'

For more information about requesting user permissions for data access, read the documentation for OAuth authorization.