This repository has been archived by the owner on Mar 31, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 180
Protobufs
Michael Scholtz edited this page Mar 5, 2017
·
6 revisions
This page describes the meaning and purpose of various protobuf fields used by Steam, reverse-engineered by the community. If you know something that isn't mentioned here, please add it.
Feel free to add descriptions for protobufs that aren't currently exposed by node-steam, since this page is intended to be language-agnostic.
-
account_name
- your Steam login. Required? -
password
- required unlesslogin_key
is used? -
auth_code
- Steam Guard code. Must be valid if provided, otherwise the logon will fail. Note that Steam Guard codes expire after a short while. -
two_factor_code
- Two-factor authentication code provided by the Steam mobile application. You will have to provide this code every time you log in if your account uses 2FA. -
sha_sentryfile
- SHA1 hash of your sentry file. If not provided, Steam will send you a sentry file through the ClientUpdateMachineAuth message (unless a limit for registered sentries is reached? see #178). If no Steam Guard code is provided, the hash must be already registered with this account, otherwise it's ignored. This value will be ignored if you enable 2FA. -
login_key
- alternative topassword
?
If the account has Steam Guard enabled and you provide neither a Steam Guard code nor a sentry hash registered with this account, the logon will fail and you'll receive an email with the code.
If you provide both a sentry hash and a valid Steam Guard code, the hash will be registered with this account. This allows you to reuse the same hash for multiple accounts.
-
eresult
- alwaysEResult.OK
? -
webapi_authenticate_user_nonce
- a new "loginkey" to be used with WebAPI's AuthenticateUser.
-
games_played
- may contain multipleGamePlayed
messages for multi-game idling?
-
game_id
- AppID. Needs some specific value for non-Steam games? (15444025664222527488
works) -
game_extra_info
- name of the non-Steam game.
-
bytes
- data to write.
-
sha_file
- SHA1 ofbytes
. (Or of the resulting file? Won't matter until offsets are used.) The only field required for a response.
-
friends
- may contain multipleFriend
messages.
-
friendid
- SteamID of the user. -
persona_state
-EPersonaState
. -
player_name
- profile name.
-
steamid_clan
- SteamID of the group. -
events
- mutually exclusive withannouncements
? Contains at most oneEvent
? -
announcements
- mutually exclusive withevents
? Contains at most oneEvent
?
-
headline
- headline of the announcement or the event.
-
eresult
-EResult
, the logon was successful if equal toEResult.OK
. -
webapi_authenticate_user_nonce
- "loginkey" to be used with WebAPI's AuthenticateUser.