{ "openapi" : "3.0.1", "info" : { "title" : "Resolve Workout Options", "version" : "1.3.0" }, "servers" : [ { "url" : "https://api-test.freddiemac.com/singlefamily/v1/servicing/workoutservice/workout-service" } ], "security" : [ { "bearerAuth" : [ ] } ], "tags" : [ { "name" : "Resolve Workout Options", "description" : "Get a quick view of borrower eligibility for multiple workout options, rationale and workout terms before moving to approval and settlement." } ], "paths" : { "/api/evaluateWorkout" : { "post" : { "tags" : [ "Resolve Workout Options" ], "summary" : "Delivers upfront eligibility check for multiple workout options simultaneously, with a single request.", "description" : "Interface to support processing of loan evaluation for workouts.", "operationId" : "evaluateWorkoutUsingPOST", "requestBody" : { "description" : "workoutOptionRequest", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/WorkoutOptionRequest" }, "examples" : { "EligibilityDecisionRequest" : { "summary" : "Scenario 1 - Request with a new eligibility decision", "description" : "Property value is available, hardship reason is Divorce", "value" : { "message" : { "aboutVersions" : { "aboutVersion" : { "aboutVersionIdentifier" : "S1.0.1", "createdDatetime" : "2021-12-09T13:45:00.000Z", "description" : "workoutoptions" } }, "requestData" : { "workoutList" : [ { "externalData" : { "workoutReportingStatusType" : "DraftReq", "workoutProgramType" : "workoutoptions", "servicerAccountIdentifier" : "111111", "loanIdentifier" : "111111111", "servicerLoanIdentifier" : "ab03123490308", "borrowerResponsePackageReceivedDate" : "05-01-2020", "loanImminentDefaultIndicator" : "N", "rightPartyContactIndicator" : "Y", "reportedFirstPaymentDueDate" : null, "collectionInfo" : [ { "collectionInfoCategory" : "RightPartyContact", "collectionContactDate" : "04-10-2020" } ], "hardshipReasons" : [ { "hardshipReasonType" : "Divorce", "reasonForExtenuatingCircumstances" : "" } ], "disasterInfo" : { "disasterType" : "", "disasterDeclarationDate" : "", "disasterCountyCode" : "" }, "propertyInfo" : { "propertyConditionType" : "N/A", "propertyUsageType" : "PR", "propertyOccupancyType" : "OC", "propertyType" : "", "grossRentalIncome" : 1000 }, "partyInfo" : { "totalCashReserveAmount" : 50000, "totalMonthlyLiabilities" : 2000, "party" : [ { "borrowerType" : "Primary", "borrowerInfo" : { "borrowerDetail" : { "creditScoreDate" : "12-10-2018", "creditScoreValue" : 500 }, "currentIncomeItem" : [ { "currentIncomeItemDetail" : { "currentIncomeMonthlyTotalAmount" : 250000, "incomeType" : "GrossMonthlyIncome" } } ] } } ] }, "premodHousingExpense" : [ { "housingExpenseType" : "TotalMonthlyExpenses", "housingExpensePaymentAmount" : 200 }, { "housingExpensePaymentAmount" : 150, "housingExpenseType" : "HomeownersInsurance" }, { "housingExpensePaymentAmount" : 200, "housingExpenseType" : "RealEstateTax" } ], "workouts" : { "escrow" : { "escrowDetail" : { "escrowShortagePaymentAmount" : 0.1, "projectedEscrowShortageAmount" : 0.1, "capitalizedEscrowAmount" : 0.1, "restrictedEscrowBalanceAmount" : 0.1, "actualEscrowShortageSpreadAmount" : 0.1 } }, "capitalizedArrears" : [ { "category" : "LegalFeesandCosts", "amount" : 100 }, { "category" : "BorrowerContribution", "amount" : 200 } ], "closingData" : [ { "category" : "BuyerFirstName", "value" : "John" } ], "propertyContractInfo" : { "contractSalesDate" : "", "contractSalesPrice" : 0.1, "mLSListDate" : "", "aRMSLengthTransactionIndicator" : "" }, "additionalData" : { "newMortgages" : "", "secondLienUPB" : 0.1, "secondLienMortgageLender" : "", "isInsufficientContributionJustified" : "", "reasonForInsufficientContribution" : "" }, "valuationData" : [ { "category" : "ServicerContactFirstName", "value" : "" } ] }, "eligibilityQuestionnaire" : { "reinstatementViable" : "N", "repaymentWithActiveOffer" : "N", "willingToRetainProperty" : "Y", "hardshipResolved" : "Y", "ableToMakeContractualPayment" : "Y", "leaseholdPropertyTermsRemain" : "Y" }, "workoutCommentsText" : "workout request additional comments" } } ] } } } }, "ConditionalRequest" : { "summary" : "Scenario 2 - Request with a 'Conditional' eligibility decision", "description" : "Submission with limited data provided in the request", "value" : { "message" : { "aboutVersions" : { "aboutVersion" : { "aboutVersionIdentifier" : "S1.0.1", "createdDatetime" : "2021-12-09T13:45:00.000Z", "description" : "workoutoptions" } }, "requestData" : { "workoutList" : [ { "externalData" : { "workoutReportingStatusType" : "DraftReq", "workoutProgramType" : "workoutoptions", "servicerAccountIdentifier" : "111111", "loanIdentifier" : "222222222", "servicerLoanIdentifier" : "ab03123490308", "borrowerResponsePackageReceivedDate" : "05-01-2020", "loanImminentDefaultIndicator" : "N", "rightPartyContactIndicator" : "Y", "reportedFirstPaymentDueDate" : null, "collectionInfo" : [ { "collectionInfoCategory" : "RightPartyContact", "collectionContactDate" : "04-10-2020" } ], "hardshipReasons" : [ { "hardshipReasonType" : "Divorce", "reasonForExtenuatingCircumstances" : "" }, { "hardshipReasonType" : "Other", "reasonForExtenuatingCircumstances" : "" } ], "disasterInfo" : { "disasterType" : "", "disasterDeclarationDate" : "", "disasterCountyCode" : "" }, "propertyInfo" : { "propertyConditionType" : "N/A", "propertyUsageType" : "PR", "propertyOccupancyType" : "OC", "propertyType" : "", "grossRentalIncome" : 1000 }, "partyInfo" : { "totalCashReserveAmount" : 50000, "totalMonthlyLiabilities" : 2000, "party" : [ { "borrowerType" : "Primary", "borrowerInfo" : { "borrowerDetail" : { "creditScoreDate" : "12-10-2018", "creditScoreValue" : 500 }, "currentIncomeItem" : [ { "currentIncomeItemDetail" : { "currentIncomeMonthlyTotalAmount" : 250000, "incomeType" : "GrossMonthlyIncome" } } ] } } ] }, "premodHousingExpense" : [ { "housingExpenseType" : "TotalMonthlyExpenses", "housingExpensePaymentAmount" : 200 }, { "housingExpensePaymentAmount" : 150, "housingExpenseType" : "HomeownersInsurance" }, { "housingExpensePaymentAmount" : 200, "housingExpenseType" : "RealEstateTax" } ], "workouts" : { "escrow" : { "escrowDetail" : { "escrowShortagePaymentAmount" : 0.1, "projectedEscrowShortageAmount" : 0.1, "capitalizedEscrowAmount" : 0.1, "restrictedEscrowBalanceAmount" : 0.1, "actualEscrowShortageSpreadAmount" : 0.1 } }, "capitalizedArrears" : [ { "category" : "LegalFeesandCosts", "amount" : 100 }, { "category" : "BorrowerContribution", "amount" : 200 } ], "closingData" : [ { "category" : "BuyerFirstName", "value" : "John" } ], "propertyContractInfo" : { "contractSalesDate" : "", "contractSalesPrice" : 0.1, "mLSListDate" : "", "aRMSLengthTransactionIndicator" : "" }, "additionalData" : { "newMortgages" : "", "secondLienUPB" : 0.1, "secondLienMortgageLender" : "", "isInsufficientContributionJustified" : "", "reasonForInsufficientContribution" : "" }, "valuationData" : [ { "category" : "ServicerContactFirstName", "value" : "" } ] }, "eligibilityQuestionnaire" : { "reinstatementViable" : "N", "willingToRetainProperty" : "Y", "hardshipResolved" : "Y", "ableToMakeContractualPayment" : "Y", "leaseholdPropertyTermsRemain" : "" }, "workoutCommentsText" : "workout request additional comments" } } ] } } } }, "InvalidRequest" : { "summary" : "Scenario 3 - Request with atleast one upfront validation error", "description" : "upfront data / schema validation", "value" : { "message" : { "aboutVersions" : { "aboutVersion" : { "aboutVersionIdentifier" : "S1.0.1", "createdDatetime" : "2021-12-09T13:45:00.000Z", "description" : "workoutoptions" } }, "requestData" : { "workoutList" : [ { "externalData" : { "workoutReportingStatusType" : "DraftReq", "workoutProgramType" : "workoutoptions", "servicerAccountIdentifier" : "111111", "loanIdentifier" : "444444444", "servicerLoanIdentifier" : "ab03123490308", "borrowerResponsePackageReceivedDate" : "05/01/2020", "loanImminentDefaultIndicator" : "N", "rightPartyContactIndicator" : "Y", "reportedFirstPaymentDueDate" : "", "collectionInfo" : [ { "collectionInfoCategory" : "RightPartyContact", "collectionContactDate" : "04-10-2020" } ], "hardshipReasons" : [ { "hardshipReasonType" : "Unemmp", "reasonForExtenuatingCircumstances" : "" } ], "disasterInfo" : { "disasterType" : "", "disasterDeclarationDate" : "", "disasterCountyCode" : "" }, "propertyInfo" : { "propertyConditionType" : "N/A", "propertyUsageType" : "PR", "propertyOccupancyType" : "OC", "propertyType" : "", "grossRentalIncome" : 1000 }, "partyInfo" : { "totalCashReserveAmount" : 50000, "totalMonthlyLiabilities" : 2000, "party" : [ { "borrowerType" : "Primary", "borrowerInfo" : { "borrowerDetail" : { "creditScoreDate" : "12-10-2018", "creditScoreValue" : 500 }, "currentIncomeItem" : [ { "currentIncomeItemDetail" : { "currentIncomeMonthlyTotalAmount" : 250000, "incomeType" : "GrossMonthlyIncome" } } ] } } ] }, "premodHousingExpense" : [ { "housingExpenseType" : "TotalMonthlyExpenses", "housingExpensePaymentAmount" : 200 }, { "housingExpensePaymentAmount" : 150, "housingExpenseType" : "HomeownersInsurance" }, { "housingExpensePaymentAmount" : 200, "housingExpenseType" : "RealEstateTax" } ], "workouts" : { "escrow" : { "escrowDetail" : { "escrowShortagePaymentAmount" : 0.1, "projectedEscrowShortageAmount" : 0.1, "capitalizedEscrowAmount" : 0.1, "restrictedEscrowBalanceAmount" : 0.1, "actualEscrowShortageSpreadAmount" : 0.1 } }, "capitalizedArrears" : [ { "category" : "LegalFeesandCosts", "amount" : 100 }, { "category" : "BorrowerContribution", "amount" : 200 } ], "closingData" : [ { "category" : "BuyerFirstName", "value" : "John" } ], "propertyContractInfo" : { "contractSalesDate" : "", "contractSalesPrice" : 0.1, "mLSListDate" : "", "aRMSLengthTransactionIndicator" : "" }, "additionalData" : { "newMortgages" : "", "secondLienUPB" : 0.1, "secondLienMortgageLender" : "", "isInsufficientContributionJustified" : "", "reasonForInsufficientContribution" : "" }, "valuationData" : [ { "category" : "ServicerContactFirstName", "value" : "" } ] }, "eligibilityQuestionnaire" : { "reinstatementViable" : "N", "repaymentWithActiveOffer" : "N", "willingToRetainProperty" : "Y", "hardshipResolved" : "Y", "ableToMakeContractualPayment" : "Y", "leaseholdPropertyTermsRemain" : "N" }, "workoutCommentsText" : "workout request additional comments" } } ] } } } }, "UndeterminedDecision" : { "summary" : "Scenario 4 - Request with an 'Undetermined' eligibility decision", "description" : "Property usage is unavailable, hardship reason is national emergency", "value" : { "message" : { "aboutVersions" : { "aboutVersion" : { "aboutVersionIdentifier" : "S1.0.1", "createdDatetime" : "2021-12-09T13:45:00.000Z", "description" : "workoutoptions" } }, "requestData" : { "workoutList" : [ { "externalData" : { "workoutReportingStatusType" : "DraftReq", "workoutProgramType" : "workoutoptions", "servicerAccountIdentifier" : "111111", "loanIdentifier" : "444444444", "servicerLoanIdentifier" : "ab03123490308", "borrowerResponsePackageReceivedDate" : "05-01-2020", "loanImminentDefaultIndicator" : "N", "rightPartyContactIndicator" : "Y", "reportedFirstPaymentDueDate" : "", "collectionInfo" : [ { "collectionInfoCategory" : "RightPartyContact", "collectionContactDate" : "04-10-2020" } ], "hardshipReasons" : [ { "hardshipReasonType" : "Other", "reasonForExtenuatingCircumstances" : "" } ], "disasterInfo" : { "disasterType" : "", "disasterDeclarationDate" : "", "disasterCountyCode" : "" }, "propertyInfo" : { "propertyConditionType" : "N/A", "propertyUsageType" : "", "propertyOccupancyType" : "OC", "propertyType" : "", "grossRentalIncome" : 1000 }, "partyInfo" : { "totalCashReserveAmount" : 50000, "totalMonthlyLiabilities" : 2000, "party" : [ { "borrowerType" : "Primary", "borrowerInfo" : { "borrowerDetail" : { "creditScoreDate" : "12-10-2018", "creditScoreValue" : 500 }, "currentIncomeItem" : [ { "currentIncomeItemDetail" : { "currentIncomeMonthlyTotalAmount" : 250000, "incomeType" : "GrossMonthlyIncome" } } ] } } ] }, "premodHousingExpense" : [ { "housingExpenseType" : "TotalMonthlyExpenses", "housingExpensePaymentAmount" : 200 }, { "housingExpensePaymentAmount" : 150, "housingExpenseType" : "HomeownersInsurance" }, { "housingExpensePaymentAmount" : 200, "housingExpenseType" : "RealEstateTax" } ], "workouts" : { "escrow" : { "escrowDetail" : { "escrowShortagePaymentAmount" : 0.1, "projectedEscrowShortageAmount" : 0.1, "capitalizedEscrowAmount" : 0.1, "restrictedEscrowBalanceAmount" : 0.1, "actualEscrowShortageSpreadAmount" : 0.1 } }, "capitalizedArrears" : [ { "category" : "LegalFeesandCosts", "amount" : 100 }, { "category" : "BorrowerContribution", "amount" : 200 } ], "closingData" : [ { "category" : "BuyerFirstName", "value" : "John" } ], "propertyContractInfo" : { "contractSalesDate" : "", "contractSalesPrice" : 0.1, "mLSListDate" : "", "aRMSLengthTransactionIndicator" : "" }, "additionalData" : { "newMortgages" : "", "secondLienUPB" : 0.1, "secondLienMortgageLender" : "", "isInsufficientContributionJustified" : "", "reasonForInsufficientContribution" : "" }, "valuationData" : [ { "category" : "ServicerContactFirstName", "value" : "" } ] }, "eligibilityQuestionnaire" : { "reinstatementViable" : "N", "repaymentWithActiveOffer" : "N", "willingToRetainProperty" : "Y", "hardshipResolved" : "Y", "ableToMakeContractualPayment" : "Y", "leaseholdPropertyTermsRemain" : "Y" }, "workoutCommentsText" : "workout request additional comments" } } ] } } } } } } }, "required" : true }, "responses" : { "200" : { "description" : "OK Request succeeded.\r\n\n Sample Eligibility Messages
\r\n\nSample Data Validation Messages