Note
Consider switching to the ASF plugin FreePackages
developped by Citrinate!
This repository contains Python code to automatically add free licenses on Steam.
- Install the latest version of Python 3.X.
- Install the required packages:
pip install -r requirements.txt
- Install ArchiSteamFarm (ASF).
- Make sure that IPC is toggled ON. This is the default value.
To retrieve a list of appIDs which are already tied to your account, here are a few methods.
1. /dynamicstore/userdata
The variable rgOwnedApps
in the JSON data returned by
the /dynamicstore/userdata
endpoint is
a large yet non-exhaustive list of appIDs owned by your account.
More information can be found on this unofficial wiki.
NB: you have to be authenticated on Steam in your web-browser in order to use this method.
2. steamctl apps list
steamctl
is a Python package available on PyPI.
It allows to print to the terminal the exhaustive list of appIDs owned by your account.
pip install pipx
pipx install steamctl
steamctl apps list
The output should be formatted as follows: {appID} {appName}
.
[...]
1667640 Imagined Leviathans Demo
1667710 Gladihaters Demo
1667730 Forgotten Journey
1667770 Samurai Shampoo
1667810 Riding Seas Demo
[...]
NB: you have to be authenticated on Steam with steamctl
in order to use this method.
3. /games/?tab=all
Caveat: I recommend not to use this procedure because the list of appIDs is not exhaustive , e.g. demos are missing.
A procedure built into the script
at Luois45
parses a list of appIDs from
the /games/?tab=all
web-page.
NB: the "game details" part of your Steam profile have to be public in order to use this method.
4. /account/licenses/
Caveat: I recommend not to use this procedure because this retrieves subIDs instead of appIDs.
Instructions
at Luois45
suggest to execute JavaScript code in your browser
on the /account/licenses/
web-page.
NB: you have to be authenticated on Steam in your web-browser in order to use this method.
Because it is the only method which returns an exhaustive list, the recommended method is:
pip install pipx
pipx install git+https://github.com/woctezuma/steamctl.git@67-fix-charmap
steamctl apps list > data/steamctl_output.txt
python add_free_licenses.py
- A Github issue which describes some attempts to retrieve owned appIDs,
Luois45/claim-free-steam-packages
: a tracker of free licenses on Steam,woctezuma/steam-next-fest
: a previous project of mine which makes use of ASF IPC,- A Steam guide listing all of the free licenses which increment the library count.