{"openapi":"3.1.0","info":{"title":"U-Value & R-Value API","version":"1.0.0","description":"Building-fabric thermal maths — U-value, R-value and heat loss — as an API, computed locally and deterministically. The rvalue endpoint takes a wall, roof or floor build-up as a list of layers (each given as a thickness and a thermal conductivity, or a thickness and a named material from a built-in table, or a direct R-value) and adds the interior and exterior surface resistances to return the total thermal resistance R = Rsi + ΣR_layer + Rse and the thermal transmittance U = 1/R, in both metric (RSI, m²K/W and W/m²K) and imperial (R-value) units, with a per-layer breakdown. The layer endpoint gives the R-value of a single material from its thickness and conductivity, R = thickness/conductivity, and solves for whichever of the three you leave out, with conductivities for concrete, brick, timber, plasterboard, mineral wool, EPS, XPS, PIR and more. The heatloss endpoint computes the steady-state heat loss through an element, Q = U·A·ΔT, in watts, BTU per hour and kWh per day from a U-value (or R-value), an area and a temperature difference (direct or as indoor minus outdoor), and an annual figure from heating degree days. Everything is computed locally and deterministically, so it is instant and private. Ideal for building-energy and retrofit tools, architecture and construction apps, insulation and SAP/Passivhaus calculators, and energy-assessment software. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is building-fabric thermal performance; for rule-of-thumb HVAC equipment sizing use an HVAC API.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/uvalue-api","description":"oanor gateway"}],"tags":[{"name":"Thermal"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/heatloss":{"get":{"operationId":"get_v1_heatloss","tags":["Thermal"],"summary":"Steady-state heat loss","description":"","parameters":[{"name":"u_value","in":"query","required":false,"description":"U-value (W/m²K)","schema":{"type":"string"},"example":"0.31"},{"name":"r_value","in":"query","required":false,"description":"Or R-value (m²K/W)","schema":{"type":"string"}},{"name":"area","in":"query","required":true,"description":"Element area (m²)","schema":{"type":"string"},"example":"20"},{"name":"delta_t","in":"query","required":false,"description":"Temperature difference (K)","schema":{"type":"string"},"example":"20"},{"name":"indoor_temperature","in":"query","required":false,"description":"Or indoor temperature (°C)","schema":{"type":"string"}},{"name":"outdoor_temperature","in":"query","required":false,"description":"And outdoor temperature (°C)","schema":{"type":"string"}},{"name":"heating_degree_days","in":"query","required":false,"description":"Heating degree days for annual energy","schema":{"type":"string"}}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"area_m2":20,"formula":"Q = U · A · ΔT.","delta_t_k":20,"heat_loss_w":124,"u_value_w_m2k":0.31,"heat_loss_btu_h":423.1056,"heat_loss_kwh_day":2.976},"meta":{"timestamp":"2026-06-04T10:18:50.384Z","request_id":"5f14415c-13b3-444c-9ea6-666c19f420cf"},"status":"ok","message":"Steady-state heat loss","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/layer":{"get":{"operationId":"get_v1_layer","tags":["Thermal"],"summary":"Single-material R-value","description":"","parameters":[{"name":"material","in":"query","required":false,"description":"Material name (e.g. mineral_wool)","schema":{"type":"string"},"example":"mineral_wool"},{"name":"conductivity","in":"query","required":false,"description":"Or conductivity (W/m·K)","schema":{"type":"string"}},{"name":"thickness","in":"query","required":false,"description":"Thickness (m)","schema":{"type":"string"},"example":"0.1"},{"name":"r","in":"query","required":false,"description":"Or a known R-value to solve thickness/conductivity","schema":{"type":"string"}}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"formula":"R = thickness / conductivity.","material":"mineral_wool","thickness_m":0.1,"u_value_w_m2k":0.35,"r_value_imperial":16.22361,"conductivity_w_mk":0.035,"r_value_rsi_m2k_w":2.857143},"meta":{"timestamp":"2026-06-04T10:18:50.493Z","request_id":"2ff30a82-0692-4ee5-bd7e-196b02ca0987"},"status":"ok","message":"Single-material R-value","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/rvalue":{"get":{"operationId":"get_v1_rvalue","tags":["Thermal"],"summary":"Assembly R-value & U-value","description":"","parameters":[{"name":"layers","in":"query","required":true,"description":"JSON array of {thickness,material|conductivity} or {r}","schema":{"type":"string"},"example":"[{\"thickness\":0.1,\"material\":\"mineral_wool\"}]"},{"name":"rsi","in":"query","required":false,"description":"Interior surface resistance (default 0.13)","schema":{"type":"string"}},{"name":"rse","in":"query","required":false,"description":"Exterior surface resistance (default 0.04)","schema":{"type":"string"}},{"name":"include_surfaces","in":"query","required":false,"description":"Include surface resistances (default true)","schema":{"type":"string"},"example":"true"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"layers":[{"index":0,"r_value":2.857143,"material":"mineral_wool","thickness_m":0.1,"conductivity_w_mk":0.035}],"formula":"R_total = Rsi + ΣR_layer + Rse; U = 1/R_total; R_layer = thickness/conductivity.","layer_count":1,"u_value_w_m2k":0.330344,"r_value_imperial":17.188915,"layers_resistance":2.857143,"r_value_rsi_m2k_w":3.027143,"exterior_surface_resistance_rse":0.04,"interior_surface_resistance_rsi":0.13},"meta":{"timestamp":"2026-06-04T10:18:50.590Z","request_id":"eca16a73-744b-473e-a98e-66265e3467f3"},"status":"ok","message":"Assembly R-value & U-value","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Spec","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"api":"uvalue","note":"U-value / R-value building-fabric thermal maths — computed locally and deterministically, no key, no third-party service.","defaults":{"rse":0.04,"rsi":0.13},"endpoints":["/v1/rvalue","/v1/layer","/v1/heatloss","/v1/meta"],"materials":["concrete","reinforced_concrete","aerated_concrete","brick","brickwork","stone","sandstone","timber","softwood","hardwood","plywood","osb","plasterboard","gypsum","plaster","render","screed","mineral_wool","glass_wool","rock_wool","sheeps_wool","eps","xps","pir","pur","phenolic","cellulose","wood_fibre","cork","glass","steel","aluminium","plasterboard_foil"]},"meta":{"timestamp":"2026-06-04T10:18:50.683Z","request_id":"066fd9a0-3d00-4146-b43b-e606bff262b0"},"status":"ok","message":"Meta","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":2000,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":900,"monthly_call_quota":15000,"rps_limit":6,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":2400,"monthly_call_quota":80000,"rps_limit":15,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":6900,"monthly_call_quota":400000,"rps_limit":40,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/uvalue-api"}