API · /woodmoisture-api

Wood Moisture API

healthy 4,875 Subscribers

Wood-moisture maths as an API, computed locally and deterministically — the moisture-content, oven-dry-weight and drying-target numbers a woodworker, sawyer, kiln operator or firewood seller weighs timber by. The moisture-content endpoint takes a wet weight and an oven-dry weight and returns the moisture content on both conventions: the dry basis (water ÷ oven-dry weight × 100, the forestry and woodworking standard) and the wet/green basis (water ÷ wet weight × 100, common in agriculture and paper) — a board weighing 120 g that dries to 100 g holds 20 g of water and is 20 % dry-basis or 16.7 % wet-basis, so it always matters which is quoted. Above fibre saturation (~28–30 %) the wood is still shedding free water and has not begun to shrink. The dry-weight endpoint back-calculates the unchanging oven-dry weight from a current weight and a meter reading (wet ÷ (1 + MC/100)), the anchor for any drying plan because the wood substance does not change as water leaves. The target-weight endpoint uses that anchor to give the weight a piece should reach for a target moisture content and the water still to drive off — taking 120 g at 20 % down to 12 % means a 112 g target and 8 g of water to lose, so you simply weigh the piece down to that figure. Everything is computed locally and deterministically, so it is instant and private. Ideal for woodworking and lutherie tools, sawmill and kiln-drying apps, and firewood-seasoning calculators. Pure local computation — no key, no third-party service, instant. Mass-balance maths — pair it with a real moisture meter. 3 compute endpoints. For board feet use a lumber API; for a wood-stack volume a firewood API.

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

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

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

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

API health

healthy
Uptime
100.00%
Server probes · 24h
Avg latency
105 ms
Server probes · 24h
Subscribers
4,875
active
Total calls
0
last 7 days
status Full status page → · 4 probes/24h

Pricing

Pick a tier — billed monthly, cancel anytime.

Free

Free

  • 7,000 calls / month
  • 2 requests / second
  • Hard cap (429 above quota, no overage)
  • 7,000 calls/month
  • 2 req/sec
  • Dry/wet basis, oven-dry, drying target
  • No credit card
Sign in to subscribe

Starter

€7.00 /month

  • 59,000 calls / month
  • 6 requests / second
  • Hard cap (429 above quota, no overage)
  • 59,000 calls/month
  • 6 req/sec
  • Kiln & seasoning targets
  • Email support
Sign in to subscribe

Pro

€24.00 /month

  • 245,000 calls / month
  • 15 requests / second
  • Hard cap (429 above quota, no overage)
  • 245,000 calls/month
  • 15 req/sec
  • Sawmill & workshop pipelines
  • Priority support
Sign in to subscribe

Mega

€74.00 /month

  • 1,130,000 calls / month
  • 40 requests / second
  • Hard cap (429 above quota, no overage)
  • 1,130,000 calls/month
  • 40 req/sec
  • Platform & catalogue scale
  • Dedicated SLA
Sign in to subscribe

Built by

Related APIs

Other APIs with overlapping tags.

Firewood Calculator API

Firewood maths as an API, computed locally and deterministically. The volume endpoint turns a wood-stack's length, height and depth (in feet or metres) into its volume in cubic feet and cubic metres, full cords, face cords and steres — a full cord being 128 cubic feet (a 4×4×8 ft stack) and a face cord being an 8×4 ft stack by the piece (log) length. The convert endpoint converts a quantity between cords, face cords, steres, cubic metres and cubic feet, using the piece length for the face-cord relationship. The heat endpoint estimates the heating value of a number of cords by wood species — returning the millions of BTU and the equivalent gallons of heating oil, therms of natural gas and kilowatt-hours — from a built-in table of typical seasoned-wood values (oak, hickory, maple, ash, birch, pine and more) or a custom figure. Everything is computed locally and deterministically, so it is instant and private. Heat values are typical seasoned figures (around 20% moisture) and vary with species, dryness and stove efficiency. Ideal for firewood sellers and delivery tools, heating and homestead apps, and forestry and woodlot calculators. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is firewood volume and energy; for general volume or unit conversion use a unit-conversion API.

api.oanor.com/firewood-api

Cut List & Kerf API

Cut-list maths for woodworking and material cutting as an API, computed locally and deterministically. The cuts endpoint computes how many pieces of a target length come from one stock length once the saw kerf — the width of material each cut removes — is accounted for, using pieces = floor((stock + kerf)/(piece + kerf)) since the final cut leaves no kerf, and returns the used length, the leftover offcut, the waste percentage and the total kerf loss; a 2400 mm board cut into 300 mm pieces with a 3 mm kerf yields 7 pieces with a 282 mm offcut, not the 8 you would expect ignoring the blade. The boards endpoint works out how many stock lengths a job of a given quantity needs and how many spare pieces are left over. The yield endpoint reports the overall material efficiency — total piece length divided by total stock length — for a whole cutting job. All lengths share one consistent unit (mm, cm or inches). Everything is computed locally and deterministically, so it is instant and private. Ideal for woodworking, carpentry, metal-fabrication, contractor, maker and shop-software developers, cut-list and offcut calculators, and material-ordering tools. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is single-length (1D) cut optimisation; for loose-material volume use a mulch/volume API.

api.oanor.com/kerf-api

Metal Casting API

Metal-casting and foundry maths as an API, computed locally and deterministically — the solidification-time, shrinkage and melt-weight numbers a foundryman, patternmaker or casting designer works a job to. The solidification-time endpoint applies Chvorinov's rule, t = B × (V/A)², where V/A is the casting modulus (volume ÷ cooling surface area) and B is the mould constant (~2–4 min/cm² for sand): a chunky part with little surface for its volume freezes slowly, a thin one fast — and because a riser must stay molten longer than the casting it feeds, its modulus has to be larger, which is the number that sizes it. The pattern-shrinkage endpoint makes the pattern oversize for the metal that shrinks as it cools: pattern = casting dimension × (1 + shrinkage/100), the patternmaker's contraction rule — about 1.0–1.6 % for grey iron, ~2 % for steel and aluminium — so a 100 mm steel feature needs a 102 mm pattern. The melt-weight endpoint gives the casting weight = volume × metal density (iron ~7.2, steel ~7.85, aluminium ~2.70 g/cm³) and the metal to actually pour = casting weight ÷ the casting yield, because the sprue, runners and risers are remelted scrap — a 7 kg iron casting at 70 % yield needs about 10 kg in the ladle. Everything is computed locally and deterministically, so it is instant and private. Ideal for foundry and patternmaking tools, casting-design and estimating apps, and metalworking calculators. Pure local computation — no key, no third-party service, instant. 3 compute endpoints. For a part's weight from its dimensions use a metal-weight API; for welded joints a welding API.

api.oanor.com/casting-api

Basketball Stats API

Basketball efficiency-stats maths as an API, computed locally and deterministically — the shooting-efficiency and box-score numbers an analyst, coach or sports app rates a performance by. The true-shooting endpoint folds twos, threes and free throws into one number: TS% = points ÷ (2 × (field-goal attempts + 0.44 × free-throw attempts)) × 100, where the 0.44 approximates how many possessions a free-throw trip really uses — 25 points on 18 field goals and 6 free throws is about 60.6 %, against a league average near 56–58 %. The effective-field-goal endpoint credits a three for being worth 50 % more than a two: eFG% = (field goals made + 0.5 × threes made) ÷ field-goal attempts × 100, so 9 makes including 3 threes on 18 attempts is 58.3 % versus a raw 50 %, the gap being the value of the long ball. The game-score endpoint computes John Hollinger's Game Score, a single-game productivity rating scaled like points — PTS + 0.4·FGM − 0.7·FGA − 0.4·(FTA−FTM) + 0.7·ORB + 0.3·DRB + STL + 0.7·AST + 0.7·BLK − 0.4·PF − TOV — where about 10 is an average game, 20+ excellent and 40+ historic, rewarding efficient scoring and all-round play while docking misses and turnovers. Everything is computed locally and deterministically, so it is instant and private. Ideal for basketball analytics and box-score tools, fantasy and commentary apps, and sports calculators. Pure local computation — no key, no third-party service, instant. 3 compute endpoints. For baseball stats use a baseball API; for cricket a cricket API.

api.oanor.com/basketball-api

Frequently asked questions

Quick answers about pricing, quotas, and integration.

How do I get an API key for Wood Moisture API?
Sign up for free at oanor.com, generate an API key from the developer dashboard, and call Wood Moisture API with the x-oanor-key header. No credit card needed for the free tier.
What's the rate limit for Wood Moisture 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 Wood Moisture API cost?
Wood Moisture API has a free tier with 100 calls / month. Paid plans start at €7.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 Wood Moisture API GDPR-compliant?
All requests to Wood Moisture 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/woodmoisture-api/SOME_PATH \
  -H "x-oanor-key: oanor_test_..."
const res = await fetch("https://api.oanor.com/woodmoisture-api/SOME_PATH", {
  headers: { "x-oanor-key": "oanor_test_..." }
});
const data = await res.json();
$ch = curl_init("https://api.oanor.com/woodmoisture-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/woodmoisture-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.