{"openapi":"3.1.0","info":{"title":"Wood Pellet API","version":"1.0.0","description":"Wood-pellet heating maths as an API, computed locally and deterministically — the consumption, heat-output and storage numbers a homeowner, installer or heating planner sizes a pellet system by. The consumption endpoint gives the pellets to meet a heat demand = the demand ÷ the usable heat per kilo, where usable = the calorific value × the boiler efficiency: ENplus wood pellets hold about 4.8 kWh/kg and a modern pellet boiler runs ~90 %, so each kilo delivers roughly 4.3 kWh — a 10,000 kWh annual demand then needs about 2.3 tonnes of pellets, around 154 fifteen-kilo bags or a bulk delivery. The heat-output endpoint inverts it: the usable heat from a mass = mass × calorific value × efficiency, so a tonne of ENplus pellets is about 4,800 kWh gross of which a 90 % boiler delivers ~4,320 kWh — the equivalent of roughly 480 litres of heating oil or 432 m³ of natural gas. The storage-volume endpoint sizes the hopper or silo: storage = the pellet mass ÷ the bulk (poured) density, about 650 kg/m³ for ENplus, so 2.3 tonnes fill roughly 3.6 m³ — size the store for the full delivery plus headroom for the fill pipe. Everything is computed locally and deterministically, so it is instant and private. Ideal for pellet-heating and installer tools, home-energy and quoting apps, and renewable-heat calculators. Pure local computation — no key, no third-party service, instant. Uses standard ENplus figures — set your own for a specific pellet grade. 3 compute endpoints. For cordwood use a firewood API; for propane/LPG a propane API.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/pellet-api","description":"oanor gateway"}],"tags":[{"name":"Pellet"},{"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/consumption":{"get":{"operationId":"get_v1_consumption","tags":["Pellet"],"summary":"Pellets for a heat demand","description":"","parameters":[{"name":"heat_demand_kwh","in":"query","required":true,"description":"Annual/period heat demand (kWh)","schema":{"type":"string"},"example":"10000"},{"name":"calorific_value_kwh_kg","in":"query","required":false,"description":"Calorific value (kWh/kg, default 4.8)","schema":{"type":"string"},"example":"4.8"},{"name":"efficiency_pct","in":"query","required":false,"description":"Boiler efficiency (%, default 90)","schema":{"type":"string"},"example":"90"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"The pellets to meet a heat demand = the demand ÷ the usable heat per kilo, where usable = the calorific value × the boiler efficiency. ENplus wood pellets hold about 4.8 kWh/kg, and a modern pellet boiler runs ~90 %, so each kilo delivers ~4.3 kWh of heat. A 10,000 kWh annual demand then needs about 2.3 tonnes of pellets — roughly 154 fifteen-kilo bags, or a bulk delivery.","inputs":{"efficiency_pct":90,"heat_demand_kwh":10000,"calorific_value_kwh_kg":4.8},"bags_15kg":155,"pellet_kg":2314.81,"pellet_tonnes":2.3148,"usable_kwh_per_kg":4.32},"meta":{"timestamp":"2026-06-07T08:17:48.522Z","request_id":"b14840cb-679d-4c1a-80a0-532ae7340bfa"},"status":"ok","message":"Consumption","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/heat-output":{"get":{"operationId":"get_v1_heat_output","tags":["Pellet"],"summary":"Usable heat from pellets","description":"","parameters":[{"name":"pellet_kg","in":"query","required":true,"description":"Pellet mass (kg)","schema":{"type":"string"},"example":"2314.81"},{"name":"calorific_value_kwh_kg","in":"query","required":false,"description":"Calorific value (kWh/kg, default 4.8)","schema":{"type":"string"},"example":"4.8"},{"name":"efficiency_pct","in":"query","required":false,"description":"Boiler efficiency (%, default 90)","schema":{"type":"string"},"example":"90"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"The usable heat from a quantity of pellets = the mass × the calorific value × the boiler efficiency. 1 tonne of ENplus pellets is about 4,800 kWh of gross energy, of which a 90 % boiler delivers ~4,320 kWh to the house — the equivalent of roughly 480 litres of heating oil or 432 m³ of natural gas. The rest goes up the flue as losses, which is why efficiency and clean burning matter.","inputs":{"pellet_kg":2314.81,"efficiency_pct":90,"calorific_value_kwh_kg":4.8},"usable_heat_kwh":9999.98,"gross_energy_kwh":11111.09},"meta":{"timestamp":"2026-06-07T08:17:48.639Z","request_id":"d854cb1e-dfff-407c-a927-a37abab5aca7"},"status":"ok","message":"Heat output","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/storage-volume":{"get":{"operationId":"get_v1_storage_volume","tags":["Pellet"],"summary":"Storage volume from mass","description":"","parameters":[{"name":"pellet_kg","in":"query","required":true,"description":"Pellet mass (kg)","schema":{"type":"string"},"example":"2314.81"},{"name":"bulk_density_kg_m3","in":"query","required":false,"description":"Bulk density (kg/m³, default 650)","schema":{"type":"string"},"example":"650"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Storage = the pellet mass ÷ the bulk (poured) density, about 650 kg/m³ for ENplus pellets. So 2.3 tonnes of a year's pellets fill roughly 3.6 m³ — size a hopper or silo room for the full delivery plus headroom for the fill pipe and a margin, since a bulk blower needs space to settle the pellets without crushing them to dust.","inputs":{"pellet_kg":2314.81,"bulk_density_kg_m3":650},"storage_litres":3561.2,"storage_volume_m3":3.561},"meta":{"timestamp":"2026-06-07T08:17:48.740Z","request_id":"f68434f4-5404-4cc5-8ffa-9a2b717cb0b2"},"status":"ok","message":"Storage volume","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":{"notes":"kWh, kg, m³. ENplus ~4.8 kWh/kg, bulk ~650 kg/m³. pellets = demand/(cv·eff); heat = kg·cv·eff; volume = kg/density. For cordwood use a firewood API; for propane/LPG a propane API.","service":"pellet-api","endpoints":{"GET /v1/meta":"This document.","GET /v1/consumption":"Pellet mass (and bags) to cover a heat demand.","GET /v1/heat-output":"Gross and usable heat from a mass of pellets.","GET /v1/storage-volume":"Storage volume from pellet mass and bulk density."},"description":"Wood-pellet heating maths: pellet mass for a heat demand, usable heat from a mass, and storage volume."},"meta":{"timestamp":"2026-06-07T08:17:48.844Z","request_id":"b9c4671b-5520-4f55-a8ee-ad54be7edcaf"},"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":7350,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":715,"monthly_call_quota":61500,"rps_limit":6,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":2440,"monthly_call_quota":249000,"rps_limit":15,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":7620,"monthly_call_quota":1155000,"rps_limit":40,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/pellet-api"}