moneyfactscompare.co.uk APImoneyfactscompare.co.uk ↗
Access UK mortgage product data from moneyfactscompare.co.uk. Browse by category, search by loan amount and LTV, and retrieve rates, fees, and lender details.
curl -X GET 'https://api.parse.bot/scraper/618de6a9-7f5a-4f71-a274-f53a3e54d9d9/get_mortgage_products?category=moving-home' \ -H 'X-API-Key: $PARSE_API_KEY'
Get mortgage products for a specific category. Returns all products from the category's listing page with rate, fee, and term details.
| Param | Type | Description |
|---|---|---|
| category | string | The mortgage category to fetch. Accepted values: remortgage, moving-home, first-time-buyer, buy-to-let. |
{
"type": "object",
"fields": {
"category": "string — the category that was queried",
"products": "array of mortgage product objects with rate, lender, fee, and term details",
"total_products": "integer — count of products returned"
},
"sample": {
"data": {
"category": "remortgage",
"products": [
{
"id": "1228264_1276059_1182690_102_1248190_0",
"aprc": 6.3,
"rate": 4.14,
"max_ltv": 60,
"rate_type": "Variable",
"free_legal": false,
"description": "4.14% Variable (collared at 0.39%) for 2 years",
"lender_name": "Nationwide BS",
"product_fee": 999,
"revert_rate": 6.49,
"product_name": "Variable 4.14000",
"free_valuation": false,
"max_loan_amount": null,
"min_loan_amount": null,
"monthly_payment": 1124.75,
"fixed_term_years": 2,
"total_amount_payable": 413925.68,
"initial_period_months": 24,
"overpayment_allowance": null,
"early_repayment_charge": null
}
],
"total_products": 2248
},
"status": "success"
}
}About the moneyfactscompare.co.uk API
The Moneyfactscompare API exposes 4 endpoints for querying UK mortgage products, covering remortgage, first-time buyer, moving home, and buy-to-let categories. The get_mortgage_products endpoint returns full product listings per category including interest rates, lender names, product fees, and term details. Search filtering via search_mortgages accepts loan amount, property value, mortgage term, and buyer type as parameters.
What the API Covers
This API surfaces mortgage product data from moneyfactscompare.co.uk across four categories: remortgage, moving-home, first-time-buyer, and buy-to-let. Each product object includes the lender name, initial interest rate, rate type (Fixed or Variable), product/arrangement fee, maximum LTV ratio, and a full product description. The get_mortgage_categories endpoint returns the current list of supported categories so you can enumerate them programmatically without hardcoding values.
Browsing and Searching Products
get_mortgage_products accepts a category string and returns the full product listing for that category along with a total_products count. search_mortgages narrows results by accepting four optional parameters: amount (GBP borrow amount), value (property value in GBP), term (years as a numeric string), and buyer_type (e.g. First Time Buyer, Buy To Let). The response includes a search_params object echoing the criteria used, which is useful for logging or UI display.
Retrieving Individual Product Details
get_mortgage_product_details takes a product_id — obtained from the id field in get_mortgage_products or search_mortgages results — alongside a category and returns structured fields: rate, max_ltv, rate_type, description, lender_name, and product_fee. The product_fee and max_ltv fields may return null where the source data does not specify a value, so null-handling is required in consuming code.
Data Shape and Limitations
All monetary inputs to search_mortgages are passed as numeric strings (e.g. "250000"), not integers. The max_ltv field is a number (e.g. 75, 90) rather than a percentage string. Rate data reflects the initial interest rate only — reversion rates or overall cost for comparison (APRC) are not currently returned as discrete fields.
- Build a mortgage comparison table filtered by buyer type and LTV using
search_mortgages - Aggregate lender product counts across all four categories using
get_mortgage_products - Track changes in initial interest rates for fixed-rate remortgage products over time
- Identify the lowest product fees for a given loan-to-value band in the buy-to-let category
- Populate a mortgage eligibility tool by querying products for a given borrow amount and property value
- Alert users when new fixed-rate products appear in the first-time-buyer category
- Build a lender-focused dashboard grouping all available products by
lender_nameacross categories
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Moneyfactscompare have an official developer API?+
What does `get_mortgage_product_details` return beyond what the listing endpoint includes?+
get_mortgage_product_details returns the full description field — a plain-text product description — alongside structured fields like rate, rate_type, max_ltv, product_fee, and lender_name. The listing endpoint get_mortgage_products returns a similar field set but may truncate or omit the full description. Use the detail endpoint when you need the complete product narrative.Are APRC, reversion rates, or monthly repayment figures available?+
Does the search endpoint support pagination or return all matching results at once?+
search_mortgages endpoint returns all matching products in a single response along with a total count. There are no page or offset parameters currently supported. For large result sets, filtering by buyer_type, amount, and value together is the primary way to reduce the returned set. You can fork the API on Parse and revise it to add pagination parameters if needed.Can I filter products by rate type (Fixed vs Variable) within a category?+
rate_type field is returned per product in both get_mortgage_products and get_mortgage_product_details responses, but it is not currently an input filter parameter for either endpoint. Filtering by rate type must be done client-side after receiving the full product array. You can fork the API on Parse and revise it to add a rate_type filter parameter.