package routes import ( "api/controllers" "api/middlewares" "github.com/gofiber/fiber/v2" ) // Setup sets up the routes func Setup(app *fiber.App) { app.Post("/integration", controllers.WixIntegration) app.Get("/version", controllers.Version) app.Get("/health", controllers.GetServerInfo) app.Post("/login", controllers.Login) app.Post("/register", controllers.AddUser) // Webhooks app.Post("/on_server_start", controllers.ServerStart) app.Post("/on_update", controllers.OnUpdate) app.Post("/on_pub_start", controllers.OnPubStart) app.Post("/on_pub_stop", controllers.OnPubStop) app.Post("/on_sub_start", controllers.OnSubStart) // Protected routes. Needs login before. protected := app.Group("/") protected.Use(middlewares.Authenticate) protected.Get("servers", controllers.GetAllServers) protected.Post("server", controllers.AddServer) protected.Get("user", controllers.GetOwnUser) protected.Get("users", controllers.GetAllUsers) protected.Get("users/:email", controllers.GetUserByEmail) protected.Post("user", controllers.AddUser) protected.Post("event", controllers.AddEvent) protected.Get("events", controllers.GetAllEvents) protected.Get("events/:id", controllers.GetEventsByUser) }