Use Steamwebapi on Production

Why Use production=1?

The production=1 parameter is essential to ensure that your integration is not disrupted by unexpected changes in our API updates and allows us to monitor who is currently using the production mode.


Benefits:

  • You receive the same response type you are already using in your environment.
  • After two weeks, your request will automatically switch to the new stable version. (You should test the production parameter during this period.)
  • You have sufficient time to adapt your integration before migrating to the new version.


Parameter: critical=1 for All Endpoints Except /items

In addition to production=1, we have introduced the critical=1 parameter for real-time endpoints such as /inventory or /item. For the /items endpoint, critical=1 is automatically activated when used in production mode. For all other endpoints, critical is set to 0 by default but can be manually activated to utilize the following features:


What does critical=1 do?

  • The API automatically checks if a critical issue has been flagged. Such cases are very rare and should not occur under normal circumstances. However, our tests may fail, requiring us to resolve certain issues, which may take time. Over the past two years, there has been only one instance where this was necessary.
  • In case of a critical issue, the system temporarily blocks all requests with critical=1 to ensure no erroneous data is provided. This means you do not need to deactivate your endpoint yourself—the system handles it automatically.
  • For the /items endpoint, critical=1 is automatically enabled. For all other endpoints, it is disabled by default and can be manually activated if needed.


When Should You Use critical=1?

Use critical=1 when performing critical operations that depend on real-time data, such as:

  • Trades or purchases (e.g., skin deposit services like SkinPay, DMarket, Bitskins, or automated trades via bots).


Summary of Parameters


Parameter Description
| production=1  | For all API endpoints used in production mode to ensure stable responses.
| version=latest  | Allows access to the latest version of API responses with all current changes, even in production mode.
| critical=1  | Security check for real-time requests to automatically block requests in case of issues. This parameter is automatically activated for the /items endpoint.

Best Practices for Production Use

  • Use production=1 for all API endpoints to ensure stable responses.
  • Use critical=1 for real-time requests to add extra security and allow your service to be temporarily deactivated in case of issues. Note: In the past two years, this parameter was needed only once, and we hope it will remain rare. However, it is important.
  • Pull /items prices every 30 minutes to 24 hours and cache them locally. This endpoint is not a backend service—therefore, store the data in your backend and implement a try-catch mechanism.
  • Item Response: Before performing critical operations, verify that the unstable property is set to false and the checkedAt value is not empty. This value indicates whether the item's price did not spike by more than 10% compared to the previous day after an update. If checkedAt is empty, the price has not yet been validated. Such items should not be used in critical operations.

We plan to introduce additional endpoints like /alert to allow you to check the current status of our services. Additionally, if you are operating in production mode, you should join our Discord channel to stay updated or listen to the /notify API for future notifications. You can also check our status page at https://status.steamwebapi.com.

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