This is the base API endpoint of powerliftingdata.com. If you want to know where this data comes from, how it is calculated and which caveats and limitations apply, visit powerliftingdata.com/data. Use the GET method for these endpoints. All non-error responses will be JSON responses. The form of the returned data is not currently documented. Use a tool like Postman and run through the examples to see the returned data. Should you have questions, concerns or suggestions, please contact me on Instagram @powerliftingdata. The API is public and unrestricted. Please be nice and don't hit it too hard. The following endpoints are available: - api.powerliftingdata.com/version Returns the date at which the data the API returns was last updated. There's no parameters for this endpoint. If you are interested in using this API to regularly fetch data, you are very strongly encouraged to store the results on your end and only hit the API again when the date has changed. Note that this API is in active development and because of how this date is obtained, it might change for various reasons. There's no guarantee any of the data actually changed when the date changes. However, it IS guaranteed that no data changed if the date didn't change. - api.powerliftingdata.com/ipf_record Returns the IPF record of the category determined by the given parameters Query parameters: - federation (World), - ageclass (Open, SubJr, Junior, Master1, Master2, Master3, Master4) - equipment (Classic, Equipped) - weightclass (Men53, Men59, Men66, Men74, Men83, Men93, Men105, Men120, MenOpen, Women43, Women47, Women52, Women57, Women63, Women69, Women76, Women84, WomenOpen) - category (Squat, Bench, Deadlift, Total, BenchOnly) Notes: - Europe and Asia are valid federation parameter values, but currently these records are not stored in the database and thus the response will be empty. Only World records are available at this time. - Men53 and Women43 are only available in Subjunior and Junior age classes as per IPF rules. - Parameter values are case insensitive (CLASSIC, Classic, classic are all valid) Example: - Open total world record for Classic -93kg men: api.powerliftingdata.com/ipf_record?federation=World&ageclass=Open&equipment=Classic&weightclass=Men93&category=Total - api.powerliftingdata.com/ipf_record_history Returns the IPF record history of the category determined by the given parameters Query parameters: - federation (World), - ageclass (Open, SubJr, Junior, Master1, Master2, Master3, Master4) - equipment (Classic, Equipped) - weightclass (Men53, Men59, Men66, Men74, Men83, Men93, Men105, Men120, MenOpen, Women43, Women47, Women52, Women57, Women63, Women69, Women76, Women84, WomenOpen) - category (Squat, Bench, Deadlift, Total, BenchOnly) Notes: - Results are returned sorted by date first and result second, both descending. Typically this means the current record is the first element, the most recently broken record the second element and so on. - Europe and Asia are valid federation parameter values, but currently these records are not stored in the database and thus the response will be empty. Only World records are available at this time. - Men53 and Women43 are only available in Subjunior and Junior age classes as per IPF rules. - Parameter values are case insensitive (CLASSIC, Classic, classic are all valid) Example: - All open total world records for Classic -93kg men: api.powerliftingdata.com/ipf_record_history?federation=World&ageclass=Open&equipment=Classic&weightclass=Men93&category=Total - api.powerliftingdata.com/percentile Returns the percentile of a given result in the category determined by the given parameters Query parameters: - event (SBD, B) - ageclass (Open, SubJr, Junior, Master1, Master2, Master3, Master4) - equipment (Classic, Equipped) - weightclass (Men53, Men59, Men66, Men74, Men83, Men93, Men105, Men120, MenOpen, Women43, Women47, Women52, Women57, Women63, Women69, Women76, Women84, WomenOpen) - category (Squat, Bench, Deadlift, Total) - value (any number) Notes: - Men53 and Women43 are only available in Subjunior and Junior age classes as per IPF rules. - When event is B, only Total is allowed as category (not bench!) - value is in kg and represents for which value you want to find the percentile - Parameter values are case insensitive (CLASSIC, Classic, classic are all valid) Example: - Percentile for a Classic 200kg bench in a full power competition by a -93kg man in the Open division api.powerliftingdata.com/percentile?event=SBD&ageclass=Open&equipment=Classic&weightclass=Men93&category=Bench&value=200 - api.powerliftingdata.com/all_percentiles Returns all percentiles (0th to 100th, which is 101 values in total) for the category determined by the given parameters Query parameters: - event (SBD, B) - ageclass (Open, SubJr, Junior, Master1, Master2, Master3, Master4) - equipment (Classic, Equipped) - weightclass (Men53, Men59, Men66, Men74, Men83, Men93, Men105, Men120, MenOpen, Women43, Women47, Women52, Women57, Women63, Women69, Women76, Women84, WomenOpen) - category (Squat, Bench, Deadlift, Total) Notes: - Men53 and Women43 are only available in Subjunior and Junior age classes as per IPF rules. - When event is B, only Total is allowed as category (not bench!) - Parameter values are case insensitive (CLASSIC, Classic, classic are all valid) Example: - Percentiles for the total of open -93kg men in full power competitions api.powerliftingdata.com/all_percentiles?event=SBD&ageclass=Open&equipment=Classic&weightclass=Men93&category=Total - api.powerliftingdata.com/sheffield_qt Returns the minimum total an athlete needs to win his class with at the IPF World Championship to qualify for the next Sheffield Powerlifting Championships. Query parameters: - weightclass (Men53, Men59, Men66, Men74, Men83, Men93, Men105, Men120, MenOpen, Women43, Women47, Women52, Women57, Women63, Women69, Women76, Women84, WomenOpen) Notes: - This total is 95% of the IPF total world record as of right until the IPF World Championships. - Sheffield is only held in the Classic Open SBD division, all other categories aren't valid (which is why you can't pass these parameters). - This total is only one part of multiple ways to qualify for Sheffield, and athletes hitting this total might also qualify without winning the World Championship. Find out more at https://sbdapparel.com/pages/sheffield. - Parameter values are case insensitive (WOMEN76, Women76, women76 are all valid) Example: - Total needed for the 93kg World Champion to qualify api.powerliftingdata.com/sheffield_qt?weightclass=Men93 - api.powerliftingdata.com/worlds_placing Returns the average World's placing along with the maximum possible average World's placing of a given total in the category determined by the given parameters. Query parameters: - event (SBD, B) - ageclass (Open, SubJr, Junior, Master1, Master2, Master3, Master4) - equipment (Classic, Equipped) - weightclass (Men53, Men59, Men66, Men74, Men83, Men93, Men105, Men120, MenOpen, Women43, Women47, Women52, Women57, Women63, Women69, Women76, Women84, WomenOpen) - total (any number) Notes: - Men53 and Women43 are only available in Subjunior and Junior age classes as per IPF rules. - When event is B, only Total is allowed as category (not bench!) - value is in kg and represents for which value you want to find the World's placing - Parameter values are case insensitive (CLASSIC, Classic, classic are all valid) Example: - Average World's placing for a Classic 800kg total in a full power competition by a -93kg man in the Open division api.powerliftingdata.com/worlds_placing?event=SBD&ageclass=Open&equipment=Classic&weightclass=Men93&total=800 - api.powerliftingdata.com/athlete_name_suggestion Returns a list of athletes whose name starts with the given slug. Query parameters: - slug (any text) Notes: - This endpoint only returns 20 results at a time and at this time there is no pagination. - No wildcard character is supported at this time. - Results are ordered by highest DOTS this athlete has ever achieved in descending order, meaning athletes with higher DOTS appear first. - If a slug does not return the athlete you are looking for, you have to extend the slug to narrow the search. - Because the given slug is only ever what a name you are searching for starts with, you can not search for athletes using only their last name at this time. - The "username" value in the return value is the internal name for this athlete. You can get to this athlete's OpenPowerlifting page by visiting openpowerlifting.org/u/[username]. You also need this username for the other athlete endpoints. - This endpoint checks the "name" column from the OpenPowerlifting dataset. This can lead to ambiguity with names from non-Latin scripts. Some names in the dataset are romanized and those athletes will currently only be found under the romanized names. Names which are not romanized will be found when searching for it in its original script. - Search is not resistant to diacritics or ligatures and other possible characters at this time. This means if a name contains æ or ü, you have to search for it using æ or ü and can not search for it using ae or ue. - Whitespace encoded as "%20" or as "+" is ignored. Any other whitespace encoding like "%C2%A0" is not supported. - Slug is case insensitive. Example: - All athletes whose name in the english alphabet starts with "Amanda L". Remember this parameter is case and whitespace insensitive (so the space does not actually make a difference and this would also find athletes with the first name Amandal). api.powerliftingdata.com/athlete_name_suggestion?slug=Amanda+L - api.powerliftingdata.com/athlete_info Returns an athlete's name and Instagram (if linked in the OpenPowerlifting dataset) Query parameters: - athlete (any text corresponding to a OpenPowerlifting username) Notes: - The athlete parameter needs to be the "username" from the OpenPowerlifting dataset. You can get that using the athlete name suggestion endpoint. - If the athlete name you have given does not exist in the database, the endpoint will still return successfully. The result array will just be empty. - Parameter value is case insensitive. Example: - Info of Amanda Lawrence api.powerliftingdata.com/athlete_info?athlete=amandalawrence1 - api.powerliftingdata.com/athlete_results Returns an athlete's competition results in descending order by competition date (latest result is the first). Query parameters: - athlete (any text corresponding to a OpenPowerlifting username) Notes: - The athlete parameter needs to be the "username" from the OpenPowerlifting dataset. You can get that using the athlete name suggestion endpoint. - If the athlete name you have given does not exist in the database, the endpoint will still return successfully. The result array will just be empty. - Parameter value is case insensitive. Example: - Competition results of Amanda Lawrence api.powerliftingdata.com/athlete_results?athlete=amandalawrence1