Skip to main content
The inventory endpoint returns a user’s tradeable Steam items along with live offer prices. This is what you show users when they want to deposit (sell) items.

Fetching Inventory

Response:

Query Parameters

Understanding the Response

Pricing Fields

Each item can have two price fields, and they mean different things:
  • marketPrice is the market reference price in USD. This is not what the user gets paid. Use it to show market value context in your UI. It reflects live multi-marketplace data — order books, liquidity and realized sales aggregated by cs2.sh — run through AssetPay’s fair-value model.
  • offer.price is the actual amount in USD the user will receive for depositing this item. This is the number that matters for your balance calculations.
  • offer.reference is an opaque marketplace identifier. AssetPay uses it internally; you don’t need to pass it back.

The offer.accepted Field

Items where offer.accepted is true have a valid offer and can be deposited. Items where it’s false or the offer is missing entirely don’t have an active buyer and can’t be deposited right now.

Collateral

The collateral field in the response tells you how much instant credit is available for this user if you’re using instant deposits. See the Deposits guide for details.

Caching Behavior

Inventory results are cached for 15 minutes on our side. The updatedAt field tells you when the cache was last refreshed. Use refresh=true only when:
  • Loading the inventory for the first time in a session
  • The user explicitly asks to refresh
Don’t refresh on every page load. It puts unnecessary load on Steam’s API and can lead to rate limiting.

Rust Items

Rust items work the same way, but they can be stackable. When an item has an amount field greater than 1, it means the user has multiple copies of the same item. The offer.maxAmount field tells you how many can be deposited in a single trade.

Filtering and Sorting

You can combine query parameters to build a search UI:
The count field in the response reflects the total matching items (not just the current page), so you can build pagination controls.