package
0.0.0-20240924181018-622601314f68
Repository: https://github.com/hanufu/hackatonsantodigital.git
Documentation: pkg.go.dev

# Functions

CreateProduct godoc @Summary Create a new product @Description Adds a new product to the CSV file @Tags products @Accept json @Produce json @Param product body service.Product true "Product data" @Success 201 {object} service.Product @Failure 400 {object} ErrorResponse @Failure 500 {object} ErrorResponse @Router /products/ [post].
DeleteProduct godoc @Summary Delete a product by ID @Description Removes a product based on ID @Tags products @Accept json @Produce json @Param id path string true "Product ID" @Success 204 @Failure 404 {object} ErrorResponse @Failure 500 {object} ErrorResponse @Router /products/{id} [delete].
GetProductByID godoc @Summary Get a product by ID @Description Returns details of a single product based on ID @Tags products @Accept json @Produce json @Param id path string true "Product ID" @Success 200 {object} service.Product @Failure 404 {object} ErrorResponse @Failure 500 {object} ErrorResponse @Router /products/{id} [get].
GetProducts godoc @Summary Get a list of products @Description Returns a list of products with pagination, filtering, and sorting @Tags products @Accept json @Produce json @Param page query int false "Page number" default(1) @Param pageSize query int false "Page size" default(10) @Param filter query string false "Filter criteria" @Param sort query string false "Sorting criteria" @Success 200 {array} service.Product @Failure 500 {object} ErrorResponse @Router /products/ [get].
UpdateProduct godoc @Summary Update a product by ID @Description Updates a product based on ID @Tags products @Accept json @Produce json @Param id path string true "Product ID" @Param product body service.Product true "Updated product data" @Success 200 {object} service.Product @Failure 400 {object} ErrorResponse @Failure 404 {object} ErrorResponse @Failure 500 {object} ErrorResponse @Router /products/{id} [put].

# Structs

ErrorResponse represents an error response.