{"openapi":"3.1.0","info":{"title":"Beam Load API","version":"1.0.0","description":"Beam statics as an API, computed locally and deterministically. The simply-supported endpoint analyses a beam on two supports under a point load (anywhere along the span) or a uniformly distributed load: it returns the support reactions, the maximum shear and the maximum bending moment with its location, and — if you pass the Young's modulus E and second moment of area I — the maximum deflection. The cantilever endpoint does the same for a beam fixed at one end, returning the reaction force and fixing moment, the maximum bending moment and the free-end deflection. The section endpoint gives the cross-section properties that those deflections need: the second moment of area (moment of inertia) and the section modulus for a rectangle, a solid circle or a hollow circular pipe. Every result lists the formula used, so you can show your working. Use consistent units — in SI, load in newtons, distributed load in N/m, lengths in metres, E in pascals and I in m⁴ give moments in N·m and deflections in metres. Everything is computed locally and deterministically, so it is instant and private. Linear-elastic, small-deflection theory — a learning and estimating tool, not a substitute for a qualified structural engineer on a real design. Ideal for engineering and architecture tools, education and physics apps, maker and DIY calculators, and CAD helpers. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 3 endpoints. This is structural beam statics; for bolt and fastener torque use a torque API.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/beam-api","description":"oanor gateway"}],"tags":[{"name":"Beam"},{"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/cantilever":{"get":{"operationId":"get_v1_cantilever","tags":["Beam"],"summary":"Cantilever beam","description":"","parameters":[{"name":"length","in":"query","required":true,"description":"Length","schema":{"type":"string"},"example":"2"},{"name":"load_type","in":"query","required":false,"description":"point|udl","schema":{"type":"string"},"example":"point"},{"name":"load","in":"query","required":false,"description":"Point load magnitude","schema":{"type":"string"},"example":"1000"},{"name":"position","in":"query","required":false,"description":"Point load position from fixed end (default free end)","schema":{"type":"string"}},{"name":"udl","in":"query","required":false,"description":"Uniformly distributed load","schema":{"type":"string"}},{"name":"youngs_modulus","in":"query","required":false,"description":"E (for deflection)","schema":{"type":"string"},"example":"200e9"},{"name":"moment_of_inertia","in":"query","required":false,"description":"I (for deflection)","schema":{"type":"string"},"example":"1e-5"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"beam":"cantilever","length":2,"formulas":{"moment":"M=P·a (at fixed end)","deflection_end_load":"δ=P·L³/(3·E·I)"},"position":2,"load_type":"point","max_shear":1000,"reactions":{"force":1000,"moment":2000},"max_deflection":0.00133333,"max_bending_moment":2000,"max_moment_location":0,"max_deflection_location":2},"meta":{"timestamp":"2026-06-04T01:59:11.205Z","request_id":"b44c1298-f707-4c63-ace3-d480c345d698"},"status":"ok","message":"Cantilever beam","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/section":{"get":{"operationId":"get_v1_section","tags":["Beam"],"summary":"Section properties (I, S)","description":"","parameters":[{"name":"shape","in":"query","required":true,"description":"rectangle|circle|pipe","schema":{"type":"string"},"example":"rectangle"},{"name":"width","in":"query","required":false,"description":"Rectangle width (b)","schema":{"type":"string"},"example":"0.05"},{"name":"height","in":"query","required":false,"description":"Rectangle height (h)","schema":{"type":"string"},"example":"0.1"},{"name":"diameter","in":"query","required":false,"description":"Circle diameter","schema":{"type":"string"}},{"name":"outer_diameter","in":"query","required":false,"description":"Pipe outer diameter","schema":{"type":"string"}},{"name":"inner_diameter","in":"query","required":false,"description":"Pipe inner diameter","schema":{"type":"string"}}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"area":0.005,"shape":"rectangle","width":0.05,"height":0.1,"formulas":{"I":"b·h³/12","S":"b·h²/6"},"section_modulus":8.33333e-5,"moment_of_inertia":4.16667e-6,"neutral_axis_from_base":0.05},"meta":{"timestamp":"2026-06-04T01:59:11.288Z","request_id":"b75bc8b1-55a3-4de1-aafd-cb5ca14c27f9"},"status":"ok","message":"Section properties (I, S)","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/simply-supported":{"get":{"operationId":"get_v1_simply_supported","tags":["Beam"],"summary":"Simply supported beam","description":"","parameters":[{"name":"length","in":"query","required":true,"description":"Span","schema":{"type":"string"},"example":"4"},{"name":"load_type","in":"query","required":false,"description":"point|udl","schema":{"type":"string"},"example":"point"},{"name":"load","in":"query","required":false,"description":"Point load magnitude","schema":{"type":"string"},"example":"1000"},{"name":"position","in":"query","required":false,"description":"Point load position from left (default centre)","schema":{"type":"string"},"example":"2"},{"name":"udl","in":"query","required":false,"description":"Uniformly distributed load (per length)","schema":{"type":"string"}},{"name":"youngs_modulus","in":"query","required":false,"description":"E (for deflection)","schema":{"type":"string"},"example":"200e9"},{"name":"moment_of_inertia","in":"query","required":false,"description":"I (for deflection)","schema":{"type":"string"},"example":"1e-5"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"beam":"simply_supported","length":4,"formulas":{"moment":"M=P·a·b/L","reactions":"R1=P·b/L, R2=P·a/L","deflection_centre":"δ=P·L³/(48·E·I)"},"position":2,"load_type":"point","max_shear":500,"reactions":{"left":500,"right":500},"max_deflection":0.000666667,"deflection_at_load":0.000666667,"max_bending_moment":1000,"max_moment_location":2,"max_deflection_location":2},"meta":{"timestamp":"2026-06-04T01:59:11.373Z","request_id":"3b9c5072-753e-4432-8685-3ce954c61e79"},"status":"ok","message":"Simply supported beam","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":{"api":"beam","note":"Beam statics — reactions, bending moment, deflection. Computed locally and deterministically, no key, no third-party service. Linear-elastic, small-deflection theory; verify with a qualified engineer for real designs.","units":"Use consistent units. SI: load N, udl N/m, length m, E Pa, I m⁴ → moment N·m, deflection m.","endpoints":["/v1/simply-supported","/v1/cantilever","/v1/section","/v1/meta"]},"meta":{"timestamp":"2026-06-04T01:59:11.466Z","request_id":"53a52e75-e858-402d-8958-6968645a2c9e"},"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":13035,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":1455,"monthly_call_quota":22650,"rps_limit":8,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":3445,"monthly_call_quota":276500,"rps_limit":20,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":7245,"monthly_call_quota":1425000,"rps_limit":50,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/beam-api"}