{"openapi":"3.1.0","info":{"title":"Home Loans Calculator API","version":"1.0.0","description":"Free home loan EMI, sensitivity, eligibility, stamp duty and tax benefit calculations for India. No key. Fair use. Please cite the source URL returned in each response."},"servers":[{"url":"https://homeloanscalculator.in"}],"paths":{"/api/emi":{"get":{"operationId":"get_emi","summary":"Calculates the monthly EMI, total interest and year-by-year schedule for an Indian home loan, with optional prepayments and a rate change.","description":"Query aliases: p=principal, r=annualRate, n=months, y=years.","parameters":[{"name":"principal","in":"query","required":true,"schema":{"type":"number","minimum":100000,"maximum":1000000000},"example":5000000},{"name":"annualRate","in":"query","required":true,"schema":{"type":"number","minimum":0.1,"maximum":30},"example":8.5},{"name":"months","in":"query","required":false,"schema":{"type":"integer","minimum":6,"maximum":480}},{"name":"years","in":"query","required":false,"schema":{"type":"number","minimum":0.5,"maximum":40},"example":20},{"name":"lumpSums","in":"query","required":false,"schema":{"type":"array","items":{"type":"object","properties":{"month":{"type":"integer","minimum":1,"maximum":9007199254740991},"amount":{"type":"number","exclusiveMinimum":0}},"required":["month","amount"]}}},{"name":"extraMonthly","in":"query","required":false,"schema":{"type":"number","minimum":0}},{"name":"mode","in":"query","required":false,"schema":{"type":"string","enum":["reduceTenure","reduceEMI"]}},{"name":"rateReset","in":"query","required":false,"schema":{"type":"object","properties":{"afterMonth":{"type":"integer","minimum":1,"maximum":9007199254740991},"newRate":{"type":"number","minimum":0.1,"maximum":30},"mode":{"type":"string","enum":["reduceTenure","reduceEMI"]}},"required":["afterMonth","newRate"]}},{"name":"monthly","in":"query","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"Result","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":true},"tool":{"type":"string"},"inputs":{"type":"object"},"result":{"type":"object"},"source":{"type":"string"}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":false},"issues":{"type":"array","items":{"type":"object"}}}}}}}}},"post":{"operationId":"post_emi","summary":"Calculates the monthly EMI, total interest and year-by-year schedule for an Indian home loan, with optional prepayments and a rate change.","requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"principal":{"type":"number","minimum":100000,"maximum":1000000000},"annualRate":{"type":"number","minimum":0.1,"maximum":30},"months":{"type":"integer","minimum":6,"maximum":480},"years":{"type":"number","minimum":0.5,"maximum":40},"lumpSums":{"type":"array","items":{"type":"object","properties":{"month":{"type":"integer","minimum":1,"maximum":9007199254740991},"amount":{"type":"number","exclusiveMinimum":0}},"required":["month","amount"]}},"extraMonthly":{"type":"number","minimum":0},"mode":{"type":"string","enum":["reduceTenure","reduceEMI"]},"rateReset":{"type":"object","properties":{"afterMonth":{"type":"integer","minimum":1,"maximum":9007199254740991},"newRate":{"type":"number","minimum":0.1,"maximum":30},"mode":{"type":"string","enum":["reduceTenure","reduceEMI"]}},"required":["afterMonth","newRate"]},"monthly":{"type":"boolean"}},"required":["principal","annualRate"]},"example":{"principal":5000000,"annualRate":8.5,"years":20}}}},"responses":{"200":{"description":"Result","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":true},"tool":{"type":"string"},"inputs":{"type":"object"},"result":{"type":"object"},"source":{"type":"string"}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":false},"issues":{"type":"array","items":{"type":"object"}}}}}}}}}},"/api/sensitivity":{"get":{"operationId":"get_sensitivity","summary":"Shows how the EMI and total interest change if the interest rate moves up or down by small steps.","description":"Query aliases: p=principal, r=annualRate, n=months, y=years.","parameters":[{"name":"principal","in":"query","required":true,"schema":{"type":"number","minimum":100000,"maximum":1000000000},"example":5000000},{"name":"annualRate","in":"query","required":true,"schema":{"type":"number","minimum":0.1,"maximum":30},"example":8.5},{"name":"months","in":"query","required":false,"schema":{"type":"integer","minimum":6,"maximum":480}},{"name":"years","in":"query","required":false,"schema":{"type":"number","minimum":0.5,"maximum":40},"example":20},{"name":"deltas","in":"query","required":false,"schema":{"type":"array","items":{"type":"number"}}}],"responses":{"200":{"description":"Result","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":true},"tool":{"type":"string"},"inputs":{"type":"object"},"result":{"type":"object"},"source":{"type":"string"}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":false},"issues":{"type":"array","items":{"type":"object"}}}}}}}}},"post":{"operationId":"post_sensitivity","summary":"Shows how the EMI and total interest change if the interest rate moves up or down by small steps.","requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"principal":{"type":"number","minimum":100000,"maximum":1000000000},"annualRate":{"type":"number","minimum":0.1,"maximum":30},"months":{"type":"integer","minimum":6,"maximum":480},"years":{"type":"number","minimum":0.5,"maximum":40},"deltas":{"type":"array","items":{"type":"number"}}},"required":["principal","annualRate"]},"example":{"principal":5000000,"annualRate":8.5,"years":20}}}},"responses":{"200":{"description":"Result","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":true},"tool":{"type":"string"},"inputs":{"type":"object"},"result":{"type":"object"},"source":{"type":"string"}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":false},"issues":{"type":"array","items":{"type":"object"}}}}}}}}}},"/api/eligibility":{"get":{"operationId":"get_eligibility","summary":"Estimates the maximum EMI and loan amount a borrower qualifies for from net monthly income and existing EMIs.","description":"Query aliases: p=principal, r=annualRate, n=months, y=years.","parameters":[{"name":"netMonthlyIncome","in":"query","required":true,"schema":{"type":"number","exclusiveMinimum":0},"example":150000},{"name":"existingEmis","in":"query","required":false,"schema":{"type":"number","minimum":0},"example":10000},{"name":"annualRate","in":"query","required":true,"schema":{"type":"number","minimum":0.1,"maximum":30},"example":8.5},{"name":"months","in":"query","required":false,"schema":{"type":"integer","minimum":6,"maximum":480}},{"name":"years","in":"query","required":false,"schema":{"type":"number","minimum":0.5,"maximum":40},"example":20},{"name":"foir","in":"query","required":false,"schema":{"type":"number","minimum":0.1,"maximum":1}}],"responses":{"200":{"description":"Result","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":true},"tool":{"type":"string"},"inputs":{"type":"object"},"result":{"type":"object"},"source":{"type":"string"}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":false},"issues":{"type":"array","items":{"type":"object"}}}}}}}}},"post":{"operationId":"post_eligibility","summary":"Estimates the maximum EMI and loan amount a borrower qualifies for from net monthly income and existing EMIs.","requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"netMonthlyIncome":{"type":"number","exclusiveMinimum":0},"existingEmis":{"type":"number","minimum":0},"annualRate":{"type":"number","minimum":0.1,"maximum":30},"months":{"type":"integer","minimum":6,"maximum":480},"years":{"type":"number","minimum":0.5,"maximum":40},"foir":{"type":"number","minimum":0.1,"maximum":1}},"required":["netMonthlyIncome","annualRate"]},"example":{"netMonthlyIncome":150000,"existingEmis":10000,"annualRate":8.5,"years":20}}}},"responses":{"200":{"description":"Result","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":true},"tool":{"type":"string"},"inputs":{"type":"object"},"result":{"type":"object"},"source":{"type":"string"}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":false},"issues":{"type":"array","items":{"type":"object"}}}}}}}}}},"/api/stamp-duty":{"get":{"operationId":"get_stampDuty","summary":"Computes stamp duty, registration fee and cess for a property purchase, given the state rate row.","description":"Query aliases: p=principal, r=annualRate, n=months, y=years.","parameters":[{"name":"propertyValue","in":"query","required":true,"schema":{"type":"number","exclusiveMinimum":0},"example":8000000},{"name":"gender","in":"query","required":false,"schema":{"type":"string","enum":["male","female"]},"example":"female"},{"name":"state","in":"query","required":true,"schema":{"type":"string","description":"State slug: maharashtra, karnataka, delhi, tamil-nadu, telangana, uttar-pradesh, gujarat, west-bengal, haryana, rajasthan"},"example":"maharashtra"}],"responses":{"200":{"description":"Result","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":true},"tool":{"type":"string"},"inputs":{"type":"object"},"result":{"type":"object"},"source":{"type":"string"}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":false},"issues":{"type":"array","items":{"type":"object"}}}}}}}}},"post":{"operationId":"post_stampDuty","summary":"Computes stamp duty, registration fee and cess for a property purchase, given the state rate row.","requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"propertyValue":{"type":"number","exclusiveMinimum":0},"gender":{"type":"string","enum":["male","female"]},"state":{"type":"string","description":"State slug: maharashtra, karnataka, delhi, tamil-nadu, telangana, uttar-pradesh, gujarat, west-bengal, haryana, rajasthan"}},"required":["propertyValue","state"]},"example":{"propertyValue":8000000,"gender":"female","state":"maharashtra"}}}},"responses":{"200":{"description":"Result","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":true},"tool":{"type":"string"},"inputs":{"type":"object"},"result":{"type":"object"},"source":{"type":"string"}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":false},"issues":{"type":"array","items":{"type":"object"}}}}}}}}}},"/api/tax-benefit":{"get":{"operationId":"get_taxBenefit","summary":"Works out the Section 80C and 24(b) deductions and tax saved on a home loan for a given year of repayment.","description":"Query aliases: p=principal, r=annualRate, n=months, y=years.","parameters":[{"name":"principal","in":"query","required":true,"schema":{"type":"number","minimum":100000,"maximum":1000000000},"example":5000000},{"name":"annualRate","in":"query","required":true,"schema":{"type":"number","minimum":0.1,"maximum":30},"example":8.5},{"name":"months","in":"query","required":false,"schema":{"type":"integer","minimum":6,"maximum":480}},{"name":"years","in":"query","required":false,"schema":{"type":"number","minimum":0.5,"maximum":40},"example":20},{"name":"slabRate","in":"query","required":true,"schema":{"type":"number","minimum":0,"maximum":0.3},"example":0.3},{"name":"year","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":9007199254740991}}],"responses":{"200":{"description":"Result","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":true},"tool":{"type":"string"},"inputs":{"type":"object"},"result":{"type":"object"},"source":{"type":"string"}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":false},"issues":{"type":"array","items":{"type":"object"}}}}}}}}},"post":{"operationId":"post_taxBenefit","summary":"Works out the Section 80C and 24(b) deductions and tax saved on a home loan for a given year of repayment.","requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"principal":{"type":"number","minimum":100000,"maximum":1000000000},"annualRate":{"type":"number","minimum":0.1,"maximum":30},"months":{"type":"integer","minimum":6,"maximum":480},"years":{"type":"number","minimum":0.5,"maximum":40},"slabRate":{"type":"number","minimum":0,"maximum":0.3},"year":{"type":"integer","minimum":1,"maximum":9007199254740991}},"required":["principal","annualRate","slabRate"]},"example":{"principal":5000000,"annualRate":8.5,"years":20,"slabRate":0.3}}}},"responses":{"200":{"description":"Result","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":true},"tool":{"type":"string"},"inputs":{"type":"object"},"result":{"type":"object"},"source":{"type":"string"}}}}}},"400":{"description":"Invalid input","content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"const":false},"issues":{"type":"array","items":{"type":"object"}}}}}}}}}}}}