public async Task <ActionResult <StatusResource> > CreateStatus([FromBody] SaveStatusResource saveStatusResource) { var validator = new SaveStatusResourceValidator(); var validationResult = await validator.ValidateAsync(saveStatusResource); if (!validationResult.IsValid) { return(BadRequest(validationResult.Errors)); // this needs refining, but for demo it is ok } var statusToCreate = _mapper.Map <SaveStatusResource, Status>(saveStatusResource); var newStatus = await _statusService.CreateStatus(statusToCreate); var status = await _statusService.GetStatusById(newStatus.Id); var statusResource = _mapper.Map <Status, StatusResource>(status); return(Ok(statusResource)); }