{"ok":true,"tool":"pragmatic.get_calculator_schema.v1","result":{"calculator":{"slug":"refinance-analyzer","title":"Refinance Analyzer","description":"Payment change, savings, penalty, and breakeven timeline.","category":"refinance","url":"https://pragmatic.mortgage/refinance-analyzer","inputSchema":{"type":"object","properties":{"propertyValue":{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}]},"maxLtvPct":{"anyOf":[{"type":"number","description":"Maximum loan-to-value as a fraction: 0.8 means 80%."},{"type":"string","description":"Maximum loan-to-value as a fraction: 0.8 means 80%.","pattern":"^-?\\d+(?:\\.\\d+)?$"}],"description":"Maximum loan-to-value as a fraction: 0.8 means 80%."},"horizonMonths":{"type":"integer","minimum":6,"maximum":720},"discountRate":{"anyOf":[{"type":"number","description":"Annual discount rate as a fraction: 0.04 means 4%."},{"type":"string","description":"Annual discount rate as a fraction: 0.04 means 4%.","pattern":"^-?\\d+(?:\\.\\d+)?$"}],"description":"Annual discount rate as a fraction: 0.04 means 4%."},"current":{"type":"object","properties":{"principal":{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}]},"nominalRatePercent":{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}]},"amortization":{"type":"object","properties":{"years":{"type":"integer","minimum":0,"maximum":40},"months":{"type":"integer","minimum":0,"maximum":11}},"required":["years","months"],"additionalProperties":false},"termMonths":{"type":"integer","minimum":1,"maximum":120},"paymentFrequency":{"type":"string","enum":["monthly","semi_monthly","biweekly","accelerated_biweekly","weekly","accelerated_weekly"]},"explicitPayment":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}]},{"type":"null"}]},"startDateISO":{"anyOf":[{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}(?:T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2}))?$"},{"type":"null"}]}},"required":["principal","nominalRatePercent","amortization","termMonths","paymentFrequency"],"additionalProperties":false},"debts":{"type":"array","items":{"type":"object","properties":{"balance":{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}]},"apr":{"anyOf":[{"type":"number","description":"Annual debt interest as a decimal fraction: 0.199 means 19.9%."},{"type":"string","description":"Annual debt interest as a decimal fraction: 0.199 means 19.9%.","pattern":"^-?\\d+(?:\\.\\d+)?$"}],"description":"Annual debt interest as a decimal fraction: 0.199 means 19.9%."},"minPayment":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}]},{"type":"null"}]},"payoffMonths":{"anyOf":[{"type":"integer","minimum":1,"maximum":480},{"type":"null"}]},"consolidate":{"type":"boolean"}},"required":["balance","apr"],"additionalProperties":false},"maxItems":12,"default":[]},"fees":{"type":"object","properties":{"prepaymentPenalty":{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}]},"dischargeFee":{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}],"default":0},"legalFee":{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}],"default":0},"appraisalFee":{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}],"default":0},"otherFees":{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}],"default":0},"lenderIncentive":{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}],"default":0},"rollIn":{"type":"boolean","default":false}},"required":["prepaymentPenalty"],"additionalProperties":false},"plan":{"type":"object","properties":{"keepSamePayment":{"type":"boolean","default":false},"increasePayment":{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}],"default":0},"cashOut":{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}],"default":0},"paymentFrequency":{"type":"string","enum":["monthly","semi_monthly","biweekly","accelerated_biweekly","weekly","accelerated_weekly"]},"newNominalRatePercent":{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}]},"newAmortization":{"type":"object","properties":{"years":{"type":"integer","minimum":1,"maximum":40},"months":{"type":"integer","minimum":0,"maximum":11}},"required":["years","months"],"additionalProperties":false},"newTermMonths":{"type":"integer","minimum":12,"maximum":120},"explicitPayment":{"anyOf":[{"anyOf":[{"type":"number"},{"type":"string","pattern":"^-?\\d+(?:\\.\\d+)?$"}]},{"type":"null"}]},"startDateISO":{"anyOf":[{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}(?:T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?(?:Z|[+-]\\d{2}:\\d{2}))?$"},{"type":"null"}]}},"required":["paymentFrequency","newNominalRatePercent","newAmortization","newTermMonths"],"additionalProperties":false}},"required":["propertyValue","maxLtvPct","current","fees","plan"],"additionalProperties":false}}}}