Building product data API

The hard data,
made queryable.

One REST API for building product specs that are currently trapped in PDFs, manufacturer websites, and phone calls. Windows, doors, insulation — structured and filterable.

before
// The old way
1. Google "Andersen 400 series specs"
2. Download 47-page PDF catalog
3. Find page 23, table 4
4. Copy values into spreadsheet
5. Repeat for 200 more products
6. Data is stale by next quarter

// Time: 3 days
// Accuracy: questionable
after
GET /v1/products?category=windows
    &manufacturer=andersen&max_u_value=0.30

{
  "data": [{
    "name": "Andersen 400 Series Casement",
    "u_value": 0.30,
    "shgc": 0.27,
    "frame_material": "Wood/Vinyl",
    "price_min_usd": 450
  }, ...]
}
products
manufacturers
categories
ENERGY STAR
How it works
01

We ingest the mess

Manufacturer catalogs, spec sheets, pricing tables, government databases. We crawl, parse, and structure data from sources that were never designed to be queried.

02

AI structures it

LLMs extract attributes, normalize units, reconcile conflicts, and produce clean, typed data. Every record traceable to its source document.

03

You query it

Clean REST API. Filterable by performance specs, material, price, certifications. Drop it into your construction software, procurement tool, AI agent, or estimating workflow.

API endpoints
Query parameters

Filter, search, and sort on /v1/products

q
Full-text search across names, descriptions, manufacturers
q=triple+pane+casement
category
Filter by product category
windows | doors | insulation
manufacturer
Partial match on manufacturer name
andersen, marvin, rockwool
subcategory
Product subcategory filter
casement, entry, spray-foam
max_u_value
Maximum thermal transmittance (W/m²K)
max_u_value=0.25
min_r_value
Minimum thermal resistance (m²K/W)
min_r_value=15
energy_star
ENERGY STAR certified products only
true | false
max_price
Maximum price range filter (USD)
max_price=1000
frame_material
Filter by frame material (partial match)
vinyl, fiberglass, wood, aluminum
glazing_type
Filter by glazing type
triple, double, laminated
sort / order
Sort by any field, asc or desc
sort=u_value&order=asc
page / limit
Pagination (max 100 per page)
page=2&limit=10
Try it live

Run a real query against the API

GET /v1/products
Click a preset above or build your own query...

Every industry has data that's hard to find. We make it queryable.

Substrata is the data infrastructure layer for industries the internet forgot to index. Starting with construction.

Explore the API →