POST /v1/market/buy — покупка и доставка на Steam trade URL
Покупайте до 100 предметов и доставляйте их прямо на любой указанный вами Steam trade URL, оплачивая из подтверждённого баланса. Создано для оптовых покупок и автоматической доставки.
partner и token. Покупки финансируются только из вашего подтверждённого (защищённого от реверса) баланса, что делает эндпоинт пригодным для оптовых объёмов и потоков автоматической доставки.
Эндпоинт идемпотентен через поле тела custom_id: повтор с тем же custom_id воспроизводит исходную покупку, а не делает покупку дважды, и воспроизведённый ответ содержит заголовок Idempotent-Replayed: true.
Требуется аутентификация. Отправьте ключ как Authorization: Bearer csb_pub_....
Требуется возможность торговли. Для ключа должны быть включены покупки, а аккаунт должен быть чистым от реверсов.
Тело запроса
partner из Steam trade URL (1–32 символа). Вместе с token образует конечный trade URL, на который доставляются предметы.token из Steam trade URL (1–32 символа). Вместе с partner образует конечный trade URL.price_moved и ничего не списывается. Настоятельно рекомендуется.custom_id воспроизводит исходную покупку; ответ при повторе содержит Idempotent-Replayed: true.true, пропускать предметы, которые больше недоступны, вместо того чтобы отклонить весь запрос.Поля ответа
Пример запроса
Пример ответа
Коды ошибок
| HTTP-статус | Код | Значение |
|---|---|---|
| 400 | invalid_request | Некорректное тело (например, item_ids пуст или содержит более 100 элементов). |
| 400 | unsupported_item | Один или несколько предметов нельзя доставить через этот эндпоинт (например, id ss_live_*). |
| 400 | invalid_trade_url | partner + token не образуют валидный Steam trade URL. |
| 401 | invalid_api_key | Отсутствует или некорректный API-ключ. |
| 402 | insufficient_settled_balance | Подтверждённый баланс ниже суммы заказа. Включает required_usd и settled_usd. |
| 402 | insufficient_balance | Баланс ниже суммы заказа. |
| 403 | external_buy_disabled | Kill-switch выключен; эндпоинт сейчас недоступен. |
| 403 | trading_not_enabled | Покупки не включены для этого ключа. |
| 403 | account_restricted | Эндпоинт требует аккаунт без истории реверсов. |
| 409 | item_unavailable | Один или несколько предметов больше недоступны. Включает unavailable_ids[]. |
| 409 | price_moved | Живой итог превысил верхнюю границу. Включает quoted_max_usd, current_total_usd и items[]. |
| 409 | idempotency_in_progress | Запрос с этим custom_id ещё обрабатывается. |
| 409 | price_updating | Цены обновляются; повторите через короткое время. |
| 429 | rate_limit_exceeded | Слишком много запросов. Подождите время, указанное в заголовке Retry-After. |
| 500 | order_failed | Покупку не удалось завершить. |
settled_balance_usd через GET /v1/balance и всегда передавайте max_price_usd в качестве защиты от переплаты.Авторизации
Send your key as a Bearer token on every request: Authorization: Bearer csb_pub_.... Generate keys in your CSBoard profile.
Тело
1–100 unique listing ids to buy.
1 - 100 elementsSteam trade URL partner value. With token, forms the destination trade URL.
1 - 32Steam trade URL token value. With partner, forms the destination trade URL.
1 - 32Total ceiling in USD. Order is rejected with price_moved if the live total exceeds it.
Idempotency key. A retry with the same value replays the original purchase.
1 - 128If true, skip items that are no longer available instead of failing the whole request.
Ответ
Purchase accepted and debited from settled balance.