DATPAQ Mortgage Calculator API
Mortgage payment, refinance break-even, and current mortgage rates
Mortgage payment, refinance break-even, and current mortgage rates
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/datpaq-com:datpaq-com-mortgage-calculator-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Datpaq Com Mortgage Calculator API
version: 1.1.0
contact:
name: Datpaq Support
url: https://datpaq.com
license:
name: Proprietary
description: 'Operations tagged Mortgage Calculator across 2 of this provider''s published API definitions: datpaq-com.yaml, datpaq-com-openapi.yaml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
security:
- ApiKeyHeader: []
- ApiKeyQuery: []
tags:
- name: Mortgage Calculator
description: Mortgage payment, refinance break-even, and current mortgage rates
paths:
/mortgage-calculator/payment:
get:
tags:
- Mortgage Calculator
operationId: mortgageCalculatorPayment
summary: Calculate monthly payment, total interest, and optional amortization
parameters:
- name: interest_rate
in: query
required: true
description: Annual percentage rate
schema:
type: number
example: 6.5
- name: loan_amount
in: query
required: false
description: Loan principal (or pass --home-value and --downpayment)
schema:
type: number
example: 350000
- name: home_value
in: query
required: false
description: Home value, used with --downpayment
schema:
type: number
example: 400000
- name: downpayment
in: query
required: false
description: Down payment, less than --home-value
schema:
type: number
example: 50000
- name: duration_years
in: query
required: false
description: Loan term in years (default 30)
schema:
type: number
example: 30
- name: monthly_extra_payment
in: query
required: false
description: Additional monthly principal payment
schema:
type: number
example: 200
- name: monthly_hoa
in: query
required: false
description: Monthly HOA amount
schema:
type: number
example: 150
- name: annual_property_tax
in: query
required: false
description: Annual property tax
schema:
type: number
example: 4800
- name: annual_home_insurance
in: query
required: false
description: Annual home insurance
schema:
type: number
example: 1200
- name: includeSchedule
in: query
required: false
description: Include an amortization schedule
schema:
type: boolean
example: true
- name: start_date
in: query
required: false
description: Schedule start date (YYYY-MM-DD)
schema:
type: string
example: '2026-01-01'
- name: annual_appreciation_rate
in: query
required: false
description: Annual home appreciation percentage (-100 to 100)
schema:
type: number
example: 3
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccess'
example:
success: true
data:
monthly_loan_payment: 2528.27
monthly_escrow_estimate: 0
total_monthly_payment: 2528.27
total_interest_paid: 510177.95
total_loan_cost: 910177.95
early_payoff_months_saved: 0
interest_savings_with_extra_payment: 0
correlationId: 1784510786787-bt029igzs
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
/mortgage-calculator/refinance:
get:
tags:
- Mortgage Calculator
operationId: mortgageCalculatorRefinance
summary: Simulate a refinance and its break-even point
parameters:
- name: current_loan_amount
in: query
required: true
description: Current loan balance
schema:
type: number
example: 280000
- name: current_interest_rate
in: query
required: true
description: Current annual rate
schema:
type: number
example: 7
- name: current_remaining_years
in: query
required: true
description: Current remaining term in years
schema:
type: number
example: 25
- name: new_interest_rate
in: query
required: true
description: Proposed annual rate
schema:
type: number
example: 5.75
- name: new_duration_years
in: query
required: true
description: Proposed term in years
schema:
type: number
example: 25
- name: refinance_cost
in: query
required: false
description: Refinance closing cost
schema:
type: number
example: 5000
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccess'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
/mortgage-calculator/current-rates:
get:
tags:
- Mortgage Calculator
operationId: mortgageCalculatorCurrentRates
summary: Get weekly average mortgage rates from FRED
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccess'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
components:
schemas:
ErrorResponse:
type: object
properties:
error:
type: string
description: Human-readable error message
example: Invalid API key
correlationId:
type: string
description: Request tracking identifier for support
example: abc123-def456-789ghi
service:
type: string
description: Service name that produced the error
example: ip-geolocation
GenericSuccess:
type: object
description: Standard success envelope. The data property structure varies by endpoint.
properties:
correlationId:
type: string
description: Request tracking identifier
example: abc123-def456
data:
type: object
description: Response payload (structure varies by endpoint)
cached:
type: boolean
description: Whether the response was served from cache
example: false
responses:
BadRequest:
description: Bad request — missing or invalid parameters
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
RateLimited:
description: Rate limit exceeded — retry after the indicated period
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
ServiceUnavailable:
description: Service temporarily unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
Unauthorized:
description: Unauthorized — missing or invalid API key
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
securitySchemes:
ApiKeyHeader:
type: apiKey
in: header
name: x-api-key
description: API key passed via x-api-key request header
ApiKeyQuery:
type: apiKey
in: query
name: api_key
description: API key passed as api_key query parameter
x-refined-from:
- datpaq-com.yaml
- datpaq-com-openapi.yaml