DEVELOPERS

The Steam BANGERS API.

A free, read-only JSON API for the BANG Score: one 0-to-100 rating of how much real game you get for your money on Steam. Rank games, look one up, or search by name. The exact scoring formula stays private; the score and its public inputs are yours to use.

Get a key

Every request needs a key. Keys are tied to your Steam account, free to create, and shown only once, so save each somewhere safe. Sign in, then create and manage your keys here.

Loading your keys.

Plans

The free key is instant and covers most projects. Paid plans cover higher volume, commercial use, and the full dataset.

Free
$0
1,000 requests / day

A hobby project or a prototype.

  • Instant key, no card
  • The BANG Score + every public input
  • Attribution required
  • Non-commercial use
Create a free key
Pro
$29 / mo
50,000 requests / day

Commercial use or heavier traffic.

  • Everything in Free
  • Commercial use allowed
  • Higher daily limit
  • Email support
Bulk / Data
Custom
Full dataset

Redistribution or the whole catalog as a feed.

  • The full gold dataset as a feed or export
  • Redistribution license
  • Custom limits and an SLA
  • Direct support
Get in touch

Authentication

Send your key as a bearer token (preferred), or as an api_key query parameter:

curl https://steambangers.com/api/v1/games \
  -H "Authorization: Bearer sb_live_your_key_here"

# or, for quick tests:
curl "https://steambangers.com/api/v1/games?api_key=sb_live_your_key_here"

Endpoints

GET /api/v1/games: games ranked by BANG Score. Query params (all optional): genre (comma-separated: rpg, shooter, action, strategy, narrative, roguelike, multiplayer, indie_short, other), tag (comma-separated Steam user tags, AND'd together, e.g. Rogue-like,Roguelike Deckbuilder), year_from, year_to, on_sale=true, page (10 per page).

GET /api/v1/games?genre=rpg&on_sale=true&page=1

{
  "page": 1, "pages": 39, "total": 385,
  "games": [
    {
      "appid": 413150,
      "name": "Stardew Valley",
      "bang_score": 97,
      "tier": "banger",
      "genre": "rpg",
      "price_usd": 14.99,
      "discount_percent": 0,
      "review_score": 0.98,
      "length_hours": 53.4,
      "finish_rate": 0.349,
      "refunded_review_share": 0.0025,
      "refunded_review_sample": 400,
      "refunded_review_flagged": 1,
      "refunded_review_percentile": 0.312,
      "refunded_review_genre_percentile": 0.288,
      "release_year": 2016,
      "url": "https://steambangers.com/game/413150/stardew-valley"
    }
  ]
}

refunded_review_share is the share of the game's sampled Steam-purchase reviews whose writer refunded it, from Steam's own Product refunded label, weighted to the game's positive/negative review mix. refunded_review_flagged is the raw count over refunded_review_sample reviews. Only reviewers are counted, so a refund with no review behind it never appears, and the field is null until the game is sampled. refunded_review_percentile (0 to 1) is where that share ranks among paid games sampled to the same depth, catalog-wide; refunded_review_genre_percentile is the same rank inside the game's genre, over refunded_review_genre_pool games. The single-game endpoint adds refunded_review_over_2h, the sample's date window, and the first-30-days split, plus Steam's own summary of the reviews written inside the two-hour refund window: early_window_reviews, early_window_positive_share (0 to 1) and early_window_review_share (0 to 1, of the game's Steam-purchase reviews). Those count reviewers who had under two hours on the clock at review time, never buyers or refunds, and all three are null until fetched.

GET /api/v1/games/{appid}: one game, with extra fields: developer, publisher, metacritic, completionist_hours, and the price it becomes a BANGER / worth-it at.

GET /api/v1/games/413150

{ "appid": 413150, "name": "Stardew Valley", "bang_score": 97,
  "becomes_banger_at_usd": 24.99, "worth_it_at_usd": 39.99, ... }

GET /api/v1/search?q={query}: search games by name.

The API root GET /api/v1 returns this list as JSON (no key needed) so your client can introspect it.

Rate limits

Terms of use