openapi: 3.2.0 info: title: Resolve Workout Options API version: 1.3.0 description: Get a quick view of borrower eligibility for multiple workout options, rationale and workout terms before moving to approval and settlement. 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… 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.\n\n Sample Eligibility Messages
\n\nSample Data Validation Messages