Buy listings
Auth context: sub-user — On-Behalf-Of required. Rate limit: 100/min.
Each items[] entry references a listing — by listingId (from
MarketListing.id) or by listingRawId — plus a maxPrice ceiling.
Provide exactly one of the two identifiers. If the listing’s price moved
above maxPrice between catalog read and purchase, that item fails.
Sub-user wallet is debited synchronously by totalPrice (escrowed); the
Trade then runs through marketplace workers. Subscribe to trade.* WS
events for status updates.
Common error keys: INSUFFICIENT_BALANCE (1500), LISTING_NOT_FOUND (2011),
PRICE_MISMATCH (2020), TRADEURL_REQUIRED (2022), MARKET_UNAVAILABLE (2000).
Returns 503 SERVICE_DISABLED when admin has paused trading.
Authorizations
Your raw API key. Generate, rotate, and revoke keys from the merchant
dashboard. Keys can optionally be bound to one or more allowed source
IPs — requests from any other IP are rejected with API_KEY_IP_DENIED.
Headers
Sub-user UUID or the merchant's externalId for that sub-user.
Required for sub-user-context routes; rejected (via requireMerchant)
on merchant-context routes.
1 - 128Body
1 - 10 elementsProvide exactly one of listingId or listingRawId to identify the listing. Sending both (or neither) is a 422.
- Option 1
- Option 2
Override the sub-user's primary Steam trade URL for this purchase. Optional.
Your own correlation id, echoed back on the Trade.
128