package routers import ( "github.com/gin-gonic/gin" "net/http" "serverctl/pkg/infrastructure/dependencies" ) func authRouter(router *gin.Engine, d *dependencies.Dependencies) { router.POST("/auth/register", func(c *gin.Context) { type RegisterUser struct { Email string `json:"email" binding:"required"` Password string `json:"password" binding:"required"` } var registerUser RegisterUser if err := c.BindJSON(®isterUser); err != nil { return } createUser, err := d.UsersService.Create(registerUser.Email, registerUser.Password) if err != nil { c.JSON(http.StatusBadRequest, gin.H{"message": "you have provided invalid input"}) return } c.JSON(http.StatusCreated, gin.H{"message": "user has been registered", "userId": createUser}) }) }