BYTETOOLS

Steam Store API

Free Steam Store API with no key: featured games, store categories, app details, prices and discounts. Undocumented but widely used. Tested example.

No API key requiredHTTPSFree tier

Endpoint tested and returned HTTP 200 on 20 Aug 2026

What is the Steam Store API?

The Steam Store API is a free, key-free set of endpoints exposing the Steam storefront — featured games, category listings, app details, pricing and current discounts. It is undocumented but publicly accessible and widely used.

Valve has never officially documented these storefront endpoints, but they are public, stable in practice, and used by a great many price trackers and game discovery sites.

Two quirks catch people out. Prices are returned in the smallest currency unit — 1999 means $19.99 — and the appdetails endpoint wraps its response in an object keyed by the app id, with a `success` boolean you must check before reading data.

Quick facts

Base URL
https://store.steampowered.com/api
Authentication
No API key for storefront endpoints. The separate Steam Web API for user data requires a key.
Rate limit
Roughly 200 requests per 5 minutes per IP, unofficially.
Pricing
Free.
CORS
Not enabled — call it from your server
Official docs
Read the docs

How to use the Steam Store API

Every request below was executed against the live API on 20 Aug 2026, and the response shown is the real body it returned — not an illustration.

1. Fetch featured Steam store categories

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

curl
curl 'https://store.steampowered.com/api/featuredcategories'
JavaScript (fetch)
const res = await fetch("https://store.steampowered.com/api/featuredcategories");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://store.steampowered.com/api/featuredcategories", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200 (truncated)
{
  "0": {
    "id": "cat_spotlight",
    "name": "Spotlights",
    "items": [
      {
        "name": "MIDWEEK DEAL",
        "header_image": "https://shared.akamai.steamstatic.com/store_item_assets/steam/spotlights/ddee97d8b10a01365d7a5171/8be87ae3167023d698eb4fc86db7fbdd6b5e61f5/vertical_capsule_english.jpg?t=1786741468",
        "body": "Offer ends %1$s.",
        "url": "https://store.steampowered.com/sale/UkrainianGamesFestival2026"
      }
    ]
  },
  "1": {
    "id": "cat_spotlight",
    "name": "Spotlights",
    "items": [
      {
        "name": "MIDWEEK DEAL",
        "header_image": "https://shared.akamai.steamstatic.com/store_item_assets/steam/spotlights/b41636b73d6e372dc05c4fa2/a538222528202d5bb5904b1c9960d3f12aa85cbc/vertical_capsule_english.jpg?t=1786999201",
        "body": "Offer ends %1$s.",
        "url": "https://store.steampowered.com/app/1672970"
      }
    ]
  },
  "2": {
    "id": "cat_spotlight",
    "name": "Spotlights",
    "items": [
      {
        "name": "FRANCHISE SALE",
        "header_image": "https://shared.akamai.steamstatic.com/store_item_assets/steam/spotlights/6c18ba696d274e4431ebf741/088ed9ed77553b1fe7dd6e63922ff7aa65ed3c26/vertical_capsule_english.jpg?t=1786392299",
        "body": "Offer ends %1$s.",
        "url": "https://store.steampowered.com/sale/MafiaFranchiseSale26"
      }
    ]
  },
  "3": {
    "id": "cat_spotlight",
    "name": "Spotlights",
    "items": [
      {
        "name": "FRANCHISE SALE",
        "header_image": "https://shared.akamai.steamstatic.com/store_item_assets/steam/spotlights/38d4b6efa1be437d36b24848/

Parameters

ParameterTypeRequiredDescription
featuredcategoriespathOptionalFeatured and specials categories. featuredcategories
appdetails?appids=integerOptionalFull details for one or more apps. appdetails?appids=730
ccstringOptionalCountry code, which changes currency and pricing. us
lstringOptionalLanguage for descriptions. english

Response fields

<category>.id / namestring
Category identifier and display name.
<category>.itemsarray
Games in that category.
items[].namestring
Game title.
items[].final_priceinteger
Price in the smallest currency unit — 1999 means $19.99.
items[].discount_percentinteger
Current discount percentage.
items[].header_imagestring
Store header image URL.
(appdetails) successboolean
Whether data exists for that app id — check it first.

What you can build with the Steam Store API

  • Build a game price tracker or deal alert service
  • Display current Steam sales on a gaming site
  • Look up game metadata, screenshots and requirements
  • Compare regional pricing using the cc parameter

Common errors and how to fix them

Prices look 100x too large

Prices are in the smallest currency unit.

Fix: Divide by 100 — final_price of 1999 is $19.99.

success: false on appdetails

The app id does not exist or is region-restricted.

Fix: Always check the success boolean before reading the data object.

429

Unofficial rate limit hit.

Fix: Roughly 200 requests per 5 minutes; cache aggressively since these endpoints are undocumented and unsupported.

Steam Store API — frequently asked questions

Is there an official Steam store API?

Not officially documented. These storefront endpoints are public and widely used, but Valve does not document or support them, so treat them as best-effort.

Why are the prices so large?

They are in the smallest currency unit. A final_price of 1999 means $19.99 — divide by 100.

Can I get prices in another currency?

Yes, pass the `cc` country code parameter, which changes both the currency and the regional pricing.

Do I need an API key?

Not for storefront data. The separate Steam Web API, which covers user profiles and game libraries, does require a key.

Tools that pair with this API

Alternatives to Steam Store API

If Steam Store does not fit, these game & anime apis cover similar ground. Every one was called before publishing, and each links to its own reference page with a working curl command and the response it returned.

APIWhat it doesAuthCORSLast verified
PokéAPIFree Pokémon API with no key: stats, types, abilities, moves, evolutions and sprites for 1,000+ species. The most popular API for learning REST. Tested example.No keyYes19 Aug 2026
Rick and Morty APIFree Rick and Morty API with no key: 800+ characters, episodes and locations with images, filtering and pagination. REST and GraphQL. Tested example.No keyYes19 Aug 2026
Jikan (MyAnimeList)Free unofficial MyAnimeList API with no key: anime and manga data, scores, characters, staff and seasonal listings. Tested curl example and live JSON.No keyYes19 Aug 2026
Deck of CardsFree playing card API with no key: shuffle decks, draw cards, manage piles and get card images. Stateful deck ids. Tested curl example and live JSON.No keyYes19 Aug 2026
Steam Web APIValve's official Steam Web API has endpoints that need no key at all: game news feeds, global achievement percentages and the full app list. Tested curl example included.No keyNo21 Aug 2026
SteamGPTFree Steam data API with no key: profile lookups, SteamID64 to STEAM_ and [U:1:] conversion, VAC and game bans, FACEIT stats and the public friend graph. Live example.No keyYes21 Aug 2026
All Game & Anime APIs

Steam Store is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 20 Aug 2026; always check the official documentation before relying on this API in production, as terms and limits can change.