{"openapi":"3.1.0","info":{"title":"Calorie Burn API","version":"1.0.0","description":"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.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/calorieburn-api","description":"oanor gateway"}],"tags":[{"name":"Calorie Burn"},{"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/activity":{"get":{"operationId":"get_v1_activity","tags":["Calorie Burn"],"summary":"Activity calories","description":"","parameters":[{"name":"activity","in":"query","required":false,"description":"walking | running | cycling | swimming | hiit …","schema":{"type":"string"},"example":"running"},{"name":"met","in":"query","required":false,"description":"Or a MET value","schema":{"type":"string"}},{"name":"weight","in":"query","required":true,"description":"Bodyweight (kg)","schema":{"type":"string"},"example":"70"},{"name":"duration","in":"query","required":true,"description":"Duration (minutes)","schema":{"type":"string"},"example":"30"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Calories = MET × weight(kg) × hours. MET is the metabolic equivalent of the activity (1 MET ≈ resting).","inputs":{"met":9.8,"weight":70,"activity":"running","duration_minutes":30},"calories_burned":343,"calories_per_minute":11.4333},"meta":{"timestamp":"2026-06-04T18:38:20.252Z","request_id":"db06d7eb-23ca-4cfd-b476-08d84c2e1ca0"},"status":"ok","message":"Activity calories","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/duration":{"get":{"operationId":"get_v1_duration","tags":["Calorie Burn"],"summary":"Time to burn target","description":"","parameters":[{"name":"target_calories","in":"query","required":true,"description":"Target calories to burn","schema":{"type":"string"},"example":"500"},{"name":"activity","in":"query","required":false,"description":"Activity name","schema":{"type":"string"},"example":"running"},{"name":"met","in":"query","required":false,"description":"Or a MET value","schema":{"type":"string"}},{"name":"weight","in":"query","required":true,"description":"Bodyweight (kg)","schema":{"type":"string"},"example":"70"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Minutes = target ÷ (MET × weight ÷ 60). The time of this activity needed to burn the target calories.","inputs":{"met":9.8,"weight":70,"activity":"running","target_calories":500},"duration_hours":0.7289,"duration_minutes":43.73,"calories_per_minute":11.4333},"meta":{"timestamp":"2026-06-04T18:38:20.342Z","request_id":"c2f97f79-8ce2-473c-bcf3-e2f8238f326e"},"status":"ok","message":"Time to burn target","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/steps":{"get":{"operationId":"get_v1_steps","tags":["Calorie Burn"],"summary":"Steps to calories","description":"","parameters":[{"name":"steps","in":"query","required":true,"description":"Step count","schema":{"type":"string"},"example":"10000"},{"name":"weight","in":"query","required":true,"description":"Bodyweight (kg)","schema":{"type":"string"},"example":"70"},{"name":"height","in":"query","required":false,"description":"Height (cm) to estimate stride","schema":{"type":"string"},"example":"175"},{"name":"stride_length","in":"query","required":false,"description":"Or stride length (m)","schema":{"type":"string"}},{"name":"mode","in":"query","required":false,"description":"walking | running (default walking)","schema":{"type":"string"},"example":"walking"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Distance = steps × stride; stride ≈ 0.415 × height (walking), 0.65 × height (running). Calories ≈ distance·weight·(0.5 walk / 1.0 run) kcal/kg/km.","inputs":{"mode":"walking","steps":10000,"weight":70,"stride_length_m":0.7262},"distance_km":7.2625,"distance_miles":4.5127,"calories_burned":254.19},"meta":{"timestamp":"2026-06-04T18:38:20.447Z","request_id":"fec683ff-fac5-4230-8792-d77ae47e5138"},"status":"ok","message":"Steps to calories","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":"Weight in kg, duration in minutes, height in cm. MET values from the Compendium of Physical Activities. Estimates only — actual burn varies with fitness and conditions.","service":"calorieburn-api","formulae":{"steps":"distance = steps × stride;  calories = distance·weight·(0.5/1.0)","activity":"calories = MET × weight(kg) × hours","duration":"minutes = target ÷ (MET × weight ÷ 60)"},"endpoints":{"GET /v1/meta":"This document.","GET /v1/steps":"Distance and calories from a step count, weight and height.","GET /v1/activity":"Calories burned = MET × weight × hours, from a MET value or activity name.","GET /v1/duration":"Minutes of an activity needed to burn a target number of calories."},"activities":["walking","brisk_walking","running","cycling","swimming","yoga","weightlifting","hiit","rowing","elliptical","jumping_rope","hiking","dancing","basketball","soccer","tennis","stairs","pilates","boxing","skiing"],"description":"Exercise calorie-burn calculator (MET method): calories for an activity, calories and distance from steps, and time to burn a target."},"meta":{"timestamp":"2026-06-04T18:38:20.577Z","request_id":"acb9e9f7-613b-4544-b960-5f63b80fcf39"},"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":3000,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":400,"monthly_call_quota":40000,"rps_limit":5,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":1200,"monthly_call_quota":250000,"rps_limit":20,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":3900,"monthly_call_quota":1508000,"rps_limit":60,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/calorieburn-api"}