{"openapi":"3.1.0","info":{"title":"Powerlifting Score API","version":"1.0.0","description":"Powerlifting strength-score maths as an API, computed locally and deterministically — the Wilks, DOTS and IPF GL numbers a meet, gym or training app uses to compare lifters across bodyweights and sexes. The wilks endpoint gives the classic Wilks coefficient (1996) and score: total × 500 ÷ a fifth-order polynomial in bodyweight, with separate male and female curves — long the federation standard for \"best lifter\", a 100 kg man totalling 600 kg scores about 365. The dots endpoint gives the modern DOTS score (2019), the same total × 500 ÷ polynomial idea but fitted to updated data with a fourth-order curve that is fairer across the weight classes and not skewed to the middleweights, now the default in most raw meet software. The ipf-gl endpoint gives the International Powerlifting Federation's current GL Points (2020): 100 × total ÷ (A − B·e^(−C·bodyweight)), with separate constants for sex and for raw (classic) versus equipped lifting, the official metric at IPF championships. Everything is computed locally and deterministically, so it is instant and private. Ideal for meet-management and scoring software, gym leaderboards and training-log apps, and strength-sport tools. Pure local computation — no key, no third-party service, instant. 3 compute endpoints. For one-rep-max estimation and plate loading use a strength-training API.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/powerlifting-api","description":"oanor gateway"}],"tags":[{"name":"Score"},{"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/dots":{"get":{"operationId":"get_v1_dots","tags":["Score"],"summary":"DOTS coefficient and score","description":"","parameters":[{"name":"sex","in":"query","required":true,"description":"male or female","schema":{"type":"string"},"example":"male"},{"name":"bodyweight_kg","in":"query","required":true,"description":"Bodyweight (kg)","schema":{"type":"string"},"example":"100"},{"name":"total_kg","in":"query","required":true,"description":"Total lifted (kg)","schema":{"type":"string"},"example":"600"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"DOTS (2019) is a modern replacement for Wilks, fitting a fourth-order polynomial to updated data so the score is fairer across the bodyweight range and not skewed to the middle classes. It is computed the same way — total × 500 ÷ the polynomial — and is widely used by federations and meet software as the default 'best lifter' metric for raw lifting.","inputs":{"sex":"male","total_kg":600,"bodyweight_kg":100},"dots_score":369.31,"dots_coefficient":0.6155},"meta":{"timestamp":"2026-06-07T08:18:04.068Z","request_id":"e03b4f41-5dca-41d1-98a4-5b625d9cce4d"},"status":"ok","message":"DOTS","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/ipf-gl":{"get":{"operationId":"get_v1_ipf_gl","tags":["Score"],"summary":"IPF GL points","description":"","parameters":[{"name":"sex","in":"query","required":true,"description":"male or female","schema":{"type":"string"},"example":"male"},{"name":"bodyweight_kg","in":"query","required":true,"description":"Bodyweight (kg)","schema":{"type":"string"},"example":"100"},{"name":"total_kg","in":"query","required":true,"description":"Total lifted (kg)","schema":{"type":"string"},"example":"600"},{"name":"equipment","in":"query","required":false,"description":"raw (classic) or equipped (default raw)","schema":{"type":"string"},"example":"raw"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"IPF GL Points (2020) is the International Powerlifting Federation's current scoring formula: 100 × total ÷ (A − B·e^(−C·bodyweight)), with separate constants for sex and for raw (classic) versus equipped lifting. The exponential shape models how strength scales with bodyweight better than a polynomial at the extremes, and it is the official metric at IPF championships.","inputs":{"sex":"male","total_kg":600,"equipment":"raw","bodyweight_kg":100},"ipf_gl_points":75.8},"meta":{"timestamp":"2026-06-07T08:18:04.156Z","request_id":"48ea04bc-1700-4f0a-9c72-7ff398b77053"},"status":"ok","message":"IPF GL","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/wilks":{"get":{"operationId":"get_v1_wilks","tags":["Score"],"summary":"Wilks coefficient and score","description":"","parameters":[{"name":"sex","in":"query","required":true,"description":"male or female","schema":{"type":"string"},"example":"male"},{"name":"bodyweight_kg","in":"query","required":true,"description":"Bodyweight (kg)","schema":{"type":"string"},"example":"100"},{"name":"total_kg","in":"query","required":true,"description":"Total lifted (kg)","schema":{"type":"string"},"example":"600"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"The Wilks coefficient (1996) normalises a lifter's total for bodyweight so a lightweight and a heavyweight can be compared: score = total × 500 ÷ a fifth-order polynomial in bodyweight, with separate male and female curves. It long served as the IPF and federation standard for 'best lifter'; it has since been criticised for favouring the middleweights, which is why DOTS and the IPF GL points were introduced.","inputs":{"sex":"male","total_kg":600,"bodyweight_kg":100},"wilks_score":365.15,"wilks_coefficient":0.6086},"meta":{"timestamp":"2026-06-07T08:18:04.256Z","request_id":"6ce9762a-a695-41c4-9d74-d33323356999"},"status":"ok","message":"Wilks","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":"Kilograms. Wilks = total×500/poly5(bw); DOTS = total×500/poly4(bw); IPF GL = 100·total/(A−B·e^(−C·bw)). Separate male/female (and raw/equipped) constants. For 1RM estimation use a strength-training API.","service":"powerlifting-api","endpoints":{"GET /v1/dots":"DOTS coefficient and score.","GET /v1/meta":"This document.","GET /v1/wilks":"Wilks coefficient and score from sex, bodyweight and total.","GET /v1/ipf-gl":"IPF GL points (raw/classic or equipped)."},"description":"Powerlifting strength-score maths: Wilks coefficient/score, DOTS score, and IPF GL points."},"meta":{"timestamp":"2026-06-07T08:18:04.338Z","request_id":"1ddad41a-ec34-4c8b-86df-ceef903067d1"},"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":9000,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":720,"monthly_call_quota":88000,"rps_limit":6,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":2620,"monthly_call_quota":360000,"rps_limit":15,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":8100,"monthly_call_quota":1640000,"rps_limit":40,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/powerlifting-api"}