Skip to main content
Home Service Data organizes every dataset into a data packet: a named, versioned collection of records that you can fetch via API, sync incrementally, and filter by quote-safe status. Packets belong to one of three domains — Finance, Equipment, or Context — and each packet is independently scoped, versioned, and reviewed. When you request access to the platform, you request access to specific packets at a specific level, not to a single monolithic database.

What Is a Data Packet?

A data packet is the primary unit of data delivery on Home Service Data. Each packet has:
  • A dataset key — a stable string identifier used in every API call (e.g., finance_fees)
  • A title and description — human-readable labels shown in the Data Catalog
  • A default endpoint — the primary API route that returns its records
  • A version — an incrementing number published each time the underlying records are reviewed and updated
  • A quote-safe count — the number of records in the current version that carry quote_safe: true
Every record in every packet carries a quote_safe boolean. You can filter your requests to return only quote-safe records, or receive the full set and filter in your application. See Quote-Safe Data for the full rules.

Available Dataset Keys

The table below lists every packet currently available. Use the dataset key exactly as shown when calling API endpoints or the SDK.
Dataset KeyTitleDescription
finance_feesFinance Fee RecordsApproved current dealer-fee and finance-program rows used by quote tools
finance_productsFinance Product ContextLender and program quick-fact context kept separate from quote-safe dealer-fee tables
finance_eligibilityFinance Eligibility RecordsScoped lender/PACE eligible-product records with permit, term, and quote-safe review state
equipment_pricingEquipment Price ObservationsPublished equipment and service price observations with source kind, confidence, and quote-safe flags
utility_territoryUtility TerritoryUtility providers and service territory context for resolver and market workflows
electricity_ratesElectricity Rate ContextRegional EIA/context electricity averages for market analysis, not tariff truth
hvac_incentivesHVAC IncentivesProgram-level HVAC incentive records with source and review state
hvac_climateHVAC Climate ContextCounty climate and weather-normal context for HVAC assumptions
hvac_laborHVAC Labor AddersLabor and material adder context with source basis and review state
hvac_ahri_matchesHVAC AHRI Match ContextAHRI/ENERGY STAR matched-system records with license and quote-safe gates
Dataset keys are stable across API versions. If a packet is renamed or deprecated, Home Service Data publishes a migration notice before removing the old key.

Domains

Packets are grouped into three logical domains based on their subject matter and how they are typically used in quoting and workflow systems.

Finance

Dealer fees, lender programs, and eligibility rules — the packets you reach for when building a payment calculator or qualifying a customer for financing.

Equipment

Observed equipment prices across solar, HVAC, roofing, plumbing, and electrical — sourced from distributor and market price observations.

Context

Supporting data that enriches quotes — utility territory, electricity rates, HVAC incentives, climate zones, labor adders, and AHRI system matches.

All Trades

Most packets carry a trade_category field. Filter any request to a specific trade: solar, hvac, roofing, plumbing, or electrical.

Finance Domain

The Finance domain covers three packets that together give you the data needed to present financing options to a customer.
Endpoint: /api/v1/finance/feesThe finance_fees packet contains the approved, current dealer-fee and finance-program rows that your quoting tool can use directly to calculate monthly payments. Each record includes the financier name, product title, payment type, interest rate, term in months, fee percentage, and effective/expiry dates. Only rows that have passed lender verification carry quote_safe: true.Key fields: financier_name, product_title, payment_type, interest_rate, term_months, fee_percentage, effective_date, expires_at, last_verified_at, quote_safe
Endpoint: /api/v1/context/finance-productsThe finance_products packet holds lender and program quick-fact context that supplements the fee records. It includes APR ranges, loan amount bounds, term ranges, eligible and ineligible measures, and dealer fee structures. These records are context-quality — most carry quote_safe: false because they describe program parameters rather than verified installable rates.Key fields: financier_name, product_name, product_type, state_scope, loan_amount_min, loan_amount_max, apr_min, apr_max, dealer_fee_type, quote_safe, confidence
Endpoint: /api/v1/context/finance-eligibilityThe finance_eligibility packet contains scoped lender and PACE eligible-product records that define where and for what measures a program applies. Records include state and county scope, eligibility criteria, permit requirements, and maximum term. Quote-safe rows have passed review against the source document; context-only rows are informational.Key fields: financier_name, program_name, program_type, trade_category, measure_key, criteria_scope, state_code, county_name, permit_required, max_term_years, quote_safe, confidence

Equipment Domain

Endpoint: /api/v1/context/pricingThe equipment_pricing packet captures observed prices for equipment and services across all supported trades. Records include manufacturer, model number, tonnage, SEER2/HSPF2 ratings, refrigerant type, and price range observations (low, mid, high). The price_kind field distinguishes distributor prices from market observations. Quote-safe rows have a verified source and confidence score.Key fields: trade_category, equipment_category, manufacturer, model_number, product_type, observed_price, observed_price_low, observed_price_high, price_kind, source_kind, quote_safe, confidence

Context Domain

Endpoint: /api/v1/context/utility-territoryUtility provider and service territory records keyed by state, county, city, and ZIP. Used by the utility resolver to map a customer address to their utility provider. Records include coverage level, resolution priority, and geometry status. This packet underpins solar savings calculations and electricity-rate lookups.Key fields: state_code, county_name, city_name, zip_code, coverage_level, resolution_priority, quote_safe, confidence
Endpoint: /api/v1/context/electricity-ratesRegional EIA-sourced electricity averages by state and region, expressed in cents per kWh and USD per kWh across residential, commercial, industrial, and transportation sectors. These are market-analysis averages, not individual tariff schedules. Most records are context-quality (quote_safe: false).Key fields: state_code, region_name, data_year, residential_cents_per_kwh, commercial_cents_per_kwh, residential_usd_per_kwh, total_usd_per_kwh
Endpoint: /api/v1/context/incentivesProgram-level HVAC incentive records covering federal, state, and utility authority types. Includes effective and expiry dates, stacking rules, and review state. Quote-safe rows carry a verified source URL and passing confidence score.Key fields: program_name, authority, authority_type, program_type, trade_category, effective_date, expires_at, stacking_rules, quote_safe, confidence
Endpoint: /api/v1/context/climateCounty-level climate and weather-normal data for HVAC load calculations. Includes IECC climate zone, Building America region, heating/cooling degree-days, and design temperature extremes. Records are reference data and are typically context-only.Key fields: state_code, county_name, county_fips, iecc_climate_zone, building_america_region, hdd_65, cdd_65, design_heating_temp_f, design_cooling_temp_f, quote_safe
Endpoint: /api/v1/context/labor-addersLabor and material adder catalog with cost ranges and labor hour estimates per adder type. Records include the adder group, unit of measure, amount type, cost low/high, and labor hours low/high. Quote-safe rows have a documented source basis.Key fields: trade_category, adder_key, adder_label, adder_group, unit, amount_type, cost_low, cost_high, labor_hours_low, labor_hours_high, source_basis, quote_safe
Endpoint: /api/v1/context/ahri-matchesAHRI and ENERGY STAR matched-system records pairing outdoor and indoor units with certified efficiency ratings. Records include SEER2, EER2, HSPF2, and heating capacity at multiple temperature points. AHRI records require a license entitlement before they become quote-safe. See Quote-Safe Data for the AHRI gate.Key fields: ahri_reference_number, outdoor_unit_brand_name, outdoor_unit_model_number, indoor_unit_brand_name, indoor_unit_model_number, seer2_rating, hspf2_rating, cooling_capacity_btu_h, exact_match, quote_safe

Access Scoping Per Packet

Your account’s entitlement determines the maximum access level you can reach across all packets. Within that ceiling, each API key you create can be narrowed to a lower level. This means you can issue a sandbox-scoped key for development environments even if your account holds production entitlement. When you make a request, the platform resolves access by comparing the key’s scope against your account entitlement and applies the lower of the two. If a packet requires a higher level than your key or entitlement allows, the request is rejected with an authorization error.
The Data Catalog in your dashboard shows the current access level and quote-safe coverage for each packet. Use it to verify entitlement before integrating a new packet into your quoting workflow.
For the full breakdown of levels and what each unlocks, see API Access Levels.