9f5cef41fc
new file: main_dc/yalarba/api_yal/internal/models/authentication.go add auth object for create authenticate endpoints
46 lines
1.4 KiB
Go
46 lines
1.4 KiB
Go
package models
|
|
|
|
import (
|
|
|
|
)
|
|
|
|
// AuthRequest - запрос на аутентификацию
|
|
type AuthRequest struct {
|
|
Email string `json:"email" binding:"required,email"`
|
|
Password string `json:"password" binding:"required,min=6"`
|
|
}
|
|
|
|
// AuthResponse - ответ с токенами
|
|
type AuthResponse struct {
|
|
AccessToken string `json:"access_token"`
|
|
RefreshToken string `json:"refresh_token"`
|
|
TokenType string `json:"token_type"` // Bearer
|
|
ExpiresIn int64 `json:"expires_in"`
|
|
User UserResponse `json:"user"`
|
|
}
|
|
|
|
// RefreshTokenRequest - запрос на обновление токена
|
|
type RefreshTokenRequest struct {
|
|
RefreshToken string `json:"refresh_token" binding:"required"`
|
|
}
|
|
|
|
// UserRegisterRequest - запрос на регистрацию
|
|
type UserRegisterRequest struct {
|
|
Email string `json:"email" binding:"required,email"`
|
|
Password string `json:"password" binding:"required,min=6"`
|
|
FullName string `json:"full_name" binding:"required"`
|
|
Phone string `json:"phone"`
|
|
City string `json:"city"`
|
|
}
|
|
|
|
// PasswordResetRequest - запрос на сброс пароля
|
|
type PasswordResetRequest struct {
|
|
Email string `json:"email" binding:"required,email"`
|
|
}
|
|
|
|
// PasswordResetConfirmRequest - подтверждение сброса пароля
|
|
type PasswordResetConfirmRequest struct {
|
|
Token string `json:"token" binding:"required"`
|
|
Password string `json:"password" binding:"required,min=6"`
|
|
}
|