syntax = "proto3"; package auth; option go_package = "argus-core/rpc/auth"; // Authentication service handles user registration, login, and token validation. service AuthService { // Register creates a new user account rpc Register(RegisterRequest) returns (RegisterResponse); // Login authenticates a user and returns a JWT token rpc Login(LoginRequest) returns (LoginResponse); // ValidateToken checks if a JWT token is valid and returns user information rpc ValidateToken(ValidateTokenRequest) returns (ValidateTokenResponse); } // Request and Response messages message RegisterRequest { string email = 1; string password = 2; } message RegisterResponse { User user = 1; } message LoginRequest { string email = 1; string password = 2; } message LoginResponse { string token = 1; User user = 2; } message ValidateTokenRequest { string token = 1; } message ValidateTokenResponse { User user = 1; } // Common messages message User { string id = 1; string email = 2; string created_at = 3; string updated_at = 4; }