first commit
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
package auth
|
||||
|
||||
// RefreshTokenRequest mendefinisikan struktur untuk request refresh token.
|
||||
type RefreshTokenRequest struct {
|
||||
RefreshToken string `json:"refresh_token" binding:"required"`
|
||||
// Provider membantu membedakan antara "jwt" dan "keycloak".
|
||||
// Ini membuat endpoint menjadi fleksibel.
|
||||
Provider string `json:"provider" binding:"required,oneof=jwt keycloak"`
|
||||
}
|
||||
|
||||
// LoginResponse adalah respons standar untuk login dan refresh token.
|
||||
type LoginResponse struct {
|
||||
Provider string `json:"provider,omitempty"`
|
||||
AccessToken string `json:"access_token"`
|
||||
RefreshToken string `json:"refresh_token,omitempty"`
|
||||
ExpiresIn int `json:"expires_in"`
|
||||
TokenType string `json:"token_type"`
|
||||
IdToken string `json:"id_token,omitempty"`
|
||||
}
|
||||
|
||||
type LoginRequest struct {
|
||||
Email string `json:"email" binding:"required,email"`
|
||||
Password string `json:"password" binding:"required"`
|
||||
}
|
||||
|
||||
type RegisterRequest struct {
|
||||
Name string `json:"name" binding:"required"`
|
||||
Email string `json:"email" binding:"required,email"`
|
||||
Password string `json:"password" binding:"required,min=6"`
|
||||
RoleID int64 `json:"role_id" binding:"required"`
|
||||
}
|
||||
Reference in New Issue
Block a user