Please is it possible to help include the master games collection along with the games stats in the available API?
MaskedSuperPakara Feb 14, 2021
Are there any APIs to submit a game and get a game report?
I recognize this is probably a large list, but is it possible to fix the problem with accessing the list of US players from the API? $ curl https://api.chess.com/pub/country/US/players{"status":"error","message":"Internal Server Error"} (updated)
stephen_33 Feb 2, 2021
Description: Get details about a tournament's round. URL pattern: https://api.chess.com/pub/tournament/{url-ID}/{round} For every tournament I've checked so far, every round's ["groups"] appears to be empty with the exception of the last round. I don't really know what a round group is so I'm not sure if that's correct or not. I expected there to be data (players,pgn, etc..) for every round of a tournament. (https://api.chess.com/pub/tournament/{url-ID}/{round}/{group}). What am I missing? Examples: >>> for i in range(1,11):... full_url = "https://api.chess.com/pub/tournament/-scc-grand-prix-titled-tuesday-blitz-1496670/" + str(i)... res=sess.get(full_url)... res.json()... {u'players': [], u'groups': []}{u'players': [], u'groups': []}{u'players': [], u'groups': []}{u'players': [], u'groups': []}{u'players': [], u'groups': []}{u'players': [], u'groups': []}{u'players': [], u'groups': []}{u'players': [], u'groups': []}{u'players': [], u'groups': []} {u'players': [{u'username': u'thebutcher'}, {u'username': u'attilaturzo'}, {u'username': u'parintele_chess'}, {u'username': u'ecwinslow'}, {u'username': u'komodo_dragaon'}, {u'username': u'goldihouse'}, {u'username': u'gmkrikor'}, {u'username': u'jrenatomaranhao'}, {u'username': u'powerthinking2650'}, {u'username': u'erichansen'}, {u'username': u'creativity'}, {u'username': u'fins0905'}, {u'username': u'gregshahade'} ...... >>> full_url = "https://api.chess.com/pub/tournament/-scc-grand-prix-titled-tuesday-blitz-1526407">>> res=sess.get(full_url)>>> total_rounds=res.json()["settings"]["total_rounds"]>>> for i in range(1,total_rounds +1):... full_url = "https://api.chess.com/pub/tournament/-scc-grand-prix-titled-tuesday-blitz-1526407/" + str(i)... res=sess.get(full_url)... res.json()... {u'players': [], u'groups': []} {u'players': [], u'groups': []}{u'players': [], u'groups': []}{u'players': [], u'groups': []}{u'players': [], u'groups': []}{u'players': [], u'groups': []}{u'players': [], u'groups': []}{u'players': [], u'groups': []}{u'players': [], u'groups': []}{u'players': [{u'username': u'justinz'}, {u'username': u'parintele_chess'}, {u'username': u'gmkrikor'}, {u'username': u'davigator'}, {u'username': u'jrenatomaranhao'}, {u'username': u'marcocorvi'}, {u'username': u'erichansen'}, {u'username': u'creativity'}, {u'username': u'gregshahade'}, {u'username': u'vishnuprasanna'}, {u'username': u'chess4life23'}, {u'username': u'geordie_derraugh'}, {u'username': u'zkid'}, {u'username': u'spalir'}, {u'username': u'wannabe2700'}, {u'username': u'fearnoevil12'}, {u'username': u'synctel'}, {u'username': u'lacafi'}, {u'username
Martin_Stahl Jan 23, 2021
Hi!I am trying to find a way to get a list of usernames for players who "cheated", but I could not find any good way to do that, so I am asking for your help.
CosmosOfSolomon Jan 23, 2021
EDIT Should have looked at the exception, it's because of usage limits: [Error [WebapiError]: Too Many Requests] { statusCode: 429 } Where can I find out about the usage limits? I'm trying to figure out the number of cheaters per country, so Ive written a small application to do just that which connects to the chess-web-api. Basically, it gets all the member names per country (in this case Pakistan). Then it sends a request for player information for each member and checks the members status. If the member has a status of 'closed:fair_play_violations' then it is counted as a cheater It works for small numbers (e.g. 100 players).. but I get about 500 errors if I go for say 3000 members. The repeated call to getPlayer fails about 500 times if I have 3000 members. see code screenshot below and actual code pasted below that. Ive added a member into the list who is a known cheater just for test purposes (ajtheboss1709) Anyone know why I get errors? Is there a quota limit that Im failing? Ideas how to solve? Written in javascript var ChessWebAPI = require('chess-web-api'); var chessAPI = new ChessWebAPI();countCheaters().then(() => {console.log('Finito')}) async function countCheaters() {const res = await chessAPI.getCountryPlayers('PK')const players = res.body.players const subPlayers = players.slice(0, 3000)const cheaters = await getCheaters(subPlayers) console.log('Number of cheaters = ', cheaters.length);} async function getCheaters(subPlayers) {subPlayers.push('ajtheboss1709')const res = await Promise.all(subPlayers.map(async sp => {try {const player = await chessAPI.getPlayer(sp)return {player: sp, cheater: player.body.status === 'closed:fair_play_violations' ? 'Y' : 'N'}} catch (ex) {return {player: sp, cheater: 'UNKNOWN'}}})) console.log('unknown = ' + res.filter(r => r.cheater == 'UNKNOWN').length) return res.filter(r => r.cheater == 'Y')}
Storms-Fast Jan 22, 2021
I am busy collecting some specialised data for chess 960 matches from the API and came across the following curiosity: In the player stats endpoint (https://api.chess.com/pub/player/{username}/stats) the entries "chess_daily" / "record" / "timeout_percent" and "chess960_daily" / "record" / "timeout_percent" are always the same (for those players that have a chess 960 record). Is this a bug? Or is it simply not possible to discriminate between timeouts in normal games and chess 960 games?
I would like a URL which I can type into my browser and the output is my Rapid Rating. I know its super simple but I keep getting {"code":0,"message":"An internal error has occurred.} My URL so far is https://api.chess.com/pub/player/erik/stats/chess_rapid.
MiniMitre Jan 16, 2021
I would find the following changes useful New endpoint that returns all closed accounts per country (the current endpoint only returns active accounts); preferably in a paged fashion (100k at a time, ordered by player_id) Endpoint that returns all 'players' per country in a paged fashion ordered by player_id i.e. you can request say 100,000 players at a time rather than the full shabang (the US times out if you request all players) New endpoint that returns player details in batches; e.g. you pass in 100 member names and get a response that contains 100 player details (e.g. array / one JSON object keyed on player name) For accounts that have a status of 'closed:fair_play_violations' - also add details of the violation; e.g. engine or sandbagging
Storms-Fast Jan 12, 2021
Hello everyone, Apologies if this has been asked before, but I'm having trouble with accessing the player lists of some countries like the US and UK, and I'm assuming that's due to the size of those lists. Does anyone have any ideas about the cause of the problem and solutions or workarounds? Thanks!
Hello,thank you for the great API.I am wondering if there is possible to query only one game based on the chess.com id. Is it a possibility to do https://api.chess.com/pub/game/292659724?Thank you in advance.
elmsakni Jan 7, 2021
Is it possible to add new timestamp "end_time" in this api: https://api.chess.com/pub/club/team-usa-southwest/matches I didn't find it else where...
multivac Jan 5, 2021
I want to make a Python program that makes a graph for members per day using this API: https://api.chess.com/pub/club/the-golden-64-squares/members. How can I do this?
RAD_Financials Jan 3, 2021
Hi, maybe I can't find the correct endpoint, but I want to get information about the current game a player is playing (not in a tournament). So, for example, if someone is playing 10min rated, that I can get information on which color he is, duration etc. Is there an endpoint for this?
APISTOTELHS Dec 29, 2020
End point https://api.chess.com/pub/match/live{ID} Missing spec for maximum and minimum rating setting in match. (Should max_team_players also be included?) "settings":{ "rules":"chess", "time_class":"standard", "time_control":600, "time_increment":2, "min_team_players":1, "min_required_games":0, "autostart":false
Tricky_Dicky Dec 28, 2020
Hi there! I have coded a discord bot just for fun using the chess web API. I have used node JS and Typescript. The most important NPM libraries I have used are discordjs and chess-web-api. You can get a player profile or the stats from a player by inserting a few commands. I have parsed the response so it looks beauty. Player profile: Player stats: The library chess-web-api has no types so I have create the interfaces for the responses. The possibilities are huge, if anyone have any idea please share! Responses are in spanish, sorry for that. Github repo: https://github.com/pablomendezroyo/chess-bot
Tanjirou0 Dec 25, 2020
Howdy, Does anyone have a example of using R language with the API? TIA, David
davidjayjackson Dec 18, 2020
Hey everyone, I made https://howmanymasters.com to see how many titled players you've beaten. Check it out!
I've been trying to download the match archive for this club ... https://www.chess.com/club/chess-school ..but I keep getting an HTTP 500 error. Although the club has a history of playing matches, it seems the endpoint isn't available? At least that's what I'm seeing when I enter the URL into the address bar of my browser... https://api.chess.com/pub/club/chess-school/matches I receive back... {"status":"error","message":"Internal Server Error"}
I noticed that some of my pgn downloads from the past week are missing some fields compared to my pgns from a couple months ago. Some of the missing fields are CurrentPosition, Timezone ,ECO, ECOUrl, UTCDate, UTCTime "23:04:15". I'm particularly interested in having the ECO code. I'm getting these pgns from selecting from my daily games and clicking on the download button. Does anyone know if there are plans to restore these fields, and if not is there some other way I can get this data? Thanks.
Tricky_Dicky Dec 16, 2020