Steam App Lookup — Game Price, Requirements & Metadata API avatar

Steam App Lookup — Game Price, Requirements & Metadata API

Pricing

from $2.40 / 1,000 successful lookups

Go to Apify Store
Steam App Lookup — Game Price, Requirements & Metadata API

Steam App Lookup — Game Price, Requirements & Metadata API

Look up games and software on Steam by app ID against Valve's official Store API. Get current and list price, discount percentage, release date, developers, publishers, genres, categories, Metacritic score, review count, and platform support. Pay only for app IDs that resolve to a real listing.

Pricing

from $2.40 / 1,000 successful lookups

Rating

0.0

(0)

Developer

Adrian Voss

Adrian Voss

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Steam App Lookup

Look up any game or software title on Steam by app ID against Valve's own official Store API (store.steampowered.com/api/appdetails) — price, discount, release date, developers, publishers, genres, categories, Metacritic score, review count, and platform support. No API key, no scraping the storefront pages — this calls the same free, public JSON endpoint Valve exposes directly.

Features

  • App ID or store URL input. Paste a bare app ID (730) or a full store URL (https://store.steampowered.com/app/730/CounterStrike_2/) — either resolves the same way.
  • Full pricing detail. Current price, list price, currency, and discount percentage, correctly handling free-to-play titles.
  • Rich metadata. Developers, publishers, genres, categories, release date, Metacritic score, total Steam recommendations, and supported platforms (Windows/Mac/Linux).
  • Bulk-friendly filtering. Keyword include/exclude, a result cap, and a testRun mode that processes only the first 5 items before a full run.
  • Pay only for hits. App IDs that don't resolve to a real listing cost nothing — see Pricing.

How to use Steam App Lookup — Game Price, Requirements & Metadata API

  1. In the Apify Console. Open the actor page and click Start — the appIds field is already pre-filled with a working example. Results land in the run's dataset as soon as each item is found.
  2. Via the API. Call it directly with a POST request — no Console needed once you have an API token:
    curl "https://api.apify.com/v2/acts/accountable_eel~steam-app-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \
    -X POST \
    -H "Content-Type: application/json" \
    -d '{"appIds":["730"]}'
  3. On a schedule. Save this actor as an Apify Task with the input you want, then add a Schedule (hourly, daily, weekly) so it runs on its own — no server of your own required.

Input

{
"appIds": [
"730"
]
}

One numeric Steam app ID per line, e.g. 730 (from a store.steampowered.com/app/730/... URL). Accepted formats: 730, https://store.steampowered.com/app/730/CounterStrike_2/.

{
"appIds": ["730", "https://store.steampowered.com/app/1091500/Cyberpunk_2077/"],
"testRun": false,
"onlyFound": false,
"columns": ["name", "appId", "priceFinal", "discountPercent", "genres", "metacriticScore"],
"maxConcurrency": 5,
"proxyConfiguration": { "useApifyProxy": true }
}

appIds is a list of numeric Steam app IDs or full store URLs — one per line; a URL is reduced to its numeric app ID automatically. Turn on testRun to process only the first 5 items before running the full list. onlyFound hides rows with no result (misses are always free). includeKeywords / excludeKeywords filter by keyword, and maxResults stops the run early. columns picks which fields appear in each row — all are included by default.

Output

queryfoundstatusnameappIdtypeisFreepriceFinalpriceInitialpriceCurrencydiscountPercentreleaseDatedeveloperspublishersgenrescategoriesmetacriticScorerecommendationsTotalplatformsshortDescriptionheaderImagescrapedAt
730trueOKCounter-Strike 2730gametrue00Aug 21, 2012["Valve"]["Valve"]["Action","Free To Play"]["Multi-player","Cross-Platform Multiplayer","Steam Trading Cards","Steam Workshop","Steam Workshop","In-App Purchases","Adjustable Text Size","Camera Comfort","Color Alternatives","Custom Volume Controls","Playable without Timed Input","Stereo Sound","Surround Sound","Valve Anti-Cheat enabled","Stats","Remote Play on Phone","Remote Play on Tablet","Remote Play on TV","Steam Timeline"]5235552["windows","linux"]For over two decades, Counter-Strike has offered an elite competitive experience, one shaped by millions of players from across the globe. And now the next chapter in the CS story is about to begin. This is Counter-Strike 2.https://shared.akamai.steamstatic.com/store_item_assets/steam/apps/730/162664aa5da85f418105350c5d67ca565f6c3713/header.jpg?t=17845640692026-08-23T21:05:36.231Z
{
"query": "730",
"found": true,
"status": "OK",
"name": "Counter-Strike 2",
"appId": 730,
"type": "game",
"isFree": true,
"priceFinal": 0,
"priceInitial": null,
"priceCurrency": null,
"discountPercent": 0,
"releaseDate": "21 Aug, 2012",
"developers": ["Valve"],
"publishers": ["Valve"],
"genres": ["Action", "Free to Play"],
"categories": ["Multi-player", "Steam Achievements"],
"metacriticScore": 83,
"recommendationsTotal": 1500000,
"platforms": ["windows", "mac", "linux"],
"shortDescription": "For over two decades, Counter-Strike has offered an elite competitive experience.",
"headerImage": "https://cdn.akamai.steamstatic.com/steam/apps/730/header.jpg",
"scrapedAt": "2026-08-21T14:03:11.000Z"
}

A row is only marked found: true — and only then billed — once the app ID resolves to a real Steam listing (success: true in Valve's response). An app ID with no matching Steam app comes back status: "NOT_FOUND"; a non-numeric input that isn't a valid app ID or store URL comes back status: "BAD_FORMAT" — both are found: false and never charged.

Use cases

  • Track price and discount changes on a watchlist of games ahead of or during a Steam sale.
  • Pull metadata (genres, categories, developers) for a batch of titles to feed a game discovery or recommendation tool.
  • Monitor Metacritic score and review-count trends for titles you're evaluating or tracking competitively.
  • Verify platform support (Windows/Mac/Linux) across a list of games before recommending or bundling them.
  • Enrich an existing catalog or spreadsheet of app IDs with current pricing and release data in bulk.

Pricing

$4 per 1,000 app IDs, plus a $0.005 start fee. Misses (found:false) are never charged.

Use it from Clay, n8n, Make, or an AI agent

This actor runs synchronously over plain HTTP — call it directly from a script, a workflow tool, or an AI agent, no Apify Console needed once you have an API token.

curl "https://api.apify.com/v2/acts/accountable_eel~steam-app-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \
-X POST \
-H "Content-Type: application/json" \
-d '{"appIds":["730"]}'

n8n. Add an HTTP Request node: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~steam-app-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body Content Type JSON, JSON Body {"appIds":["730"]} (swap in an expression from an earlier node for a real value).

Clay. Add an "HTTP API" column: Method POST, URL https://api.apify.com/v2/acts/accountable_eel~steam-app-lookup/run-sync-get-dataset-items?token=<YOUR_TOKEN>, Body {"appIds":["{{app ID}}"]}, mapping the row's app ID into the appIds array.

MCP. In Claude, Cursor, or any MCP client with the Apify MCP server, ask for "Steam Store API — App ID to Price, Genre, Reviews" — the agent will find and run this actor.

FAQ

What counts as "not found"? An app ID with no matching entry in Valve's appdetails response (success: false or no data) — this can happen for delisted, region-restricted, or invalid app IDs.

Can I paste a full store URL instead of a bare app ID? Yes — a URL like https://store.steampowered.com/app/730/CounterStrike_2/ is reduced to its numeric app ID (730) automatically before the lookup runs.

Why is priceInitial null for a free-to-play game? Free titles have no price_overview block in Steam's API response — priceFinal is reported as 0 and priceInitial/priceCurrency stay null since there's no list price to report.

Does discountPercent show 0 when a game isn't on sale? Yes — it defaults to 0 rather than null when there's no active discount, matching what Steam's own API returns.

What happens with a non-numeric input? Anything that isn't a numeric app ID (or doesn't contain one in a URL) comes back as status: "BAD_FORMAT" and is never charged.

Does it require a Steam API key? No — appdetails is a free, public, unauthenticated endpoint that Valve's own store pages use, so no key or login is needed.