{"openapi":"3.1.0","info":{"title":"Moment of Inertia API","version":"1.0.0","description":"Rigid-body rotational-inertia mechanics as an API, computed locally and deterministically. The shape endpoint returns the mass moment of inertia and the radius of gyration k = √(I/m) for a named standard body about its characteristic axis — a solid sphere (I = 2/5·m·r²), thin spherical shell (2/3·m·r²), solid cylinder or disk (1/2·m·r²), annular/hollow cylinder (1/2·m·(r1²+r2²)), thin ring (m·r²), thin rod about its centre (1/12·m·l²) or about one end (1/3·m·l²), rectangular plate or cuboid (1/12·m·(a²+b²)), solid cone (3/10·m·r²) and point mass (m·r²) — so a 2 kg solid sphere of radius 0.5 m has I = 0.2 kg·m². The parallel-axis endpoint applies the Steiner theorem I = I_cm + m·d² to shift a moment of inertia from the centre-of-mass axis to any parallel axis a distance d away. The shapes endpoint lists the whole catalog with its formulas. All quantities are SI (kg, m → kg·m²). Everything is computed locally and deterministically, so it is instant and private. Ideal for mechanical-engineering, robotics, CAD/CAE, rotating-machinery, structural-dynamics and physics-education app developers, flywheel-and-shaft design tools, and simulation software. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is rotational inertia; for stored rotational energy and flywheel sizing use a flywheel API and for torque and angular acceleration a torque API.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/momentofinertia-api","description":"oanor gateway"}],"tags":[{"name":"Inertia"},{"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/parallel-axis":{"get":{"operationId":"get_v1_parallel_axis","tags":["Inertia"],"summary":"Parallel-axis (Steiner) theorem","description":"","parameters":[{"name":"i_cm","in":"query","required":true,"description":"Moment about centre-of-mass axis (kg·m²)","schema":{"type":"string"},"example":"0.02"},{"name":"mass","in":"query","required":true,"description":"Mass (kg)","schema":{"type":"string"},"example":"1"},{"name":"distance","in":"query","required":true,"description":"Distance d to parallel axis (m)","schema":{"type":"string"},"example":"0.3"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Parallel-axis (Steiner) theorem: I = I_cm + m·d², where I_cm is the moment about the centre-of-mass axis and d is the perpendicular distance to the parallel axis.","inputs":{"i_cm":0.02,"mass":1,"distance":0.3},"shift_term":0.09,"moment_of_inertia":0.11},"meta":{"timestamp":"2026-06-05T19:50:31.342Z","request_id":"d2177c8d-c73c-4170-ba8c-1749d3615044"},"status":"ok","message":"Parallel-axis theorem","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/shape":{"get":{"operationId":"get_v1_shape","tags":["Inertia"],"summary":"Moment of inertia of a shape","description":"","parameters":[{"name":"shape","in":"query","required":true,"description":"Shape name (see /v1/shapes)","schema":{"type":"string"},"example":"solid_sphere"},{"name":"mass","in":"query","required":true,"description":"Mass (kg)","schema":{"type":"string"},"example":"2"},{"name":"r","in":"query","required":false,"description":"Radius (m)","schema":{"type":"string"},"example":"0.5"},{"name":"l","in":"query","required":false,"description":"Length (m)","schema":{"type":"string"}},{"name":"a","in":"query","required":false,"description":"Side a (m)","schema":{"type":"string"}},{"name":"b","in":"query","required":false,"description":"Side b (m)","schema":{"type":"string"}},{"name":"r1","in":"query","required":false,"description":"Inner radius (m)","schema":{"type":"string"}},{"name":"r2","in":"query","required":false,"description":"Outer radius (m)","schema":{"type":"string"}}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Moment of inertia in kg·m². Radius of gyration k = √(I/m). Use /v1/parallel-axis to shift to a parallel axis.","inputs":{"r":0.5,"mass":2,"shape":"solid_sphere"},"formula":"I = 2/5·m·r²","moment_of_inertia":0.2,"radius_of_gyration":0.316227766},"meta":{"timestamp":"2026-06-05T19:50:31.470Z","request_id":"3a9e243d-8d2e-4064-8716-34a45c5bf11b"},"status":"ok","message":"Moment of inertia of a shape","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/shapes":{"get":{"operationId":"get_v1_shapes","tags":["Inertia"],"summary":"Shape catalog","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"All masses in kg, all lengths/radii in m, result in kg·m². Pass shape + mass + the listed params to /v1/shape.","count":12,"shapes":{"rod_end":{"params":["mass","l"],"formula":"I = 1/3·m·l² (thin rod about one end, ⊥)"},"thin_ring":{"params":["mass","r"],"formula":"I = m·r² (hoop about central axis)"},"point_mass":{"params":["mass","r"],"formula":"I = m·r² (point mass at distance r)"},"rod_center":{"params":["mass","l"],"formula":"I = 1/12·m·l² (thin rod about centre, ⊥)"},"solid_cone":{"params":["mass","r"],"formula":"I = 3/10·m·r² (about central axis)"},"solid_disk":{"params":["mass","r"],"formula":"I = 1/2·m·r² (about central axis)"},"solid_cuboid":{"params":["mass","a","b"],"formula":"I = 1/12·m·(a²+b²) (about axis through centre, sides a,b ⊥ axis)"},"solid_sphere":{"params":["mass","r"],"formula":"I = 2/5·m·r²"},"hollow_sphere":{"params":["mass","r"],"formula":"I = 2/3·m·r² (thin spherical shell)"},"solid_cylinder":{"params":["mass","r"],"formula":"I = 1/2·m·r² (about central axis)"},"hollow_cylinder":{"params":["mass","r1","r2"],"formula":"I = 1/2·m·(r1²+r2²) (annular, inner r1, outer r2)"},"rectangular_plate":{"params":["mass","a","b"],"formula":"I = 1/12·m·(a²+b²) (about centre ⊥ to plate)"}}},"meta":{"timestamp":"2026-06-05T19:50:31.556Z","request_id":"68d649bb-fb16-4398-9c68-902f2b941cb7"},"status":"ok","message":"Shape catalog","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":"SI units (kg, m → kg·m²). This is rigid-body rotational inertia; for stored rotational energy and flywheels use a flywheel API.","service":"momentofinertia-api","endpoints":{"GET /v1/meta":"This document.","GET /v1/shape":"Moment of inertia and radius of gyration for a named shape.","GET /v1/shapes":"Catalog of supported shapes and their formulas.","GET /v1/parallel-axis":"Shift a moment of inertia to a parallel axis (I = I_cm + m·d²)."},"description":"Moment of inertia of standard rigid bodies, the parallel-axis (Steiner) theorem, and the radius of gyration."},"meta":{"timestamp":"2026-06-05T19:50:31.653Z","request_id":"bdd61033-9366-4537-a65a-d67c36e37e9c"},"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":3800,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":700,"monthly_call_quota":36000,"rps_limit":6,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":2100,"monthly_call_quota":175000,"rps_limit":15,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":6500,"monthly_call_quota":1080000,"rps_limit":40,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/momentofinertia-api"}