70 lines
1.2 KiB
Protocol Buffer
70 lines
1.2 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package user;
|
|
|
|
option go_package = "go-microservices/proto/user;userpb";
|
|
|
|
import "google/protobuf/empty.proto";
|
|
|
|
service UserService {
|
|
rpc CreateUser (CreateUserRequest) returns (CreateUserResponse);
|
|
rpc GetUser (GetUserRequest) returns (GetUserResponse);
|
|
rpc UpdateUser (UpdateUserRequest) returns (UpdateUserResponse);
|
|
rpc DeleteUser (DeleteUserRequest) returns (google.protobuf.Empty);
|
|
rpc ListUsers (ListUsersRequest) returns (ListUsersResponse);
|
|
}
|
|
|
|
message User {
|
|
string id = 1;
|
|
string username = 2;
|
|
string email = 3;
|
|
string bio = 4;
|
|
string avatar_url = 5;
|
|
int64 created_at = 6;
|
|
int64 updated_at = 7;
|
|
}
|
|
|
|
message CreateUserRequest {
|
|
string username = 1;
|
|
string email = 2;
|
|
string bio = 3;
|
|
string avatar_url = 4;
|
|
}
|
|
|
|
message CreateUserResponse {
|
|
User user = 1;
|
|
}
|
|
|
|
message GetUserRequest {
|
|
string id = 1;
|
|
}
|
|
|
|
message GetUserResponse {
|
|
User user = 1;
|
|
}
|
|
|
|
message UpdateUserRequest {
|
|
string id = 1;
|
|
string username = 2;
|
|
string email = 3;
|
|
string bio = 4;
|
|
string avatar_url = 5;
|
|
}
|
|
|
|
message UpdateUserResponse {
|
|
User user = 1;
|
|
}
|
|
|
|
message DeleteUserRequest {
|
|
string id = 1;
|
|
}
|
|
|
|
message ListUsersRequest {
|
|
int32 page = 1;
|
|
int32 page_size = 2;
|
|
}
|
|
|
|
message ListUsersResponse {
|
|
repeated User users = 1;
|
|
}
|