SteamSets API
Read Steam account, badge, leaderboard, and activity data from SteamSets over one JSON API.
The SteamSets API gives you the same data that powers steamsets.com: Steam profiles, badge collections, leaderboards, trading card owners, and the live activity feed. Every endpoint takes a JSON body and returns JSON, so any HTTP client works.
Quickstart
Get an API key and send your first request.
API reference
Every public endpoint, with schemas and a Try it panel.
Authentication
Send your API key as a bearer token.
TypeScript SDK
Call the API with typed requests and responses.
How requests look
All endpoints live under https://api.steamsets.com/v1. Each endpoint name has the form <resource>.<action>, for example account.getInfo or leaderboard.getAccountLeaderboard. Most endpoints use POST with a JSON body, also when they only read data, so that complex filters do not need to fit in a query string.
curl https://api.steamsets.com/v1/account.getInfo \
-H "Authorization: Bearer $STEAMSETS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"id": {"steamId64": "76561199176433616"}}'
What you can build
- Profile widgets that show a Steam level, badge count, and leaderboard rank.
- Badge trackers that compare collections between up to 10 accounts.
- Bots that post leaderboard changes or live site activity to a Discord server.
- Market tools that find which accounts own a trading card or booster pack.