public ActionResult <IEnumerable <SongRead> > GetSongByCriteria(string criteria) { Request.Headers.TryGetValue("email", out var emailValue); Request.Headers.TryGetValue("UserName", out var userID); if (_repository.GetUserById(userID) == null) { if (userID != "") { var user = new UserCreate(); user.name = userID; user.email = emailValue; var userModel = _mapper.Map <UserData>(user); _repository.CreateUser(userModel); _repository.SaveChanges(); } else { return(Unauthorized("Invalid user")); } } var songItem = _repository.GetSongByCriteria(criteria); if (songItem != null) { return(Ok(_mapper.Map <IEnumerable <SongRead> >(songItem))); } else { return(NotFound()); } }