Перейти к содержанию

Протокол

Оглавление

Схема классов

/svg/protos/key/keyapis/access_control/v1/keyapis_access_control_entrance_v1.proto.svg

keyapis/access_control/v1/keyapis_access_control_entrance_v1.proto

Сервис подъездов

EntranceService

Сервис подъездов

Название метода Описание Тип запроса Тип ответа
PostEntrance Метод создания подъезда. Для ролей employee, owner можно сохранять только подъезды квартирограмм, привязанные к домофонной компании пользователя (привязка компании с типом dc_company_flatgramm.type = DEVICE_SERVICE). Метод доступен для: admin, service, owner, employee keyapis.access_control.v1.PostEntranceRequest keyapis.access_control.v1.PostEntranceResponse
DeleteEntrance Метод удаления подъезда. Реализуется как удаление квартир по указанному дому и номеру подъезда. Для ролей employee, owner можно удалять только подъезды квартирограмм, привязанные к домофонной компании пользователя (привязка компании с типом dc_company_flatgramm.type = DEVICE_SERVICE). Метод доступен для: admin, service, owner, employee keyapis.access_control.v1.DeleteEntranceRequest keyapis.access_control.v1.DeleteEntranceResponse
GetEntranceList Метод получения списка подъездов. При переданном company_ids учитывается тип связи компании и квартирограммы. Если EntranceFilter.CompanyRelationType = DEVICE_SERVICE, то проверяется связка компании с типом dc_company_flatgramm.type = DEVICE_SERVICE. Если EntranceFilter.CompanyRelationType = MANAGEMENT, то проверяется связка в flatgramm_companies. Если EntranceFilter.CompanyRelationType = DEFAULT, то проверяется связка компании с типом dc_company_flatgramm.type = DEVICE_SERVICE. Если EntranceFilter.CompanyRelationType = COMPANY_RELATION_TYPE_UNKNOWN, вернется ошибка валидации. При не переданном company_ids поле EntranceFilter.CompanyRelationType вызовет ошибку валидации. Для ролей employee, owner можно получать только подъезды квартирограмм, привязанные к домофонной компании пользователя (привязка компании с типом dc_company_flatgramm.type = DEVICE_SERVICE). Метод доступен для: admin, service, owner, employee keyapis.access_control.v1.GetEntranceListRequest keyapis.access_control.v1.GetEntranceListResponse stream
PutEntranceDeviceAttach Метод создания связи подъезда и устройства. Для ролей employee, owner можно сохранять только связи с подъездами квартирограмм, привязанным к домофонной компании пользователя (привязка компании с типом dc_company_flatgramm.type = DEVICE_SERVICE). EntranceDevice.RelationType в данном методе не используется. Метод доступен для: admin, service, owner, employee keyapis.access_control.v1.PutEntranceDeviceAttachRequest keyapis.access_control.v1.PutEntranceDeviceAttachResponse
PutEntranceDeviceDetach Метод удаления связи подъезда и устройства. Для ролей employee, owner можно удалять только связи с подъездами квартирограмм, привязанным к домофонной компании пользователя (привязка компании с типом dc_company_flatgramm.type = DEVICE_SERVICE). EntranceDevice.RelationType в данном методе не используется. Метод доступен для: admin, service, owner, employee keyapis.access_control.v1.PutEntranceDeviceDetachRequest keyapis.access_control.v1.PutEntranceDeviceDetachResponse
GetEntranceDeviceList Метод получения списка связок подъезд-устройство. Для ролей employee, owner можно получать только связи с подъездами квартирограмм, привязанным к домофонной компании пользователя (привязка компании с типом dc_company_flatgramm.type = DEVICE_SERVICE). Метод доступен для: admin, service, owner, employee keyapis.access_control.v1.GetEntranceDeviceListRequest keyapis.access_control.v1.GetEntranceDeviceListResponse stream

DeleteEntranceRequest

Запрос на удаление подъезда

Поле Описание Тип Признак
orpon ОРПОН дома int64 REQUIRED
entrance_number Номер подъезда. # Диапазон: 1..100 int32 REQUIRED

DeleteEntranceResponse

Ответ на запрос удаления подъезда

Поле Описание Тип Признак
error Ошибка при удалении optional keyapis.access_control.v1.DeleteEntranceResponse.Error

DeleteEntranceResponse.Error

Ошибка удаления подъезда

Поле Описание Тип Признак
validation Ошибка валидации optional keyapis.access_control.v1.ValidationError
linked_devices_exists Существуют связанные устройства optional keyapis.access_control.v1.DeleteEntranceResponse.Error.LinkedDevicesExists

DeleteEntranceResponse.Error.LinkedDevicesExists

Существуют устройства, связанные с квартирами данного подъезда. Следует отвязать устройства перед удалением подъезда

Entrance

Подъезд

Поле Описание Тип Признак
orpon ОРПОН дома int64 REQUIRED
entrance_number Номер подъезда. # Диапазон: 1..100 int32 REQUIRED
start_room_number Номер начального помещения. # Диапазон: 1..9999 int32 REQUIRED
rooms_count_per_floor Количество помещений на этаже. # Диапазон: 1..1000 int32 REQUIRED
floors_count Количество этажей. # Диапазон: 1..100 int32 REQUIRED

EntranceDevice

Связка подъезда и устройства. Реализуется через связь всех помещений в подъезде и устройства

Поле Описание Тип Признак
orpon ОРПОН дома int64 REQUIRED
entrance_number Номер подъезда. # Диапазон: 1..100 int32 REQUIRED
device_id Идентификатор устройства. # Диапазон: 1..2147483647 int32 REQUIRED
relation_type Тип связки. Игнорируется в методах создания и удаления связи keyapis.access_control.v1.EntranceDevice.RelationType OUTPUT_ONLY

EntranceDeviceFilter

Фильтр связок подъезд-устройство

Поле Описание Тип Признак
flatgramm_ids По идентификаторам квартирограмм repeated int32
orpons По ОРПОН repeated int64
entrance_numbers По номерам подъезда repeated int32
device_ids По идентификаторам привязанных устройств repeated int32

EntranceDevicePaging

Постраничный вывод

Поле Описание Тип Признак
order_by_type Тип значения сортировки. Если значение не передано, то будет взято значение по умолчанию. # По умолчанию: ORPON_THEN_ENTRANCE_NUMBER keyapis.access_control.v1.EntranceDevicePaging.OrderByType
direction_type Тип направления сортировки. # По умолчанию: DESC keyapis.access_control.v1.EntranceDevicePaging.DirectionType
limit Количество записей на страницу. Если значение 0 (не передано), то будет взято значение по умолчанию. # Диапазон: 0..100. # По умолчанию: 20 int32
offset Сдвиг. # Диапазон: 0..2147483647 int32

EntranceFilter

Фильтр подъездов

Поле Описание Тип Признак
flatgramm_ids По идентификаторам квартирограмм repeated int32
orpons По ОРПОН repeated int64
company_ids По идентификаторам компаний repeated int32
company_relation_type Тип связи компании с подъездами keyapis.access_control.v1.EntranceFilter.CompanyRelationType

EntrancePaging

Постраничный вывод

Поле Описание Тип Признак
order_by_type Тип значения сортировки. Если значение не передано, то будет взято значение по умолчанию. # По умолчанию: ORPON_THEN_ENTRANCE_NUMBER keyapis.access_control.v1.EntrancePaging.OrderByType
direction_type Тип направления сортировки. # По умолчанию: DESC keyapis.access_control.v1.EntrancePaging.DirectionType
limit Количество записей на страницу. Если значение 0 (не передано), то будет взято значение по умолчанию. # Диапазон: 0..100. # По умолчанию: 20 int32
offset Сдвиг. # Диапазон: 0..2147483647 int32

GetEntranceDeviceListRequest

Запрос на получение связок подъезд-устройство

Поле Описание Тип Признак
filter Фильтр по связкам подъезд-устройство keyapis.access_control.v1.EntranceDeviceFilter
paging Стандартный постраничный вывод optional keyapis.access_control.v1.EntranceDevicePaging

GetEntranceDeviceListResponse

Ответ на запрос на получение списка связок подъезд-устройство

Поле Описание Тип Признак
data Связка подъезд-устройство optional keyapis.access_control.v1.EntranceDevice
error Ошибка optional keyapis.access_control.v1.GetEntranceDeviceListResponse.Error

GetEntranceDeviceListResponse.Error

Ошибка запроса на получение списка связок подъезд-устройство

Поле Описание Тип Признак
validation Ошибка валидации optional keyapis.access_control.v1.ValidationError

GetEntranceListRequest

Запрос получения списка подъездов

Поле Описание Тип Признак
filter Фильтр по подъездам keyapis.access_control.v1.EntranceFilter
paging Стандартный постраничный вывод optional keyapis.access_control.v1.EntrancePaging

GetEntranceListResponse

Ответ на запрос на получение списка подъездов

Поле Описание Тип Признак
data Подъезд optional keyapis.access_control.v1.Entrance
error Ошибка optional keyapis.access_control.v1.GetEntranceListResponse.Error

GetEntranceListResponse.Error

Ошибка запроса на получение списка подъездов

Поле Описание Тип Признак
validation Ошибка валидации optional keyapis.access_control.v1.ValidationError

PostEntranceRequest

Запрос сохранения подъезда

Поле Описание Тип Признак
data Подъезд keyapis.access_control.v1.Entrance REQUIRED

PostEntranceResponse

Ответ на запрос сохранения подъезда

Поле Описание Тип Признак
data Подъезд optional keyapis.access_control.v1.Entrance
error Ошибка при удалении optional keyapis.access_control.v1.PostEntranceResponse.Error

PostEntranceResponse.Error

Ошибка сохранения подъезда

Поле Описание Тип Признак
validation Ошибка валидации optional keyapis.access_control.v1.ValidationError

PutEntranceDeviceAttachRequest

Запрос создания связи подъезда и устройства

Поле Описание Тип Признак
entrance_device Связь подъезда и устройства keyapis.access_control.v1.EntranceDevice REQUIRED

PutEntranceDeviceAttachResponse

Ответ на запрос сохранения связи подъезда и устройства

Поле Описание Тип Признак
error Ошибка optional keyapis.access_control.v1.PutEntranceDeviceAttachResponse.Error

PutEntranceDeviceAttachResponse.Error

Ошибка запроса на создание связи подъезда и устройства

Поле Описание Тип Признак
validation Ошибка валидации optional keyapis.access_control.v1.ValidationError

PutEntranceDeviceDetachRequest

Запрос удаления связи подъезда и устройства

Поле Описание Тип Признак
entrance_device Связь подъезда и устройства keyapis.access_control.v1.EntranceDevice REQUIRED

PutEntranceDeviceDetachResponse

Ответ на запрос удаления связи подъезда и устройства

Поле Описание Тип Признак
error Ошибка optional keyapis.access_control.v1.PutEntranceDeviceDetachResponse.Error

PutEntranceDeviceDetachResponse.Error

Ошибка запроса на удаления связи подъезда и устройства

Поле Описание Тип Признак
validation Ошибка валидации optional keyapis.access_control.v1.ValidationError

EntranceDevice.RelationType

Тип связки

Номер Тип Название
0 RELATION_TYPE_UNKNOWN Значение не указано
1 FULL Полная связь
2 PARTIAL Частичная связь

EntranceDevicePaging.DirectionType

Справочник типов направлений сортировки.

Тип: byte

Номер Тип Название
0 DIRECTION_TYPE_UNKNOWN Значение не указано
1 DESC От большего к меньшему
2 ASC От меньшего к большему

EntranceDevicePaging.OrderByType

Справочник типов значений сортировки.

Тип: byte

Номер Тип Название
0 ORDER_BY_TYPE_UNKNOWN Значение не указано
1 ORPON_THEN_ENTRANCE_NUMBER По ОРПОНу и номеру подъезда
2 DEVICE_ID По идентификатору устройства

EntranceFilter.CompanyRelationType

Справочник типов связи компании с подъездами

Номер Тип Название
0 COMPANY_RELATION_TYPE_UNKNOWN Значение не указано
1 DEFAULT Значение по умолчанию
2 MANAGEMENT Управляющая компания владеет квартирограммой
3 DEVICE_SERVICE Домофонная компания обслуживает квартирограмму

EntrancePaging.DirectionType

Справочник типов направлений сортировки.

Тип: byte

Номер Тип Название
0 DIRECTION_TYPE_UNKNOWN Значение не указано
1 DESC От большего к меньшему
2 ASC От меньшего к большему

EntrancePaging.OrderByType

Справочник типов значений сортировки.

Тип: byte

Номер Тип Название
0 ORDER_BY_TYPE_UNKNOWN Значение не указано
1 ORPON_THEN_ENTRANCE_NUMBER По ОРПОНу и номеру подъезда

Скалярные типы значений

.proto Type Примечание Python Go Ruby C# C++ Java PHP
double float float64 Float double double double float
float float float32 Float float float float float
int32 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 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 Uses variable-length encoding. int/long uint32 Bignum or Fixnum (as required) uint uint32 int integer
uint64 Uses variable-length encoding. int/long uint64 Bignum or Fixnum (as required) ulong uint64 long integer/string
sint32 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 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 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 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 Always four bytes. int int32 Bignum or Fixnum (as required) int int32 int integer
sfixed64 Always eight bytes. int/long int64 Bignum long int64 long integer/string
bool boolean bool TrueClass/FalseClass bool bool boolean boolean
string A string must always contain UTF-8 encoded or 7-bit ASCII text. str/unicode string String (UTF-8) string string String string
bytes May contain any arbitrary sequence of bytes. str []byte String (ASCII-8BIT) ByteString string ByteString string