public async Task <Entity> CreateAsync(Entity entity) { var createRequest = new createRequest(_autotaskIntegrations, new[] { entity }); var createResponse = await _autoTaskClient.createAsync(createRequest).ConfigureAwait(false); var errorCount = createResponse.createResult.Errors.Length; if (errorCount > 0) { _logger.LogError($"There was an error creating the entity. {errorCount} errors occurred."); for (var errorNum = 0; errorNum < errorCount; errorNum++) { _logger.LogError($"Error {errorNum + 1}: {createResponse.createResult.Errors[errorNum].Message}"); } _logger.LogError("Entity: " + JsonConvert.SerializeObject(entity)); var message = $"Errors occurred during creation of the AutoTask entity: {string.Join(";", createResponse.createResult.Errors.Select(e => e.Message))}"; throw new AutoTaskApiException(BuildExceptionMessage(message)); } var createdEntity = createResponse?.createResult?.EntityResults?.FirstOrDefault(); _logger.LogDebug($"Successfully created entity with Id: {createdEntity?.id.ToString() ?? "UNKNOWN!"}"); if (createdEntity == null) { throw new AutoTaskApiException(BuildExceptionMessage("Did not get a result back after creating the AutoTask entity.")); } return(createdEntity); }