Steam browser protocol

From Valve Developer Community

There are numerous system-wide commands available that interact with Steam. All of them open up Steam if it is not open. They can either be typed into a command box (Start-> Run) or through your browser's address bar (you can normally create links to them as you would web page links). Use a Steam Application ID in place of <id> (i.e. 211 for the Source SDK).

Image:note.png Note: If you forget the closing quote on a steam:"<command>", you will get an assertion failed error from Steam.exe/BootStrapperApp.cpp.
  • steam://advertise/<id> Opens up the store for an application.
  • steam://ackMessage/ackGuestPass/<pass> Accepts the Gift or Guest Pass.
  • steam://appnews/<id> Opens up the news page for an app.
  • steam://backup/<id> Opens up the Backup Wizard and checks the specified application. If an application is not specified then nothing will be checked.
  • steam://connect/<IP or DNS name>[:<port>] Connects the user to the server specified by the IP or DNS name. You don't have to specify anything for connecting a third party mod server, it will be automaticly detected.
    • Example: steam://connect/1.0.0.27:27015
    • Example: steam://connect/dns.server.com
  • steam://defrag/<id> Defragments files of the application.
  • steam://friends/
    • add/<id> - Adds user with specified id number
    • players - Shows list of users with whom you recently played
    • joinchat/<id> - Joins a chat with a specified id number
    • message/<id> -
  • steam://guestpasses/ (http://panfrie.zergs.com/redirect.html?steam://guestpasses/) Opens up the Guest Passes window
  • steam://hardwarepromo/ Executes hardware promo method.
    • Example: steam://hardwarepromo/305 (http://panfrie.zergs.com/redirect.html?steam://hardwarepromo/305) gets the products for this offer (http://www.steampowered.com/ati_offer1a/).
    • Example: steam://hardwarepromo/609 (http://panfrie.zergs.com/redirect.html?steam://hardwarepromo/609) gets the products for this offer (http://www.steampowered.com/nvidia1/).
  • steam://install/<id> Installs an application.
  • steam://installaddon/<addon> Installs the specified add-on.
  • steam://open/<component> Opens a Steam window. Known <component> values:
    • friends (http://panfrie.zergs.com/redirect.html?steam://open/friends)
    • games (http://panfrie.zergs.com/redirect.html?steam://open/games)
    • main (http://panfrie.zergs.com/redirect.html?steam://open/main)
    • mymedia (http://panfrie.zergs.com/redirect.html?steam://open/mymedia)
    • news (http://panfrie.zergs.com/redirect.html?steam://open/news)
    • registerproduct (http://panfrie.zergs.com/redirect.html?steam://open/registerproduct) - Allows registering of keys from different games (e.g Prey)
    • servers (http://panfrie.zergs.com/redirect.html?steam://open/servers)
    • settings (http://panfrie.zergs.com/redirect.html?steam://open/settings)
  • steam://openurl/<url> Opens URL in default web browser.
  • steam://paypal/cancel Cancels an ongoing PayPal transaction.
  • steam://preload/<id> Preloads an application.
  • steam://publisher/<name> Loads the specified publisher catalogue in the Store. Type the publisher's name in lowercase, e.g. activision or valve.
  • steam://purchase/<id> Opens a dialog box to buy an application from Steam.
  • steam://purchase/subscription/<id> Opens up a dialog box to buy a subscription to a Steam product/service. None are available yet.
  • steam://removeaddon/<addon> Uninstalls the specified add-on.
  • steam://run/<id> Runs an application.
  • steam://runsafe/<id> Resets CVARs of an app.
  • steam://settings/ (http://panfrie.zergs.com/redirect.html?steam://settings/) Same as steam://open/settings (http://panfrie.zergs.com/redirect.html?steam://open/settings), but also allows for subcommands for each page:
    • account (http://panfrie.zergs.com/redirect.html?steam://settings/account)
    • friends (http://panfrie.zergs.com/redirect.html?steam://settings/friends)
    • interface (http://panfrie.zergs.com/redirect.html?steam://settings/interface)
    • ingame (http://panfrie.zergs.com/redirect.html?steam://settings/ingame)
    • downloads (http://panfrie.zergs.com/redirect.html?steam://settings/downloads)
    • voice (http://panfrie.zergs.com/redirect.html?steam://settings/voice)
  • steam://store/<id> Opens up the store for an app, if no app is specified then the default one is opened.
  • steam://support/<params> Launches the Steam Support utility, running all tests. Enter valid support string to filter results.
  • steam://uninstall/<id> Deletes the specified apps' cache files.
  • steam://updatenews/<id> Opens the news about the latest updates for an app.
  • steam://url/<page>[/<params>] Opens a specified Steam Community page
    • ChatBanListAdmin/...
    • DownloadsSupportInfo (http://panfrie.zergs.com/redirect.html?steam://url/DownloadsSupportInfo) - Opens support.valvesoftware.com in your default browser
    • GroupEventsPage/<id>
    • GroupSteamIDPage/<id>
    • GroupSteamIDAdmin/<id>
    • LeaveGroupPage (http://panfrie.zergs.com/redirect.html?steam://url/LeaveGroupPage)
    • SteamIDControlPage (http://panfrie.zergs.com/redirect.html?steam://url/steamIDControlPage)
    • SteamIDEditPage (http://panfrie.zergs.com/redirect.html?steam://url/SteamIDEditPage)
    • SteamIDLoginPage/... - ???
    • SteamIDPage/<id>
    • StoreFrontPage - ???
    • SupportFrontPage (http://panfrie.zergs.com/redirect.html?steam://url/SupportFrontPage) - Opens support.valvesoftware.com in your default browser
  • steam://validate/<id> Validates the GCFs of an app.

Suggested commands

The following commands are community suggestions and are not presently featured in Steam:

  • steam://connect/<IP or DNS name>[:port]/<password>
    • Connects to the specified server with the right password --Semi
      • I think that this is a must due to the fact that the appid's are complete bs when it comes to launching steam remotely. --pumakuma
  • steam://connect/<IP or DNS name>[:port]/'command1 "arg1" "arg2";command2 "arg1";password "blah";etc..'
    • Connects to the specified server after executing the specified commands --ts2do
  • steam://vdc/<page title>
  • steam://gameinfo/<IP or DNS name>[:port]
    • Opens the "Game Info" dialog for the specified server. Maybe also integrated into the server browser, so you don't have to add a server to the favorites to have access to that window. --Koraktor
Appreciated -Rotzi
  • steam://runsingle/<AppID>
    • Runs an app, then shuts down Steam once the game closes. -- AiusEpsi
      • This is stupid. All Source games needs Steam open in order to do anything concerning gcf files, which is the game itself.--Sortie 23:53, 5 Apr 2007 (PDT)
it shuts down steam AFTER the game ran and closed! Leopard84
  • steam://forceupdate/<AppID>
I don't get the point. Useless in my point of view. -Rotzi
    • Forces update (if autoupdate fails) of all files (including all linked .gcf) for defined AppID. -- Dwarden
Restarting Steam would be simpler, and have the same effect. --TomEdwards 08:23, 13 Sep 2006 (PDT)
i'm afraid it's not that simple, see my post there http://forums.steampowered.com/forums/showthread.php?s=&threadid=485982 -- Dwarden
Yea, my steam REFUSES to update ANYTHING, even after re-installing it. A force update would be nice. --PanFrie 04:50, 1 Feb 2008 (EST)
  • steam://checkbuild/<AppID>
    • Compares actual local build of AppID with latest version available at Steam servers for defined AppID.
    • Results displayed in way: '<AppID> - <ActualLocalBuild>:<LatestBuildAtSteamServers>
    • and if they not match it offers user dialog to force update to latest build.