We've got plans for adding more clubs, tournaments, and team match data endpoints, and by popular demand we will figure out how to attach PGNs to games for you to download. Then we'll start talking about how to open up the interactive API. Help us plan and prioritize everything — tell us what you plan to build! Then we can figure out the data and tools that you need and how to publish it. So what is it? A local database of your games? New analysis tools for everyone? A "Fantasy Chess League" for your friends? A super top-secret app guaranteed to take chess to the next level? Let us know as much or as little of the idea as you like, but help us understand what data you need to build it right!   (Remember to read the README so you can understand any restrictions and how these might change over time.)
Avatar of Theodoregore5
Theodoregore5 2 days ago
It takes a lot of effort to provide a viable API, and we're only getting started. We are very excited to help you build tools, services, and systems that help the Chess.com world-wide community of chess lovers enjoy and learn more about their favorite game. With your help, the Chess.com community can have all the niche specialty tools and daring massive data-crunchers they could hope for. Like any business, we need to know that our developers' time is making the biggest impact for our players. If you appreciate this API and would like us to continue active development and support, help us see the impact — tell us what you've built! This "Working Code" forum is all about things that actually exist and use the API for something useful — these things could be large and complex, or goofy little one-liners from the command line. Let us know how you are using it, and tell us about the players enjoying it. Share URLs or how-tos. Depending on the response, we may also decide to promote the most interesting and useful apps in news articles and app listings. If you have plans and either the API doesn't provide the data you need or (like all of us) you haven't found the time yet, post a description of your goal in the What Will You Build forum.
Avatar of YankeeBastid
YankeeBastid Sep 29, 2025
In this forum topic, Chess.com Staff will share a weekly update on bugfixes, new API endpoints, documentation updates, and other changes. Other posts or discussion may be deleted, to keep this topic relevant. You are invited to start from the last post to see the most recent changes.
Avatar of M-DinhHoangViet
M-DinhHoangViet Sep 15, 2025
As of mid-December 2024 the Public API is in a maintenance / bug-fix only mode. The club description has been updated to reflect the change in status. Included below is a copy of the statement from the description. Note that Chess.com's Public API is no longer being actively updated, and there are always engineering projects underway that may occasionally impact functionality of the Public API. While you are free to build projects on the Public API, you may encounter bugs or instability - to report a bug, please post in the club forum.
Avatar of Martin_Stahl
Martin_Stahl Jan 10, 2025
If you are building something interesting and driving new members to Chess.com, join our Affiliate Program! 
Avatar of Slogo44211
Slogo44211 Jan 7, 2025
There are some backend updates occuring that feed the following API endpoints. /pub/match/{id}  /pub/match/live/{id}  /pub/player/{username}/games/archives  /pub/player/{username}/games/{yyyy}/{mm}  /pub/player/{username}/matches /pub/tournament/{url-ID}/{round}/{group} It's not expected that there will be any issues but if anything is noticed, please create a topic along with the endpoint(s) being called
Avatar of Martin_Stahl
Martin_Stahl Nov 10, 2024
Latest update: 2017-07-31 by @bcurtis   Chess.com is making the chess game and community data available to outside programmers through two APIs: The "Published-Data API," which re-publishes as JSON most of the public data available on the website, and is easy to use with little programming skill and so if you have a simple feature to build or are just dabbling in programming this is where to start. The "PubAPI" has endpoints coming online now; you can START HERE with the general documentation and list of available endpoints. The "Interactive API," which is the same connection our official mobile apps use to obtain data and send commands, and as such it requires a developer application process and more complex handling of security and data handling. Information will be posted soon about how to participate in the release over the coming year. This README will be edited from time to time to reflect the current state of the rollout. When contributing comments below about how the README should be improved, consider that previous comments may refer to older versions of the README. Visit the CHANGELOG forum to review the latest updates. Bug reports, feature requests, and commentary posted to these forums will be read by the developers building these tools. We may not respond immediately or at all, but every post will be read.     These APIs should be considered BETA products. These APIs are currently under development and many many changes will be released over the next six months. We will actively incorporate your comments left here in the devclub forum, but this means that API endpoints not clearly marked as "stable" should not be considered for critical production applications. We may temporarily suspend the service without notice for maintenance, security, or other reasons. With your active participation in these forums, you can help us avoid breakages while improving the access for everyone. During this release period, we will be determining priorities and value based on feedback from the community. Participants should not expect a precise or reliable development roadmap while these APIs are in beta. All data are owned by Chess.com. This data retention statement is intended to provide guidance to developers as we gather their feedback and create a more formal agreement. The final published terms may change your rights, and by accessing the API you agree to apply those terms retroactively to data you may have previously downloaded. If you are not comfortable using an API and data which may have the terms of use change possibly frequently and without notice, then we advise that you postpone your development until after the beta period is complete. Please continue to participate in the discussion to help us craft the best policy for everyone.Under no circumstances may data obtained from the Chess.com website or API be used to create or augment a competing service. If you are concerned that your service may be deemed "competing," ask us. Store only the data you need to provide your service and only for as long as needed. Respect the Chess.com community by not displaying or processing outdated and misleading data. Your rights to use, process, or share the data may change from time to time, so that we may protect our users' privacy and Chess.com's ability to provide an enjoyable service.
Avatar of 1Veni2Vidi3Vici
1Veni2Vidi3Vici Oct 7, 2024
When a club is disabled, it causes problems for any league it's in and any opponents. I'd like to be able to programmatically detect disabled clubs.  Has anybody found a way to do it? The club appears to look entirely normal from the API: For example, Chess Champions Legion was recently disabled. When you go to its club page on the site you get redirected to '/clubs' and there's a banner.  https://www.chess.com/club/chess-champions-legion-1 But when you use the public-API, there's no indicator that I can see: $ curl "https://api.chess.com/pub/club/chess-champions-legion-1" | jq{  "@id": "https://api.chess.com/pub/club/chess-champions-legion-1",  "name": "Chess Champions  Legion",  "club_id": 163600,  "country": "https://api.chess.com/pub/country/XX",  "average_daily_rating": 1668,  "members_count": 575,  "created": 1595998354,  "last_activity": 1753252684,  "admin": [    "https://api.chess.com/pub/player/janisabolinss"  ],  "visibility": "private",  "join_request": "https://www.chess.com/club/join/163600",  "icon": "https://images.chesscomfiles.com/uploads/v1/group/163600.233be8f0.50x50o.d38deb646c07.jpg",  "description": "<p><strong>Greetings we are a team with daily chess, vote chess,960 daily chess, and live chess tournaments, we participate in all major team Leagues</strong> <span style=\"color: #e03e2d;\"><span style=\"color: #e03e2d;\"><strong>1) TMCL</strong></span><strong style=\"color: #e03e2d;\">, 2) 1WL, </strong><span style=\"color: #e03e2d;\"><strong>3) KOTML</strong></span><strong style=\"color: #e03e2d;\">, 4) TCMAC. </strong><strong><span style=\"color: #e03e2d;\"><span style=\"color: #169179;\">W</span></span><span style=\"color: #169179;\">e intend to become a DIVISION A team in all these Leagues one day</span></strong><strong style=\"color: #e03e2d;\">, we would be honoured to have you with us!! Please be kind and active ,play fair ,that is all we ask!!</strong></span></p>\r\n<p><span style=\"color: #e03e2d;\"><strong style=\"color: #e03e2d;\"> <br /></strong></span></p>",  "url": "https://www.chess.com/club/chess-champions-legion-1"} Has anybody found a way to detect disabled clubs?
Avatar of Guendulain
Guendulain 5 hrs ago
we need to have beter actions
Avatar of coolpro200021
coolpro200021 1 day ago
Honestly and frankly always a good way of clarifies things when in person. Looking forward to a good spirit of competent from people all around the world..... Ummph
Avatar of WowSuchAjedrez
WowSuchAjedrez 2 days ago
Another day, another endpoint that isn't working.... https://api.chess.com/pub/club/egypt-chess-club {"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 ."} The webpage appears normal.
Avatar of ImperfectAge
ImperfectAge 4 days ago
I went from 2850 to 1700, whats this update man...
Avatar of Ghostofjealousy
Ghostofjealousy 5 days ago
I developed an app to create a highly customizable training routine for chess tactics. It is like chess.com's puzzles, but with many more settings, filters and review functionality. https://chessbuddy.app No signup needed. I'd appreciate any feedback!
Avatar of PixelPincher
PixelPincher 7 days ago
I recently submitted my request for OAuth access so I can implement a sign in with chess.com button on my web app. I've read different information about the amount of time it can take to get approved. Would really like to get it asap. Is there any way to expedite the approval process? Thank you. 
Avatar of Martin_Stahl
Martin_Stahl 14 days ago
Hi all, since last Friday I get an error http.client.IncompleteRead: IncompleteRead(0 bytes read) from my python script when trying a urlopen on the match data point https://api.chess.com/pub/match/1804500 It was working fine before that date.  I understand there's ways to rewrite my script using a different library. I'm just wondering if anyone else is facing a similar issue.
Hi all, I'm trying to pull the full game history of a random sample of usernames taken from players with a USA flag in their profile.  Randomness is important to me, as I'll use the data for academic research. The problem I'm having is it seems the https://api.chess.com/pub/country/US/players only produces a few k players in alphabetical order. Is there a way to generate random sample of all usernames from the API? Thanks for any help. Ben
Avatar of clluelles
clluelles 27 days ago
Hi, I have a problem. I cant get results from all rounds from tournament. When I call:https://api.chess.com/pub/tournament/krakw---polish-chess-tour-1837419 In rounds section I got only 1 url: "rounds":["https://api.chess.com/pub/tournament/krakw---polish-chess-tour-1837419/7"]When I call for example: https://api.chess.com/pub/tournament/krakw---polish-chess-tour-1837419/1I got empty results. How get rounds 1,2 etc?
Hi all, Is there an API I can call that will show me historical puzzle stats, i.e. the daily Attempts / Passed / Failed history one can see on the Stats --> puzzles graph? If not a direct API is there any other mthid I can use to access? BVC
Avatar of BaronVonChickenpants
BaronVonChickenpants 30 days ago
I don't know why my puzzles score was decrease too much but not have the reason. It happened at 07/10/2025. So please give back to me soon
Avatar of Martin_Stahl
Martin_Stahl Oct 13, 2025
Would be possible to share in this API some internal player id and enable to call this API through this player ID? The problem with the player name field is that players change the names time to time and then it is not possible to link old and new profile, so it will duplicate the player.
Avatar of ruipereira71
ruipereira71 Oct 13, 2025