59 lines
1.4 KiB
Go

package dto
type ChallengeRequest struct {
PubKey string `json:"pubKey" validate:"required,eth_pubkey"`
}
type ChallengeResponse struct {
Message string `json:"message"`
TimeStamp string `json:"timeStamp"`
ExpiresAt string `json:"expiresAt"`
}
type AuthenticateRequest struct {
PubKey string `json:"pubKey" validate:"required,eth_pubkey"`
Signature string `json:"signature" validate:"required,eth_signature"`
}
type AuthenticateResponse struct {
AuthorizationToken string `json:"authorizationToken"`
RefreshToken string `json:"refreshToken"`
ExpiresAt int64 `json:"expiresAt"`
}
type RefreshTokenRequest struct {
RefreshToken string `json:"refreshToken" validate:"required,jwt"`
}
type OTPProviderReq struct {
Receptor string `json:"receptor"`
}
type OTPProviderResponse struct {
Message string `json:"message"`
}
type OTPVerifyRequest struct {
Phone string `json:"phone" validate:"required"`
Code string `json:"code" validate:"required"`
}
type OTPVerifyResponse struct {
Message string `json:"message"`
}
type KYCVerifyRequest struct {
NationalID string `json:"nationalId" validate:"required"`
BirthDate string `json:"birthDate" validate:"required"`
}
type KYCVerifyResponse struct {
Message string `json:"message"`
}
type APIResponse struct {
Success bool `json:"success"`
Message string `json:"message"`
Data any `json:"data,omitempty"`
}