thread-master/old/backend/generate/api/auth.api

81 lines
1.9 KiB
Plaintext
Raw Normal View History

2026-06-26 08:37:04 +00:00
syntax = "v1"
type (
AuthRegisterReq {
TenantID string `json:"tenant_id" validate:"required"`
Email string `json:"email" validate:"required,email"`
Password string `json:"password" validate:"required,min=8,max=128"`
DisplayName string `json:"display_name,optional"`
Language string `json:"language,optional"`
}
AuthLoginReq {
TenantID string `json:"tenant_id" validate:"required"`
Email string `json:"email" validate:"required,email"`
Password string `json:"password" validate:"required,min=8,max=128"`
}
AuthRefreshReq {
RefreshToken string `json:"refresh_token" validate:"required"`
}
AuthTokenData {
AccessToken string `json:"access_token"`
RefreshToken string `json:"refresh_token"`
ExpiresIn int64 `json:"expires_in"`
UID string `json:"uid"`
TokenType string `json:"token_type"`
}
LogoutData {
OK bool `json:"ok"`
}
2026-07-09 03:45:28 +00:00
AuthVerifyEmailReq {
Code string `json:"code" validate:"required,len=6"`
}
AuthVerifyEmailData {
EmailVerified bool `json:"email_verified"`
}
AuthResendVerificationData {
Sent bool `json:"sent"`
}
2026-06-26 08:37:04 +00:00
)
@server(
group: auth
prefix: /api/v1/auth
tags: "Auth"
summary: "Native member auth and JWT token endpoints"
)
service gateway {
@handler login
post /login (AuthLoginReq) returns (AuthTokenData)
@handler refresh
post /refresh (AuthRefreshReq) returns (AuthTokenData)
}
@server(
group: auth
prefix: /api/v1/auth
middleware: AuthJWT
tags: "Auth"
2026-07-07 14:02:41 +00:00
summary: "Authenticated auth management endpoints"
2026-06-26 08:37:04 +00:00
)
service gateway {
2026-07-07 14:02:41 +00:00
@handler register
post /register (AuthRegisterReq) returns (AuthTokenData)
2026-06-26 08:37:04 +00:00
@handler logout
post /logout returns (LogoutData)
2026-07-09 03:45:28 +00:00
@handler verifyEmail
post /verify-email (AuthVerifyEmailReq) returns (AuthVerifyEmailData)
@handler resendVerificationEmail
post /resend-verification-email returns (AuthResendVerificationData)
2026-06-26 08:37:04 +00:00
}