{"openapi":"3.1.0","info":{"title":"Speedrun API","version":"1.0.0","description":"Video-game speedrunning data as an API, powered by speedrun.com — the central community hub where players submit and rank their fastest completions of video games. This API turns that catalogue into clean JSON. /v1/games?name=mario searches the game database, returning each game's id, name, abbreviation, release year and weblink. /v1/categories?game=o1y9wo6q lists a game's run categories — the different ways a game is raced, such as Any%, 100%, 120 Star or Glitchless — with each category's id, type and the rules that define a valid run. /v1/leaderboard?game=o1y9wo6q&category=wkpoo02r returns the leaderboard for a game and category: the ranked runs with the runner name(s), the finish time both in seconds and in human-readable form (e.g. 1h 35m 14s), the date of the run and a link to the run video where available (top caps how many runs, 1-100). The natural flow is games to categories to leaderboard. Ideal for gaming dashboards and record trackers, stream overlays and bots, esports and community sites, and data analysis of speedrunning trends. Game and category ids are speedrun.com ids (e.g. game o1y9wo6q = Super Mario 64). Data from speedrun.com (free to use).","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/speedrun-api","description":"oanor gateway"}],"tags":[{"name":"Speedrun"},{"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/categories":{"get":{"operationId":"get_v1_categories","tags":["Speedrun"],"summary":"A game run categories","description":"","parameters":[{"name":"game","in":"query","required":true,"description":"Game id (from /v1/games), e.g. o1y9wo6q","schema":{"type":"string"},"example":"o1y9wo6q"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"game":"o1y9wo6q","count":6,"categories":[{"id":"zdnq4oqd","name":"Stage RTA","type":"per-level","rules":"# General Rules (updated 10/16/2023) The goal of Stage RTA is to collect all 7 stars within a given stage (the 6 named stars on the star select screen and the 100 coin star). Stage RTA generally follows the same rules as those listed under the main Game Rules with the addition of the following: - You must start your run from the star select menu on the relevant stage (e.g. starting from level rese","weblink":"https://www.speedrun.com/sm64/levels?h=Stage_RTA&x=zdnq4oqd"},{"id":"wkpoo02r","name":"120 Star","type":"per-game","rules":"# 120 Star Rules Beat the game while collecting all 120 stars with the following restrictions: ## ## Gameplay Restrictions: - None","weblink":"https://www.speedrun.com/sm64?h=120_Star&x=wkpoo02r"},{"id":"7dgrrxk4","name":"70 Star","type":"per-game","rules":"# 70 Star Rules Beat the game as quickly as possible with the following restrictions: ## Gameplay Restrictions: - All forms of [BLJ](https://ukikipedia.net/wiki/Backwards_Long_Jump) are banned - All forms of [MIPS clipping](https://ukikipedia.net/wiki/RTA_Guide/MIPS_Clip) are banned - Circumventing any castle door or star requirement via any other method is banned","weblink":"https://www.speedrun.com/sm64?h=70_Star&x=7dgrrxk4"},{"id":"n2y55mko","name":"16 Star","type":"per-game","rules":"# 16 Star Rules Beat the game as quickly as possible with the following restrictions: ## Gameplay Restrictions: - All forms of [Side BLJ](https://ukikipedia.net/wiki/Backwards_Long_Jump#Side_BLJ) are banned - Any method to skip the 30 star door other than [MIPS Clip](https://ukikipedia.net/wiki/RTA_Guide/MIPS_Clip) is banned","weblink":"https://www.speedrun.com/sm64?h=16_Star&x=n2y55mko"},{"id":"7kjpp4k3","name":"1 Star","type":"per-game","rules":"# 1 Star Rules Beat the game as quickly as possible with the following restrictions: ## Gameplay Restrictions: - DDD skip is banned","weblink":"https://www.speedrun.com/sm64?h=1_Star&x=7kjpp4k3"},{"id":"xk9gg6d0","name":"0 Star","type":"per-game","rules":"# 0 Star Rules Beat the game as quickly as possible ## Gameplay Restrictions: - Cannot collect any stars","weblink":"https://www.speedrun.com/sm64?h=0_Star&x=xk9gg6d0"}]},"meta":{"timestamp":"2026-06-01T16:23:39.765Z","request_id":"f7d8188a-286a-423f-8457-edc47883e813"},"status":"ok","message":"Categories retrieved","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/games":{"get":{"operationId":"get_v1_games","tags":["Speedrun"],"summary":"Search games","description":"","parameters":[{"name":"name","in":"query","required":true,"description":"Game name, e.g. mario","schema":{"type":"string"},"example":"mario"},{"name":"limit","in":"query","required":false,"description":"Max results (1-50)","schema":{"type":"string"}}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"count":10,"games":[{"id":"m1mezg4d","name":"New Super Mario Game","weblink":"https://www.speedrun.com/nsmg","released":2026,"abbreviation":"nsmg"},{"id":"yd477mgd","name":"64 Mario in Baldi's Basics Classic","weblink":"https://www.speedrun.com/64_Mario_in_Baldis_Basics_Classic","released":2026,"abbreviation":"64_Mario_in_Baldis_Basics_Classic"},{"id":"k6q9p291","name":"Super Mario Odyssey Boss Rush","weblink":"https://www.speedrun.com/SMOBR","released":2026,"abbreviation":"SMOBR"},{"id":"9d37wr06","name":"Super Mario Bros. Daredevil Edition","weblink":"https://www.speedrun.com/smbde","released":2026,"abbreviation":"smbde"},{"id":"yd47oqxd","name":"Mario Tennis Fever","weblink":"https://www.speedrun.com/Mario_Tennis_Fever","released":2026,"abbreviation":"Mario_Tennis_Fever"},{"id":"9doko0k1","name":"Super Mario Bros 0.5","weblink":"https://www.speedrun.com/Super_Mario_Bros_05","released":2026,"abbreviation":"Super_Mario_Bros_05"},{"id":"w6j97q5d","name":"Super Mario Bros. 13","weblink":"https://www.speedrun.com/Super_Mario_Bros_13","released":2026,"abbreviation":"Super_Mario_Bros_13"},{"id":"m1m7vo41","name":"Ninji Burst!","weblink":"https://www.speedrun.com/Ninji_Burst","released":2025,"abbreviation":"Ninji_Burst"},{"id":"46wrp891","name":"Marios Christmas Adventure 2","weblink":"https://www.speedrun.com/Marios_Christmas_Adventure_2","released":2025,"abbreviation":"Marios_Christmas_Adventure_2"},{"id":"nd27pq31","name":"Smooth Mario Bros.","weblink":"https://www.speedrun.com/Smooth_Mario_Bros","released":2025,"abbreviation":"Smooth_Mario_Bros"}],"query":"mario"},"meta":{"timestamp":"2026-06-01T16:23:40.510Z","request_id":"734739ba-6631-47dd-a7c9-498572cd1435"},"status":"ok","message":"Games retrieved","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/leaderboard":{"get":{"operationId":"get_v1_leaderboard","tags":["Speedrun"],"summary":"Leaderboard for game + category","description":"","parameters":[{"name":"game","in":"query","required":true,"description":"Game id, e.g. o1y9wo6q","schema":{"type":"string"},"example":"o1y9wo6q"},{"name":"category","in":"query","required":true,"description":"Category id (from /v1/categories), e.g. wkpoo02r","schema":{"type":"string"},"example":"wkpoo02r"},{"name":"top","in":"query","required":false,"description":"Max runs (1-100)","schema":{"type":"string"}}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"game":"o1y9wo6q","count":10,"category":"wkpoo02r","leaderboard":[{"date":"2026-04-26","rank":1,"time":"1h 35m 14s","video":"https://www.youtube.com/watch?v=KboxS9NNFJMhttps://youtu.be/KboxS9NNFJM","players":["Suigi"],"time_seconds":5714},{"date":"2025-08-11","rank":2,"time":"1h 35m 30s","video":"https://www.youtube.com/watch?v=sjKi6aruFVs?t=1","players":["Karin"],"time_seconds":5730},{"date":"2025-03-19","rank":2,"time":"1h 35m 30s","players":["anonymous "],"time_seconds":5730},{"date":"2026-03-15","rank":4,"time":"1h 35m 55s","video":"https://youtu.be/lpzLPLvCK94","players":["Parsee02"],"time_seconds":5755},{"date":"2026-05-19","rank":4,"time":"1h 35m 55s","video":"https://www.youtube.com/watch?v=e56Dqt2sZn4","players":["cheese"],"time_seconds":5755},{"date":"2024-07-06","rank":6,"time":"1h 36m 2s","video":"https://www.youtube.com/watch?v=CJzTDktmx-Q","players":["Weegee"],"time_seconds":5762},{"date":"2026-03-01","rank":7,"time":"1h 36m 9s","video":"https://www.youtube.com/watch?v=icY6NFngDmA","players":["Smau"],"time_seconds":5769},{"date":"2025-05-01","rank":8,"time":"1h 36m 33s","video":"https://youtu.be/9-b4e-TAwtQ","players":["Kally"],"time_seconds":5793},{"date":"2025-06-16","rank":9,"time":"1h 36m 47s","video":"https://www.twitch.tv/videos/2500391723","players":["marlene"],"time_seconds":5807},{"date":"2024-09-26","rank":10,"time":"1h 37m 6s","video":"https://youtu.be/4eFd3ffPTMo?si=ufJ3__CkClAgtG6n","players":["simply"],"time_seconds":5826}]},"meta":{"timestamp":"2026-06-01T16:23:41.391Z","request_id":"8a7ad268-d62b-49d5-8e7c-e9b322c3ebbc"},"status":"ok","message":"Leaderboard retrieved","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":"Usage notes","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Video-game speedrunning data from speedrun.com, the central community hub for competitive fastest-completion runs. /v1/games?name=mario = search games, returning each game's id, name, abbreviation, release year and weblink; /v1/categories?game=o1y9wo6q = a game's run categories (e.g. Any%, 120 Star, 100%) with their ids, type and rules; /v1/leaderboard?game=o1y9wo6q&category=wkpoo02r = the leaderboard for a game+category, returning the ranked runs with the runner name(s), finish time (in seconds and human-readable), run date and video link (top caps how many, 1-100). Get a game id from /v1/games, then a category id from /v1/categories, then the leaderboard. Data from speedrun.com (free to use). Ideal for gaming dashboards, record trackers, stream overlays and community bots.","source":"speedrun.com API (speedrun.com/api/v1)","endpoints":["/v1/games","/v1/categories","/v1/leaderboard","/v1/meta"]},"meta":{"timestamp":"2026-06-01T16:23:41.445Z","request_id":"4825cb14-c7b0-40f8-9c68-9105640100df"},"status":"ok","message":"Meta retrieved","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":2800,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":550,"monthly_call_quota":46000,"rps_limit":5,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":1750,"monthly_call_quota":195000,"rps_limit":12,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":4700,"monthly_call_quota":720000,"rps_limit":35,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/speedrun-api"}