72 lines
1.8 KiB
Go
72 lines
1.8 KiB
Go
package requestmodel
|
|
|
|
type UserCredentials struct {
|
|
FirstName string `json:"first_name"`
|
|
LastName string `json:"last_name"`
|
|
MiddleName *string `json:"middle_name"`
|
|
Email string `json:"email"`
|
|
PhoneNumber string `json:"phone"`
|
|
Password string `json:"password"`
|
|
UserType int32 `json:"user_type"`
|
|
Permissions map[string]string `json:"permissions"`
|
|
}
|
|
|
|
type RegisterResponse struct {
|
|
UUID string `json:"uid"`
|
|
}
|
|
|
|
type (
|
|
LoginUserRequest struct {
|
|
Email string `json:"email"`
|
|
Password string `json:"password"`
|
|
}
|
|
|
|
LoginUserResponse struct {
|
|
Uid string `json:"uid"`
|
|
AccessToken string `json:"access_token"`
|
|
RefreshToken string `json:"refresh_token"`
|
|
UserType int32 `json:"user_type"`
|
|
Permissions Permissions `json:"permissions"`
|
|
EmailVerified bool `json:"email_confirmed"`
|
|
}
|
|
|
|
Permissions struct {
|
|
Balance string `json:"balance"`
|
|
Company string `json:"company"`
|
|
Employees string `json:"employees"`
|
|
Profile string `json:"profile"`
|
|
Submissions string `json:"submissions"`
|
|
Vacancies string `json:"vacancies"`
|
|
}
|
|
)
|
|
|
|
type LogoutUserRequest struct {
|
|
RefreshToken string `json:"refresh_token"`
|
|
}
|
|
|
|
type (
|
|
RefreshTokenRequest struct {
|
|
RefreshToken string `json:"refresh_token"`
|
|
}
|
|
|
|
RefreshTokenResponse struct {
|
|
AccessToken string `json:"access_token"`
|
|
RefreshToken string `json:"refresh_token"`
|
|
}
|
|
)
|
|
|
|
type ForgotPasswordRequest struct {
|
|
Email string `json:"email"`
|
|
}
|
|
|
|
type ValidateOTPResponse struct {
|
|
IsValid bool `json:"valid"`
|
|
Token string `json:"token"`
|
|
}
|
|
|
|
type ResetPasswordRequest struct {
|
|
Email string `json:"email"`
|
|
Password string `json:"new_password"`
|
|
Token string `json:"token"`
|
|
}
|