Body mass index
API · /bmi-api
BMI & Body Composition API
Body-composition maths as an API, computed locally and deterministically. The bmi endpoint computes the body mass index, BMI = weight/height², classifies it on the WHO scale (underweight, normal, overweight, obese) and returns the healthy weight range for the person's height. The idealweight endpoint computes the ideal body weight by the four classic formulas — Devine, Robinson, Miller and Hamwi — each a base weight plus an increment for every inch of height above five feet, and their average. The bodyfat endpoint estimates body-fat percentage by the US Navy circumference method from the neck and waist (and hip for women) and the height, classifies it from essential to high, and — given a weight — splits it into fat mass and lean mass. Everything is computed locally and deterministically, so it is instant and private. Ideal for fitness, health and wellness app developers, body-tracking and coaching tools, gym and clinic dashboards, and self-assessment apps. Pure local computation — no key, no third-party service, instant. Live, nothing stored. Estimates only, not medical advice. 3 endpoints. This is body composition; for basal metabolic rate and calories use a BMR API.
API health
healthy- Uptime
- 100.00%
- Server probes · 24h
- Avg latency
- 95 ms
- Server probes · 24h
- Subscribers
- 3,780
- active
- Total calls
- 32
- last 7 days
Pricing
Pick a tier — billed monthly, cancel anytime.
Free
Free
- 3,000 calls / month
- 2 requests / second
- Hard cap (429 above quota, no overage)
- 3,000 BMI calculations/month
- WHO BMI classification bands
- Metric & imperial units
- Community support
Starter
€4.00 /month
- 40,000 calls / month
- 5 requests / second
- Hard cap (429 above quota, no overage)
- 40,000 calls/month
- BMI + ideal-weight endpoints
- Body-fat % estimation
- Email support
Pro
€12.00 /month
- 250,000 calls / month
- 15 requests / second
- Hard cap (429 above quota, no overage)
- 250,000 calls/month
- Full body-composition suite (BMI, body-fat, ideal weight)
- Age & sex-adjusted classification
- Priority email support
Mega
€39.00 /month
- 1,500,000 calls / month
- 40 requests / second
- Hard cap (429 above quota, no overage)
- 1,500,000 calls/month
- All composition endpoints, deterministic results
- Bulk-friendly high RPS for fitness apps
- 99.9% uptime SLA & priority support
Built by
Related APIs
Other APIs with overlapping tags.
Health Calculator API
A complete health & fitness calculator suite in one API: Body Mass Index with category and healthy-weight range, Basal Metabolic Rate (Mifflin-St Jeor and Harris-Benedict), Total Daily Energy Expenditure with weight-loss/gain calorie targets, macronutrient splits (balanced, low-carb, high-protein, keto, endurance) with fibre, U.S. Navy body-fat percentage, ideal body weight across four classic formulas (Devine, Robinson, Miller, Hamwi), and daily water intake. Every endpoint accepts GET query parameters or a JSON POST body and works in both metric and imperial units. All computation is done locally with established public-domain equations, so responses are instant and the service is always available. Ideal for fitness trackers, nutrition apps, telehealth and wellness dashboards.
api.oanor.com/healthcalc-api
Body Fat API
Body-fat-percentage and body-composition maths as an API, computed locally and deterministically. The navy endpoint applies the US Navy circumference method — for men %BF = 495/(1.0324 − 0.19077·log10(waist − neck) + 0.15456·log10(height)) − 450, and for women a formula that adds the hip measurement — to estimate body fat from a tape measure alone, returning the percentage and the fitness category (essential, athletes, fitness, acceptable or obese); a man of 178 cm with a 40 cm neck and 90 cm waist reads about 18.7 %. The deurenberg endpoint gives the BMI-based estimate %BF = 1.20·BMI + 0.23·age − 10.8·(1 if male) − 5.4 from BMI or weight and height plus age. The composition endpoint splits a total weight into fat mass and lean (fat-free) mass from a body-fat percentage. Circumferences and height are in centimetres and weight in kilograms. Everything is computed locally and deterministically, so it is instant and private. Ideal for fitness, wellness, gym, nutrition, body-tracking and health-education app developers, body-composition and progress-tracking tools, and coaching software. These are estimation formulas, not a substitute for DEXA or professional assessment. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is body-fat percentage; for body-mass index use a BMI API and for basal metabolic rate a BMR API.
api.oanor.com/bodyfat-api
Barbell & Lifting API
Barbell and weight-training maths as an API, computed locally and deterministically — the plate-loading and percentage numbers a lifter, coach or gym app works out at the rack. The plates endpoint solves the everyday gym puzzle of which plates go on each side for a target weight: 100 kg on a standard 20 kg bar means 40 kg a side, loaded heaviest first as a 25 and a 15; 102.5 kg adds the 1.25 micro-plate; and if a target is not reachable with the plates on hand it loads the closest it can and tells you the shortfall, so you never guess. It works in kilograms or pounds (225 lb on a 45 lb bar is two 45s a side), with a custom bar weight and a custom plate set. The percent endpoint turns a one-rep-max into the working weight you actually load: 80 % of a 100 kg max is 80 kg, and asking for a five-rep weight returns about 85.7 kg via the Epley formula (1RM = weight × (1 + reps ÷ 30)) — five reps sits near 86 % of max, ten reps near 75 %. The warmup endpoint builds a ramp from the empty bar to the working set at roughly 40, 55, 70 and 85 %, each rounded to a loadable increment, with the rep count dropping as the bar gets heavy. Everything is computed locally and deterministically, so it is instant and private. Ideal for gym, strength-training, powerlifting and fitness app developers, workout-logger and coaching tools, and smart-rack and plate-calculator builders. Pure local computation — no key, no third-party service, instant. Exact maths, no simulation. Live, nothing stored. 3 compute endpoints. For one-rep-max estimation from a set use a strength API.
api.oanor.com/barbell-api
Calorie Burn API
Exercise calorie-burn maths as an API, computed locally and deterministically with the MET (metabolic-equivalent) method. The activity endpoint computes the calories burned by an activity, calories = MET × weight × hours, taking the MET value directly or from a named-activity table (walking, running, cycling, swimming, HIIT, rowing, yoga, weightlifting and more), and returns the calories per minute. The steps endpoint turns a step count into distance and calories: the stride is estimated from height (about 0.415 × height for walking, 0.65 for running), the distance is steps × stride, and the energy is the distance times bodyweight times a net cost of roughly 0.5 kcal/kg/km walking or 1.0 running. The duration endpoint works backwards, giving the minutes of an activity needed to burn a target number of calories. Everything is computed locally and deterministically, so it is instant and private. Ideal for fitness, activity-tracking and weight-management app developers, workout and step-counter tools, and wellness dashboards. Pure local computation — no key, no third-party service, instant. Live, nothing stored. Estimates only. 3 endpoints. This is activity energy expenditure; for resting metabolism and TDEE use a BMR API.
api.oanor.com/calorieburn-api
Frequently asked questions
Quick answers about pricing, quotas, and integration.
How do I get an API key for BMI & Body Composition API?
What's the rate limit for BMI & Body Composition API?
How much does BMI & Body Composition API cost?
Can I cancel my subscription anytime?
Is BMI & Body Composition API GDPR-compliant?
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/bmi-api/SOME_PATH \
-H "x-oanor-key: oanor_test_..."
const res = await fetch("https://api.oanor.com/bmi-api/SOME_PATH", {
headers: { "x-oanor-key": "oanor_test_..." }
});
const data = await res.json();
$ch = curl_init("https://api.oanor.com/bmi-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/bmi-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 inNew thread
·
-
Provider answer
🔒 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 inOpen new ticket
Describe what you need help with. The provider team gets an email and replies on the ticket page.
-
·
Urgent - No tickets yet for this API.