# Протокол

## Оглавление

- [keyapis/iot_connect_sber/v1/keyapis_iot_connect_devices_v1.proto](#keyapis_iot_connect_sber_v1_keyapis_iot_connect_devices_v1-proto)
    - [DevicesService](#keyapis-iot_connect_sber-v1-DevicesService)
  
    - [Device](#keyapis-iot_connect_sber-v1-Device)
    - [DeviceState](#keyapis-iot_connect_sber-v1-DeviceState)
    - [DeviceState.Value](#keyapis-iot_connect_sber-v1-DeviceState-Value)
    - [DeviceStateArray](#keyapis-iot_connect_sber-v1-DeviceStateArray)
    - [GetDevicesRequest](#keyapis-iot_connect_sber-v1-GetDevicesRequest)
    - [GetDevicesResponse](#keyapis-iot_connect_sber-v1-GetDevicesResponse)
    - [Model](#keyapis-iot_connect_sber-v1-Model)
  
    - [DeviceState.KeyType](#keyapis-iot_connect_sber-v1-DeviceState-KeyType)
    - [DeviceState.Value.Type](#keyapis-iot_connect_sber-v1-DeviceState-Value-Type)
    - [Model.FeatureType](#keyapis-iot_connect_sber-v1-Model-FeatureType)
  


## [Схема классов](/svg/protos/key/keyapis/iot_connect_sber/v1/keyapis_iot_connect_devices_v1.proto.svg)
<a href="/svg/protos/key/keyapis/iot_connect_sber/v1/keyapis_iot_connect_devices_v1.proto.svg"><img src="/svg/protos/key/keyapis/iot_connect_sber/v1/keyapis_iot_connect_devices_v1.proto.svg" alt="/svg/protos/key/keyapis/iot_connect_sber/v1/keyapis_iot_connect_devices_v1.proto.svg" style="height:100%;"></a>




<a name="keyapis_iot_connect_sber_v1_keyapis_iot_connect_devices_v1-proto"></a>

## [keyapis/iot_connect_sber/v1/keyapis_iot_connect_devices_v1.proto](/protos/key/keyapis/iot_connect_sber/v1/keyapis_iot_connect_devices_v1.proto)
Сервис реализует функционал взаимодействия с Умным домом Sber


<a name="keyapis-iot_connect_sber-v1-DevicesService"></a>

### DevicesService
 Сервис для выдачи устройств Умному дому Sber

| Название метода | Описание | Тип запроса | Тип ответа |
| --------------- | -------- | ----------- | -----------|
| <a id="keyapis-iot_connect_sber-v1-GetDevices"></a> [GetDevices](#keyapis-iot_connect_sber-v1-GetDevices) | Метод получения устройств, доступных пользователю. Идентификатор пользователя - это subject из токена. Метод доступен для: TokenACF: Scope: sber_iot | [keyapis.iot_connect_sber.v1.GetDevicesRequest](#keyapis-iot_connect_sber-v1-GetDevicesRequest) | [keyapis.iot_connect_sber.v1.GetDevicesResponse](#keyapis-iot_connect_sber-v1-GetDevicesResponse) |

 <!-- end services -->


<a name="keyapis-iot_connect_sber-v1-Device"></a>


### [Device](#keyapis-iot_connect_sber-v1-Device)
 Объект устройства


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="keyapis-iot_connect_sber-v1-Device-id"></a> [id](#keyapis-iot_connect_sber-v1-Device-id) | Идентификатор устройства на платформе Ключ. Конкатенация user_id и device_id плафтормы Ключ |    [string](#scalar-types) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-Device-name"></a> [name](#keyapis-iot_connect_sber-v1-Device-name) | Название устройства на платформе Ключ |    [string](#scalar-types) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-Device-default_name"></a> [default_name](#keyapis-iot_connect_sber-v1-Device-default_name) | Название устройства от производителя |    [string](#scalar-types) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-Device-home"></a> [home](#keyapis-iot_connect_sber-v1-Device-home) | Адрес дома, где установлено устройство |    [string](#scalar-types) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-Device-room"></a> [room](#keyapis-iot_connect_sber-v1-Device-room) | Название или номер подъезда |    [string](#scalar-types) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-Device-model"></a> [model](#keyapis-iot_connect_sber-v1-Device-model) | Тип устройства |    [keyapis.iot_connect_sber.v1.Model](#keyapis-iot_connect_sber-v1-Model) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-Device-hw_version"></a> [hw_version](#keyapis-iot_connect_sber-v1-Device-hw_version) | HW версия устройства |    [string](#scalar-types) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-Device-sw_version"></a> [sw_version](#keyapis-iot_connect_sber-v1-Device-sw_version) | SW версия устройства |    [string](#scalar-types) | <nil>|






<a name="keyapis-iot_connect_sber-v1-DeviceState"></a>


### [DeviceState](#keyapis-iot_connect_sber-v1-DeviceState)
 Статус устройства


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="keyapis-iot_connect_sber-v1-DeviceState-state_key_type"></a> [state_key_type](#keyapis-iot_connect_sber-v1-DeviceState-state_key_type) | Тип статуса устройства |    [keyapis.iot_connect_sber.v1.DeviceState.KeyType](#keyapis-iot_connect_sber-v1-DeviceState-KeyType) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-DeviceState-value"></a> [value](#keyapis-iot_connect_sber-v1-DeviceState-value) | Значение статуса устройства |    [keyapis.iot_connect_sber.v1.DeviceState.Value](#keyapis-iot_connect_sber-v1-DeviceState-Value) | <nil>|






<a name="keyapis-iot_connect_sber-v1-DeviceState-Value"></a>


### [DeviceState.Value](#keyapis-iot_connect_sber-v1-DeviceState-Value)
 Значение статуса устройства


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="keyapis-iot_connect_sber-v1-DeviceState-Value-type"></a> [type](#keyapis-iot_connect_sber-v1-DeviceState-Value-type) | Тип значения статуса устройства |    [keyapis.iot_connect_sber.v1.DeviceState.Value.Type](#keyapis-iot_connect_sber-v1-DeviceState-Value-Type) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-DeviceState-Value-is_value"></a> [is_value](#keyapis-iot_connect_sber-v1-DeviceState-Value-is_value) | Значение логического типа |  optional  [bool](#scalar-types) | <nil>|






<a name="keyapis-iot_connect_sber-v1-DeviceStateArray"></a>


### [DeviceStateArray](#keyapis-iot_connect_sber-v1-DeviceStateArray)
 Массив статусов устройства


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="keyapis-iot_connect_sber-v1-DeviceStateArray-states"></a> [states](#keyapis-iot_connect_sber-v1-DeviceStateArray-states) | Статусы устройства |  repeated  [keyapis.iot_connect_sber.v1.DeviceState](#keyapis-iot_connect_sber-v1-DeviceState) | <nil>|






<a name="keyapis-iot_connect_sber-v1-GetDevicesRequest"></a>


### [GetDevicesRequest](#keyapis-iot_connect_sber-v1-GetDevicesRequest)
 Запрос метода получения устройств, доступных пользователю






<a name="keyapis-iot_connect_sber-v1-GetDevicesResponse"></a>


### [GetDevicesResponse](#keyapis-iot_connect_sber-v1-GetDevicesResponse)
 Ответ на запрос метода получения устройств, доступных пользователю


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="keyapis-iot_connect_sber-v1-GetDevicesResponse-data"></a> [data](#keyapis-iot_connect_sber-v1-GetDevicesResponse-data) | Домофоны, доступные пользователю |  repeated  [keyapis.iot_connect_sber.v1.Device](#keyapis-iot_connect_sber-v1-Device) | <nil>|






<a name="keyapis-iot_connect_sber-v1-Model"></a>


### [Model](#keyapis-iot_connect_sber-v1-Model)
 Объект Модель устройства


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="keyapis-iot_connect_sber-v1-Model-id"></a> [id](#keyapis-iot_connect_sber-v1-Model-id) | Идентификатор модели |    [string](#scalar-types) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-Model-manufacturer"></a> [manufacturer](#keyapis-iot_connect_sber-v1-Model-manufacturer) | Производитель |    [string](#scalar-types) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-Model-model"></a> [model](#keyapis-iot_connect_sber-v1-Model-model) | Название модели |    [string](#scalar-types) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-Model-hw_version"></a> [hw_version](#keyapis-iot_connect_sber-v1-Model-hw_version) | Версия оборудования |    [string](#scalar-types) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-Model-sw_version"></a> [sw_version](#keyapis-iot_connect_sber-v1-Model-sw_version) | Версия прошивки |    [string](#scalar-types) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-Model-description"></a> [description](#keyapis-iot_connect_sber-v1-Model-description) | Описание |    [string](#scalar-types) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-Model-category"></a> [category](#keyapis-iot_connect_sber-v1-Model-category) | Категория устройства |    [string](#scalar-types) | <nil>|
| <a id="keyapis-iot_connect_sber-v1-Model-feature_types"></a> [feature_types](#keyapis-iot_connect_sber-v1-Model-feature_types) | Список функций |  repeated  [keyapis.iot_connect_sber.v1.Model.FeatureType](#keyapis-iot_connect_sber-v1-Model-FeatureType) | <nil>|





 <!-- end messages -->



<a name="keyapis-iot_connect_sber-v1-DeviceState-KeyType"></a>

### [DeviceState.KeyType](#keyapis-iot_connect_sber-v1-DeviceState-KeyType)
 Список ключей статусов устройства

| Номер | Тип | Название |
| ----- | --- | -------- |
| 0 | <a id="keyapis-iot_connect_sber-v1-DeviceState-KeyType-KEY_TYPE_UNKNOWN"></a> [KEY_TYPE_UNKNOWN](#keyapis-iot_connect_sber-v1-DeviceState-KeyType-KEY_TYPE_UNKNOWN) | Значение не указано |
| 1 | <a id="keyapis-iot_connect_sber-v1-DeviceState-KeyType-ONLINE"></a> [ONLINE](#keyapis-iot_connect_sber-v1-DeviceState-KeyType-ONLINE) | Статус доступности устройства |




<a name="keyapis-iot_connect_sber-v1-DeviceState-Value-Type"></a>

### [DeviceState.Value.Type](#keyapis-iot_connect_sber-v1-DeviceState-Value-Type)
 Тип значения статуса устройства

| Номер | Тип | Название |
| ----- | --- | -------- |
| 0 | <a id="keyapis-iot_connect_sber-v1-DeviceState-Value-Type-TYPE_UNKNOWN"></a> [TYPE_UNKNOWN](#keyapis-iot_connect_sber-v1-DeviceState-Value-Type-TYPE_UNKNOWN) | Значение не указано |
| 1 | <a id="keyapis-iot_connect_sber-v1-DeviceState-Value-Type-BOOL"></a> [BOOL](#keyapis-iot_connect_sber-v1-DeviceState-Value-Type-BOOL) | Логический тип |




<a name="keyapis-iot_connect_sber-v1-Model-FeatureType"></a>

### [Model.FeatureType](#keyapis-iot_connect_sber-v1-Model-FeatureType)
 Список функций устройства

| Номер | Тип | Название |
| ----- | --- | -------- |
| 0 | <a id="keyapis-iot_connect_sber-v1-Model-FeatureType-FEATURE_TYPE_UNKNOWN"></a> [FEATURE_TYPE_UNKNOWN](#keyapis-iot_connect_sber-v1-Model-FeatureType-FEATURE_TYPE_UNKNOWN) | Значение не указано |
| 1 | <a id="keyapis-iot_connect_sber-v1-Model-FeatureType-INCOMING_CALL"></a> [INCOMING_CALL](#keyapis-iot_connect_sber-v1-Model-FeatureType-INCOMING_CALL) | Сигнализация о поступившем звонке |
| 2 | <a id="keyapis-iot_connect_sber-v1-Model-FeatureType-ONLINE"></a> [ONLINE](#keyapis-iot_connect_sber-v1-Model-FeatureType-ONLINE) | Сигнализация о доступности устройства |
| 3 | <a id="keyapis-iot_connect_sber-v1-Model-FeatureType-REJECT_CALL"></a> [REJECT_CALL](#keyapis-iot_connect_sber-v1-Model-FeatureType-REJECT_CALL) | Отклонение звонка |
| 4 | <a id="keyapis-iot_connect_sber-v1-Model-FeatureType-UNLOCK"></a> [UNLOCK](#keyapis-iot_connect_sber-v1-Model-FeatureType-UNLOCK) | Открытие замка |


 <!-- end enums -->

 <!-- end HasExtensions -->



## Скалярные типы значений
<a id="scalar-types"></a>

| .proto Type | Примечание | Python | Go | Ruby | C# | C++ | Java | PHP |
| ----------- | ---------- | ------ | -- | ---- | -- | --- | ---- | --- |
| [double](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) |  | float | float64 | Float | double | double | double | float |
| [float](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) |  | float | float32 | Float | float | float | float | float |
| [int32](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int | int32 | Bignum or Fixnum (as required) | int | int32 | int | integer |
| [int64](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int/long | int64 | Bignum | long | int64 | long | integer/string |
| [uint32](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Uses variable-length encoding. | int/long | uint32 | Bignum or Fixnum (as required) | uint | uint32 | int | integer |
| [uint64](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Uses variable-length encoding. | int/long | uint64 | Bignum or Fixnum (as required) | ulong | uint64 | long | integer/string |
| [sint32](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int | int32 | Bignum or Fixnum (as required) | int | int32 | int | integer |
| [sint64](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int/long | int64 | Bignum | long | int64 | long | integer/string |
| [fixed32](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | int | uint32 | Bignum or Fixnum (as required) | uint | uint32 | int | integer |
| [fixed64](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | int/long | uint64 | Bignum | ulong | uint64 | long | integer/string |
| [sfixed32](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Always four bytes. | int | int32 | Bignum or Fixnum (as required) | int | int32 | int | integer |
| [sfixed64](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | Always eight bytes. | int/long | int64 | Bignum | long | int64 | long | integer/string |
| [bool](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) |  | boolean | bool | TrueClass/FalseClass | bool | bool | boolean | boolean |
| [string](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | A string must always contain UTF-8 encoded or 7-bit ASCII text. | str/unicode | string | String (UTF-8) | string | string | String | string |
| [bytes](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | May contain any arbitrary sequence of bytes. | str | []byte | String (ASCII-8BIT) | ByteString | string | ByteString | string |

