public async Task <IActionResult> UploadSoftware([FromBody] SoftwareCreateViewModel model) { // Lock in bdd Result <int> result = await _softwareGateway.CreateSoftware(model.Name, model.Description); if (result.ErrorMessage == "Software with this name exists") { return(BadRequest(result.ErrorMessage)); } SoftwareForDiggosViewModel contentForDiggos = new SoftwareForDiggosViewModel(); contentForDiggos.Id = result.Content; contentForDiggos.LinkProject = model.LinkProject; // Upload software on diggos HttpResponseMessage theLastResponse = await _diggosService.InstallSoftware(contentForDiggos); if (!theLastResponse.IsSuccessStatusCode) { // Delete in bdd await _softwareGateway.DeleteSoftware(result.Content); return(StatusCode(502, "Error on diggos")); } return(Ok(result.Content)); }