Получение полной информации об умном доме пользователя

Запрос на получение полной информации о сущностях умного дома пользователя.

  1. Формат запроса
  2. Формат ответа
  3. Пример

Формат запроса

GET https://api.iot.yandex.net/v1.0/user/info

Заголовки запроса

Заголовок Описание Обязательный
Authorization Авторизационный токен oauth-приложения. Да
Заголовок Описание Обязательный
Authorization Авторизационный токен oauth-приложения. Да

Формат ответа

Сокращенная структура
HTTP/1.1 200 OK
            
{
    "status": "ok",
    "request_id": String,
    "rooms": [RoomObject],
    "groups": [GroupObject],
    "devices": [DeviceObject],
    "scenarios": [ScenarioObject],
    "households": [HouseholdObject]
}
Полная структура
HTTP/1.1 200 OK
            
{
    "status": "ok",
    "request_id": String,
    "rooms": [{
            "id": String,
            "name": String,
            "household_id": String,
            "devices": [String]
        },
        {
            "id": String,
            "name": String,
            "household_id": String,
            "devices": [String]
        }
    ],
    "groups": [{
        "id": String,
        "name": String,
        "aliases": [String],
        "household_id": String,
        "type": "devices.types.{type}",
        "devices": [String],
        "capabilities": [{
                "retrievable": Boolean,
                "type": "devices.capabilities.{capability}",
                "parameters": {},
                "state": {}
            },
            {
                "retrievable": Boolean,
                "type": "devices.capabilities.{capability}",
                "parameters": {},
                "state": {}
            }
        ]
    }],
    "devices": [{
            "id": String,
            "name": String,
            "aliases": [String],
            "type": "devices.types.{type}",
            "external_id": String,
            "skill_id": String,
            "household_id": String,
            "room": String,
            "groups": [String],
            "capabilities": [{
                    "reportable": Boolean,
                    "retrievable": Boolean,
                    "type": "devices.capabilities.{capability}",
                    "parameters": {},
                    "state": {},
                    "last_updated": Float
                },
                {
                    "reportable": Boolean,
                    "retrievable": Boolean,
                    "type": "devices.capabilities.{capability}",
                    "parameters": {},
                    "state": {},
                    "last_updated": Float
                }
            ],
            "properties": []
        },
        {
            "id": String,
            "name": String,
            "aliases": [String],
            "type": "devices.types.{type}",
            "external_id": String,
            "skill_id": String,
            "household_id": String,
            "room": String,
            "groups": [String],
            "capabilities": [{
                    "reportable": Boolean,
                    "retrievable": Boolean,
                    "type": "devices.capabilities.{capability}",
                    "parameters": {},
                    "state": {},
                    "last_updated": Float
                },
                {
                    "reportable": Boolean,
                    "retrievable": Boolean,
                    "type": "devices.capabilities.{capability}",
                    "parameters": {},
                    "state": {},
                    "last_updated": Float
                }
            ],
            "properties": []
        }
    ],
    "scenarios": [{
            "id": String,
            "name": String,
            "is_active": Boolean
        },
        {
            "id": String,
            "name": String,
            "is_active": Boolean
        }
    ],
    "households": [{
        "id": String,
        "name": String
    }]
}
Параметр Тип Описание Обязательный
request_id String Идентификатор запроса. Необходимо логировать для расследования инцидентов. Да
status String Статус обработки запроса. Допустимые значения:
  • ok.
Да
rooms Array of RoomObjects Массив комнат. Да
groups Array of GroupObjects Массив групп устройств. Да
devices Array of DeviceObjects Массив устройств. Да
scenarios Array of ScenarioObjects Массив сценариев. Да
households Array of HouseholdObjects Массив домов. Да
Тип RoomObject
id String Идентификатор комнаты. Да
name String Название комнаты. Да
devices Array of Strings Массив идентификаторов устройств в комнате. Да
household_id String Идентификатор дома, в котором находится комната. Да
Тип GroupObject
id String Идентификатор группы устройств. Да
name String Имя группы устройств. Да
aliases Array of Strings Массив с дополнительными именами устройств. Да
type String Тип группы устройств. Совпадает с типом устройств, входящих в группу. Да
capabilities Array of GroupCapabilityObjects Массив с информацией об умениях группы устройств. Да
devices Array of Strings Массив идентификаторов устройств, входящих в группу. Да
household_id String Идентификатор дома группы устройств. Да
Массив capabilities
capability1 GroupCapabilityObject Описание умения. Подробнее со списком доступных умений и их параметрами можно ознакомиться в разделе Умения. Нет
capability2 GroupCapabilityObject Описание умения. Подробнее со списком доступных умений и их параметрами можно ознакомиться в разделе Умения. Нет
Тип GroupCapabilityObject
type String Тип умения. Да
retrievable Boolean Доступен ли для данного умения запрос состояния. Да
parameters CapabilityParametersObject Параметры умения. Соответствует значению поля parameters из описания умения. Да
state CapabilityStateObject Текущее состояние умения. Если значение null, значит это умение не находится в одинаковом состоянии на устройствах в группе. Соответствует значению поля state из описания умения. Да
Тип DeviceObject
id String Идентификатор устройства. Да
name String Имя устройства. Да
aliases Array of Strings Массив с дополнительными именами устройства. Да
room String Идентификатор комнаты устройства. Значение null передается, если устройство не привязано к комнате. Да
external_id String Идентификатор устройства в облаке производителя. Да
skill_id String Идентификатор навыка производителя устройства. Да
type String Тип устройства. Да
groups Array of Strings Массив с идентификаторами групп устройства. Да
capabilities Array of DeviceCapabilityObjects Массив с информацией об умениях устройства. Да
properties Array of DevicePropertyObjects Массив с информацией о свойствах устройства. Да
household_id String Идентификатор дома устройства. Да
Массив capabilities
capability1 DeviceCapabilityObject Описание умения. Нет
capability2 DeviceCapabilityObject Описание умения. Нет
Массив properties
property1 DevicePropertyObject Описание свойства. Нет
property2 DevicePropertyObject Описание свойства. Нет
Тип DeviceCapabilityObject
type String Тип умения. Да
reportable Boolean Оповещает ли умение об изменении состояния платформу умного дома, используя сервис уведомлений. Да
retrievable Boolean Доступен ли для данного умения устройства запрос состояния. Да
parameters CapabilityParametersObject Параметры умения. Соответствует значению поля parameters из описания умения. Да
state CapabilityStateObject Текущее состояние умения. Если значение null , значит состояние никогда не передавалось в систему. Соответствует значению поля state из описания умения. Да
last_updated Float Время последнего обновления состояния в секундах, формат unix timestamp. Да
Тип DevicePropertyObject
type String Тип свойства. Да
reportable Boolean Оповещает ли свойство об изменении состояния платформу умного дома, используя сервис уведомлений. Да
retrievable Boolean Доступен ли для данного свойства устройства запрос состояния. Да
parameters PropertyParametersObject Параметры свойства. Соответствует значению поля parameters из описания свойства. Да
state PropertyStateObject Текущее состояние свойства. Если значение null , значит состояние никогда не передавалось в систему. Соответствует значению поля state из описания свойства. Да
last_updated Float Время последнего обновления состояния в секундах, формат unix timestamp. Да
Тип ScenarioObject
id String Идентификатор сценария. Да
name String Название сценария. Да
is_active Boolean Флаг того, активен ли этот сценарий сейчас. Неактивный сценарий не удален пользователем, но его нельзя запустить. Да
Тип HouseholdObject
id String Идентификатор дома. Да
name String Название дома. Да
Параметр Тип Описание Обязательный
request_id String Идентификатор запроса. Необходимо логировать для расследования инцидентов. Да
status String Статус обработки запроса. Допустимые значения:
  • ok.
Да
rooms Array of RoomObjects Массив комнат. Да
groups Array of GroupObjects Массив групп устройств. Да
devices Array of DeviceObjects Массив устройств. Да
scenarios Array of ScenarioObjects Массив сценариев. Да
households Array of HouseholdObjects Массив домов. Да
Тип RoomObject
id String Идентификатор комнаты. Да
name String Название комнаты. Да
devices Array of Strings Массив идентификаторов устройств в комнате. Да
household_id String Идентификатор дома, в котором находится комната. Да
Тип GroupObject
id String Идентификатор группы устройств. Да
name String Имя группы устройств. Да
aliases Array of Strings Массив с дополнительными именами устройств. Да
type String Тип группы устройств. Совпадает с типом устройств, входящих в группу. Да
capabilities Array of GroupCapabilityObjects Массив с информацией об умениях группы устройств. Да
devices Array of Strings Массив идентификаторов устройств, входящих в группу. Да
household_id String Идентификатор дома группы устройств. Да
Массив capabilities
capability1 GroupCapabilityObject Описание умения. Подробнее со списком доступных умений и их параметрами можно ознакомиться в разделе Умения. Нет
capability2 GroupCapabilityObject Описание умения. Подробнее со списком доступных умений и их параметрами можно ознакомиться в разделе Умения. Нет
Тип GroupCapabilityObject
type String Тип умения. Да
retrievable Boolean Доступен ли для данного умения запрос состояния. Да
parameters CapabilityParametersObject Параметры умения. Соответствует значению поля parameters из описания умения. Да
state CapabilityStateObject Текущее состояние умения. Если значение null, значит это умение не находится в одинаковом состоянии на устройствах в группе. Соответствует значению поля state из описания умения. Да
Тип DeviceObject
id String Идентификатор устройства. Да
name String Имя устройства. Да
aliases Array of Strings Массив с дополнительными именами устройства. Да
room String Идентификатор комнаты устройства. Значение null передается, если устройство не привязано к комнате. Да
external_id String Идентификатор устройства в облаке производителя. Да
skill_id String Идентификатор навыка производителя устройства. Да
type String Тип устройства. Да
groups Array of Strings Массив с идентификаторами групп устройства. Да
capabilities Array of DeviceCapabilityObjects Массив с информацией об умениях устройства. Да
properties Array of DevicePropertyObjects Массив с информацией о свойствах устройства. Да
household_id String Идентификатор дома устройства. Да
Массив capabilities
capability1 DeviceCapabilityObject Описание умения. Нет
capability2 DeviceCapabilityObject Описание умения. Нет
Массив properties
property1 DevicePropertyObject Описание свойства. Нет
property2 DevicePropertyObject Описание свойства. Нет
Тип DeviceCapabilityObject
type String Тип умения. Да
reportable Boolean Оповещает ли умение об изменении состояния платформу умного дома, используя сервис уведомлений. Да
retrievable Boolean Доступен ли для данного умения устройства запрос состояния. Да
parameters CapabilityParametersObject Параметры умения. Соответствует значению поля parameters из описания умения. Да
state CapabilityStateObject Текущее состояние умения. Если значение null , значит состояние никогда не передавалось в систему. Соответствует значению поля state из описания умения. Да
last_updated Float Время последнего обновления состояния в секундах, формат unix timestamp. Да
Тип DevicePropertyObject
type String Тип свойства. Да
reportable Boolean Оповещает ли свойство об изменении состояния платформу умного дома, используя сервис уведомлений. Да
retrievable Boolean Доступен ли для данного свойства устройства запрос состояния. Да
parameters PropertyParametersObject Параметры свойства. Соответствует значению поля parameters из описания свойства. Да
state PropertyStateObject Текущее состояние свойства. Если значение null , значит состояние никогда не передавалось в систему. Соответствует значению поля state из описания свойства. Да
last_updated Float Время последнего обновления состояния в секундах, формат unix timestamp. Да
Тип ScenarioObject
id String Идентификатор сценария. Да
name String Название сценария. Да
is_active Boolean Флаг того, активен ли этот сценарий сейчас. Неактивный сценарий не удален пользователем, но его нельзя запустить. Да
Тип HouseholdObject
id String Идентификатор дома. Да
name String Название дома. Да

Пример

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

Служба поддержки