v1.POST("/auth/login", authHandler.Login) v1.POST("/provisioning", provHandler.Provision) v1.POST("/heartbeat", hbHandler.Ping) protected := v1.Group("/") protected.Use(auth.AuthMiddleware()) { protected.POST("/auth/register", authHandler.Register) protected.GET("/users", usersHandler.List) protected.POST("/users", usersHandler.Create) protected.DELETE("/users/:id", usersHandler.Delete) protected.GET("/servers", serversHandler.List) protected.POST("/servers", serversHandler.Create) protected.DELETE("/servers/:id", serversHandler.Delete) protected.GET("/devices", devicesHandler.List) protected.POST("/devices", devicesHandler.Create) protected.GET("/devices/:id", devicesHandler.Get) protected.PUT("/devices/:id", devicesHandler.Update) protected.DELETE("/devices/:id", devicesHandler.Delete) protected.POST("/devices/:id/regenerate-token", devicesHandler.RegenerateToken) protected.GET("/devices/:id/rules", rulesHandler.List) protected.POST("/devices/:id/rules", rulesHandler.Create) protected.DELETE("/rules/:ruleId", rulesHandler.Delete) }