Протокол¶
Оглавление¶
-
keyapis/subscription/v1/keyapis_subscription_plan_v1.proto
- GetPlanCountResponse
- GetPlanCountResponse.Error
- GetPlanListRequest
- GetPlanListResponse
- GetPlanListResponse.Error
- GetPlanRequest
- GetPlanResponse
- Plan
- Plan.OptionDescription
- PlanFilter
- PlanFilter.ValidationError
- PlanFilter.ValidationError.TextInvalid
- PlanPaging
- PlanPaging.ValidationError
- PlanPaging.ValidationError.LimitInvalid
- PlanPaging.DirectionType
- PlanPaging.OrderByType
Схема классов¶
keyapis/subscription/v1/keyapis_subscription_plan_v1.proto¶
Сервис реализует функционал управления технологическими планами(ТП). ТП это подготовленный набор доступных услуг
PlanService¶
Сервис технологических планов(ТП)
| Название метода | Описание | Тип запроса | Тип ответа |
|---|---|---|---|
| GetPlan | Метод получения технологического плана. Метод доступен для: admin, mrf, master, ltp_first, service, application(subscription:read или subscription:edit) | keyapis.subscription.v1.GetPlanRequest | keyapis.subscription.v1.GetPlanResponse |
| GetPlanList | Метод получения списка технологических планов. Метод доступен для: admin, service, mrf, master, ltp_first, service, application(subscription:read или subscription:edit) | keyapis.subscription.v1.GetPlanListRequest | keyapis.subscription.v1.GetPlanListResponse stream |
| GetPlanCount | Метод получения количества технологических планов. Метод доступен для: admin, service, mrf, master, ltp_first, service, application(subscription:read или subscription:edit) | keyapis.subscription.v1.GetPlanCountRequest | keyapis.subscription.v1.GetPlanCountResponse |
GetPlanCountRequest¶
Запрос получения количества технологических планов
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| filter | Фильтр | keyapis.subscription.v1.PlanFilter |
GetPlanCountResponse¶
Ответ на запрос получения количества технологических планов
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Всего технологических планов | optional int32 | |
| error | Ошибка | optional keyapis.subscription.v1.GetPlanCountResponse.Error |
GetPlanCountResponse.Error¶
Ошибка запроса получения количества технологических планов
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| plan_filter_validation | Ошибка фильтрации | optional keyapis.subscription.v1.PlanFilter.ValidationError |
GetPlanListRequest¶
Запрос получения технологических планов
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| filter | Фильтр | keyapis.subscription.v1.PlanFilter | REQUIRED |
| paging | Пагинация | optional keyapis.subscription.v1.PlanPaging |
GetPlanListResponse¶
Ответ на запрос получения технологических планов
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Технологический план | optional keyapis.subscription.v1.Plan | |
| error | Ошибка | optional keyapis.subscription.v1.GetPlanListResponse.Error |
GetPlanListResponse.Error¶
Ошибка запроса получения технологических планов
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| plan_filter_validation | Ошибка фильтрации | optional keyapis.subscription.v1.PlanFilter.ValidationError | |
| plan_paging_validation | Ошибка пагинации по страницам | optional keyapis.subscription.v1.PlanPaging.ValidationError |
GetPlanRequest¶
Запрос получения технологического плана
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| id | Идентификатор | int32 | REQUIRED |
GetPlanResponse¶
Ответ на запрос получения технологического плана
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| data | Технологический план | optional keyapis.subscription.v1.Plan |
Plan¶
Технологический план(ТП)
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| id | Идентификатор | int32 | OUTPUT_ONLY |
| title | Название | string | REQUIRED |
| description | Описание | google.protobuf.StringValue | |
| created_at | Дата создания записи. Заполняется сервером | google.protobuf.Timestamp | OUTPUT_ONLY |
| changed_at | Дата последнего изменения. Заполняется и обновляется сервером. Заполняется при создании и изменении. Является версией объекта | google.protobuf.Timestamp | OUTPUT_ONLY |
| parent_ids | Идентификаторы родительских технологических планов(ТП) | repeated int32 | |
| rf_ids | Идентификаторы регионов, в которых доступен технологический план(ТП) | repeated int32 | |
| summary | Краткое описание | google.protobuf.StringValue | |
| icon_type | Тип иконки | keyapis.subscription.v1.Plan.IconType | |
| option_descriptions | Описание опций | repeated keyapis.subscription.v1.Plan.OptionDescription | |
| privilege_types | Привилегии. Массив услуг доступных по технологическому плану | repeated keyapis.subscription.v1.Privilege.Type |
Plan.OptionDescription¶
Описание опции
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| icon_type | Тип иконки | keyapis.subscription.v1.Plan.IconType | |
| title | Название | string | REQUIRED |
| summary | Краткое описание | google.protobuf.StringValue |
PlanFilter¶
Фильтр по технологическим планам
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| text | По тексту. Если значение не передано то поиск по нему не производится. # Поиск производится по полям: # - Название; # - Описание; # - Краткое описание | google.protobuf.StringValue | |
| rf_ids | По идентификаторам регионов | repeated int32 |
PlanFilter.ValidationError¶
Ошибки валидации фильтра по технологическим планам. Эти проверки выполняются до обращения в базу данных
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| text | Текст передан некорректно | optional keyapis.subscription.v1.PlanFilter.ValidationError.TextInvalid |
PlanFilter.ValidationError.TextInvalid¶
Причины: - Длина текста < 3 символов и >= 64
PlanPaging¶
Пагинация по технологическим планам
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| order_by_type | Тип значения сортировки. По умолчанию: ID | keyapis.subscription.v1.PlanPaging.OrderByType | |
| direction_type | Тип направления сортировки. По умолчанию: DESC | keyapis.subscription.v1.PlanPaging.DirectionType | |
| limit | Количество записей на страницу. Минимальное значение: 1. Максимальное значение: 100. По умолчанию: 20. Если значение 0 (не передано), то выставляем значение по умолчанию | int32 | |
| offset | Сдвиг. По умолчанию: 0 | int32 |
PlanPaging.ValidationError¶
Ошибка валидации постраничной пагинации по технологическим планам. Эти проверки выполняются до обращения в базу данных
| Поле | Описание | Тип | Признак |
|---|---|---|---|
| limit | Количество передано некорректно | optional keyapis.subscription.v1.PlanPaging.ValidationError.LimitInvalid | |
| offset | Сдвиг передан некорректно | optional keyapis.subscription.v1.PlanPaging.ValidationError.OffsetInvalid |
PlanPaging.ValidationError.LimitInvalid¶
Причины: - Значение количества < 0 или > 100
PlanPaging.ValidationError.OffsetInvalid¶
Причины: - Значение сдвига < 0
Plan.IconType¶
Справочник типов иконок
| Номер | Тип | Название |
|---|---|---|
| 0 | ICON_TYPE_UNKNOWN | Значение не указано |
| 1 | FAST | Быстро |
| 2 | FACE_REC | Распознавание лиц |
| 3 | SAFE | Безопасно |
PlanPaging.DirectionType¶
Справочник типов направлений сортировки
| Номер | Тип | Название |
|---|---|---|
| 0 | DIRECTION_TYPE_UNKNOWN | Значение не указано |
| 1 | DESC | От большего к меньшему |
| 2 | ASC | От меньшего к большему |
PlanPaging.OrderByType¶
Справочник типов значений сортировки
| Номер | Тип | Название |
|---|---|---|
| 0 | ORDER_BY_TYPE_UNKNOWN | Значение не указано |
| 1 | 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 |