===== API Info ===== API can be found [[https://api.strafes.net/|Here]]. To get an API key you can request one under the support tab on [[https://issues.strafes.net/|here]]. API Examples/How to get started: [[https://wiki.strafes.net/api_examples|here]] ===== API Libraries ===== The API is documented using Swagger which means you can use the [[https://api.strafes.net/documentation.yaml|documentation file]] to automatically generate API clients for essentially every language. The [[https://editor.swagger.io/|Swagger Editor]] offers this functionality without needing to run any local tooling. ===== Extra Useful Info ===== ==== Users API Info ==== *''/user/{userid}'' using this you can get the moderation state, id, and username of the specified user, this can be used to check if they are whitelisted or not. ==== Rank API Info ==== * ''/rank'' This will get you a paged list of the top ranked players. This request requires a Style Id and a Game ID, a page is optional. * ''/rank/{userid}'' This will get you info about a player most notably their rank, skill, and placement. This request requires a Style Id, User ID, and Game ID ==== Time API Info ==== * ''/time/{timeid}'' This will give you info about a certain time. To get a Time Id you can request a users times and get the Time Ids from that. Requires a Time Id * ''/time/{timeid}/rank'' This will get the rank of the time, not very useful or used very often. Requires Time Id * ''/time/recent'' This gets the 50 most recent times. No required paramaters * ''/time/recent/wr'' This will give you the 10 most recent World Records. Requires Style Id, and Game Id * ''/time/map/{mapid}'' Gets all the times on a map sorted by ascending order. Requires Map Id. Optional Style Id, Page * ''/time/map/{mapid}/wr'' Gets the World Record of the map. Requires Map Id and Style Id * ''/time/user/{userid}'' Gets all times from a user. Requires User Id. Optional Map Id, Style Id, Game Id, Page * ''/time/user/{userid}/wr'' Gets all World Records from a user. Requires User Id, Style Id, and Game Id. ==== Map API Info ==== * ''/map'' Gets a list of maps and extra info about them, most notably Creator, map id, and playcount. Optional Game Id, Page(200 Per page) * ''/map/{mapid}'' Gets info about a certain map. Required Map Id ==== State Ids ==== * 0 - Normal * 1 - Whitelisted * 2 - Blacklisted * 3 - Pending ==== Style/Game Ids ==== * Game Ids * 1 - Bhop * 2 - Surf * Style Ids * 1 - Autohop * 2 - Scroll * 3 - Sideways * 4 - Half-Sideways * 5 - W-Only * 6 - A-Only * 7 - Backwards