Files
FrontOffice.BFF/src/Protobufs/FrontOffice.BFF.User.Protobuf/Protos/user.proto

176 lines
4.3 KiB
Protocol Buffer
Raw Normal View History

syntax = "proto3";
package user;
import "google/protobuf/empty.proto";
import "google/protobuf/wrappers.proto";
import "google/protobuf/duration.proto";
import "google/protobuf/timestamp.proto";
import "google/api/annotations.proto";
option csharp_namespace = "FrontOffice.BFF.User.Protobuf.Protos.User";
service UserContract
{
rpc UpdateUser(UpdateUserRequest) returns (google.protobuf.Empty){
option (google.api.http) = {
put: "/UpdateUser"
body: "*"
};
};
rpc DeleteUser(DeleteUserRequest) returns (google.protobuf.Empty){
option (google.api.http) = {
delete: "/DeleteUser"
body: "*"
};
};
rpc GetUser(GetUserRequest) returns (GetUserResponse){
option (google.api.http) = {
get: "/GetUser"
};
};
rpc GetAllUserByFilter(GetAllUserByFilterRequest) returns (GetAllUserByFilterResponse){
option (google.api.http) = {
get: "/GetAllUserByFilter"
};
};
rpc CreateNewOtpToken(CreateNewOtpTokenRequest) returns (CreateNewOtpTokenResponse){
option (google.api.http) = {
post: "/CreateNewOtpToken"
body: "*"
};
};
rpc VerifyOtpToken(VerifyOtpTokenRequest) returns (VerifyOtpTokenResponse){
option (google.api.http) = {
post: "/VerifyOtpToken"
body: "*"
};
};
}
message UpdateUserRequest
{
int64 id = 1;
google.protobuf.StringValue first_name = 2;
google.protobuf.StringValue last_name = 3;
google.protobuf.StringValue national_code = 4;
google.protobuf.StringValue avatar_path = 5;
UserAvatarFileModel avatar_file = 6;
}
message UserAvatarFileModel
{
google.protobuf.StringValue file_name = 1;
google.protobuf.StringValue file_mime = 2;
bytes file = 3;
}
message DeleteUserRequest
{
int64 id = 1;
}
message GetUserRequest
{
int64 id = 1;
}
message GetUserResponse
{
int64 id = 1;
google.protobuf.StringValue first_name = 2;
google.protobuf.StringValue last_name = 3;
string mobile = 4;
google.protobuf.StringValue national_code = 5;
google.protobuf.StringValue avatar_path = 6;
google.protobuf.Int64Value parent_id = 7;
string token = 8;
string referral_code = 9;
bool is_mobile_verified = 10;
google.protobuf.Timestamp mobile_verified_at = 11;
}
message GetAllUserByFilterRequest
{
PaginationState pagination_state = 1;
google.protobuf.StringValue sort_by = 2;
GetAllUserByFilterFilter filter = 3;
}
message GetAllUserByFilterFilter
{
google.protobuf.Int64Value id = 1;
google.protobuf.StringValue first_name = 2;
google.protobuf.StringValue last_name = 3;
google.protobuf.StringValue mobile = 4;
google.protobuf.StringValue national_code = 5;
google.protobuf.StringValue avatar_path = 6;
google.protobuf.Int64Value parent_id = 7;
google.protobuf.StringValue referral_code = 8;
google.protobuf.BoolValue is_mobile_verified = 9;
}
message GetAllUserByFilterResponse
{
MetaData meta_data = 1;
repeated GetAllUserByFilterResponseModel models = 2;
}
message GetAllUserByFilterResponseModel
{
int64 id = 1;
google.protobuf.StringValue first_name = 2;
google.protobuf.StringValue last_name = 3;
string mobile = 4;
google.protobuf.StringValue national_code = 5;
google.protobuf.StringValue avatar_path = 6;
google.protobuf.Int64Value parent_id = 7;
string referral_code = 8;
bool is_mobile_verified = 9;
google.protobuf.Timestamp mobile_verified_at = 10;
}
message CreateNewOtpTokenRequest
{
string mobile = 1;
string purpose = 2;
}
message CreateNewOtpTokenResponse
{
bool success = 1;
string message = 2;
google.protobuf.StringValue code = 3;
}
message VerifyOtpTokenRequest
{
string mobile = 1;
string purpose = 2;
string code = 3;
}
message VerifyOtpTokenResponse
{
bool success = 1;
string message = 2;
google.protobuf.Int64Value user_id = 3;
}
message PaginationState
{
int32 page_number = 1;
int32 page_size = 2;
}
message MetaData
{
int64 current_page = 1;
int64 total_page = 2;
int64 page_size = 3;
int64 total_count = 4;
bool has_previous = 5;
bool has_next = 6;
}
message DecimalValue
{
int64 units = 1;
sfixed32 nanos = 2;
}