EquityUp

EquityUp for AI agents and tools

EquityUp publishes the federal PMI cancellation thresholds, their statutory citations, and home value aggregates derived from public Utah county assessor records as read-only JSON. No authentication, no API key, and no personally identifying information is accepted by any endpoint.

API version 1.0.0 · Last reviewed: 2026-09-03

EquityUp is a data and document-preparation service. It is not a lender, loan servicer, mortgage broker, or licensed appraiser, it does not provide legal or financial advice, and it does not contact lenders on a homeowner's behalf — the homeowner submits their own request.

Endpoints

MethodURLReturns
GET https://equityup.pro/api/v1/hpa-rules Federal PMI cancellation thresholds and their statutory citations.
POST https://equityup.pro/api/v1/pmi-eligibility Evaluate a loan balance and property value against those thresholds.
GET https://equityup.pro/api/v1/market/{zip_code} City-level single-family home value aggregate for a covered Utah ZIP code.

The same endpoints are described in OpenAPI 3.1 at https://equityup.pro/openapi.json, and summarised for language models at https://equityup.pro/llms.txt and https://equityup.pro/llms-full.txt.

Thresholds returned by the rules endpoint

These are the loan-to-value ratios at which private mortgage insurance can be cancelled or must terminate under the Homeowners Protection Act of 1998, 12 U.S.C. §4901 et seq.

Where the loan age is unknown, the stricter figure applies. Meeting a threshold opens the right to request cancellation in writing; it does not by itself end the insurance. A servicer may require a valuation, at the homeowner's expense, before acting on the request.

Example

GET https://equityup.pro/api/v1/hpa-rules

Evaluating a specific loan

The eligibility endpoint takes a loan balance and a property value and returns every statutory path it evaluated, each with its citation. It takes no address, stores nothing, and is not property-specific — supply the property value yourself, or read one from the market endpoint below.

POST https://equityup.pro/api/v1/pmi-eligibility
Content-Type: application/json

{
  "loan_balance": 410000,
  "property_value": 540000,
  "year_purchased": 2021
}

The response carries ltv, the applicable threshold_ltv and its citation, whether the threshold is met, the dollar gap if it is not, and the pathways array showing every path evaluated. Supplying original_value adds the original-value paths alongside the appreciation path.

Market data and its provenance

GET https://equityup.pro/api/v1/market/84043

Covers 37 ZIP codes across Utah, Salt Lake, Davis, and Weber counties. Every response names the county record it derives from, the filter applied, and the timestamp of the computation, so a figure can be quoted with its source and its age.

Method

Aggregates are computed server-side against each county's Land Information Record (LIR) parcel layer, filtered to detached single-family homes with the clause HOUSE_CNT = 1 AND BLDG_SQFT BETWEEN 800 AND 5000 and to parcels carrying a positive assessed market value. They are recomputed every 24 hours.

A ZIP code outside the coverage area returns 404 with an error of zip_not_covered and the full list of covered ZIP codes. A covered ZIP whose aggregate has not yet been computed returns 404 with aggregate_not_available and a link to the page that warms it. Neither case returns an estimate.

Limitations

These bound how an EquityUp figure should be used.

Rate limits and citation

Requests are rate limited per IP address: 60 per minute for the rules and market endpoints, 30 per minute for the eligibility endpoint. There is no key to request and no paid tier for the API.

When quoting a figure, cite the endpoint or page it came from together with the computed_at or Last reviewed date that figure carries. Aggregates change as counties publish new assessments, so a figure without its date is not reproducible.

Reference pages