Documentation

Steamwebapi Documentation: Getting started

What is Steamwebapi?

Steamwebapi is a high-quality API service that provides developers with seamless access to a wide range of information on Steam games, user profiles, inventories, and more. By using Steamwebapi, you can easily retrieve data without relying directly on the official Steam API — reducing the risk of IP blocking or application limitations.

Please note that Steamwebapi operates as an independent service and is not affiliated with Valve, Steam, or any of their partners. All rights belong to their respective owners.


How to use?

To use the API, please follow these steps:

  1. Make a GET request to the designated API endpoint.
  2. Click the “API” button at the top of the page to open the full documentation.
  3. Review the available endpoints, parameters, and response formats there.

Example of usage

Discover real-world API use cases on GitHub. Explore the following links to access code samples and projects using the API:

Stay tuned for more exciting packages coming soon! Get inspired, learn from existing implementations, and unleash the full potential of the API in your own projects.

And that’s it! Start exploring the power of the API today and open doors to the world of possibilities for your projects.


Example projects

Here is a list of projects using our API:

If you want to add your project to this list, feel free to send us a message on Discord!


How to obtain an API Key?

To get your API key:

  1. Create an account by clicking “Login with Steam”.
  2. Once logged in, go to your Dashboard → API Key.

Your Steam data is not stored by us.


Is it free?

Yes! You have access to all plans under the free tier. You can upgrade anytime if you need more.


Base URL

The base URL for all requests is:

</em>https://www.steamwebapi.com/steam/api/YOUR_ENDPOINT?key=YOUR_API_KEY

Authentication

You can authenticate in two ways:

Query parameter:

</em>https://www.steamwebapi.com/steam/api/inventory?key=YOUR_API_KEY

HTTP header:

</em>X-API-Key: YOUR_API_KEY

Best tools to test the API

You can test the API with tools like Postman or Insomnia. Alternatively, you can use your browser directly by adding the API key to the request URL.

Example:

</em>https://www.steamwebapi.com/steam/api/inventory?key=YOUR_API_KEY

Responses

All responses are returned in JSON format. If an error occurs, the response will contain an error message.


Games

GAME SHORTNAME STATUS
CS2 cs2 Fully Tested
RUST rust Basic Tested
DOTA dota Basic Tested

Endpoints

Name Endpoint Description Costs
Items /steam/api/items Get all items of a game - one click full export for paid customers
Inventory /steam/api/inventory Get inventory of a user
Profile /steam/api/profile Get profile of a user
Item Detail /steam/api/item Get details of an item
Steamid /steam/api/steamid SteamID Converter
Float Information API /steam/api/float Get the Float of an Item

General response information

Notes:

  • All fields starting with priceXXXXX refer to Steam Market data.
  • All fields starting with pricerealXXXXX refer to Third-Party Marketplaces.
  • Third-Party price data currently available for CS2 only – other games follow soon.

Item & pricing fields

Key Description
pricelatest Steam – Latest offer price; null if no offer available
pricelatestsell Steam – Latest sell price
pricelatestsell24h Steam – Sell price 24 hours ago
pricelatestsell7d Steam – Sell price 7 days ago
pricelatestsell30d Steam – Sell price 30 days ago
pricelatestsell90d Steam – Sell price 90 days ago
lateststeamsellat Steam – Last Steam sell date
latest10steamsales Steam – Last 10 Steam sales as array: `date
pricemedian Steam – Median price based on last 10 sales
pricemedian24h Steam – Median 24 hours ago
pricemedian7d Steam – Median 7 days ago
pricemedian30d Steam – Median 30 days ago
pricemedian90d Steam – Median 90 days ago
priceavg Steam – Average price based on last 10 sales
priceavg24h Steam – Average 24 hours ago
priceavg7d Steam – Average 7 days ago
priceavg30d Steam – Average 30 days ago
priceavg90d Steam – Average 90 days ago
pricesafe Steam – Safe price = median history of last 90 days × 0.95
pricemin Steam – Minimum price from last 90 days
pricemax Steam – Maximum price from last 90 days
pricemix Steam – Lowest among last sell, last offer, or real market price
pricereal Third-Party – Current lowest price from external markets
pricereal24h Third-Party – Lowest price 24 hours ago
pricereal7d Third-Party – Lowest price 7 days ago
pricereal30d Third-Party – Lowest price 30 days ago
pricereal90d Third-Party – Lowest price 90 days ago
pricerealmedian Third-Party – Median of the 5 lowest external prices
winloss Percentage difference between Third-Party and Steam price (profit or loss)
buyorderprice Steam – Current buy order price
buyordermedian Steam – Median of last 5 buy orders
buyorderavg Steam – Average of last 5 buy orders
buyordervolume Steam – Current buy order volume
offervolume Steam – Current number of offers
soldtoday Steam – Number sold today
sold24h Steam – Number sold yesterday
sold7d Steam – Number sold 7 days ago
sold30d Steam – Number sold 30 days ago
sold90d Steam – Number sold 90 days ago
soldtotal Steam – Total number sold
hourstosold Steam – Average time to sell
points Demand points based on item popularity
priceupdatedat Steam – Last update time for prices, offers, and sales
markethashname Market hash name of the item
marketname Market name of the item
slug URL-friendly identifier of the item
color Item color code – can be null
bordercolor Border color code – can be null
unstable Steam – 1 for unstable, 0 for stable
unstablereason Reason for instability – can be null
wear Wear condition (e.g. fn for Factory New) – can be null
itemgroup Item group (e.g. rifle) – can be null
itemtype Item type (e.g. m4a1-s) – can be null
itemname Item name (e.g. printstream) – can be null
rarity Item rarity (e.g. covert) – can be null
quality Item quality (e.g. normal) – can be null
isstattrack 1 = StatTrak, 0 = not StatTrak
isstar 1 = has star, 0 = no star
markettradablerestriction Number of days for trade restriction – can be null
itemimage Item image URL

Subscription and support

Subscriptions do not renew automatically — each plan is a one-time subscription.
Newly released game items are typically added within 1–3 days.
All Pro plans include priority support.


Rate limits

Rate limits vary by plan. See your Dashboard for current limits.


Output

Output format is selected via the format query parameter.

  • Default: format=json (or omit format)
  • Optional: pretty=1 pretty-prints JSON (and JSON inside gzip/zip)

You can also:

  • Use filename=MY_EXPORT to set a custom download filename.
  • Use callback=myFunction when using format=jsonp to control the JSONP callback name.

Examples

</em># JSON (default)
/steam/api/inventory?key=YOUR_API_KEY

# Pretty JSON
/steam/api/inventory?key=YOUR_API_KEY&format=json&pretty=1

# Gzip-compressed JSON download
/steam/api/items?key=YOUR_API_KEY&format=gzip

# ZIP archive containing a JSON file
/steam/api/items?key=YOUR_API_KEY&format=zip

# CSV download
/steam/api/items?key=YOUR_API_KEY&format=csv

# TSV download
/steam/api/items?key=YOUR_API_KEY&format=tsv

# YAML document
/steam/api/items?key=YOUR_API_KEY&format=yaml

# Simple HTML page printing JSON
/steam/api/items?key=YOUR_API_KEY&format=html

# Interactive HTML table (sortable & searchable)
/steam/api/items?key=YOUR_API_KEY&format=table
# (aliases: format=view, format=html)

# NDJSON (one record per line)
/steam/api/items?key=YOUR_API_KEY&format=ndjson

# JSONP with callback
/steam/api/items?key=YOUR_API_KEY&format=jsonp&callback=myFunction

# MySQL INSERTs (without/with CREATE TABLE)
/steam/api/items?key=YOUR_API_KEY&format=mysql
/steam/api/items?key=YOUR_API_KEY&format=mysql_with_table

# PostgreSQL INSERTs (without/with CREATE TABLE)
/steam/api/items?key=YOUR_API_KEY&format=pgsql
/steam/api/items?key=YOUR_API_KEY&format=pgsql_with_table

# MongoDB insertMany (JavaScript)
/steam/api/items?key=YOUR_API_KEY&format=mongo

Available output formats

format Description Content-Type File suffix / download
json (default) JSON body (supports pretty=1) application/json
gzip Gzip-compressed JSON application/gzip .json.gz
zip ZIP archive containing a JSON file application/zip .zip
csv CSV export (UTF‑8 with BOM) text/csv; charset=UTF-8 .csv
tsv Tab-separated values export text/tab-separated-values; charset=UTF-8 .tsv
xml XML document application/xml; charset=UTF-8 .xml
yaml YAML document (alias: yml) application/x-yaml; charset=UTF-8 .yaml / .yml
html / table / view Interactive HTML table (sortable, searchable) or simple HTML JSON view text/html; charset=UTF-8 – (inline)
text Plain text (debug-style print_r) text/plain; charset=UTF-8 .txt
ndjson Newline-delimited JSON (one object per line) application/x-ndjson; charset=UTF-8 .ndjson
jsonp JSON with callback (callback= or default name) application/javascript; charset=UTF-8 .js
xls Minimal HTML table that Excel can open application/vnd.ms-excel; charset=UTF-8 .xls
json-pretty Pretty formatted JSON body application/json
mysql MySQL INSERT statements (no CREATE TABLE) text/plain; charset=UTF-8 .sql
mysql_with_table MySQL CREATE TABLE + INSERT statements text/plain; charset=UTF-8 .sql
pgsql PostgreSQL INSERT statements (no CREATE TABLE) text/plain; charset=UTF-8 .sql
pgsql_with_table PostgreSQL CREATE TABLE + INSERT statements text/plain; charset=UTF-8 .sql
mongo MongoDB insertMany script application/javascript; charset=UTF-8 .js

Notes

  • pretty=1 affects json, and the JSON that is embedded inside gzip/zip.
  • ndjson intentionally ignores pretty-printing to keep one record per line.
  • Filenames are auto-derived from the request path (e.g., /steam/api/itemsitems.*) unless overridden with filename=....
  • SQL and Mongo formats also derive a sensible table/collection name from the endpoint.

Supported languages

Currently supported for the Inventory API. Item language support is coming soon.

Language Original Name API Value
Dansk danish
English english
Français french
Deutsch german
Polski polish
Português portuguese
Русский russian
Svenska swedish
Türkçe turkish

Third-Party Marketplaces Used

Steamwebapi currently collects pricing data from multiple external marketplaces for pricerealXXXX values:

  • Skinport
  • DMarket
  • Buff
  • CSGO.com
  • Tradeit
  • Skinpull
  • Waxpeer
  • Skinbaron

Helpful Resources

Discord Support

If you need help, have a suggestion or want to report a bug, join our Discord server.
Join Discord