MCPcopy Create free account
hub / github.com/aiprodcoder/MIXAPI / SetApiRouter

Function SetApiRouter

router/api-router.go:11–208  ·  view source on GitHub ↗
(router *gin.Engine)

Source from the content-addressed store, hash-verified

9)
10
11func SetApiRouter(router *gin.Engine) {
12 apiRouter := router.Group("/api")
13 apiRouter.Use(gzip.Gzip(gzip.DefaultCompression))
14 apiRouter.Use(middleware.GlobalAPIRateLimit())
15 {
16 apiRouter.GET("/setup", controller.GetSetup)
17 apiRouter.POST("/setup", controller.PostSetup)
18 apiRouter.GET("/status", controller.GetStatus)
19 apiRouter.GET("/uptime/status", controller.GetUptimeKumaStatus)
20 apiRouter.GET("/models", middleware.UserAuth(), controller.DashboardListModels)
21 apiRouter.GET("/status/test", middleware.AdminAuth(), controller.TestStatus)
22 apiRouter.GET("/notice", controller.GetNotice)
23 apiRouter.GET("/about", controller.GetAbout)
24 //apiRouter.GET("/midjourney", controller.GetMidjourney)
25 apiRouter.GET("/home_page_content", controller.GetHomePageContent)
26 apiRouter.GET("/pricing", middleware.TryUserAuth(), controller.GetPricing)
27 apiRouter.GET("/verification", middleware.CriticalRateLimit(), middleware.TurnstileCheck(), controller.SendEmailVerification)
28 apiRouter.GET("/reset_password", middleware.CriticalRateLimit(), middleware.TurnstileCheck(), controller.SendPasswordResetEmail)
29 apiRouter.POST("/user/reset", middleware.CriticalRateLimit(), controller.ResetPassword)
30 apiRouter.GET("/oauth/github", middleware.CriticalRateLimit(), controller.GitHubOAuth)
31 apiRouter.GET("/oauth/oidc", middleware.CriticalRateLimit(), controller.OidcAuth)
32 apiRouter.GET("/oauth/linuxdo", middleware.CriticalRateLimit(), controller.LinuxdoOAuth)
33 apiRouter.GET("/oauth/state", middleware.CriticalRateLimit(), controller.GenerateOAuthCode)
34 apiRouter.GET("/oauth/wechat", middleware.CriticalRateLimit(), controller.WeChatAuth)
35 apiRouter.GET("/oauth/wechat/bind", middleware.CriticalRateLimit(), controller.WeChatBind)
36 apiRouter.GET("/oauth/email/bind", middleware.CriticalRateLimit(), controller.EmailBind)
37 apiRouter.GET("/oauth/telegram/login", middleware.CriticalRateLimit(), controller.TelegramLogin)
38 apiRouter.GET("/oauth/telegram/bind", middleware.CriticalRateLimit(), controller.TelegramBind)
39 apiRouter.GET("/ratio_config", middleware.CriticalRateLimit(), controller.GetRatioConfig)
40
41 apiRouter.POST("/stripe/webhook", controller.StripeWebhook)
42
43 userRoute := apiRouter.Group("/user")
44 {
45 userRoute.POST("/register", middleware.CriticalRateLimit(), middleware.TurnstileCheck(), controller.Register)
46 userRoute.POST("/login", middleware.CriticalRateLimit(), middleware.TurnstileCheck(), controller.Login)
47 //userRoute.POST("/tokenlog", middleware.CriticalRateLimit(), controller.TokenLog)
48 userRoute.GET("/logout", controller.Logout)
49 userRoute.GET("/epay/notify", controller.EpayNotify)
50 userRoute.GET("/groups", controller.GetUserGroups)
51
52 selfRoute := userRoute.Group("/")
53 selfRoute.Use(middleware.UserAuth())
54 {
55 selfRoute.GET("/self/groups", controller.GetUserGroups)
56 selfRoute.GET("/self", controller.GetSelf)
57 selfRoute.GET("/models", controller.GetUserModels)
58 selfRoute.PUT("/self", controller.UpdateSelf)
59 selfRoute.DELETE("/self", controller.DeleteSelf)
60 selfRoute.GET("/token", controller.GenerateAccessToken)
61 selfRoute.GET("/aff", controller.GetAffCode)
62 selfRoute.POST("/topup", middleware.CriticalRateLimit(), controller.TopUp)
63 selfRoute.POST("/pay", middleware.CriticalRateLimit(), controller.RequestEpay)
64 selfRoute.POST("/amount", controller.RequestAmount)
65 selfRoute.POST("/stripe/pay", middleware.CriticalRateLimit(), controller.RequestStripePay)
66 selfRoute.POST("/stripe/amount", controller.RequestStripeAmount)
67 selfRoute.POST("/aff_transfer", controller.TransferAffQuota)
68 selfRoute.PUT("/setting", controller.UpdateUserSetting)

Callers 1

SetRouterFunction · 0.85

Calls 8

GlobalAPIRateLimitFunction · 0.92
UserAuthFunction · 0.92
AdminAuthFunction · 0.92
TryUserAuthFunction · 0.92
CriticalRateLimitFunction · 0.92
TurnstileCheckFunction · 0.92
RootAuthFunction · 0.92
CORSFunction · 0.92

Tested by

no test coverage detected