Mortgage rates
Fixed and floating rates, grouped by institution and product. Filter by mortgage term.
/api/v1/mortgage-ratesNew Zealand lending data
Add New Zealand mortgage, loan, and credit card rates to your app with one free JSON API. Build comparisons, calculators, and agents without maintaining your own scrapers.
curl --fail-with-body 'https://www.ratesapi.nz/api/v1/mortgage-rates?termInMonths=12'Standard HTTP and JSON. Works with fetch, your backend, or a notebook.
{
"type": "MortgageRates",
"data": [
{
"id": "institution:anz",
"name": "ANZ",
"products": [
{
"id": "product:anz:special",
"name": "Special",
"rates": [
{
"id": "rate:anz:special:1-year",
"rate": 4.99,
"term": "1 year",
"termInMonths": 12
}
]
}
]
}
],
"lastUpdated": "2026-09-24T04:19:31.911Z",
"termsOfUse": "Data is retrieved hourly from interest.co.nz. Please note that the information provided is not guaranteed to be accurate. For the most up-to-date and accurate rates, please check with the provider directly.",
"timestamp": "2026-09-24T05:41:12.125Z"
}Illustrative 1-year mortgage data. Run a request for the selected term’s latest available rates.
Four datasets. One integration.
Start with a category. Every family has endpoints for the latest data, a single provider, and historical snapshots.
Fixed and floating rates, grouped by institution and product. Filter by mortgage term.
/api/v1/mortgage-ratesSecured and unsecured lending products, with rate conditions alongside each offer.
/api/v1/personal-loan-ratesVehicle finance rates and conditions, organised by institution and product.
/api/v1/car-loan-ratesPurchase rates, cash advances, fees, and balance transfer offers, grouped by issuer.
/api/v1/credit-card-ratesRates API is a free JSON API for New Zealand lending rates. It covers 36 mortgage lenders, 39 personal loan lenders, 32 car loan lenders and 33 credit card issuers. It checks interest.co.nz every hour, has kept a daily history since 8 March 2025, and needs no account or API key.
Base URL https://www.ratesapi.nzJSON responses · Browser CORS enabled
Try it with real data.
Everything below is loaded from the API in your browser. Filter and sort the latest rows, spot the lowest rate in each set, and see how rates have moved over the past year.
Example views below use illustrative data, not current offers.
Lender and issuer IDs sit above the products, which keeps bank comparisons straightforward.
Institution and product IDs ->History is stored as snapshots, so a chart or audit can ask what the API returned on a specific date.
Time-series docs ->Use the IDs returned by the API to fetch one institution or filter its history. Product names and availability can change.
Institution and product IDs ->For developers. And their agents.
Give your assistant a structured way to retrieve lending rates. The public MCP endpoint supports tool discovery and calls for current and historical data.
Read the MCP integration guidecurl --fail-with-body https://www.ratesapi.nz/api/v1/mcp \
-H 'Content-Type: application/json' \
-H 'MCP-Protocol-Version: 2026-07-28' \
-H 'Mcp-Method: tools/call' \
-H 'Mcp-Name: list_mortgage_rates' \
-d '{
"jsonrpc": "2.0",
"id": "rates-1",
"method": "tools/call",
"params": {
"name": "list_mortgage_rates",
"arguments": { "termInMonths": "12" },
"_meta": {
"io.modelcontextprotocol/protocolVersion": "2026-07-28",
"io.modelcontextprotocol/clientCapabilities": {}
}
}
}'Call tools/list to discover available tools.
Collection from interest.co.nz is scheduled hourly. Check each dataset’s lastUpdated value before displaying rates; a healthy service does not guarantee fresh data.
Check dataset freshness ->The project is MIT licensed and built with TypeScript, Bun, Elysia, Cloudflare Workers, and Cloudflare D1. Local setup, deployment, and monitoring notes live with the source.
Open GitHub repository ->lastUpdated and confirm rates and eligibility with the provider before relying on an offer. Read about the data source and its limits.fetch or any HTTP client. Check HTTP status codes, handle unavailable data, and cache responses where appropriate./time-series to a category route. Use date for one day, or startDate and endDate together for a range. Responses include availableDates; coverage depends on stored snapshots. See a mortgage history example.