User:RJackson/StorefrontAPI

From Team Fortress Wiki
Jump to: navigation, search

Rough documentation for the storefront API - exposed via Big Picture mode. Data is returned in JSON format.

Global parameters

Parameters observed to be used on all methods:

cc (Optional)
Country code for method to return appropriate currency values.
l (Optional)
For localized strings; takes English name of language (none of those fancy ISO distractions).
v (Optional)
Unknown.

Shared data structures

App info

id
type
name
discounted
discounted_percent
original_price
Pre-discount application price.
final_price
Post-discount application price.
currency
What currency prices are denoted in.
large_capsule_image
URL of large-capsule image.
small_capsule_image
URL of small-capsule image.
discount_expiration (Optional)
Unix timestamp of when the discount noted above :expires. Is not provided if the app is not discounted.
headline (Optional)
Headline to atop large-capsule widget.
controller_support (Optional)
Whether the app has controller support. Known values:
  • partial
  • full
purchase_package (Optional)
Subscription ID for purchasing the app.

Known methods

featured

Data about apps featured on storefront.

GET http://store.steampowered.com/api/featured/

Parameters

Result data

large_capsules
An array of objects denoting app information; see #App info.
featured_win
An array of objects denoting app information; see #App info.
featured_mac
An array of objects denoting app information; see #App info.
layout
status

featuredcategories

Even more data about featured apps.

GET http://store.steampowered.com/api/featuredcategories/

Parameters

trailer (Optional)
Unknown.
extra (Optional)
controller.

Result data

N
id
name
items
An array of objects, with differing app structures dependant upon N.id:
cat_spotlight
name
header_image
body
url
cat_dailydeal
See #App info
specials
id
name
items
An array of objects denoting app information; see #App info.
coming_soon
id
name
items
An array of objects denoting app information; see #App info.
top_sellers
id
name
items
An array of objects denoting app information; see #App info.
new_releases
id
name
items
An array of objects denoting app information; see #App info.
genres
id
name
trailerslideshow
id
name
status

appdetails

GET http://store.steampowered.com/api/appdetails/

Parameters

appids
CSV of app IDs to return details of.
If you request information about more than 1 appid, you'll need to set filters parameter to value "price_overview," otherwise the server will respond with a "null" and the status code 400 Bad Request. If you use multiple appids and try to use multiple filters or any other filter, the server will respond with null. This might be a bug from steam's server side.
filters (Optional)
CSV list of keys to return, e.g. "name,platforms,price_overview". If you use multiple appids, you must set this parameter to "price_overview".
The filter basic returns the following keys:
type
name
steam_appid
required_age
dlc
detailed_description
about_the_game
supported_languages
detailed_description
supported_languages
header_image
website
pc_requirements
mac_requirements
linux_requirements
Any key names except those listed under basic are acceptable as filter values.

Result data

App ID
success
data
type
Observed values: "game", "dlc", "demo", "advertising", "mod", "video".
name
steam_appid
required_age
controller_support (Optional)
Whether the app has controller support. Known values:
  • partial
  • full
dlc (Optional)
Array of app ids.
detailed_description
String (html).
about_the_game
String (html).
short_description
String (html).
fullgame (Optional)
Shown for movies or demos.
appid
Can be null.
name
Can be "Uninitialized".
supported_languages
String (html).
header_image
URL to image.
website
pc_requirements
Array
minimum
String (html).
recommended
String (html).
mac_requirements
Array
minimum
String (html).
recommended
String (html).
linux_requirements
Array
minimum
String (html).
recommended
String (html).
legal_notice (Optional)
developers (Optional)
Array of strings
publishers
Array of strings.
demos (Optional)
Whether there are demos available for this app.
appid
Demo app's id.
description
To note the demo's restrictions.
price_overview (Optional)
Omitted if free-to-play.
currency
Currency prices are denoted in.
initial
Pre-discount price.
final
Post-discount price.
discount_percent
packages
Array of package IDs.
package_groups
Array of purchase options
name
Observed values: default, subscriptions
title
description
selection_text
If display_type is 1, this describes what the subs represent.
save_text
Marketing text about the massive savings you'll get!
display_type
Numeric value noting how it should be displayed on store pages.
0 - list subs as seperate purchase blocks.
1 - list subs in a dropdown box, contained within a single purchase block for the package group.
is_recurring_subscription
subs
Array of subscriptions in this package group.
packageid
percent_savings_text
percent_savings
option_text
option_description
platforms
Booleans.
windows
mac
linux
metacritic (Optional)
score
url
categories (Optional)
Array.
id
description
genres (Optional)
Array.
id
description
screenshots (Optional)
Array.
id
path_thumbnail
URL to image.
path_full
URL to image.
movies (Optional)
Array.
id
name
thumbnail
webm
480
URL of 480p video.
max
URL of max-quality video.
highlight
Boolean; not sure it's purpose.
recommendations (Optional)
total
Int
achievements (Optional)
total
Int
highlighted
Array
name
path
URL to achievement icon.
release_date
coming_soon
Boolean, true if unreleased; false if released.
date
Format is localized, according to the cc parameter passed. Is an empty string when date is unannounced.

appuserdetails

Information about apps & users in the context of the Steam account logged in to storefront.

GET http://store.steampowered.com/api/appuserdetails/

Parameters

appids
CSV of app IDs to return details of.

Result data

App ID
success
data
friendswant (Optional)
steamid
playtime_twoweeks
playtime_total
friendsown (Optional)
steamid
playtime_twoweeks
playtime_total
recommendations
totalfriends
friends (Optional)
steamid
timestamp
recommendation
commentcount;
added_to_wishlist
is_owned (Optional)
Omitted when false

messages

Messages that are displayed to users either in a dedicated section of Big Picture mode, or as their own window when a user launches Steam or closes a game.

GET http://store.steampowered.com/api/messages/

Parameters

gids
ID of the message.

Result data

gid
ID for the message.
linkurl
button_text
Text for the button linking to linkurl
partner
image
URL of the messages image.
association
vOv
type
id

packagedetails

GET http://store.steampowered.com/api/packagedetails/

Parameters

packageids
CSV of package IDs to return details of.

Result data

Package ID
success
data
name
page_image
Header image on the storefront page.
header_image (Optional)
Header image but scaled to the same size as appdetails' header_image images.
apps
Array of apps the package contains.
id
name
price
currency
Currency prices are denoted in.
initial
Pre-discount price.
final
Post-discount price.
discount_percent
individual
The sum of each individual app's price.
platforms
Booleans.
windows
mac
linux
release_date
coming_soon
Boolean, true if unreleased; false if released.
date
Format is localized, according to the cc parameter passed. Is an empty string when date is unannounced.

salepage

GET http://store.steampowered.com/api/salepage/

Parameters

id
ID of the sale.

Result data

status
id
Sale ID
name
'Default' observed, seemingly unused.
available
Date-range of the sale, formatted as %b %d - %b %d
items
Array of apps in the sale.
id
App ID
name
Name of app
type
Type of app, usually seen as string but represented as an int here; enum structure not known.
0 - game