Skip to main content
The /api/v1/pricing/finance endpoint surfaces finance pricing context from the same finance_fees dataset that backs /api/v1/finance/fees, but returns data in a coverage-oriented shape designed for comparison and market research rather than direct quote calculation. The response wraps records in a coverage envelope that summarises filters, result counts, and the data source so callers can build dynamic lender-selection UIs, pricing dashboards, or CRM enrichment pipelines.
This endpoint is intended for pricing context and comparison. If you need quote-safe dealer-fee rows for use in a customer-facing proposal calculation, use GET /api/v1/finance/fees instead — it returns identical underlying records with stronger access guarantees and a leaner response shape optimised for quoting engines.

Endpoint

GET https://homeservicedata.com/api/v1/pricing/finance

Finance Pricing vs. Finance Fees

Both endpoints draw from the same finance_fees dataset and both require production access to it. The difference is in intent and response shape:
/pricing/finance/finance/fees
Primary use caseMarket comparison, CRM display, pre-quote researchQuote calculation, proposal builders
Response shape{ records, coverage } with filter summaryFlat data array
Default limit100 (max 500)1000 (max 5000)
Additional paramslimit configurable up to 500Same filters, higher cap
quote_safeAlways true (same source)Always true

Request

Headers

x-api-key
string
required
Your API key. Obtain or rotate keys in your dashboard.

Query Parameters

trade
string
Filter by trade category. Accepted values: solar, hvac, roofing, plumbing, electrical. Matched against trade_category (case-insensitive).
payment_type
string
Filter by payment product type (case-insensitive). Common values: loan, lease, ppa, cash. Matched against the payment_type field.
financier
string
Filter by financier slug (e.g. goodleap). Matched against the financier_slug field.
term_months
number
Exact term filter in months. Must be a finite number or the request returns a 400 error.
interest_rate
number
Exact interest rate filter as a decimal. Must be a finite number or the request returns a 400 error.
limit
integer
Maximum number of records to return. Defaults to 100; hard cap is 500.

Response

A successful response returns data.records (the pricing rows), data.coverage (a filter summary), and a usage block.

Response Fields

data.records
array
Array of finance pricing records. Each record is a quote-safe dealer-fee row from the finance_fees dataset. See /api/v1/finance/fees for the full field-level reference — every field in that response is present here.
data.coverage
object
Summary of the filters applied and result metadata.
usage
object
Request metering information.

Examples

curl -G https://homeservicedata.com/api/v1/pricing/finance \
  -H "x-api-key: YOUR_API_KEY" \
  --data-urlencode "trade=solar" \
  --data-urlencode "payment_type=loan" \
  --data-urlencode "limit=25"

Example Response

{
  "data": {
    "records": [
      {
        "finance_program_version_id": "c3d2e1f0-aaaa-bbbb-cccc-000000000001",
        "dealer_fee_version_id": "d4e3f2a1-bbbb-cccc-dddd-000000000002",
        "source_document_id": "src_abc123",
        "trade_category": "solar",
        "financier_name": "GoodLeap",
        "financier_slug": "goodleap",
        "product_title": "GoodLeap 2.99% 20yr",
        "payment_type": "loan",
        "integration": "enerflo",
        "interest_rate": 0.0299,
        "term_months": 240,
        "fee_percentage": 0.25,
        "effective_date": "2024-01-01",
        "expires_at": null,
        "last_verified_at": "2024-11-15T08:00:00.000Z",
        "quote_safe": true
      },
      {
        "finance_program_version_id": "e5f6a7b8-1111-2222-3333-444444444444",
        "dealer_fee_version_id": "f6a7b8c9-2222-3333-4444-555555555555",
        "source_document_id": "src_ghi321",
        "trade_category": "solar",
        "financier_name": "Mosaic",
        "financier_slug": "mosaic",
        "product_title": "Mosaic 3.99% 25yr",
        "payment_type": "loan",
        "integration": null,
        "interest_rate": 0.0399,
        "term_months": 300,
        "fee_percentage": 0.22,
        "effective_date": "2024-02-15",
        "expires_at": null,
        "last_verified_at": "2024-10-28T11:15:00.000Z",
        "quote_safe": true
      }
    ],
    "coverage": {
      "returned": 2,
      "source": "finance_fees",
      "trade": "solar",
      "quote_safe_only": true
    }
  },
  "usage": {
    "endpoint": "/api/v1/pricing/finance",
    "status_code": 200,
    "duration_ms": 39
  }
}

Error Reference

StatusCause
400term_months or interest_rate is not a finite number.
401Missing or invalid x-api-key header.
403Your key does not have production access to the finance_fees dataset.
500Internal server error — contact support if this persists.
Use this endpoint to build lender comparison tables or populate a “choose your financing” UI. When the customer selects a product, switch to GET /api/v1/finance/fees — filtering by financier and term_months — to retrieve the exact quote-safe dealer-fee row for calculation.