Games & Comics — entry 008 of 77
Chess.com
Chess.com's PubAPI is a keyless, read-only REST API covering public player profiles, game archives, clubs, tournaments, and leaderboards, returned as JSON-LD with ETag/Last-Modified caching for conditional requests. Serial polling is effectively unlimited if each response is awaited before the next call, but concurrent/parallel requests can trigger a 429, and the docs ask for an identifying User-Agent to avoid being blocked.
Chess.com's Published-Data API exposes read-only public data — player profiles, stats, game archives, and more — as keyless JSON-LD endpoints under api.chess.com/pub.
GreatAPIs Score
Auth quickstart
- No API key required — requests are public and keyless.
Your key is stored only in this browser (localStorage) and sent directly to the API — never to greatapis.
Get a player's public profile
GEThttps://api.chess.com/pub/player/hikaru
{
"@id": "https://api.chess.com/pub/player/hikaru",
"url": "https://www.chess.com/member/hikaru",
"username": "hikaru",
"player_id": 15448422,
"title": "GM",
"status": "premium",
"followers": 1500000,
"country": "https://api.chess.com/pub/country/US",
"joined": 1389043258,
"last_online": 1751500000
}Developer reference
Gotchas & limits
- Send a descriptive User-Agent identifying your app and a contact method — generic or missing User-Agents are more likely to get blocked
- Firing requests in parallel (instead of waiting for each response) can trigger HTTP 429 Too Many Requests
- Responses are JSON-LD — a `Link` header points to the context, but they parse fine as plain JSON