List items for sale
Puts backpack items on the market. Every listing holds exactly one copy: each group in listings is a price in cents and the items to sell at it, and every copy in the group becomes its own listing. items holds backpack item ids (the id from GET /public/v1/backpack) with the quantity of each to sell, so amount: 5 creates 5 listings. The response lists every listing created. A commodity backpack row is a quantity rather than a single copy, so the same id may appear in several groups to sell copies at different prices; the groups draw from one pool, and asking for more than the row's amount in total fails with INSUFFICIENT_ITEMS. At most 50 groups per request, 50 items per group. Send price_decay instead of price on a group to list it with an auto-decaying price: it starts at start_price and falls to end_price over total_hours (24-168). To sell something still sitting in Steam, use POST /public/v1/sell instead. Accounts have a ceiling on how much they can have listed at once; past it, listing fails with LISTING_LIMIT_REACHED. Contact support if you are hitting it. While listing is switched off site-wide, the call fails with LISTING_DISABLED.
Authorization
apiKey API key generated from your account settings on the website. Send as Authorization: Bearer csd_....
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/public/v1/list" \ -H "Content-Type: application/json" \ -d '{ "listings": [ { "items": [ { "id": 1, "amount": 1 } ], "price": 1 } ] }'{ "listings": [ { "id": 1, "app_id": 1, "market_hash_name": "string", "price": -9007199254740991, "amount": -9007199254740991, "commodity": true, "created_at": "2019-08-24T14:15:22Z" } ]}Instant sell from Steam POST
Sells items from your Steam inventory to us at a fixed price. `items` holds `token`s from `GET /public/v1/instant-sell/inventory` with how many copies of each to sell, up to each row's `amount`. The response `payout` is the total we will pay, in cents, and is fixed from this point; it goes to your balance once the trade completes. We send you one Steam trade offer for the items: accept it within 5 minutes, otherwise it is cancelled and the sale fails. An offer may carry at most 500 copies in total (`DEPOSIT_ITEM_LIMIT`), you may have at most 15 trades in flight (`ACTIVE_TRADE_LIMIT`), and asking for more copies of an item than its `available_stock` fails with `INSTANT_SELL_STOCK_LIMIT`. When the call fails, nothing is created and no offer is sent. Poll `GET /public/v1/instant-sell/:deposit_id` with the response `deposit_id` to follow the sale.
Value of your listings GET
What your active listings are worth at their asking prices: `total_value` in cents, across `listing_count` listings holding `item_count` items. Optional `app_id` filter. The v1 equivalent was `ISales/GetActiveListingsValue`.