Example for member @rendiorton   Games last 90 days TO last 90 days TO Web stats API Calculated TO Last 20 games Standard 152 66 46% 0% 43% 0% Chess960 7 3 42% 35% 43% 35%   There appears to be no logic to the approach and no thought into how these results are presented.  How can this be trusted with the obvious inaccuracies?
stephen_33 Dec 6, 2024
can someone add this mode when it hides the rateing of my oppents? temorarly ofc tho.
ThroughtonsHeirAlexHebert Nov 22, 2024
Hi, The end point to get the members of club May the chess be with you gives an internal error and returns no data. The same API for other clubs seems works correctly. It's been like this for several days. https://api.chess.com/pub/club/may-the-chess-be-with-you/members Returns: {"code":0,"message":"An internal error has occurred.Please contact Chess.com Developer's Forum for further help https://www.chess.com/club/chess-com-developer-community ."} Can you check it? Thanks.
stephen_33 Nov 18, 2024
The creation of this guide may lead to blockades within the unofficial API, as it is not known if one or more pieces of data this guide contains may be purposely hidden by Chess.com for legal or their own reasons. However I hope this guide will not have a capacity to be used abusively. Let's start with a link to the official API documentation https://www.chess.com/news/view/published-data-api If you're still here you want undocumented stuff. Let me warn what it means to use undocumented endpoints: List of endpoints that don't exist:1. About Me in a player's profile I will send links and mention what useful stuff I found in them. In all of them, the website will look like this, with {username} replaced by hikaru, for hikaru's account: https://www.chess.com/callback/user/popup/{username} Let's start: https://www.chess.com/callback/user/popup/hikaru This is generated from trying to message hikaru, and answers the following questions?What's your status*? Are you a staff? What type of premium do you have? Can I gift you a premium subscription, and why? what's your Country ID? Are we friends? Did I send you a friend request? Did you send me a friend request? What's your top puzzle rush score? What's your best rating? In what time control your best rating is? * Status is not Biography of the user, it's the 50 character status as you input directly in your profile page. I will be honest. I don't have anything else, so I will let you know how to get the PGN of a game by its URL Step 1: Take a random URL you need. I will use this: https://www.chess.com/game/live/15360860817 Step 2: Go to this endpoint, the number being the ID of the game. Notice live and game are swapped for unknown reasons: https://www.chess.com/callback/live/game/15360860817 Step 3: From the unofficial endpoint of the callback fetch the date of the game. Step 4: Use the official API to fetch all games within the same month of one of the participants ( top or bottom ) Step 5: Find the URL of the game within the result, as the URL itself is given. Step 6: You also get a PGN. Step 7: ???? Profit https://www.chess.com/callback/member/activity/hikaru?page=1 This endpoint allows you to see hikaru's recent activity over Chess.com Let me know if you have other uses which you know the way to do / want to know how to do. https://www.chess.com/callback/user/games?locale=en_US&all=1&userId=15448422 This gets Hikaru's last games, which is extremely useful for some deep learning programs. The User ID of hikaru was found here, which is identical to one of the other callbacks in this guide: https://www.chess.com/callback/user/popup/hikaru https://www.chess.com/callback/live/stats/hikaru/chart?daysAgo=30&type=blitz This one finds a chart of Hikaru's changes in blitz. You can change time control and days to pinpoint data. https://www.chess.com/callback/member/stats/hikaru General stats of Hikaru from the unofficial API of Chess.com. It gives an important missing data of latest tactics rating. https://www.chess.com/callback/leagues/user-league/search/hikaru League stats of Hikaru from the unofficial API of Chess.com
EternalTofu Nov 17, 2024
Just wanted to share my progress on a Chess Gif Maker I'm currently working on.Got it to where you can choose custom colors, pieces, resolution, etc. just working on figuring out how I can make it faster and what I can do to make it better. Like ui, etc. Here's some results from exploration.
vijaypuliparazh Nov 17, 2024
Hi guys,  When pulling the API: https://api.chess.com/pub/player/skywood55/games/2024/11, The game with the UUID:3f906267-a28d-11ef-bc0e-5206c001000f The PGN says this is an indian game black knights tango, when it is pretty far from that. Real Indian Game Black Knights tango:1.d4 Nf6 2.c4 Nc6 This game (Scotch Game): 1.e4 e5 2.Nf3 Nc6 3.d4 This game is a Scotch game and it even says so when you are doing an analysis on the game. Is this a mistake in the API or is it deciding that it somehow transposed into a bizarre Indian game black knights tango? Has anyone else seen errors like this in the data? I am working on a project and I have run into this and if there is errors in the data like this it would essentially ruin my project. I would have to clean my data once a month which would take way too long. 
Martin_Stahl Nov 15, 2024
Hi, I'm a developer and for my personal use, I'd like to programmatically fetch my game reviews. I'd like to monitor for example game accuracy or number of blunders etc. I don't plan to make a product out of this   but it's only for my personal use. Is it still possible to get access to such APIs?  thanks
AwesomeAtti Nov 14, 2024
Hi All, I recently made a chrome extension to calculate attackers and defenders for each piece, identify hanging pieces, and assess whether you can gain material in exchanges. The extension is not mean to cheat and will only work when playing against the computer or when completing puzzles. Any and all feedback is much appreciated. https://selmetwa.github.io/blunder-watching/
Hey, first of all I wanted to thank you guys for all the hard work providing APIs and stuff! A colleague and I are working on a chess AI for a university project. Our supervisor recommended us to test our AI through matching it against real players on chess.com. But for realizing that we would need an API, which enables matchmaking, getting the current board and pushing moves on it. Probably this is the purpose for which you are developing the interactive API you are talking about here? If it is, we would like to know, when you are planning to release it and how we could use it then. Thank you for your time, I really appreciate!
RealGojira Nov 13, 2024
Way back when I was creating the 4teamchess competitions, I calculated how many players there were by chess.com rating. I generated a spreadsheet to illustrate the differences. But now I have forgotten how I did it. Please take a look and see if you can figure out how I can update the percentage to current numbers?: Back then there were 6 million 15 thousand players. I know I used information that was readily available here. rank number pct 25000 100 89717 0.014914 373 1 373 200 195111 0.032433 811 374 1184 300 328633 0.054629 1366 1185 2549 400 470841 0.078268 1957 2550 4506 500 572374 0.095146 2379 4507 6885 600 631917 0.105044 2626 6886 9511 700 628286 0.104440 2611 9512 12122 800 594633 0.098846 2471 12123 14593 900 516472 0.085853 2146 14594 16739 1000 442244 0.073514 1838 16740 18577 1100 359953 0.059835 1496 18578 20073 1200 293519 0.048792 1220 20074 21293 1300 230314 0.038285 957 21294 22250 1400 177690 0.029537 738 22251 22988 1500 135053 0.022450 561 22989 23550 1600 101053 0.016798 420 23551 23970 1700 74537 0.012390 310 23971 24279 1800 54458 0.009053 226 24280 24506 1900 38479 0.006396 160 24507 24666 2000 29077 0.004833 120 24667 24786 2100 19299 0.003208 80 24787 24866 2200 12724 0.002115 65 24867 24931 2300 8153 0.001355 60 24932 24991 2400 5143 0.000855 55 24992 25046 2500 2500 0.000416 50 25047 25096 2600 1744 0.000290 45 25097 25141 2700 1020 0.000170 40 25142 25181 2800 490 0.000081 35 25182 25216 2900 220 0.000037 30 25217 25246 3000 90 0.000015 20 25247 25266 3100 14 0.000002 14 25267 25280 3200 2 0.000000 2 25381 25282 6015760 25282 6015760
Superhero_og Nov 12, 2024
Seems this endpoint for player results, has been changed without any notice . This is the spec: "results": [ "played_as_white": "win", //result of game played as white, see "Game results codes" section "played_as_black": "win" //result of game played as black, see "Game results codes" section ], Always has been as_white with "," terminator followed by as_black and "]" terminator.Now in some cases it is reversed.How can changes like this be implemented without any specification change? This is out of control. Another instance of total lack of software quality assurance.
Tricky_Dicky Nov 11, 2024
Just noticed this for the following member:- https://www.chess.com/member/pawn314159 The web 'last online' date clearly states Oct 26, 2022 wherever that data appears but the member's endpoint disagrees:- https://api.chess.com/pub/player/pawn314159 "last_online":1667598759 When I decode the time integer I get this:- tm_year=2022, tm_mon=11, tm_mday=4, tm_hour=21, tm_min=52, tm_sec=39, ..... i.e. Nov 4, 2022 I think I'm reading that correctly.
stephen_33 Oct 30, 2024
So im admin in a 1750 members club and the owner asked me to make a list of which countries have the most ammount of people in them. Im working on it but is there a faster way than just looking at the member list to update 1 person and do it 1750 times???
Martin_Stahl Oct 26, 2024
By any chance are there any dev's from Chess.com here? I would love to help redo the API docs if possible?  As someone using the API for various projects, I'd love to be able to contribute to improving the documentation.  I've done a bit of exploring, and I've Hono + zod-openapi + Scalar make for a killer API setup with OpenAPI spec'd routes and automatic documentation with Scalar.
codecalmchess Oct 17, 2024
Hi, I was trying Chess.com API, I just want to fetch some data,I managed to get my rating from it, I want to get "my today's matches", like total matches played today, number of wins, lose, draws... I don't want PGNs and all that, I just want number of matches (rated).. UPDATE:: I GOT IT BY DOING THIS.. (I'LL CHANGE SOME STATIC DATES AND MONTHS LATER ON..) BUT THIS IS THE RESULT.. games = get_player_games_by_month(name,"2021","06").json['games'] (gets games of the month) games = [d for d in games if d['end_time'] >= datetime.strptime("June 7, 2021", "%B %d, %Y").timestamp() and d['rated'] == True and d['time_class'] == "rapid"] (Filters out "rapid", and "Rated" games from given date to current date)games = [{"str": d["pgn"]} for d in games] (filters out only pgns to find out results) for eg. in loop (for game in games) something like this "game['str'].count('Result "1/2-1/2"')" would return true if game is drawn... Thank you @stephen_33, @Hyper-Dragon for helping.. if anyone interested in complete code, ping me..
stephen_33 Oct 14, 2024
Using chessdotcom.client.get_player_game_archives with player oruam now doesn't show games before 2016, but instead there are games from 2007-07. Are there any update on the command?
Martin_Stahl Sep 24, 2024
After a long time, my countryman is in contention to become a world champion in Chess. And to add to the excitement, Google is sponsoring the championship match happening at Singapore! In the spirit of celebrating Chess and Google - my passion and my work, I created a pgn to csv convertor utility that takes games you played on chess.com and converts all of it a structured CSV. You can then use this to build cool dashboards like this one that I built from the data I generated from my games - https://public.tableau.com/app/profile/jerome.rajan/viz/MyChessJourney-2024/MyChessJourney Link to my tool - https://chess-pgn2csv-converter.streamlit.app/
datasherlock Sep 23, 2024
Hi everyone https://chessinsights.xyz is a website that uses the chess.com api to visualize export all user data to a csv, JSON or pgn. Everything runs on client side javascript and I used the chart.js library to plot the data. I also made a python script that can export all of a users data to a json file and convert it into an sqlite database. This is my first project using javascript so everything is a bit messy. I plan on rewriting it using vue.js and implementing some sort of data persistence to prevent unnecessary request to the api. Let me know if you have any suggestions or know of similar projects like this. Thanks. - Project repo: https://github.com/NotJoeMartinez/chess-insights - Python Script: https://github.com/NotJoeMartinez/chess-insights/tree/main/cli
Hello everybody, I'm working on developing a website that aims to provide analysis of trends in all your games on chess.com. The goal is to offer a tool that tracks trends, patterns, and insights, helping players understand their performance and improve their gameplay. Think of it as a homebrew AimChess or Chess.com’s Insights from someone who played chess very seriously for over a year. Currently, I’ve developed a predictive rating graph that forecasts your rating over time using complex regression techniques. This graph is a key feature, and I plan to expand the website to include other analytics that will help you spot weaknesses in your game. While the site is still in its early stages of development, and I am a very busy person outside of this project (still in school, working part-time, and programming for a world-class robotics team), I hope to keep up regular improvements to this website as a fun personal project. I would love to hear your feedback and any ideas for features you'd find useful as I continue developing this tool! *The graph shows the regression model training over the players history (X: game #, Y: rating). Everything past the dashed line represents the program’s predictions.
alex_bowe Sep 18, 2024
Hi, anyone know how to download list of players & games with certain rating using the API? thanks