API · /ventilation-api

Ventilation & Airflow API

healthy 3,404 Subscribers

Ventilation and airflow maths as an API, computed locally and deterministically. The air-changes endpoint relates the air changes per hour, the airflow in CFM and the room volume — ACH = CFM × 60 ÷ volume — and solves whichever you leave out (the volume can be given directly or as length × width × height), reporting the airflow in cubic metres per hour too. The required-cfm endpoint applies the ASHRAE 62.1 breathing-zone rule, outdoor airflow = people × Rp + floor area × Ra, with sensible office defaults (5 CFM per person and 0.06 CFM per square foot), to size the fresh-air a space needs. The duct-velocity endpoint computes the air velocity in a round or rectangular duct from the flow and the duct size, V = CFM ÷ area, in feet per minute, metres per second and miles per hour, with guidance on whether it is in the quiet residential or noisier high-velocity range. Everything is computed locally and deterministically, so it is instant and private. Ideal for HVAC, building-services, indoor-air-quality and facilities app developers, ventilation-sizing and duct-design tools, and engineering education. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is ventilation and airflow; for heating and cooling load sizing use an HVAC API.

api.oanor.com/ventilation-api
Get an API key Try in playground → Contact provider

Machine-readable spec so AI agents can integrate this API.

/api/ventilation-api/openapi.json
/api/ventilation-api/llms.txt

Discovery: GET /api/index.json lists every API.

API health

healthy
Uptime
100.00%
Server probes · 24h
Avg latency
92 ms
Server probes · 24h
Subscribers
3,404
active
Total calls
28
last 7 days
status Full status page → · 20 probes/24h

Pricing

Pick a tier — billed monthly, cancel anytime.

Free

Free

  • 2,000 calls / month
  • 2 requests / second
  • Hard cap (429 above quota, no overage)
  • Air changes per hour (ACH) ↔ CFM conversion
  • Room volume from dimensions
  • Deterministic, instant results
  • 2,000 calls/month
Sign in to subscribe

Starter

€9.00 /month

  • 30,000 calls / month
  • 5 requests / second
  • Hard cap (429 above quota, no overage)
  • Full ACH / CFM / duct-velocity endpoints
  • Required airflow for target ACH
  • Metric and imperial units
  • 30,000 calls/month
Sign in to subscribe

Pro

€24.00 /month

  • 150,000 calls / month
  • 15 requests / second
  • Hard cap (429 above quota, no overage)
  • Duct sizing and friction-loss maths
  • Batch room and zone calculations
  • Higher 15 rps throughput
  • 150,000 calls/month
Sign in to subscribe

Mega

€69.00 /month

  • 750,000 calls / month
  • 40 requests / second
  • Hard cap (429 above quota, no overage)
  • Highest volume for HVAC platforms
  • All ventilation and airflow endpoints
  • Priority 40 rps throughput
  • 750,000 calls/month
Sign in to subscribe

Built by

Related APIs

Other APIs with overlapping tags.

Propane & LPG Tank API

Propane and LPG tank maths as an API, computed locally and deterministically — the usable-fill, energy and burn-time numbers a homeowner, RV-er, grill-master or HVAC tech works out at the tank. The tank endpoint turns a tank size into real numbers: liquid propane is 4.24 lb per gallon and holds 91,452 BTU per gallon (about 21,569 BTU per pound), so a 20 lb barbecue cylinder carries roughly 4.7 gallons and 431,000 BTU. It knows the two ways tanks are sized — a portable cylinder (20, 30, 40 lb) is rated by the propane weight it holds, while a bulk tank (100, 250, 500, 1000 gal) is filled to only 80 % of its water capacity to leave room for expansion, so a 500-gallon tank actually holds 400 gallons of propane and about 36.6 million BTU. The burntime endpoint divides that energy by an appliance’s BTU-per-hour input rating to give run time: that same 20 lb cylinder runs a 30,000 BTU/hr patio heater about 14 hours, and an optional hours-per-day turns it into days. The refill endpoint costs a fill from a price per gallon, gives the cost per 100,000 BTU so you can compare propane to natural gas or electricity, and — with an appliance rating — the running cost per hour. Everything is computed locally and deterministically, so it is instant and private. Ideal for home-energy, HVAC, RV, off-grid, grilling and outdoor-living app developers, fuel-cost and tank-monitor tools, and propane-delivery calculators. Pure local computation — no key, no third-party service, instant. US units. Live, nothing stored. 3 compute endpoints. For vehicle fuel economy or the ideal gas law use a different API.

api.oanor.com/propane-api

Psychrometric Air API

Moist-air (psychrometric) thermodynamics as an API, computed locally and deterministically. The dewpoint endpoint computes the dew-point temperature and the saturation and actual water-vapour pressures from a dry-bulb temperature and relative humidity, using the Magnus-Tetens relation over water, es = 6.112·exp(17.62·T/(243.12+T)) hPa — the dew point is the temperature to which air must cool for water vapour to start condensing. The humidity-ratio endpoint computes the humidity ratio (mixing ratio) W = 0.621945·Pw/(P−Pw), the specific and absolute humidity, the vapour pressure and the moist-air enthalpy h = 1.006·T + W·(2501 + 1.86·T) kJ per kg of dry air, at any total pressure (default sea-level 101325 Pa). The wet-bulb endpoint computes the wet-bulb temperature with the Stull (2011) empirical fit and the wet-bulb depression, the gap between dry- and wet-bulb that widens as the air gets drier. Temperatures are in °C, relative humidity in %, pressures in Pa. Everything is computed locally and deterministically, so it is instant and private. Ideal for HVAC, building-physics, meteorology, drying, greenhouse and data-centre-cooling app developers, comfort and condensation-risk tools, and engineering education. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is moist-air psychrometrics; for ASHRAE ventilation airflow use a ventilation API, for the WBGT heat-stress index a WBGT API and for the standard atmosphere an atmosphere API.

api.oanor.com/psychrometric-api

Degree Day API

Heating and cooling degree-day maths as an API, computed locally and deterministically. The daily endpoint computes the heating degree days, HDD = max(0, base − mean), and the cooling degree days, CDD = max(0, mean − base), for a single day from a base temperature and the daily mean — or the minimum and maximum, since the mean is taken as their average. The period endpoint sums the degree days over a list of daily temperatures (means or min/max pairs), returning the total HDD and CDD, the count of heating and cooling days and the average temperature — the standard way to characterise a heating or cooling season. The energy endpoint turns degree days into an energy estimate: the heat delivered is UA·DD·24/1000 kWh from the building heat-loss coefficient, the fuel or electricity input is that divided by the boiler efficiency (or a heat-pump COP), and — with an energy price — the cost. Everything is computed locally and deterministically, so it is instant and private. Ideal for building-energy, HVAC and facilities tools, heating-bill and fuel-budget estimation, weather-normalisation and energy-benchmarking apps, and engineering education. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is degree-day demand estimation; for U-value and heat-loss fabric calculations use a U-value API.

api.oanor.com/degreeday-api

HVAC BTU Calculator API

HVAC sizing maths as an API, computed locally and deterministically from standard rule-of-thumb factors. The cooling endpoint estimates the air-conditioner load for a room — in BTU per hour, tons of cooling and kilowatts — from the floor area (in square feet or metres, or length × width) using a baseline of about 20 BTU/h per square foot, with adjustments for the number of occupants, a kitchen, sun exposure and ceiling height. The heating endpoint estimates the heating load from the area and a climate zone (mild through very cold) or a custom BTU per square foot. The convert endpoint converts between BTU per hour, tons of cooling, kilowatts and watts (one ton = 12,000 BTU/h ≈ 3.517 kW). Everything is computed locally and deterministically, so it is instant and private. These are rule-of-thumb estimates in the EnergyStar style — a proper Manual J load calculation accounting for insulation, windows and local climate is recommended for a real installation. Ideal for HVAC and home-improvement tools, air-conditioner and heater sizing guides, smart-home and energy apps, and contractor quoting. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is HVAC sizing; for appliance running cost use an energy-cost API.

api.oanor.com/hvac-api

Frequently asked questions

Quick answers about pricing, quotas, and integration.

How do I get an API key for Ventilation & Airflow API?
Sign up for free at oanor.com, generate an API key from the developer dashboard, and call Ventilation & Airflow API with the x-oanor-key header. No credit card needed for the free tier.
What's the rate limit for Ventilation & Airflow API?
Free tier allows 1 request per second. Paid plans scale up to 50 requests per second on the Mega tier. Hard limits return HTTP 429 above the quota — no surprise overage charges.
How much does Ventilation & Airflow API cost?
Ventilation & Airflow API has a free tier with 100 calls / month. Paid plans start at €9.00 / month with higher quotas and faster rate limits.
Can I cancel my subscription anytime?
Yes. Plans are billed monthly and you can cancel anytime from your billing dashboard. No long-term contracts and no cancellation fee.
Is Ventilation & Airflow API GDPR-compliant?
All requests to Ventilation & Airflow API go through our EU-based gateway. Your upstream API key never leaves our server and no personal data is shared with the upstream provider beyond the request you send.

Pick an endpoint from the list on the left to see its details and try it.

Code snippets

Sign up to get an API key, then call any path under your slug.

curl https://api.oanor.com/ventilation-api/SOME_PATH \
  -H "x-oanor-key: oanor_test_..."
const res = await fetch("https://api.oanor.com/ventilation-api/SOME_PATH", {
  headers: { "x-oanor-key": "oanor_test_..." }
});
const data = await res.json();
$ch = curl_init("https://api.oanor.com/ventilation-api/SOME_PATH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
$response = curl_exec($ch);
import requests
r = requests.get(
    "https://api.oanor.com/ventilation-api/SOME_PATH",
    headers={"x-oanor-key": "oanor_test_..."},
)
print(r.json())

Ratings

Sign in to rate.

No reviews yet.

Discussion

Ask questions, share usage tips, get answers from the provider and other developers. Public — anyone can read.

Sign in to start a thread or reply.

Sign in

New thread

/ 4000

📌 Pinned 🔒 Locked

·

· ·

/ 4000

🔒 This thread is locked — no new replies.

  • No threads yet — start the discussion.

Support

Private 1:1 support with the provider — billing questions, integration issues, account problems. Only you and the provider team can see these threads.

Sign in to open a support ticket.

Sign in

Open new ticket

Describe what you need help with. The provider team gets an email and replies on the ticket page.

  • No tickets yet for this API.

Subscription active — calls can start immediately.

Send your first request —

Subscription active — copy a snippet and fire off your first call.