public async Task <ActionResult <Movies> > AddNewMovie(Movies newMovieData)
        {
            try
            {
                var addedMovie = await moviesService.AddMovieAsync(newMovieData);

                if (addedMovie == null)
                {
                    return(BadRequest(new { message = "MOVIE_ALREADY_EXIST" }));
                }

                var location = link.GetPathByAction("GetByMovieTitle", "Movies", new { title = newMovieData.Title });
                if (string.IsNullOrWhiteSpace(location))
                {
                    return(BadRequest(new { message = "MOVIETITLE_OCCUPIED" }));
                }

                if ((await moviesService.CommitAsync()) > 0)
                {
                    return(Created(location, newMovieData));
                }
            }
            catch (Exception)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, "Database Failure"));
            }
            return(BadRequest());
        }