fusenapi/server_api/auth.api
2023-10-16 15:19:25 +08:00

139 lines
3.4 KiB
Plaintext

syntax = "v1"
info (
title: // TODO: add title
desc: // TODO: add description
author: ""
email: ""
)
import "basic.api"
service auth {
// 登录接口
@handler UserLoginHandler
post /api/auth/login(RequestUserLogin) returns (response);
// 注册
@handler UserRegisterHandler
post /api/auth/register(RequestUserRegister) returns (response);
// 获取cookie, 成为游客
@handler AcceptCookieHandler
post /api/auth/accept-cookie(request) returns (response);
// 谷歌第三方登录
@handler UserGoogleLoginHandler
get /api/auth/oauth2/login/google(RequestGoogleLogin) returns (response);
// 邮箱校验
@handler UserEmailConfirmationHandler
get /api/auth/email/confirmation(RequestEmailConfirmation) returns (response);
// 第三方登录,确认使用邮箱
@handler UserEmailRegisterHandler
post /api/auth/oauth2/register(RequestEmailRegister) returns (response);
// 发送重置链接到email
@handler UserResetTokenHandler
post /api/auth/reset/token(RequestUserResetToken) returns (response);
// 重置密码
@handler UserResetPasswordHandler
post /api/auth/reset/password(RequestUserResetPassword) returns (response);
// 获取重定向到html页面
@handler UserResetPasswordHtmlHandler
get /api/auth/reset/password/html(RequestUserResetHtml) returns (response);
// 用于debug 删除帐号
@handler DebugAuthDeleteHandler
post /api/auth/debug/delete(RequestAuthDelete) returns (response);
}
type (
// RequestAuthDelete 用于debug
RequestAuthDelete {
Email string `json:"email"`
}
// UserAddAddressHandler 用户登录请求结构
RequestUserLogin {
Email string `json:"email"`
Password string `json:"password"`
}
// UserLoginHandler 用户登录请求结构
DataUserLogin {
Token string `json:"token"` // 登录jwt token
}
)
type (
// UserAddAddressHandler 用户登录请求结构
RequestUserRegister {
Wid string `json:"wid"` // websocket的id
FirstName string `json:"first_name"` // 首名
LastName string `json:"last_name"` // 名
Resetaurant string `json:"resetaurant"` // 餐厅类型
Email string `json:"email"` // email
Password string `json:"password"` // 密码
}
// UserLoginHandler 用户登录请求结构
// DataUserRegister{
// Token string `json:"token"` // 登录jwt token
// }
)
type (
// RequestUserResetToken 请求重置token, 一定不为null
RequestUserResetToken {
Wid string `json:"wid"`
Email string `json:"email"` // email
}
// UserResetTokenHandler 返回重置token
DataResetToken {
ResetToken string `json:"reset_token"` // 获取重置的token
}
// RequestUserResetPassword 重置密码
RequestUserResetHtml {
ResetToken string `form:"reset_token"`
}
// RequestUserResetPassword 重置密码
RequestUserResetPassword {
// Wid string `json:"wid"`
// Email string `json:"email"` // email
ResetToken string `json:"reset_token"`
NewPassword string `json:"new_password"`
}
)
type RequestGoogleLogin {
Code string `form:"code"`
Scope string `form:"scope"`
AuthUser string `form:"authuser"`
Prompt string `form:"prompt"`
}
type RequestEmailConfirmation {
Token string `form:"token"` // 操作Token
OpType string `form:"optype"` // 操作类型
}
type RequestEmailRegister {
Wid string `json:"wid"`
Email string `json:"email"`
RegisterToken string `json:"register_token"`
}
// DataGuest 游客获取toekn请求结构
type DataGuest {
Token string `json:"token"` // 登录jwt token
}