Discover/Euroansa API
live

Euroansa APIeuroansa.it ↗

Retrieve Italian mortgage quotes from Euroansa's comparison tool. Get TAN/TAEG, monthly payments, bank names, fees, and eligibility data per product.

Endpoint health
verified 2h ago
get_mortgage_quotes
1/1 passing latest checkself-healing
Endpoints
1
Updated
2h ago

What is the Euroansa API?

The Euroansa API exposes a single endpoint, get_mortgage_quotes, that returns up to dozens of bank mortgage quote rows from Euroansa's Italian mutuo comparison tool. Each response includes per-product fields such as monthly payment, TAN/TAEG, spread, fees, eligibility age bounds, promotional flags, and product tags like GREEN or CONSAP — all filtered by loan amount, property value, purpose, rate type, duration, and borrower age bracket.

This call costs2 credits / call— charged only on success
Try it
Borrower age bracket: under 36 or over 36 (affects eligibility for under-36 products).
Mortgage duration in years, one of the site's duration options.
Requested loan amount in whole euros, digits only (e.g. 150000).
Purpose of the mortgage, as offered by the site's 'Finalità del mutuo' selector.
Rate type: fixed or variable.
Property value in whole euros, digits only (e.g. 200000).
→ api.parse.bot/scraper/8f887976-7405-4ae1-90be-eca9cfd28cf2/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/8f887976-7405-4ae1-90be-eca9cfd28cf2/get_mortgage_quotes?eta=under36&durata=30&importo=150000&finalita=Acquistoprimacasa&tipo_tasso=fisso&valore_immobile=200000' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace euroansa-it-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: Euroansa mortgage quote comparison — bounded, re-runnable."""
from parse_apis.euroansa_it_api import (
    Euroansa, Finalita, TipoTasso, Durata, Eta, InputFormatInvalid,
)

client = Euroansa()

# Compare fixed-rate first-home quotes: 150k loan on a 200k property, under-36 borrower.
for quote in client.quotes.search(
    importo="150000",
    valore_immobile="200000",
    finalita=Finalita.ACQUISTO_PRIMA_CASA,
    tipo_tasso=TipoTasso.FISSO,
    durata=Durata.ANNI_30,
    eta=Eta.UNDER_36,
    limit=5,
):
    print(f"{quote.bank} — {quote.product_name}: €{quote.monthly_payment}/mo, "
          f"TAN {quote.tan_pct}%, TAEG {quote.taeg_pct}%")

# Drill into the single cheapest fixed-rate quote (results arrive sorted by payment).
cheapest = client.quotes.search(
    importo="150000",
    valore_immobile="200000",
    tipo_tasso=TipoTasso.FISSO,
    limit=1,
).first()

if cheapest is not None:
    print(f"\nCheapest: {cheapest.product_name} by {cheapest.bank}")
    print(f"  Monthly: €{cheapest.monthly_payment}, Arrangement fee: €{cheapest.arrangement_fee}")
    print(f"  LTV range: {cheapest.ltv_min_pct}%–{cheapest.ltv_max_pct}%")
    if cheapest.tag:
        print(f"  Tag: {cheapest.tag}")
    if cheapest.regions:
        print(f"  Available in: {', '.join(cheapest.regions)}")
    if cheapest.existing_customers_only:
        print("  ⚠ Existing customers only")

# Demonstrate typed error handling for bad input (e.g. non-numeric loan amount).
try:
    client.quotes.search(importo="not_a_number", valore_immobile="200000", limit=1).first()
except InputFormatInvalid as e:
    print(f"\nExpected error for bad input: {e.message}")

print("\nexercised: quotes.search / InputFormatInvalid")
All endpoints · 1 totalmissing one? ·

Returns the mortgage quotes the Euroansa comparison page computes for the given input fields: loan amount, property value, purpose, fixed/variable rate, duration and borrower age bracket. One row per bank product, with monthly payment, TAN/TAEG, spread, fees and eligibility notes, sorted by ascending monthly payment. All quotes are returned in a single call (no pagination); a valid combination with no eligible product (e.g. a loan far above the property value) returns an empty quotes list. Monetary values are euros; percentages are plain numbers (2.95 = 2.95%). appraisal_fee is null when the site shows a range or 'Non Specificato' — the raw text is always in appraisal_fee_text.

Input
ParamTypeDescription
etastringBorrower age bracket: under 36 or over 36 (affects eligibility for under-36 products).
duratastringMortgage duration in years, one of the site's duration options.
importorequiredstringRequested loan amount in whole euros, digits only (e.g. 150000).
finalitastringPurpose of the mortgage, as offered by the site's 'Finalità del mutuo' selector.
tipo_tassostringRate type: fixed or variable.
valore_immobilerequiredstringProperty value in whole euros, digits only (e.g. 200000).
Response
{
  "type": "object",
  "fields": {
    "banks": "sorted list of bank names present in quotes",
    "quotes": "array of quote objects, ascending by monthly_payment",
    "request": "echo of the resolved inputs (importo, valore_immobile as integers; finalita, tipo_tasso, durata, eta)",
    "quotes[].tag": "product tag such as GREEN, CONSAP, GREEN+CONSAP, or null",
    "total_quotes": "number of quote rows returned",
    "quotes[].bank": "bank name",
    "quotes[].info": "product notes",
    "quotes[].promo": "true when flagged as a promotion",
    "quotes[].age_max": "maximum borrower age",
    "quotes[].age_min": "minimum borrower age or null",
    "quotes[].regions": "Italian regions where the product is available (empty = nationwide)",
    "quotes[].tan_pct": "nominal annual rate (TAN) in percent",
    "quotes[].taeg_pct": "effective annual rate (TAEG) in percent",
    "quotes[].index_pct": "reference index rate in percent (0 for pure fixed-rate promos)",
    "quotes[].rate_type": "Fisso or Variabile",
    "quotes[].index_date": "date of the reference index (YYYY-MM-DD) or null",
    "quotes[].product_id": "site product identifier (string)",
    "quotes[].spread_pct": "bank spread in percent",
    "quotes[].ltv_max_pct": "maximum loan-to-value percent for the product",
    "quotes[].ltv_min_pct": "minimum loan-to-value percent for the product",
    "quotes[].valid_until": "product validity end date (YYYY-MM-DD)",
    "quotes[].document_url": "link to the bank's information sheet or null",
    "quotes[].product_name": "customer-facing product name",
    "quotes[].appraisal_fee": "perizia fee in euros, null when the site gives a range or no value",
    "quotes[].brokerage_fee": "mediazione fee in euros",
    "quotes[].customer_info": "customer-facing notes (e.g. mandatory insurance) or null",
    "quotes[].duration_years": "requested duration in years",
    "quotes[].substitute_tax": "imposta sostitutiva in euros",
    "quotes[].arrangement_fee": "istruttoria fee in euros",
    "quotes[].monthly_payment": "monthly instalment in euros (number)",
    "quotes[].appraisal_fee_text": "raw perizia text as shown by the site",
    "quotes[].duration_max_years": "product maximum duration in years",
    "quotes[].duration_min_years": "product minimum duration in years",
    "quotes[].product_description": "additional description, may be empty",
    "quotes[].internal_product_name": "bank/internal product name",
    "quotes[].existing_customers_only": "true when the product is reserved to existing customers/members"
  },
  "sample": {
    "data": {
      "banks": [
        "BCC Altofonte e Caccamo",
        "BCC Binasco",
        "Unicredit"
      ],
      "quotes": [
        {
          "tag": "GREEN+CONSAP",
          "bank": "BdM BANCA",
          "info": "mutuo a tasso fisso per acquisto con garanzia consap per clienti prioritari solo per immobili green classe energetica A o superiore",
          "promo": false,
          "age_max": 80,
          "age_min": 18,
          "regions": [
            "abruzzo",
            "basilicata",
            "umbria"
          ],
          "tan_pct": 2.8,
          "taeg_pct": 2.95,
          "index_pct": 0,
          "rate_type": "Fisso",
          "index_date": null,
          "product_id": "124564",
          "spread_pct": 2.8,
          "ltv_max_pct": 80,
          "ltv_min_pct": 51,
          "valid_until": "2099-12-31",
          "document_url": null,
          "product_name": "Mutuo Tasso fisso, green, consap (soci)",
          "appraisal_fee": 225,
          "brokerage_fee": 0,
          "customer_info": "Per questo istituto è richiesta la copertura I/S obbligatoria",
          "duration_years": 30,
          "substitute_tax": 375,
          "arrangement_fee": 1500,
          "monthly_payment": 616.34,
          "appraisal_fee_text": "225",
          "duration_max_years": 30,
          "duration_min_years": 26,
          "product_description": "",
          "internal_product_name": "Mutuo Green Consap - Già Clienti-PROMO",
          "existing_customers_only": true
        }
      ],
      "request": {
        "eta": "under36",
        "durata": 30,
        "importo": 150000,
        "finalita": "Acquistoprimacasa",
        "tipo_tasso": "fisso",
        "valore_immobile": 200000
      },
      "total_quotes": 176
    },
    "status": "success"
  }
}

About the Euroansa API

What the API Returns

The get_mortgage_quotes endpoint accepts two required parameters — importo (loan amount in euros) and valore_immobile (property value in euros) — plus optional parameters for finalita (mortgage purpose), tipo_tasso (fixed or variable rate), durata (duration in years), and eta (borrower age bracket: under 36 or over 36). The response mirrors the inputs back via a request object so you can confirm exactly which values were resolved.

Quote Structure

Results arrive as an array of quotes objects sorted ascending by monthly_payment. Each quote carries bank name, monthly_payment, TAN/TAEG rates, spread, associated fees, and info notes describing product conditions. A tag field identifies special product categories such as GREEN, CONSAP, or GREEN+CONSAP (null when none apply). The promo boolean flags limited promotional offers. Borrower eligibility is bounded by age_min and age_max fields on each row.

Response Metadata

Alongside the quotes array, the response provides total_quotes (count of returned rows) and a banks list — a deduplicated, sorted array of bank names present in the result set. This lets you quickly scan which lenders appear without iterating every quote object.

Coverage Notes

Data reflects the product set available on Euroansa's Italian mutuo comparison page at query time. Quotes are specific to the Italian mortgage market. The eta parameter is particularly relevant when targeting under-36 products, which carry distinct eligibility rules and may include CONSAP guarantee options.

Reliability & maintenanceVerified

The Euroansa API is a managed, monitored endpoint for euroansa.it — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when euroansa.it changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official euroansa.it API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
2h ago
Latest check
1/1 endpoint passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Compare monthly payments across Italian banks for a given loan-to-value ratio
  • Filter mortgage products tagged GREEN or CONSAP for under-36 borrowers
  • Build a rate-watch tool that tracks TAN/TAEG changes for fixed vs. variable products
  • Identify promotional mortgage offers via the promo flag for client-facing dashboards
  • Aggregate the banks list to monitor which lenders are active on the Euroansa panel
  • Calculate affordability ranges by querying multiple importo values against a fixed valore_immobile
  • Surface age-restricted products by cross-referencing age_min/age_max with a borrower's profile
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Euroansa offer an official developer API?+
Euroansa does not publish a documented public developer API or API portal for their mortgage comparison tool. This Parse API provides structured access to the data their comparison page exposes.
What does the `tag` field on each quote represent?+
The tag field identifies special product categories associated with a quote. Possible values are GREEN (eco-friendly property incentives), CONSAP (state-backed guarantee scheme, common for under-36 borrowers), GREEN+CONSAP (both), or null when no special category applies.
Does the API return historical mortgage rate data or trends over time?+
Not currently. The API returns the live quote set for a single query at the time of the request — there is no historical dataset or time-series output. You can fork this API on Parse and revise it to store successive responses and build a trend layer.
Are quotes available for mortgage purposes beyond standard home purchase?+
The finalita parameter accepts values from Euroansa's own 'Finalità del mutuo' selector, which covers multiple mortgage purposes (e.g. purchase, renovation, liquidity). The specific accepted values mirror what the comparison tool itself offers. If the purpose you need isn't available, you can fork this API on Parse and revise it to accommodate additional purpose mappings.
What limitations should I be aware of with this data?+
Quotes reflect the Italian mortgage market only, scoped to lenders participating in Euroansa's comparison panel — not all Italian banks are necessarily included. Results depend on the inputs provided; edge-case combinations (very high LTV, unusual durations) may return fewer or no quotes. The total_quotes field tells you exactly how many rows came back for a given query.
Page content last updated . Spec covers 1 endpoint from euroansa.it.
Related APIs in FinanceSee all →