public async Task <DebtorAccountSaveResponse> SaveDebtorAsync(DebtorAccountSaveRequest model) { var moratorium = await _client.For <Ntt_breathingspacemoratorium>() .Key(model.MoratoriumId) .Expand(m => m.ntt_breathingspacemoratorium_ntt_breathingspacedebt_BreathingSpaceMoratoriumId) .FindEntryAsync(); var moratoriumId = moratorium.ntt_breathingspacemoratoriumid; var hasDebts = moratorium.ntt_breathingspacemoratorium_ntt_breathingspacedebt_BreathingSpaceMoratoriumId.Any(); if (!hasDebts) { throw new UnprocessableEntityHttpResponseException("There must be one (1) eligible debt per breathing space"); } var moratoriumReference = await _client.For <Ntt_breathingspacemoratorium>() .Key(moratoriumId) .Action("ntt_bssmoratoriumactivate") .Set(_auditContext.GenerateActionParameters()) .ExecuteAsSingleAsync <string>(); var auditDetail = _auditContext.ToAuditDetail( new Dictionary <string, object> { { nameof(model.MoratoriumId), model.MoratoriumId }, { "ntt_bssmoratoriumactivate", true } }); await _auditService.PerformAuditing(auditDetail); return(new DebtorAccountSaveResponse { MoratoriumReference = moratoriumReference }); }