[docimg=BundlePurchaseOption2.jpg]BundlePurchaseOption2.jpg[/docimg] There are two types of Bundles to handle common scenarios: [olist] [*] [b]Complete The Set[/b] - Customers that purchase this type of Bundle will pay for, and receive, just the items in that bundle that they don't already have in their Steam library. …
You must enter a name, a discount, the list of packages to include, and pick the type of bundle. Note that you need the "Manage pricing and discounts" permission for any game you wish to add to a bundle. …
This document describes where various types of events can appear. Events are your communication channel with your players and prospective players on Steam. You can author a single event with images and metadata attached to it, and it will automatically be pushed out to all the relevant locations across Steam. …
Steam players have the ability to personalize the games and event types they will see. They can increase or decrease the frequency of events about games that appear in their 'What's New' section. To present the best event to your fan on their home, you need to be mindful of when older events should no longer appear in this section. …
Do not pass the App ID of the workshop item creation tool if that is a separate App ID. [*] [apitype]ISteamRemoteStorage::EWorkshopFileType[/apitype] is an enumeration type that defines how the shared file will be shared with the community. The valid values are: [list] [*] [apitype]ISteamRemoteStorage::k_EWorkshopFileTypeCommunity[/apitype] - This file type is used to describe files that will be uploaded by users and made available to download by anyone in the community. Common usage of this would be to share user created mods. [*] [apitype]ISteamRemoteStorage::k_EWorkshopFileTypeMicrotransaction[/apitype] - This file type is used to describe files that are uploaded by users, but intended only for the game to consider adding as official content. …
. [*] The secure server must make an HTTPS request to [code-inline]partner.steam-api.com[/code-inline] and call the [webapi]ISteamUserAuth/AuthenticateUserTicket[/webapi] web method, passing the user's session ticket as a hex encoded UTF-8 string. Please note that this method allows either a [url=https://steamcommunity.com/dev]Steam Web API Key[/url] or a [doclink=webapi_overview/auth#publisher-keys]Web API Publisher Key[/doclink] that is associated with the AppID for the provided ticket to be passed in. …
[subsection]Linking From In-game[/subsection] Session Tickets can be used to verify a user's identity between a game client and a secure, backend server using the Steamworks Web API: [list] [*] The client must retrieve a session ticket by calling [api]ISteamUser::GetAuthTicketForWebApi[/api]. [*] To guarantee a valid ticket, the client must wait for the [api]ISteamUser::GetTicketForWebApiResponse_t[/api] callback. [*] The client must send its session ticket to the secure server. [*] The secure server must make an HTTPS request to [code-inline]api.steampowered.com[/code-inline] and call the [webapi]ISteamUserAuth/AuthenticateUserTicket[/webapi] web method, passing the user's session ticket as a hex encoded UTF-8 string. Please note that this method requires a [doclink=webapi_overview/auth#publisher-keys]Web API Publisher Key[/doclink] that is associated with the AppID for the provided ticket. [*] If the user's ticket is valid, [webapi]ISteamUserAuth/AuthenticateUserTicket[/webapi] will return the user's 64-bit SteamID. …
[section=ItemVoteSummary]ItemVoteSummary[/section] [code=http]POST https://partner.steam-api.com/ISteamPublishedItemVoting/ItemVoteSummary/v1/[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Required[/th][th]Description[/th][/tr] [tr][td][b]key[/b][/td][td]string[/td][td]✔[/td][td]Steamworks Web API publisher authentication key.…
[section=UserVoteSummary]UserVoteSummary[/section] [code=http]POST https://partner.steam-api.com/ISteamPublishedItemVoting/UserVoteSummary/v1/[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Required[/th][th]Description[/th][/tr] [tr][td][b]key[/b][/td][td]string[/td][td]✔[/td][td]Steamworks Web API publisher authentication key.…
. [*] [api]steamnetworkingtypes[/api] is a header that has many common types and utilities. [*] [doclink=features/multiplayer/steamdatagramrelay]Steam Datagram Relay[/doclink] is a service for relaying your game traffic over the Valve backbone. …
This API works best when used with [doclink=features/multiplayer/matchmaking][/doclink], depending on the types of packets you could route everything through one player that is acting as the host (typically the lobby owner) or game server, or send everything out directly to each player. …
[section]Creating[/section] To distribute your dedicated game server through Steam, there are a few necessary configurations to be made. [olist] [*] Create a new App ID of type TOOL that will be used solely for the dedicated server for the game. You can do this yourself by visiting the "All Associated Packages, DLC, Demos and Tools" section for your app and clicking "Create new Tool" button. [*] Inside that new App, click Edit Steamworks Settings. …
[section]Releasing[/section] Your dedicated server has a release checklist similar to other types of products in Steamworks. You'll need to complete the required items listed on the right-hand side of your app landing page for the tool. …
[section=GetAllApprovalRequests]GetAllApprovalRequests[/section] [code=http]GET https://partner.steam-api.com/IPublishedFileModerationService/GetAllApprovalRequests/v1/[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Required[/th][th]Description[/th][/tr] [tr][td][b]key[/b][/td][td]string[/td][td]✔[/td][td]Steamworks Web API publisher authentication key.…
[section=ProcessApprovalRequest]ProcessApprovalRequest[/section] [code=http]POST https://partner.steam-api.com/IPublishedFileModerationService/ProcessApprovalRequest/v1/[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Required[/th][th]Description[/th][/tr] [tr][td][b]key[/b][/td][td]string[/td][td]✔[/td][td]Steamworks Web API publisher authentication key.…
[section]Configuring Location of Broadcast Player[/section] By default, broadcasts will appear at the very top of your sale page. But you can add a 'broadcast' type section to your page (further instructions below) to display livestreams in a specific spot on your page (if, for example, you wish to show more information above the broadcast player). This 'broadcast' type section will automatically include livestreams from games that are part of your sale and from specific accounts that you approve. …
The developer can upload configuration for multiple different controller types -- such as PlayStation 4 controller, Steam Controller, and Xbox 360/One controllers, and on the first run, Steam will detect your device and select the appropriate configuration. [callout=red] [b]NOTE:[/b] By default, all configurations for controller models other than the one you're currently using are hidden, but you can select "Show Other Controller Types" to force them to appear. It generally isn't a good idea to try to use a configuration meant for another physical device, however. …
Note: This only applies to games running through FEX (e.g. Windows x86 builds using Proton). [/list]…
[section=GetAppList]GetAppList[/section] [code=http]GET https://partner.steam-api.com/IStoreService/GetAppList/v1/[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Required[/th][th]Description[/th][/tr] [tr][td][b]key[/b][/td][td]string[/td][td]✔[/td][td]Any web API key.[/td][/tr] [tr][td][b]if_modified_since[/b][/td][td]uint32[/td][td][/td][td]Return only items that have been modified since this date.…
[/td][/tr] [/table] Returns a list of all apps available on the Steam Store. The type of items returned can be filtered using the [code-inline]include_games[/code-inline], [code-inline]include_dlc[/code-inline], [code-inline]include_software[/code-inline], [code-inline]include_videos[/code-inline], and [code-inline]include_hardware[/code-inline] flags. …
[section]Before you start[/section] In order to make use of this feature, you will need to: [list] [*]Review the [doclink=store/promo]rules and guidelines[/doclink] for the type of event you are running. [*]At the bottom of each rules page, find the link under "Getting started" and submit a support ticket with information about your event. [*]Once enabled, you'll need to add your games, configure sections and finish most of the merchandising work to organize the games in your sale. [*]Flip over to the 'preview' of your sale page, and you'll see the controls to enable background groupings. …
[/b] A: Probably best not to overwhelm people with too many moving things [b]Q: What file types are supported for background groupings?[/b] A; .jpg .png .webp…
[section=GetNewsForApp]GetNewsForApp[/section] [code=http]GET https://api.steampowered.com/ISteamNews/GetNewsForApp/v2/[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Required[/th][th]Description[/th][/tr] [tr][td][b]appid[/b][/td][td]uint32[/td][td]✔[/td][td]AppID to retrieve news for[/td][/tr] [tr][td][b]maxlength[/b][/td][td]uint32[/td][td][/td][td]Maximum length for the content to return, if this is 0 the full content is returned, if it's less then a blurb is generated to fit.…
Change history: [list] [*] [b]Version 2[/b] - Removes element names from arrays [/list] [section=GetNewsForAppAuthed]GetNewsForAppAuthed[/section] [code=http]GET https://partner.steam-api.com/ISteamNews/GetNewsForAppAuthed/v2/[/code] [table] [tr][th]Name[/th][th]Type[/th][th]Required[/th][th]Description[/th][/tr] [tr][td][b]key[/b][/td][td]string[/td][td]✔[/td][td]Steamworks Web API publisher authentication key.…
[section]Overview[/section] Custom configuration files can be included directly within your game depots for a number of benefits: [list] [*]Official configurations can be checked into Perforce or other revision control tools [*]Managing configurations between different branches of your game or between a public and private AppID is easier [*]Updates are atomic rather than being done via two publishing steps in Steamworks [/list] [section]Format[/section] The action manifest file is an extension of the [doclink=features/steam_controller/iga_file][/doclink] which includes an extra section containing a list of official configurations broken out by type: [code] "Action Manifest" { "configurations" { } "actions" { } "localization" { } } [/code] For information about the action and localization sections please see the [doclink=features/steam_controller/iga_file][/doclink] documentation. [subsection]Configuration List[/subsection] In the controller configuration section the configurations are listed by controller type, then by priority for loading. The "path" value is listed relative to the Action Manifest file's location on-disk. [code] "Action Manifest" { "configurations" { "controller_xboxone" { "0" { "path" "xbox_controller.vdf" } } "controller_steamcontroller_gordon" { "0" { "path" "steam_controller.vdf" } "1" { "path" "steam_controller_motion_controls.vdf" } } } "actions" { } "localization" { } } [/code] Supported controller type strings: [table] [tr][td]Steam Deck Controller[/td][td]controller_neptune[/td][/tr] [tr][td]Steam Controller[/td][td]controller_steamcontroller_gordon[/td][/tr] [tr][td]Xbox 360[/td][td]controller_xbox360[/td][/tr] [tr][td]Xbox One[/td][td]controller_xboxone[/td][/tr] [tr][td]Xbox One Elite Controller[/td][td]controller_xboxelite[/td][/tr] [tr][td]PlayStation 3 Controller[/td][td]controller_ps3[/td][/tr] [tr][td]PlayStation 4 Controller[/td][td]controller_ps4[/td][/tr] [tr][td]DualSense Controller[/td][td]controller_ps5[/td][/tr] [tr][td]DualSense Edge Controller[/td][td]controller_ps5_edge[/td][/tr] [tr][td]Nintendo Switch Pro Controller[/td][td]controller_switch_pro[/td][/tr] [tr][td]Nintendo Switch 2 Pro Controller[/td][td]controller_switch2_pro[/td][/tr] [tr][td]Nintendo Joy-Con (L)[/td][td]controller_switch_joycon_left[/td][/tr] [tr][td]Nintendo Joy-Con (R)[/td][td]controller_switch_joycon_right[/td][/tr] [tr][td]Nintendo Joy-Con Pair[/td][td]controller_switch_joycon_pair[/td][/tr] [tr][td]Remote Play Touch Controller[/td][td]controller_mobile_touch[/td][/tr] [tr][td]Generic Gamepads[/td][td]controller_generic[/td][/tr] [/table] [section]Setting up an Action Manifest File[/section] There are two main ways to setup your action manifest file, either starting from scratch or using an existing IGA file. …
[section]Overview[/section] An important part of managing your Steamworks Partner account is deciding who has access to your Applications, and what type of access you'd like to give them. The configuration you choose may differ based on your relationship of individual users and teams involved. …
[/b] You can sign up as a limited Steamworks account by following [url=https://partner.steamgames.com/newpartner/?signup_type=6&force_new=1]this link[/url]. This sign-up process includes just the NDA and a collection of company or individual contact information. …
Approved titles will not release themselves -- you need to use these controls yourself at the moment you wish your product to be released. You can check our [doclink=store/types][/doclink] documentation for more information on the types of releases we support. [docimg=ReleaseOptions_2.png]ReleaseOptions_2.png[/docimg] After you click "Release App", you'll see a summary of actions that the release process will do, including publishing the store package, setting a launch discount live if you chose to have one, setting the game to playable and released and applying the release timestamp of "NOW". …
At this time only app and sale pages are supported. We hope to expand support for additional page types in the future. [h4]Q. Do UTM links get recorded if the store page opens an age gate?[/h4] A. Yes, the UTM click event is recorded for the app when the age gate page is shown. …
This includes mobile devices and tablets. We do not currently display which types of devices customers are using when they visit the store page via a UTM link click. If a user signs in to Steam on their mobile device where they clicked the UTM link, then subsequently makes a wishlist or purchase on a computer we will recognize that as a conversion. …
[subsection]Option 2: Request keys[/subsection] Additionally, you can request keys for a package called "Dev Comp" that will grant immediate access to your application. To learn more about the different types of packages and requesting keys, please see [doclink=store/application/packages][/doclink]. [subsection]Dev Comp Packages - Important Configuration Note[/subsection] As a Steamworks developer, you have a special type of packages attached to your publisher group. …
You can get around this in one of two ways: [olist] [*] You can initiate the friend request from a non-limited account. [*] You can activate a Dev Comp type key for your game on one of the new accounts, which will grant the game to that account and will de-limit that account and allow you to send friend requests from it. …
You can create an independent soundtrack from your main partner landing page, the same way you would create a new game. [/list] Both types of soundtracks are fundamentally similar: they are a collection of MP3s and metadata that can optionally include other components, including high-quality/lossless audio files, associated artwork, etc. …
We recommend these be in a subdirectory like "FLAC". [*]On the [b]Depots[/b] page, create a new depot and set its type to [b]Optional high-quality/uncompressed audio[/b]. [*]Save your depot configuration changes. [*]Publish the depot configuration changes. …