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

Протокол

Оглавление

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

/svg/protos/key/deviceapis/device/v1/deviceapis_device_user_v1.proto.svg

deviceapis/device/v1/deviceapis_device_user_v1.proto

Спецификация АПИ управления сущностью User

UserService

Сервис управления пользователями

Название метода Описание Тип запроса Тип ответа
DeleteUser Метод удаления единичной сущности User по ключу deviceapis.device.v1.DeleteUserRequest deviceapis.device.v1.DeleteUserResponse
GetUserList Метод получения списка сущностей User по фильтру deviceapis.device.v1.GetUserListRequest deviceapis.device.v1.GetUserListResponse
PostUserNameReplace Метод замены имени пользователя deviceapis.device.v1.PostUserNameReplaceRequest deviceapis.device.v1.PostUserNameReplaceResponse
PostUserPasswordReplace Метод замены пароля пользователя deviceapis.device.v1.PostUserPasswordReplaceRequest deviceapis.device.v1.PostUserPasswordReplaceResponse
PostUserPermissionReplace Метод замены пароля пользователя. Будут изменены только явно переданные в data.permission разрешения deviceapis.device.v1.PostUserPermissionReplaceRequest deviceapis.device.v1.PostUserPermissionReplaceResponse
SaveUser Метод создания/редактирования сущности User deviceapis.device.v1.SaveUserRequest deviceapis.device.v1.SaveUserResponse

DeleteUserRequest

Запрос удаления единичной сущности User по ключу

Поле Описание Тип Признак
username Имя пользователя string REQUIRED

DeleteUserResponse

Ответ на запрос удаления единичной сущности User по ключу

GetUserListRequest

Запрос получения списка сущностей User по фильтру

GetUserListResponse

Ответ на запрос получения списка сущностей User по фильтру

Поле Описание Тип Признак
data Список User repeated deviceapis.device.v1.User

PostUserNameReplaceRequest

Запрос замены имени пользователя

Поле Описание Тип Признак
username Имя пользователя string REQUIRED
data Поле на замену deviceapis.device.v1.PostUserNameReplaceRequest.ReplaceTo REQUIRED

PostUserNameReplaceRequest.ReplaceTo

Поле на замену

Поле Описание Тип Признак
target_username Имя пользователя string REQUIRED

PostUserNameReplaceResponse

Ответ на запрос замены имени пользователя

PostUserPasswordReplaceRequest

Запрос замены пароля пользователя

Поле Описание Тип Признак
username Имя пользователя string REQUIRED
data Поле на замену deviceapis.device.v1.PostUserPasswordReplaceRequest.ReplaceTo REQUIRED

PostUserPasswordReplaceRequest.ReplaceTo

Поле на замену

Поле Описание Тип Признак
password Пароль string

PostUserPasswordReplaceResponse

Ответ на запрос замены пароля пользователя

PostUserPermissionReplaceRequest

Запрос замены разрешений пользователя

Поле Описание Тип Признак
username Имя пользователя string REQUIRED
data Поле на замену deviceapis.device.v1.PostUserPermissionReplaceRequest.ReplaceTo REQUIRED

PostUserPermissionReplaceRequest.ReplaceTo

Поле на замену

Поле Описание Тип Признак
permission Права доступа repeated deviceapis.device.v1.User.Permission

PostUserPermissionReplaceResponse

Ответ на запрос замены разрешений пользователя

SaveUserRequest

Запрос на создания/редактирование сущности User

Поле Описание Тип Признак
data Пользователь deviceapis.device.v1.User REQUIRED

SaveUserResponse

Ответ на запрос на создания/редактирование сущности User

Поле Описание Тип Признак
data Пользователь optional deviceapis.device.v1.User

User

Пользователь

Поле Описание Тип Признак
username Имя пользователя string REQUIRED
password Пароль. Не возвращается с сервера. TODO: в генерации сваггера не показывать INPUT_ONLY поля в ответах string INPUT_ONLY
permission Права доступа repeated deviceapis.device.v1.User.Permission

User.Permission

Права доступа

Поле Описание Тип Признак
permission_name Имя разрешения string REQUIRED
is_enabled Наличие разрешения bool REQUIRED

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

.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