Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Steam API all games

Tags:

I've been reading forums and trying Steam APIs, I'm searching for an API which provides all Steam Games.

I found the API providing all SteamApps, and the Steam Store API which provides information for Apps (I'm looking for the type: 'game'), but for this, I need to call the store API once for each SteamApp... And the Store API is limited to 200 calls every 5 minutes! Is it the only solution?

EDIT:

All Apps API : http://api.steampowered.com/ISteamApps/GetAppList/v0002/?key=STEAMKEY&format=json

App details API : http://store.steampowered.com/api/appdetails?appids={APP_ID}

like image 524
Ankomm Avatar asked Sep 20 '17 20:09

Ankomm


People also ask

Is there an api for Steam?

Steam exposes an HTTP based Web API which can be used to access many Steamworks features. The API contains public methods that can be accessed from any application capable of making an HTTP request, such as game client or server.

Is Steam api important?

Integration with the Steamworks API is never required to ship your product on Steam, but it is highly recommended as it allows you to accomplish many interactions that Steam users expect.

Is Steam api free?

Steam Web APIs.Valve makes the Steam Web API available free, and you understand that Valve may change or terminate the Steam Web API entirely or your access in particular. Valve may identify new releases from time to time at this link, and may require you to use the most recent version.

How do I get game data from Steam?

Now, log in to Steam and look for the game you want to download the files for. Navigate to the Show Files option on the right-hand column to see all the files belonging to that game. Choose what files you want to download, pick the location where you wish to store the files, and click download.


1 Answers

There is no "Steam API all games and all their details in one go".

You use GetAppList to get all the steam apps. Then you have to query each app with appdetails which will take a long time.

  • GetAppList : http://api.steampowered.com/ISteamApps/GetAppList/v0002/?format=json
{   "applist": {     "apps": [       {"appid": 10, "name": "Counter-Strike"},       {"appid": 20, "name": "Team Fortress Classic"},       {"appid": 30, "name": "Day of Defeat"},       {"appid": 40, "name": "Deathmatch Classic"}     ]   } } 
  • appdetails : http://store.steampowered.com/api/appdetails?appids=10
{   "10": {     "success": true,      "data": {       "type": "game",       "name": "Counter-Strike",       "steam_appid": 10,       "required_age": 0,       "is_free": false,       "detailed_description": "...",       "about_the_game": "...",       "short_description": "...",       "developers": ["Valve"],       "publishers": ["Valve"],       "EVEN_MORE_DATA": {}     }   } } 

There is a general API rate limit for each unique IP adress of 200 requests in five minutes which is one request every 1.5 seconds.

Another solution would be to use a third-party service such as SteamApis which offers more options but they are inevitably bound to what Steam offers in their API.

like image 92
EliteRaceElephant Avatar answered Sep 28 '22 02:09

EliteRaceElephant