public async Task <ActionResult <ProductItemResult> > PostProduct(ProductItem product)
        {
            ProductItemResult result = new ProductItemResult();

            try
            {
                var item = await _products.CreateAsync(product);

                result.IsSuccessful = true;
                result.ResultData.Add(item);
            }
            catch (ItemAlreadyExistsException e)
            {
                result.IsSuccessful = false;
                result.ErrorMessages.Add(e.Message);

                _logger?.LogError(e, "Error");

                return(Conflict(result));
            }
            catch (Exception e)
            {
                _logger?.LogDebug($"Unknown error", e);
                throw e;
            }
            return(Created("", result));
        }