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

Протокол

Оглавление

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

/svg/protos/key/keyapis/telemetry_control/v1/keyapis_telemetry_control_metric_point_v1.proto.svg

keyapis/telemetry_control/v1/keyapis_telemetry_control_metric_point_v1.proto

Сервис реализует функционал управления Точками учёта(ТУ)

MetricPointService

Сервис Точек учёта (ТУ). Авторизация: - Authorization: Bearer. - X-Api-Key: apiKey

Название метода Описание Тип запроса Тип ответа
GetMetricPoint Метод получения ТУ. Разрешения: telemetry_control:metric_point:card, telemetry_control:metric_point:card:own. Метод доступен для: Token: admin, service, bti, seller, application, owner, employee. Без учета разрешений. Метод доступен для: ApiKey: При наличии разрешений keyapis.telemetry_control.v1.GetMetricPointRequest keyapis.telemetry_control.v1.GetMetricPointResponse
GetMetricPointList Метод получения списка ТУ. Разрешения: telemetry_control:metric_point:list, telemetry_control:metric_point:list:own. Метод доступен для: Token: admin, service, bti, seller, application, owner, employee. Без учета разрешений. Метод доступен для: ApiKey: При наличии разрешений keyapis.telemetry_control.v1.GetMetricPointListRequest keyapis.telemetry_control.v1.GetMetricPointListResponse stream
GetMetricPointCount Метод получения количества ТУ. Разрешения: telemetry_control:metric_point:list, telemetry_control:metric_point:list:own. Метод доступен для: Token: admin, service, bti, seller, application, owner, employee. Без учета разрешений. Метод доступен для: ApiKey: При наличии разрешений keyapis.telemetry_control.v1.GetMetricPointCountRequest keyapis.telemetry_control.v1.GetMetricPointCountResponse
PostMetricPoint Метод сохранения ТУ. Поддерживает создание и обновление. Метод доступен для: Token: admin, service, bti, seller, application, owner, employee. Без учета разрешений keyapis.telemetry_control.v1.PostMetricPointRequest keyapis.telemetry_control.v1.PostMetricPointResponse
DeleteMetricPoint Метод удаления ТУ. Метод доступен для: Token: admin, service, bti, seller, application, owner, employee. Без учета разрешений keyapis.telemetry_control.v1.DeleteMetricPointRequest keyapis.telemetry_control.v1.DeleteMetricPointResponse

DeleteMetricPointRequest

Запрос удаления ТУ

Поле Описание Тип Признак
id Идентификатор string REQUIRED

DeleteMetricPointResponse

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

GetMetricPointCountRequest

Запрос получения количества ТУ

Поле Описание Тип Признак
filter Фильтр по ТУ keyapis.telemetry_control.v1.MetricPointFilter

GetMetricPointCountResponse

Ответ на запрос получения количества ТУ

Поле Описание Тип Признак
data Всего ТУ optional int32
error Ошибка optional keyapis.telemetry_control.v1.GetMetricPointCountResponse.Error

GetMetricPointCountResponse.Error

Ошибка запроса получения количества ТУ

Поле Описание Тип Признак
metric_point_filter_validation Ошибка фильтрации optional keyapis.telemetry_control.v1.MetricPointFilter.ValidationError

GetMetricPointListRequest

Запрос получения списка ТУ

Поле Описание Тип Признак
filter Фильтр keyapis.telemetry_control.v1.MetricPointFilter
paging Пагинация optional keyapis.telemetry_control.v1.MetricPointPaging

GetMetricPointListResponse

Ответ на запрос получения списка ТУ

Поле Описание Тип Признак
data Точка учета optional keyapis.telemetry_control.v1.Device.MetricPoint
error Ошибка optional keyapis.telemetry_control.v1.GetMetricPointListResponse.Error

GetMetricPointListResponse.Error

Ошибка запроса получения списка ТУ

Поле Описание Тип Признак
metric_point_filter_validation Ошибка фильтрации optional keyapis.telemetry_control.v1.MetricPointFilter.ValidationError
metric_point_paging_validation Ошибка пагинации по страницам optional keyapis.telemetry_control.v1.MetricPointPaging.ValidationError

GetMetricPointRequest

Запрос получения ТУ

Поле Описание Тип Признак
id Идентификатор ТУ string REQUIRED

GetMetricPointResponse

Ответ на запрос получения ТУ

Поле Описание Тип Признак
data Точка учета optional keyapis.telemetry_control.v1.Device.MetricPoint

MetricPointFilter

Фильтр для запроса точек учета. При передаче массива в параметр фильтра элементы массива работают в выборке через ИЛИ. При передаче нескольких разных параметров фильтра они работают в выборке через И

Поле Описание Тип Признак
device_metric_point_metric_types По типу энергоресурса repeated keyapis.telemetry_control.v1.Device.MetricPoint.MetricType
device_metric_point_status_types По типу статуса repeated keyapis.telemetry_control.v1.Device.MetricPoint.StatusType
room_numbers По Номеру помещения repeated string
room_labels По Лейблу помещения repeated string
building_ids По идентификаторам объекта строительства repeated int32
fias_ids По ФИАС repeated string
device_ids По ID привязанных через индикаторы ПУ repeated int32
device_serial_numbers По серийным номерам привязанных через индикаторы ПУ repeated string
orpons По ОРПОНам repeated int64

MetricPointFilter.ValidationError

Ошибки валидации. Эти проверки выполняются до обращения в базу данных

Поле Описание Тип Признак
path Путь к полю в формате наименования protobuf string REQUIRED
message Валидационное сообщение string REQUIRED

MetricPointPaging

Пагинация

Поле Описание Тип Признак
order_by_type Тип значения сортировки. По умолчанию: ID keyapis.telemetry_control.v1.MetricPointPaging.OrderByType
direction_type Тип направления сортировки. По умолчанию: DESC keyapis.telemetry_control.v1.MetricPointPaging.DirectionType
limit Количество. Минимальное значение: 1. Максимальное значение: 100. По умолчанию: 20. Если значение 0 (не передано) то выставляем значение по умолчанию int32
offset Сдвиг. По умолчанию: 0 int32

MetricPointPaging.ValidationError

Ошибка валидации постраничной пагинации по ТУ. Эти проверки выполняются до обращения в базу данных

Поле Описание Тип Признак
limit Количество передано некорректно optional keyapis.telemetry_control.v1.MetricPointPaging.ValidationError.LimitInvalid
offset Сдвиг передан некорректно optional keyapis.telemetry_control.v1.MetricPointPaging.ValidationError.OffsetInvalid

MetricPointPaging.ValidationError.LimitInvalid

Причины: - Значение количества < 0 или > 100

MetricPointPaging.ValidationError.OffsetInvalid

Причины: - Значение сдвига < 0

PostMetricPointRequest

Запрос сохранения ТУ

Поле Описание Тип Признак
data Точка учета keyapis.telemetry_control.v1.Device.MetricPoint REQUIRED

PostMetricPointResponse

Ответ на запрос сохранения ТУ

Поле Описание Тип Признак
data Точка учета optional keyapis.telemetry_control.v1.Device.MetricPoint
error Ошибка optional keyapis.telemetry_control.v1.PostMetricPointResponse.Error

PostMetricPointResponse.Error

Ошибка запроса сохранения ТУ

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

ValidationError

Ошибки валидации. Эти проверки выполняются до обращения в базу данных

Поле Описание Тип Признак
path Путь к полю в формате наименования protobuf string REQUIRED
message Валидационное сообщение string REQUIRED

MetricPointPaging.DirectionType

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

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

MetricPointPaging.OrderByType

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

Номер Тип Название
0 ORDER_BY_TYPE_UNKNOWN Значение не указано
1 ID По идентификатору
2 METRIC_TYPE По типу энергоресурса
3 STATUS_TYPE По типу статуса
4 ROOM_NUMBER По Номеру помещения
5 ROOM_LABEL По Лейблу помещения
6 BUILDING_ID По идентификатору объекта строительства

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

.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