# Протокол

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

- [deviceapis/device/v1/deviceapis_device_rfid_v1.proto](#deviceapis_device_v1_deviceapis_device_rfid_v1-proto)
    - [RfidService](#deviceapis-device-v1-RfidService)
  
    - [DeleteRfidListRequest](#deviceapis-device-v1-DeleteRfidListRequest)
    - [DeleteRfidListResponse](#deviceapis-device-v1-DeleteRfidListResponse)
    - [DeleteRfidRequest](#deviceapis-device-v1-DeleteRfidRequest)
    - [DeleteRfidResponse](#deviceapis-device-v1-DeleteRfidResponse)
    - [DeleteRfidResponse.Error](#deviceapis-device-v1-DeleteRfidResponse-Error)
    - [GetRfidCountRequest](#deviceapis-device-v1-GetRfidCountRequest)
    - [GetRfidCountResponse](#deviceapis-device-v1-GetRfidCountResponse)
    - [GetRfidListRequest](#deviceapis-device-v1-GetRfidListRequest)
    - [GetRfidListResponse](#deviceapis-device-v1-GetRfidListResponse)
    - [GetRfidRequest](#deviceapis-device-v1-GetRfidRequest)
    - [GetRfidResponse](#deviceapis-device-v1-GetRfidResponse)
    - [Rfid](#deviceapis-device-v1-Rfid)
    - [Rfid.SavingError](#deviceapis-device-v1-Rfid-SavingError)
    - [Rfid.SavingError.RelayNotFound](#deviceapis-device-v1-Rfid-SavingError-RelayNotFound)
    - [RfidFilter](#deviceapis-device-v1-RfidFilter)
    - [RfidPaging](#deviceapis-device-v1-RfidPaging)
    - [SaveRfidListRequest](#deviceapis-device-v1-SaveRfidListRequest)
    - [SaveRfidListResponse](#deviceapis-device-v1-SaveRfidListResponse)
    - [SaveRfidListResponse.Error](#deviceapis-device-v1-SaveRfidListResponse-Error)
    - [SaveRfidRequest](#deviceapis-device-v1-SaveRfidRequest)
    - [SaveRfidResponse](#deviceapis-device-v1-SaveRfidResponse)
    - [SaveRfidResponse.Error](#deviceapis-device-v1-SaveRfidResponse-Error)
  


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




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

## [deviceapis/device/v1/deviceapis_device_rfid_v1.proto](/protos/key/deviceapis/device/v1/deviceapis_device_rfid_v1.proto)
Сервис RFID ключей устройства


<a name="deviceapis-device-v1-RfidService"></a>

### RfidService
 Сервис RFID ключей устройства

| Название метода | Описание | Тип запроса | Тип ответа |
| --------------- | -------- | ----------- | -----------|
| <a id="deviceapis-device-v1-DeleteRfid"></a> [DeleteRfid](#deviceapis-device-v1-DeleteRfid) | Метод удаления единичной сущности Rfid по ключу | [deviceapis.device.v1.DeleteRfidRequest](#deviceapis-device-v1-DeleteRfidRequest) | [deviceapis.device.v1.DeleteRfidResponse](#deviceapis-device-v1-DeleteRfidResponse) |
| <a id="deviceapis-device-v1-DeleteRfidList"></a> [DeleteRfidList](#deviceapis-device-v1-DeleteRfidList) | Метод удаления списка сущностей Rfid по фильтру | [deviceapis.device.v1.DeleteRfidListRequest](#deviceapis-device-v1-DeleteRfidListRequest) | [deviceapis.device.v1.DeleteRfidListResponse](#deviceapis-device-v1-DeleteRfidListResponse) |
| <a id="deviceapis-device-v1-GetRfid"></a> [GetRfid](#deviceapis-device-v1-GetRfid) | Метод получения единичной сущности Rfid по ключу | [deviceapis.device.v1.GetRfidRequest](#deviceapis-device-v1-GetRfidRequest) | [deviceapis.device.v1.GetRfidResponse](#deviceapis-device-v1-GetRfidResponse) |
| <a id="deviceapis-device-v1-GetRfidCount"></a> [GetRfidCount](#deviceapis-device-v1-GetRfidCount) | Метод получения количества сущностей Rfid по фильтру | [deviceapis.device.v1.GetRfidCountRequest](#deviceapis-device-v1-GetRfidCountRequest) | [deviceapis.device.v1.GetRfidCountResponse](#deviceapis-device-v1-GetRfidCountResponse) |
| <a id="deviceapis-device-v1-GetRfidList"></a> [GetRfidList](#deviceapis-device-v1-GetRfidList) | Метод получения списка сущностей Rfid по фильтру | [deviceapis.device.v1.GetRfidListRequest](#deviceapis-device-v1-GetRfidListRequest) | [deviceapis.device.v1.GetRfidListResponse](#deviceapis-device-v1-GetRfidListResponse) |
| <a id="deviceapis-device-v1-SaveRfid"></a> [SaveRfid](#deviceapis-device-v1-SaveRfid) | Метод создания и редактирования сущности Rfid | [deviceapis.device.v1.SaveRfidRequest](#deviceapis-device-v1-SaveRfidRequest) | [deviceapis.device.v1.SaveRfidResponse](#deviceapis-device-v1-SaveRfidResponse) |
| <a id="deviceapis-device-v1-SaveRfidList"></a> [SaveRfidList](#deviceapis-device-v1-SaveRfidList) | Метод создания и редактирования списка сущностей Rfid | [deviceapis.device.v1.SaveRfidListRequest](#deviceapis-device-v1-SaveRfidListRequest) | [deviceapis.device.v1.SaveRfidListResponse](#deviceapis-device-v1-SaveRfidListResponse) |

 <!-- end services -->


<a name="deviceapis-device-v1-DeleteRfidListRequest"></a>


### [DeleteRfidListRequest](#deviceapis-device-v1-DeleteRfidListRequest)
 Запрос удаления списка сущностей Rfid по фильтру






<a name="deviceapis-device-v1-DeleteRfidListResponse"></a>


### [DeleteRfidListResponse](#deviceapis-device-v1-DeleteRfidListResponse)
 Ответ на запрос удаления списка сущностей Rfid по фильтру


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-DeleteRfidListResponse-data"></a> [data](#deviceapis-device-v1-DeleteRfidListResponse-data) | Всего количество удаленных |  optional  [int32](#scalar-types) | <nil>|






<a name="deviceapis-device-v1-DeleteRfidRequest"></a>


### [DeleteRfidRequest](#deviceapis-device-v1-DeleteRfidRequest)
 Запрос удаления единичной сущности Rfid по ключу


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-DeleteRfidRequest-id"></a> [id](#deviceapis-device-v1-DeleteRfidRequest-id) | Идентификатор UID [hex 14] |    [string](#scalar-types) | REQUIRED|






<a name="deviceapis-device-v1-DeleteRfidResponse"></a>


### [DeleteRfidResponse](#deviceapis-device-v1-DeleteRfidResponse)
 Ответ на запрос удаления единичной сущности Rfid по ключу


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-DeleteRfidResponse-error"></a> [error](#deviceapis-device-v1-DeleteRfidResponse-error) | Ошибка |  optional  [deviceapis.device.v1.DeleteRfidResponse.Error](#deviceapis-device-v1-DeleteRfidResponse-Error) | <nil>|






<a name="deviceapis-device-v1-DeleteRfidResponse-Error"></a>


### [DeleteRfidResponse.Error](#deviceapis-device-v1-DeleteRfidResponse-Error)
 Ошибка запроса


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-DeleteRfidResponse-Error-validation"></a> [validation](#deviceapis-device-v1-DeleteRfidResponse-Error-validation) | Ошибка валидации |  optional  [deviceapis.device.v1.ValidationError](#deviceapis-device-v1-ValidationError) | <nil>|






<a name="deviceapis-device-v1-GetRfidCountRequest"></a>


### [GetRfidCountRequest](#deviceapis-device-v1-GetRfidCountRequest)
 Запрос получения количества сущностей Rfid по фильтру


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-GetRfidCountRequest-filter"></a> [filter](#deviceapis-device-v1-GetRfidCountRequest-filter) | Фильтр ключей RFID. При передаче массива в параметр фильтра элементы массива работают в выборке через ИЛИ |    [deviceapis.device.v1.RfidFilter](#deviceapis-device-v1-RfidFilter) | <nil>|






<a name="deviceapis-device-v1-GetRfidCountResponse"></a>


### [GetRfidCountResponse](#deviceapis-device-v1-GetRfidCountResponse)
 Ответ на запрос получения количества сущностей Rfid по фильтру


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-GetRfidCountResponse-data"></a> [data](#deviceapis-device-v1-GetRfidCountResponse-data) | Всего количество |  optional  [int32](#scalar-types) | <nil>|






<a name="deviceapis-device-v1-GetRfidListRequest"></a>


### [GetRfidListRequest](#deviceapis-device-v1-GetRfidListRequest)
 Запрос получения списка сущностей Rfid по фильтру


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-GetRfidListRequest-paging"></a> [paging](#deviceapis-device-v1-GetRfidListRequest-paging) | Постраничный вывод |  optional  [deviceapis.device.v1.RfidPaging](#deviceapis-device-v1-RfidPaging) | <nil>|
| <a id="deviceapis-device-v1-GetRfidListRequest-filter"></a> [filter](#deviceapis-device-v1-GetRfidListRequest-filter) | Фильтр ключей RFID. При передаче массива в параметр фильтра элементы массива работают в выборке через ИЛИ |    [deviceapis.device.v1.RfidFilter](#deviceapis-device-v1-RfidFilter) | <nil>|






<a name="deviceapis-device-v1-GetRfidListResponse"></a>


### [GetRfidListResponse](#deviceapis-device-v1-GetRfidListResponse)
 Ответ на запрос получения списка сущностей Rfid по фильтру


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-GetRfidListResponse-data"></a> [data](#deviceapis-device-v1-GetRfidListResponse-data) | Список Rfid |  repeated  [deviceapis.device.v1.Rfid](#deviceapis-device-v1-Rfid) | <nil>|






<a name="deviceapis-device-v1-GetRfidRequest"></a>


### [GetRfidRequest](#deviceapis-device-v1-GetRfidRequest)
 Запрос получения единичной сущности Rfid по ключу


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-GetRfidRequest-id"></a> [id](#deviceapis-device-v1-GetRfidRequest-id) | Идентификатор UID [hex 14] |    [string](#scalar-types) | REQUIRED|






<a name="deviceapis-device-v1-GetRfidResponse"></a>


### [GetRfidResponse](#deviceapis-device-v1-GetRfidResponse)
 Ответ на запрос получения единичной сущности Rfid по ключу


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-GetRfidResponse-data"></a> [data](#deviceapis-device-v1-GetRfidResponse-data) | Ключ |  optional  [deviceapis.device.v1.Rfid](#deviceapis-device-v1-Rfid) | <nil>|






<a name="deviceapis-device-v1-Rfid"></a>


### [Rfid](#deviceapis-device-v1-Rfid)
 Ключ


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-Rfid-id"></a> [id](#deviceapis-device-v1-Rfid-id) | Идентификатор UID [hex 14] |    [string](#scalar-types) | REQUIRED|
| <a id="deviceapis-device-v1-Rfid-description"></a> [description](#deviceapis-device-v1-Rfid-description) | Описание |    [google.protobuf.StringValue](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | <nil>|
| <a id="deviceapis-device-v1-Rfid-secret"></a> [secret](#deviceapis-device-v1-Rfid-secret) | Секрет [hex 14] |    [google.protobuf.StringValue](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf/) | <nil>|
| <a id="deviceapis-device-v1-Rfid-relay_indexes"></a> [relay_indexes](#deviceapis-device-v1-Rfid-relay_indexes) | Идентификаторы реле. Диапазон: 1..64 |  repeated  [int32](#scalar-types) | <nil>|






<a name="deviceapis-device-v1-Rfid-SavingError"></a>


### [Rfid.SavingError](#deviceapis-device-v1-Rfid-SavingError)
 Ошибка запроса создания ключа


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-Rfid-SavingError-relay_not_found"></a> [relay_not_found](#deviceapis-device-v1-Rfid-SavingError-relay_not_found) | Реле не найдено |  optional  [deviceapis.device.v1.Rfid.SavingError.RelayNotFound](#deviceapis-device-v1-Rfid-SavingError-RelayNotFound) | <nil>|






<a name="deviceapis-device-v1-Rfid-SavingError-RelayNotFound"></a>


### [Rfid.SavingError.RelayNotFound](#deviceapis-device-v1-Rfid-SavingError-RelayNotFound)
 Реле не найдено






<a name="deviceapis-device-v1-RfidFilter"></a>


### [RfidFilter](#deviceapis-device-v1-RfidFilter)
 Фильтр ключей RFID.
При передаче массива в параметр фильтра элементы массива работают в выборке через ИЛИ


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-RfidFilter-relay_indexes"></a> [relay_indexes](#deviceapis-device-v1-RfidFilter-relay_indexes) | По идентификаторам реле. Диапазон: 1..64 |  repeated  [int32](#scalar-types) | <nil>|






<a name="deviceapis-device-v1-RfidPaging"></a>


### [RfidPaging](#deviceapis-device-v1-RfidPaging)
 Постраничный вывод


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-RfidPaging-limit"></a> [limit](#deviceapis-device-v1-RfidPaging-limit) | Количество записей на страницу. Если значение 0 (не передано), то будет взято значение по умолчанию. # Диапазон: 0..100. # По умолчанию: 20 |    [int32](#scalar-types) | <nil>|
| <a id="deviceapis-device-v1-RfidPaging-offset"></a> [offset](#deviceapis-device-v1-RfidPaging-offset) | Сдвиг. # Диапазон: 0..2147483647 |    [int32](#scalar-types) | <nil>|






<a name="deviceapis-device-v1-SaveRfidListRequest"></a>


### [SaveRfidListRequest](#deviceapis-device-v1-SaveRfidListRequest)
 Запрос на редактирование списка сущностей Rfid


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-SaveRfidListRequest-data"></a> [data](#deviceapis-device-v1-SaveRfidListRequest-data) | Список Rfid |  repeated  [deviceapis.device.v1.Rfid](#deviceapis-device-v1-Rfid) | <nil>|






<a name="deviceapis-device-v1-SaveRfidListResponse"></a>


### [SaveRfidListResponse](#deviceapis-device-v1-SaveRfidListResponse)
 Ответ на запрос на редактирование списка сущностей Rfid


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-SaveRfidListResponse-data"></a> [data](#deviceapis-device-v1-SaveRfidListResponse-data) | Список Rfid |  repeated  [deviceapis.device.v1.Rfid](#deviceapis-device-v1-Rfid) | <nil>|
| <a id="deviceapis-device-v1-SaveRfidListResponse-errors"></a> [errors](#deviceapis-device-v1-SaveRfidListResponse-errors) | Список ошибок |  repeated  [deviceapis.device.v1.SaveRfidListResponse.Error](#deviceapis-device-v1-SaveRfidListResponse-Error) | <nil>|






<a name="deviceapis-device-v1-SaveRfidListResponse-Error"></a>


### [SaveRfidListResponse.Error](#deviceapis-device-v1-SaveRfidListResponse-Error)
 Ошибка запроса


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-SaveRfidListResponse-Error-id"></a> [id](#deviceapis-device-v1-SaveRfidListResponse-Error-id) | Идентификатор UID [hex 14] |    [string](#scalar-types) | REQUIRED|
| <a id="deviceapis-device-v1-SaveRfidListResponse-Error-validation"></a> [validation](#deviceapis-device-v1-SaveRfidListResponse-Error-validation) | Ошибка валидации |  optional  [deviceapis.device.v1.ValidationError](#deviceapis-device-v1-ValidationError) | <nil>|
| <a id="deviceapis-device-v1-SaveRfidListResponse-Error-saving"></a> [saving](#deviceapis-device-v1-SaveRfidListResponse-Error-saving) | Ошибка сохранения |  optional  [deviceapis.device.v1.Rfid.SavingError](#deviceapis-device-v1-Rfid-SavingError) | <nil>|






<a name="deviceapis-device-v1-SaveRfidRequest"></a>


### [SaveRfidRequest](#deviceapis-device-v1-SaveRfidRequest)
 Запрос на создания/редактирование сущности Rfid


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-SaveRfidRequest-data"></a> [data](#deviceapis-device-v1-SaveRfidRequest-data) | Ключ |    [deviceapis.device.v1.Rfid](#deviceapis-device-v1-Rfid) | REQUIRED|






<a name="deviceapis-device-v1-SaveRfidResponse"></a>


### [SaveRfidResponse](#deviceapis-device-v1-SaveRfidResponse)
 Ответ на запрос на создания/редактирование сущности Rfid


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-SaveRfidResponse-data"></a> [data](#deviceapis-device-v1-SaveRfidResponse-data) | Ключ |  optional  [deviceapis.device.v1.Rfid](#deviceapis-device-v1-Rfid) | <nil>|
| <a id="deviceapis-device-v1-SaveRfidResponse-error"></a> [error](#deviceapis-device-v1-SaveRfidResponse-error) | Ошибка |  optional  [deviceapis.device.v1.SaveRfidResponse.Error](#deviceapis-device-v1-SaveRfidResponse-Error) | <nil>|






<a name="deviceapis-device-v1-SaveRfidResponse-Error"></a>


### [SaveRfidResponse.Error](#deviceapis-device-v1-SaveRfidResponse-Error)
 Ошибка запроса


| Поле | Описание | Тип | Признак |
| ---- | -------- | --- | ------- |
| <a id="deviceapis-device-v1-SaveRfidResponse-Error-validation"></a> [validation](#deviceapis-device-v1-SaveRfidResponse-Error-validation) | Ошибка валидации |  optional  [deviceapis.device.v1.ValidationError](#deviceapis-device-v1-ValidationError) | <nil>|
| <a id="deviceapis-device-v1-SaveRfidResponse-Error-saving"></a> [saving](#deviceapis-device-v1-SaveRfidResponse-Error-saving) | Ошибка сохранения |  optional  [deviceapis.device.v1.Rfid.SavingError](#deviceapis-device-v1-Rfid-SavingError) | <nil>|





 <!-- end messages -->

 <!-- 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 |

