# HVAC Air-Side Load API
> HVAC air-side heat maths as an API, computed locally and deterministically with the classic standard-air factors — the sensible, latent and airflow numbers a mechanical engineer or HVAC technician sizes ducts and equipment with. The sensible endpoint gives the sensible heat an airflow carries to change temperature: Qs = 1.08 × CFM × ΔT (dry-bulb difference), where the 1.08 bundles standard-air density and specific heat — 2,000 CFM across a 20 °F difference is 43,200 BTU/hr, 3.6 tons — with the result in BTU/hr, tons and kW. The latent endpoint gives the latent (moisture) heat: Ql = 0.68 × CFM × ΔW, where ΔW is the humidity-ratio difference in grains of water per pound of dry air, the dehumidification part of a cooling load that runs high in humid climates and from people and cooking, and why air conditioners are sized on total, not just temperature. The airflow endpoint inverts the sensible relation: CFM = sensible load ÷ (1.08 × ΔT), the supply air needed at a chosen supply-to-room temperature difference (comfort cooling runs ~18–22 °F below room), the number that sets fan and duct size — sanity-checked against ~400 CFM per ton. Everything is computed locally and deterministically, so it is instant and private. Ideal for HVAC-design and load-calc tools, mechanical-estimating and commissioning utilities, and building-engineering apps. Pure local computation — no key, no third-party service, instant. Standard-air factors — adjust for altitude. 3 compute endpoints. For room rule-of-thumb sizing use an HVAC API; for moist-air properties a psychrometric API; for duct sizing a ductwork API.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/hvacload-api/..."
```

## Pricing
- **Free** (Free) — 5,700 calls/Mo, 2 req/s
- **Starter** ($12/Mo) — 57,500 calls/Mo, 6 req/s
- **Pro** ($37/Mo) — 240,000 calls/Mo, 15 req/s
- **Mega** ($114/Mo) — 1,195,000 calls/Mo, 40 req/s

## Endpoints

### Load

#### `GET /v1/airflow` — Airflow required for a sensible load

**Parameters:**
- `sensible_btu_hr` (query, required, string) — Sensible load (BTU/hr) Example: `43200`
- `delta_t_f` (query, required, string) — Supply temperature difference (°F) Example: `20`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/hvacload-api/v1/airflow?sensible_btu_hr=43200&delta_t_f=20"
```

#### `GET /v1/latent` — Latent heat from CFM and humidity diff

**Parameters:**
- `cfm` (query, required, string) — Airflow (CFM) Example: `2000`
- `delta_grains` (query, required, string) — Humidity-ratio difference (grains/lb) Example: `30`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/hvacload-api/v1/latent?cfm=2000&delta_grains=30"
```

#### `GET /v1/sensible` — Sensible heat from CFM and ΔT

**Parameters:**
- `cfm` (query, required, string) — Airflow (CFM) Example: `2000`
- `delta_t_f` (query, required, string) — Dry-bulb temperature difference (°F) Example: `20`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/hvacload-api/v1/sensible?cfm=2000&delta_t_f=20"
```

### Meta

#### `GET /v1/meta` — Spec

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/hvacload-api/v1/meta"
```


---
Marketplace page: https://www.oanor.com/api/hvacload-api
OpenAPI spec: https://www.oanor.com/api/hvacload-api/openapi.json
