{ "code": "item_unavailable", "detail": "One or more items are no longer available. 1 of the ids are not known here (`unknown_ids`): not a listing id, or a listing gone for over an hour. Steam asset ids are not listing ids: send the `id` of a row from /v1/listings or the stream.", "unavailable_ids": ["31846262931"], "unknown_ids": ["31846262931"]}
Send your key as a Bearer token on every request: Authorization: Bearer csb_pub_.... Generate keys in your CSBoard profile. Calls made with a key are metered only by that key's own limits — there is no per-IP limit on top — and every answer carries X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset and X-RateLimit-Bucket for the bucket the call spent. See Rate limits.
Optional, 8–128 characters. While a successful result is cached (up to 24 hours), the same key returns HTTP 200 with Idempotent-Replayed: true. An active claim returns 409 idempotency_in_progress. Reconcile a lost response before another purchase.
Sticky per-account setting (not per-order). Send true once to switch your key into auto-claim mode: every held order is then auto-released the moment its hold clears (your bot must auto-accept the Steam trade offer within ~15 minutes). Send false to switch back to manual claiming via POST /orders/{id}/claim. Omit to leave the setting unchanged.
Game the item_ids belong to: 730 = CS2 (the default), 570 = Dota 2, 252490 = Rust. Send the same appId you read the ids with from GET /listings. A game this key may not buy in answers 400 unsupported_game — tradable in GET /games tells you in advance.
可用选项:
730,
570,
252490
响应
Idempotent replay: a request with an Idempotency-Key (or idempotency_key) already used for a completed order returns that original response body, with the header Idempotent-Replayed: true. Nothing new is bought.
The order as it stands the moment it was created. status here is the internal state at that instant (for example paid or pending_delivery), not the normalised vocabulary of GET /orders — read the order there, or subscribe to webhooks, to follow it.
How the order is being delivered, when known: instant (bot delivery) or pending (a seller or supplier still has to send the trade). Dota 2 and Rust orders always answer pending.
{"docsConfig":{"theme":"luma","$schema":"https://mintlify.com/docs.json","name":"CSBoard API","colors":{"primary":"#2563eb","light":"#60a5fa","dark":"#172554"},"favicon":"https://mintcdn.com/csboard/LyXJsSfteiiBK7GJ/favicon.svg?fit=max\u0026auto=format\u0026n=LyXJsSfteiiBK7GJ\u0026q=85\u0026s=29fd93b872ec9ce02b5ca0a5aecc8d03","appearance":{"default":"dark"},"navbar":{"links":[{"href":"https://csboard.com/profile?tab=api","label":"Get a key"}],"primary":{"type":"button","label":"csboard.com","href":"https://csboard.com"}},"footer":{"socials":{"website":"https://csboard.com"}},"styling":{"latex":false},"navigation":{"languages":[{"language":"en","href":"introduction"},{"language":"ru","href":"ru/introduction"},{"language":"zh-Hans","href":"zh-Hans/introduction"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"csboard","hasAudioNarration":false,"actualSubdomain":"csboard","customDomains":["api.csboard.com"],"gitSource":{"type":"github","owner":"kizilovv","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6aed460334fe7746877e0ec2","clientVersion":"0.0.4117","searchFilterCounts":[{"language":"en","tag":"API Reference","count":42},{"language":"ru","tag":"Справочник API","count":22},{"language":"zh-Hans","tag":"API 参考","count":22},{"language":"en","tag":"Market Data","count":10},{"language":"en","tag":"Guides","count":10},{"language":"en","tag":"Webhooks","count":8},{"language":"ru","tag":"Рыночные данные","count":8},{"language":"ru","tag":"Руководства","count":8},{"language":"zh-Hans","tag":"市场数据","count":8},{"language":"zh-Hans","tag":"指南","count":8},{"language":"en","tag":"Trading","count":7},{"language":"ru","tag":"Торговля","count":7},{"language":"zh-Hans","tag":"交易","count":7},{"language":"en","tag":"Instant Sell","count":6},{"language":"en","tag":"Walkthroughs","count":6},{"language":"en","tag":"P2P","count":5},{"language":"en","tag":"Account","count":5},{"language":"ru","tag":"P2P","count":5},{"language":"ru","tag":"Инструкции","count":5},{"language":"zh-Hans","tag":"P2P","count":5},{"language":"zh-Hans","tag":"教程","count":5},{"language":"en","tag":"Get Started","count":4},{"language":"ru","tag":"Начало работы","count":3},{"language":"zh-Hans","tag":"快速开始","count":3},{"language":"ru","tag":"Аккаунт","count":1},{"language":"ru","tag":"Статус","count":1},{"language":"ru","tag":"Журнал изменений","count":1},{"language":"zh-Hans","tag":"账户","count":1},{"language":"zh-Hans","tag":"状态","count":1},{"language":"zh-Hans","tag":"更新日志","count":1}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"zh-Hans/api-reference/post-orders","slug":"/zh-Hans/api-reference/post-orders","pageMetadata":{"title":"POST /v1/orders — 使用余额购买 CS2 挂单","sidebarTitle":"POST /orders","description":"在单次原子请求中按 ID 购买 1–10 件 CS2 挂单,从您的 CSBoard 余额中扣款。需要启用交易的 API 密钥以及已绑定的 Steam 账户。","openapi":"POST /orders","href":"/zh-Hans/api-reference/post-orders"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"在单次原子请求中按 ID 购买 1–10 件 CS2 挂单,从您的 CSBoard 余额中扣款。需要启用交易的 API 密钥以及已绑定的 Steam 账户。\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,Expandable,Heading,Note,ParamField,ResponseField,Table,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Expandable)_missingMdxReference(`Expandable`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!ParamField)_missingMdxReference(`ParamField`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`orders 端点允许您在单次原子请求中购买 1 到 10 件挂单。扣款将以执行`,_jsx(_components.strong,{children:`当时`}),`的实时报价从您的 CSBoard 余额中划扣——而非您查询 `,_jsx(_components.code,{children:`/v1/listings`}),` 时看到的价格。为防止查询与下单之间的价格波动,请始终包含 `,_jsx(_components.code,{children:`max_price_usd`}),` 作为总价上限。每笔订单使用一个 `,_jsx(_components.code,{children:`Idempotency-Key`}),`。`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`需要身份验证。`}),` 请将密钥作为 `,_jsx(_components.code,{children:`Authorization: Bearer csb_pub_...`}),` 发送。`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`需要交易能力。`}),` API 密钥必须启用购买功能。请在您的 CSBoard 个人资料中进行配置。`]}),`\n`,_jsx(Heading,{level:`2`,id:`前置条件`,children:`前置条件`}),`\n`,_jsx(_components.p,{children:`下单前,请确保:`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`启用交易的密钥`}),`——必须在您的 CSBoard 个人资料设置中为该 API 密钥开启购买功能。`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`已绑定的 Steam 账户与交易链接`}),`——您的 CSBoard 账户必须已绑定 Steam 账户并配置有效的交易链接,以便商品可以交付。`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`充足的余额`}),`——您的 CSBoard 余额必须能够覆盖所有商品按实时价格的总成本。`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`请求头`,children:`请求头`}),`\n`,_jsx(ParamField,{header:`Idempotency-Key`,type:`string`,id:`param-idempotency-key`,children:_jsxs(_components.p,{children:[`可选标识符,长度为 8–128 个字符,例如 UUID。成功响应最多缓存 24 小时。在缓存有效期内,相同的键会返回 HTTP 200 和 `,_jsx(_components.code,{children:`Idempotent-Replayed: true`}),`。缓存过期后,相同的键可能会发起新的购买。`]})}),`\n`,_jsx(Heading,{level:`2`,id:`请求体`,children:`请求体`}),`\n`,_jsx(ParamField,{body:`item_ids`,type:`string[]`,required:true,id:`param-item-ids`,children:_jsxs(_components.p,{children:[`1–10 个唯一的挂单 ID 数组。请从 `,_jsx(_components.code,{children:`GET /v1/listings`}),` 响应的 `,_jsx(_components.code,{children:`id`}),` 字段获取。每个 ID 在一次请求中只能出现一次。`]})}),`\n`,_jsx(ParamField,{body:`max_price_usd`,type:`number`,id:`param-max-price-usd`,children:_jsxs(_components.p,{children:[`美元总价上限,将在执行时原子地强制执行。如果所有商品的实时总额超过该值,整个订单将以 `,_jsx(_components.code,{children:`price_moved`}),` 错误被拒绝,且不会扣款。`,_jsx(_components.strong,{children:`强烈建议使用`}),`——若无此值,您将无任何超额扣款保护。`]})}),`\n`,_jsx(ParamField,{body:`idempotency_key`,type:`string`,id:`param-idempotency-key-1`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`Idempotency-Key`}),` 请求头的替代方案。如果两者都提供,则以请求头为准。请二选一使用,不要同时使用。`]})}),`\n`,_jsx(ParamField,{body:`appId`,default:`730`,type:`integer`,id:`param-app-id`,children:_jsxs(_components.p,{children:[_jsx(_components.code,{children:`item_ids`}),` 所属的游戏:`,_jsx(_components.code,{children:`730`}),` = CS2,`,_jsx(_components.code,{children:`570`}),` = Dota 2,`,_jsx(_components.code,{children:`252490`}),` = Rust。不传则为 CS2。请使用您从 `,_jsx(_components.code,{children:`GET /v1/listings`}),` 读取这些 id 时所用的同一个 `,_jsx(_components.code,{children:`appId`}),`。查看 `,_jsx(_components.a,{href:`/zh-Hans/api-reference/get-games`,children:_jsx(_components.code,{children:`GET /v1/games`})}),` 中的 `,_jsx(_components.code,{children:`tradable`}),`,了解您的密钥可以在哪些游戏中购买。`]})}),`\n`,_jsx(Heading,{level:`2`,id:`响应字段`,children:`响应字段`}),`\n`,_jsxs(_components.p,{children:[`新订单返回 `,_jsx(_components.strong,{children:_jsx(_components.code,{children:`201 Created`})}),`。幂等重放返回 `,_jsx(_components.code,{children:`200`}),`,响应体相同。`]}),`\n`,_jsx(ResponseField,{name:`order_id`,type:`string`,required:true,id:`param-order-id`,children:_jsxs(_components.p,{children:[`本次订单的唯一标识符。将其传给 `,_jsx(_components.code,{children:`GET /v1/orders/{id}`}),` 以跟踪交付。`]})}),`\n`,_jsx(ResponseField,{name:`status`,type:`string`,required:true,id:`param-status`,children:_jsxs(_components.p,{children:[`生成响应时订单的内部状态,例如 `,_jsx(_components.code,{children:`paid`}),` 或 `,_jsx(_components.code,{children:`pending_delivery`}),`。这不是 `,_jsx(_components.code,{children:`GET /v1/orders`}),` 中规范化的 `,_jsx(_components.code,{children:`status`}),` 取值——请在那里或通过 `,_jsx(_components.a,{href:`/guides/webhooks`,children:`Webhooks`}),` 跟踪订单。`]})}),`\n`,_jsx(ResponseField,{name:`currency`,type:`string`,required:true,id:`param-currency`,children:_jsxs(_components.p,{children:[`始终为 `,_jsx(_components.code,{children:`USD`}),`。`]})}),`\n`,_jsx(ResponseField,{name:`charged_total_usd`,type:`number`,required:true,id:`param-charged-total-usd`,children:_jsx(_components.p,{children:`从您余额中扣除的总额,单位美元。`})}),`\n`,_jsx(ResponseField,{name:`item_count`,type:`integer`,id:`param-item-count`,children:_jsx(_components.p,{children:`订单中的商品数量。`})}),`\n`,_jsxs(ResponseField,{name:`items`,type:`object[]`,id:`param-items`,children:[_jsx(_components.p,{children:`每件购买的商品一条记录。`}),_jsxs(Expandable,{title:`Item object`,children:[_jsx(ResponseField,{name:`market_hash_name`,type:`string | null`,id:`param-market-hash-name`,children:_jsx(_components.p,{children:`商品的 Steam 市场哈希名称。`})}),_jsx(ResponseField,{name:`price_usd`,type:`number | null`,id:`param-price-usd`,children:_jsx(_components.p,{children:`该商品的扣款金额,单位美元。`})}),_jsx(ResponseField,{name:`status`,type:`string | null`,id:`param-status-1`,children:_jsxs(_components.p,{children:[`商品的内部状态(如已设置);刚购买后通常为 `,_jsx(_components.code,{children:`null`}),`。`]})})]})]}),`\n`,_jsx(ResponseField,{name:`delivery`,type:`string | null`,required:true,id:`param-delivery`,children:_jsxs(_components.p,{children:[`已知时的交付方式:`,_jsx(_components.code,{children:`instant`}),`(机器人交付)或 `,_jsx(_components.code,{children:`pending`}),`(仍需卖家或供应商发起交易)。Dota 2 和 Rust 订单始终返回 `,_jsx(_components.code,{children:`pending`}),`。`]})}),`\n`,_jsx(ResponseField,{name:`expected_minutes`,type:`integer | null`,required:true,id:`param-expected-minutes`,children:_jsxs(_components.p,{children:[`可给出时的大致交付时间(分钟)。Dota 2 和 Rust 订单始终为 `,_jsx(_components.code,{children:`null`}),`。`]})}),`\n`,_jsx(ResponseField,{name:`created_at`,type:`datetime`,id:`param-created-at`,children:_jsx(_components.p,{children:`订单创建时的 ISO 8601 时间戳。`})}),`\n`,_jsx(ResponseField,{name:`updated_at`,type:`datetime | null`,id:`param-updated-at`,children:_jsx(_components.p,{children:`订单最后一次变更的 ISO 8601 时间戳。`})}),`\n`,_jsx(Heading,{level:`2`,id:`示例请求`,children:`示例请求`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`8`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`8`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://csboard.com/v1/orders`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer csb_pub_...\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Idempotency-Key: 6f9c2b10-1a2b-4c3d-8e4f-5a6b7c8d9e0f\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"item_ids\": [\"itm_8841201\", \"itm_8841340\"],`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"max_price_usd\": 30.00`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`示例响应`,children:`示例响应`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`23`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`23`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"order_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"cmg9x2k1p0007qz3h5v8w2r4n\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"paid\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"currency\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"USD\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"charged_total_usd\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`26.47`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"item_count\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`2`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"items\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"market_hash_name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"AK-47 | Redline (Minimal Wear)\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"price_usd\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`14.37`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"market_hash_name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"AWP | Atheris (Field-Tested)\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"price_usd\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`12.1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"delivery\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"instant\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"expected_minutes\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"created_at\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-06-29T17:12:04.000Z\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"updated_at\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-06-29T17:12:04.000Z\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`错误代码`,children:`错误代码`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`HTTP 状态码`}),_jsx(_components.th,{children:`代码`}),_jsx(_components.th,{children:`含义`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`invalid_request`})}),_jsxs(_components.td,{children:[`请求体格式错误——`,_jsx(_components.code,{children:`detail`}),` 为按字段列出的错误。`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`unsupported_item`})}),_jsxs(_components.td,{children:[`该 ID 无法通过 API 购买。请使用 `,_jsx(_components.code,{children:`GET /v1/listings`}),` 返回的 ID。`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`steam_account_required`})}),_jsx(_components.td,{children:`您的 CSBoard 账户未绑定 Steam 账户或没有有效的交易链接。`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`400`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`cannot_mix_sources`}),` / `,_jsx(_components.code,{children:`one_external_per_order`})]}),_jsx(_components.td,{children:`这些商品不能放在同一订单中。请拆分订单。`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`400`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`unsupported_game`})}),_jsxs(_components.td,{children:[`您的密钥不能在此 `,_jsx(_components.code,{children:`appId`}),` 中购买。`,_jsx(_components.code,{children:`supported_app_ids`}),` 列出了可以购买的游戏。`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`401`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`missing_api_key`}),` / `,_jsx(_components.code,{children:`invalid_api_key`})]}),_jsx(_components.td,{children:`API 密钥缺失或无效。`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`402`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`insufficient_balance`})}),_jsxs(_components.td,{children:[`余额不足。响应体包含 `,_jsx(_components.code,{children:`required_usd`}),` 和 `,_jsx(_components.code,{children:`current_usd`}),`。`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`402`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`kyc_required`})}),_jsxs(_components.td,{children:[`本次购买需要先完成身份验证。响应体包含 `,_jsx(_components.code,{children:`kyc_url`}),`。`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`403`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`trading_not_enabled`})}),_jsx(_components.td,{children:`该 API 密钥未启用购买功能。请在您的个人资料中启用。`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`403`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`account_restricted`})}),_jsx(_components.td,{children:`账户受限。请联系客服。`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`409`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`price_moved`})}),_jsxs(_components.td,{children:[`实时总额超过了 `,_jsx(_components.code,{children:`max_price_usd`}),`。订单被拒绝,未扣款。响应体包含 `,_jsx(_components.code,{children:`quoted_max_usd`}),`、`,_jsx(_components.code,{children:`current_total_usd`}),` 以及每件商品的实时价格。`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`409`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`item_unavailable`})}),_jsxs(_components.td,{children:[`商品在您的订单到达前已离开目录。响应体可能包含 `,_jsx(_components.code,{children:`unavailable_ids`}),`,CS2 订单还可能包含 `,_jsx(_components.code,{children:`unknown_ids`}),`。参见下方 `,_jsx(_components.a,{href:`#unavailable-items`,children:`不可用的商品`}),`。`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`409`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`idempotency_in_progress`})}),_jsx(_components.td,{children:`等待 Retry-After 指定的时间,然后查询原订单。`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`409`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`pending_trades_limit`})}),_jsxs(_components.td,{children:[`收货方有过多未接受的 Steam 交易报价。上限见响应体中的 `,_jsx(_components.code,{children:`limit`}),`。`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`409`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`price_updating`}),` / `,_jsx(_components.code,{children:`concurrent_update`})]}),_jsx(_components.td,{children:`价格正在刷新,或并发订单抢先完成。未扣款——请重试。`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`429`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`rate_limit_exceeded`})}),_jsxs(_components.td,{children:[`超过每分钟 250 个购买订单(`,_jsx(_components.code,{children:`bucket: \"buy_orders\"`}),`),或超过密钥的交易限制(`,_jsx(_components.code,{children:`bucket: \"trading\"`}),`)。请等待 `,_jsx(_components.code,{children:`Retry-After`}),` 响应头中的秒数。`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`500`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`order_failed`})}),_jsxs(_components.td,{children:[`意外失败。重试前请先查看 `,_jsx(_components.code,{children:`GET /v1/orders/info`}),`——订单可能已经存在。`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`503`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`market_unavailable`})}),_jsx(_components.td,{children:`其中一件商品所在的市场暂时不可用。未扣款。`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`504`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`upstream_timeout`})}),_jsx(_components.td,{children:`请保持待处理状态,用保存的标识符通过 GET /v1/orders/info 查询原订单。订单创建前,查询可能返回空结果。`})]})]})]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`请始终在请求中包含 `,_jsx(_components.code,{children:`max_price_usd`}),`。实时市场上的价格可能在您查询 `,_jsx(_components.code,{children:`/v1/listings`}),` 到订单执行之间发生变化。若没有此上限,您的余额可能以高于预期的价格被扣除,且没有自动回滚机制。`]})}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`通过 `,_jsx(_components.code,{children:`hold`}),` 交付的商品受 Steam 交易冻结约束。请查看原始挂单(来自 `,_jsx(_components.code,{children:`GET /v1/listings`}),`)上的 `,_jsx(_components.code,{children:`tradable_at`}),` 字段,了解被冻结的商品何时能在您的 Steam 库存中可交易。`]})}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Dota 2 和 Rust。`}),` `,_jsx(_components.code,{children:`appId`}),` 为 `,_jsx(_components.code,{children:`570`}),` 或 `,_jsx(_components.code,{children:`252490`}),` 的订单会进入交付队列,并返回 `,_jsx(_components.code,{children:`delivery: \"pending\"`}),` 和 `,_jsx(_components.code,{children:`expected_minutes: null`}),`。请通过 `,_jsx(_components.a,{href:`/zh-Hans/api-reference/get-order`,children:_jsx(_components.code,{children:`GET /v1/orders/{id}`})}),` 跟踪。价格上限、余额检查和幂等性与 CS2 完全相同。`]})}),`\n`,_jsx(`a`,{id:`unavailable-items`}),`\n`,_jsx(Heading,{level:`2`,id:`不可用的商品`,children:`不可用的商品`}),`\n`,_jsxs(_components.p,{children:[`挂单可能在您读取之后、购买之前离开目录。`,_jsx(_components.code,{children:`409 item_unavailable`}),` 的响应体会在 `,_jsx(_components.code,{children:`unavailable_ids`}),` 中列出所有缺失的 id。对于 CS2 订单,它还可能带有 `,_jsx(_components.code,{children:`unknown_ids`}),`:缺失的 id 中我们完全没有记录的那些。要么它不是 CSBoard 的挂单 id,要么该挂单离开目录已超过一小时。最常见的混淆是把 Steam 资产 id(asset id)当成挂单 id——CSBoard 的挂单 id 从不全由数字组成,请发送 `,_jsx(_components.code,{children:`/v1/listings`}),` 或流中某一行的 `,_jsx(_components.code,{children:`id`}),`。`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`6`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`6`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"code\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"item_unavailable\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"detail\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:'\"One or more items are no longer available. 1 of the ids are not known here (`unknown_ids`): not a listing id, or a listing gone for over an hour. Steam asset ids are not listing ids: send the `id` of a row from /v1/listings or the stream.\"'}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"unavailable_ids\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"31846262931\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"unknown_ids\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"31846262931\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`]`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`如需在尝试购买前剔除已售出的挂单,请订阅 `,_jsx(_components.a,{href:`/zh-Hans/api-reference/get-listings-stream`,children:_jsx(_components.code,{children:`GET /v1/listings/stream`})}),` 的 `,_jsx(_components.code,{children:`gone`}),` 事件。`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"POST /v1/orders — 使用余额购买 CS2 挂单","sidebarTitle":"POST /orders","description":"在单次原子请求中按 ID 购买 1–10 件 CS2 挂单,从您的 CSBoard 余额中扣款。需要启用交易的 API 密钥以及已绑定的 Steam 账户。","openapi":"POST /orders","href":"/zh-Hans/api-reference/post-orders"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"前置条件","slug":"前置条件","depth":2,"children":[]},{"title":"请求头","slug":"请求头","depth":2,"children":[]},{"title":"请求体","slug":"请求体","depth":2,"children":[]},{"title":"响应字段","slug":"响应字段","depth":2,"children":[]},{"title":"示例请求","slug":"示例请求","depth":2,"children":[]},{"title":"示例响应","slug":"示例响应","depth":2,"children":[]},{"title":"错误代码","slug":"错误代码","depth":2,"children":[]},{"title":"不可用的商品","slug":"不可用的商品","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Trading"],"summary":"Buy listings from your balance","description":"在单次原子请求中按 ID 购买 1–10 件 CS2 挂单,从您的 CSBoard 余额中扣款。需要启用交易的 API 密钥以及已绑定的 Steam 账户。","operationId":"createOrder","parameters":["65df7367-c5b7-47cb-97a2-da73dc6d1b5a"],"requestBody":"51ab1907-983d-479a-84f8-f45761df218d","responses":{"200":"93ffe73f-51a3-4a52-a634-63f2592bba38","201":"4e2782e4-5dda-44c3-9d8f-d5e759c9f9a7","400":"8288632c-957f-4aee-a1e9-fd181b646321","401":"289330e9-fbc8-4b81-8c62-cc99021792a5","402":"c93dd02b-9c11-4728-ad0a-a915d69577aa","403":"1ae69c8f-e98b-4b0a-87e0-b4f07c324850","409":"4f394fc0-0c34-4969-a87e-5a477e4edced","429":"0d571e76-e9c5-4a29-be40-e86e5b831268","500":"5f3f28e5-26a4-44b8-a8d7-6484210081d2","503":"83eadbef-5fb8-40e3-8e61-82105c3989ad","504":"8e029c4f-7934-44e1-acd6-7cf3b129dd14"},"method":"post","type":"path","servers":["0e703a7c-bb72-4382-a5c4-7af713801e30"],"security":["06dc2d5d-3307-4e9d-932f-2c2f29b1a6df"],"path":"/orders","baseUrlOptions":["https://csboard.com/v1"],"title":"Buy listings from your balance","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"65df7367-c5b7-47cb-97a2-da73dc6d1b5a":{"name":"Idempotency-Key","in":"header","description":"Optional, 8–128 characters. While a successful result is cached (up to 24 hours), the same key returns HTTP 200 with Idempotent-Replayed: true. An active claim returns 409 idempotency_in_progress. Reconcile a lost response before another purchase.","schema":{"type":"string","description":"Optional, 8–128 characters. While a successful result is cached (up to 24 hours), the same key returns HTTP 200 with Idempotent-Replayed: true. An active claim returns 409 idempotency_in_progress. Reconcile a lost response before another purchase.","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"item_ids":{"type":"array","items":{"type":"string","uniqueKey":"item_ids.items.[INDEX]","typeLabel":"string"},"minItems":1,"maxItems":10,"uniqueItems":true,"description":"1–10 unique ids from /v1/listings. Some items can't be combined in a single order — if so the order is rejected and you can split it.","isRequired":true,"uniqueKey":"item_ids","typeLabel":"string[]"},"max_price_usd":{"type":"number","description":"Total ceiling in USD. Strongly recommended — your overcharge protection, enforced atomically inside the locked debit.","exclusiveMinimum":0,"maximum":1000000,"uniqueKey":"max_price_usd","typeLabel":"number"},"idempotency_key":{"type":"string","description":"Optional alternative to the Idempotency-Key header. A cached successful response is reusable for up to 24 hours.","minLength":8,"maxLength":128,"uniqueKey":"idempotency_key","typeLabel":"string"},"autoclaim":{"type":"boolean","description":"Sticky per-account setting (not per-order). Send `true` once to switch your key into auto-claim mode: every held order is then auto-released the moment its hold clears (your bot must auto-accept the Steam trade offer within ~15 minutes). Send `false` to switch back to manual claiming via `POST /orders/{id}/claim`. Omit to leave the setting unchanged.","uniqueKey":"autoclaim","typeLabel":"boolean"},"appId":{"type":"integer","enum":[730,570,252490],"default":730,"description":"Game the `item_ids` belong to: `730` = CS2 (the default), `570` = Dota 2, `252490` = Rust. Send the same `appId` you read the ids with from `GET /listings`. A game this key may not buy in answers `400 unsupported_game` — `tradable` in `GET /games` tells you in advance.","uniqueKey":"appId","typeLabel":"enum\u003cinteger>"}},"required":["item_ids"],"uniqueKey":"","typeLabel":"object"},"example":{"item_ids":["itm_8841201","itm_8841340"],"max_price_usd":30,"idempotency_key":"6f9c2b10-1a2b-4c3d-8e4f-5a6b7c8d9e0f"},"examples":{"Example":{"title":"Example","value":{"item_ids":["itm_8841201","itm_8841340"],"max_price_usd":30,"idempotency_key":"6f9c2b10-1a2b-4c3d-8e4f-5a6b7c8d9e0f"}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"93ffe73f-51a3-4a52-a634-63f2592bba38":{"description":"Idempotent replay: a request with an `Idempotency-Key` (or `idempotency_key`) already used for a completed order returns that original response body, with the header `Idempotent-Replayed: true`. Nothing new is bought.","headers":{"Idempotent-Replayed":{"description":"`true` on a replayed response.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","description":"The order as it stands the moment it was created. `status` here is the internal state at that instant (for example `paid` or `pending_delivery`), not the normalised vocabulary of `GET /orders` — read the order there, or subscribe to webhooks, to follow it.","properties":{"order_id":{"type":"string","description":"Order id. Use it with `GET /orders/{id}`.","isRequired":true,"uniqueKey":"order_id","typeLabel":"string"},"status":{"type":"string","description":"Internal order state when the response was built, e.g. `paid` or `pending_delivery`. Poll `GET /orders/{id}` for the public `status`.","isRequired":true,"uniqueKey":"status","typeLabel":"string"},"currency":{"type":"string","enum":["USD"],"isRequired":true,"uniqueKey":"currency","typeLabel":"enum\u003cstring>"},"charged_total_usd":{"type":"number","description":"Total debited from your balance, in USD.","isRequired":true,"uniqueKey":"charged_total_usd","typeLabel":"number"},"delivery":{"oneOf":[{"type":"string","enum":["instant","pending",null],"description":"How the order is being delivered, when known: `instant` (bot delivery) or `pending` (a seller or supplier still has to send the trade). Dota 2 and Rust orders always answer `pending`.","isRequired":true,"uniqueKey":"delivery.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["instant","pending",null],"description":"How the order is being delivered, when known: `instant` (bot delivery) or `pending` (a seller or supplier still has to send the trade). Dota 2 and Rust orders always answer `pending`.","isRequired":true,"uniqueKey":"delivery.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"delivery","typeLabel":"enum\u003cstring> | null"},"expected_minutes":{"oneOf":[{"type":"integer","description":"Rough delivery estimate in minutes, when we can state one. Always `null` for Dota 2 and Rust orders.","isRequired":true,"uniqueKey":"expected_minutes.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Rough delivery estimate in minutes, when we can state one. Always `null` for Dota 2 and Rust orders.","isRequired":true,"uniqueKey":"expected_minutes.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"expected_minutes","typeLabel":"integer | null"},"item_count":{"type":"integer","description":"Number of items in the order.","uniqueKey":"item_count","typeLabel":"integer"},"items":{"type":"array","description":"One entry per item bought.","items":{"type":"object","properties":{"market_hash_name":{"oneOf":[{"type":"string","uniqueKey":"\\items.items.[INDEX].market_hash_name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"\\items.items.[INDEX].market_hash_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].market_hash_name","typeLabel":"string | null"},"price_usd":{"oneOf":[{"type":"number","description":"What this item was charged, in USD.","uniqueKey":"\\items.items.[INDEX].price_usd.oneOf.0","typeLabel":"number"},{"type":"null","description":"What this item was charged, in USD.","uniqueKey":"\\items.items.[INDEX].price_usd.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].price_usd","typeLabel":"number | null"},"status":{"oneOf":[{"type":"string","description":"Internal item state, if one is set yet; usually `null` right after purchase.","uniqueKey":"\\items.items.[INDEX].status.oneOf.0","typeLabel":"string"},{"type":"null","description":"Internal item state, if one is set yet; usually `null` right after purchase.","uniqueKey":"\\items.items.[INDEX].status.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].status","typeLabel":"string | null"}},"uniqueKey":"\\items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"\\items","typeLabel":"object[]"},"created_at":{"type":"string","format":"date-time","uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"updated_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"updated_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"updated_at","typeLabel":"string\u003cdate-time> | null"}},"required":["order_id","status","currency","charged_total_usd","delivery","expected_minutes"],"uniqueKey":"","typeLabel":"object"},"example":{"order_id":"cmg9x2k1p0007qz3h5v8w2r4n","status":"paid","currency":"USD","charged_total_usd":26.47,"item_count":2,"items":[{"market_hash_name":"AK-47 | Redline (Minimal Wear)","price_usd":14.37,"status":null},{"market_hash_name":"AWP | Atheris (Field-Tested)","price_usd":12.1,"status":null}],"delivery":"instant","expected_minutes":1,"created_at":"2026-06-29T17:12:04.000Z","updated_at":"2026-06-29T17:12:04.000Z"},"examples":{"Example":{"title":"Example","value":{"order_id":"cmg9x2k1p0007qz3h5v8w2r4n","status":"paid","currency":"USD","charged_total_usd":26.47,"item_count":2,"items":[{"market_hash_name":"AK-47 | Redline (Minimal Wear)","price_usd":14.37,"status":null},{"market_hash_name":"AWP | Atheris (Field-Tested)","price_usd":12.1,"status":null}],"delivery":"instant","expected_minutes":1,"created_at":"2026-06-29T17:12:04.000Z","updated_at":"2026-06-29T17:12:04.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"4e2782e4-5dda-44c3-9d8f-d5e759c9f9a7":{"description":"Order created and debited from your balance.","content":{"application/json":{"schema":{"type":"object","description":"The order as it stands the moment it was created. `status` here is the internal state at that instant (for example `paid` or `pending_delivery`), not the normalised vocabulary of `GET /orders` — read the order there, or subscribe to webhooks, to follow it.","properties":{"order_id":{"type":"string","description":"Order id. Use it with `GET /orders/{id}`.","isRequired":true,"uniqueKey":"order_id","typeLabel":"string"},"status":{"type":"string","description":"Internal order state when the response was built, e.g. `paid` or `pending_delivery`. Poll `GET /orders/{id}` for the public `status`.","isRequired":true,"uniqueKey":"status","typeLabel":"string"},"currency":{"type":"string","enum":["USD"],"isRequired":true,"uniqueKey":"currency","typeLabel":"enum\u003cstring>"},"charged_total_usd":{"type":"number","description":"Total debited from your balance, in USD.","isRequired":true,"uniqueKey":"charged_total_usd","typeLabel":"number"},"delivery":{"oneOf":[{"type":"string","enum":["instant","pending",null],"description":"How the order is being delivered, when known: `instant` (bot delivery) or `pending` (a seller or supplier still has to send the trade). Dota 2 and Rust orders always answer `pending`.","isRequired":true,"uniqueKey":"delivery.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["instant","pending",null],"description":"How the order is being delivered, when known: `instant` (bot delivery) or `pending` (a seller or supplier still has to send the trade). Dota 2 and Rust orders always answer `pending`.","isRequired":true,"uniqueKey":"delivery.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"delivery","typeLabel":"enum\u003cstring> | null"},"expected_minutes":{"oneOf":[{"type":"integer","description":"Rough delivery estimate in minutes, when we can state one. Always `null` for Dota 2 and Rust orders.","isRequired":true,"uniqueKey":"expected_minutes.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Rough delivery estimate in minutes, when we can state one. Always `null` for Dota 2 and Rust orders.","isRequired":true,"uniqueKey":"expected_minutes.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"expected_minutes","typeLabel":"integer | null"},"item_count":{"type":"integer","description":"Number of items in the order.","uniqueKey":"item_count","typeLabel":"integer"},"items":{"type":"array","description":"One entry per item bought.","items":{"type":"object","properties":{"market_hash_name":{"oneOf":[{"type":"string","uniqueKey":"\\items.items.[INDEX].market_hash_name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"\\items.items.[INDEX].market_hash_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].market_hash_name","typeLabel":"string | null"},"price_usd":{"oneOf":[{"type":"number","description":"What this item was charged, in USD.","uniqueKey":"\\items.items.[INDEX].price_usd.oneOf.0","typeLabel":"number"},{"type":"null","description":"What this item was charged, in USD.","uniqueKey":"\\items.items.[INDEX].price_usd.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].price_usd","typeLabel":"number | null"},"status":{"oneOf":[{"type":"string","description":"Internal item state, if one is set yet; usually `null` right after purchase.","uniqueKey":"\\items.items.[INDEX].status.oneOf.0","typeLabel":"string"},{"type":"null","description":"Internal item state, if one is set yet; usually `null` right after purchase.","uniqueKey":"\\items.items.[INDEX].status.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].status","typeLabel":"string | null"}},"uniqueKey":"\\items.items.[INDEX]","typeLabel":"object"},"uniqueKey":"\\items","typeLabel":"object[]"},"created_at":{"type":"string","format":"date-time","uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"updated_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"updated_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"updated_at","typeLabel":"string\u003cdate-time> | null"}},"required":["order_id","status","currency","charged_total_usd","delivery","expected_minutes"],"uniqueKey":"","typeLabel":"object"},"example":{"order_id":"cmg9x2k1p0007qz3h5v8w2r4n","status":"paid","currency":"USD","charged_total_usd":26.47,"item_count":2,"items":[{"market_hash_name":"AK-47 | Redline (Minimal Wear)","price_usd":14.37,"status":null},{"market_hash_name":"AWP | Atheris (Field-Tested)","price_usd":12.1,"status":null}],"delivery":"instant","expected_minutes":1,"created_at":"2026-06-29T17:12:04.000Z","updated_at":"2026-06-29T17:12:04.000Z"},"examples":{"Example":{"title":"Example","value":{"order_id":"cmg9x2k1p0007qz3h5v8w2r4n","status":"paid","currency":"USD","charged_total_usd":26.47,"item_count":2,"items":[{"market_hash_name":"AK-47 | Redline (Minimal Wear)","price_usd":14.37,"status":null},{"market_hash_name":"AWP | Atheris (Field-Tested)","price_usd":12.1,"status":null}],"delivery":"instant","expected_minutes":1,"created_at":"2026-06-29T17:12:04.000Z","updated_at":"2026-06-29T17:12:04.000Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"8288632c-957f-4aee-a1e9-fd181b646321":{"description":"Bad request — a malformed body (`invalid_request`, whose `detail` is the field-error map), an id that cannot be bought here, items that must be split into separate orders, no linked Steam account, or an `appId` this key may not buy in (`unsupported_game`).","content":{"application/json":{"schema":{"type":"object","description":"All errors return { code, detail }. Some carry extra fields (e.g. price_moved adds current_total_usd, insufficient_balance adds required_usd/current_usd, item_unavailable adds unavailable_ids and, on CS2 buys, unknown_ids).","properties":{"code":{"type":"string","description":"Machine-readable error code, e.g. rate_limit_exceeded, trading_not_enabled, price_moved.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","description":"Human-readable explanation.","uniqueKey":"detail","typeLabel":"string"}},"required":["code"],"uniqueKey":"","typeLabel":"object"},"examples":{"invalid_request":{"title":"invalid_request","value":{"code":"invalid_request","detail":{"formErrors":[],"fieldErrors":{"item_ids":["Duplicate item ids are not allowed"]}}}},"unsupported_game":{"title":"unsupported_game","value":{"code":"unsupported_game","detail":"appId 440 is not available to this key. Supported: 730 (CS2), 570 (Dota 2), 252490 (Rust).","supported_app_ids":[730,570,252490]}},"unsupported_item":{"title":"unsupported_item","value":{"code":"unsupported_item","detail":"Live (ss_live_*) ids are not buyable via API. Use ids from /v1/listings."}},"steam_account_required":{"title":"steam_account_required","value":{"code":"steam_account_required","detail":"Link your Steam account and trade URL on csboard.com before buying via API."}},"cannot_mix_sources":{"title":"cannot_mix_sources","value":{"code":"cannot_mix_sources","detail":"Buy external-market and platform items in separate orders."}},"one_external_per_order":{"title":"one_external_per_order","value":{"code":"one_external_per_order","detail":"Only one external-market item per order."}}},"exampleType":"examples"}},"exampleType":"examples"},"289330e9-fbc8-4b81-8c62-cc99021792a5":{"description":"Missing or invalid API key (`missing_api_key` or `invalid_api_key`).","content":{"application/json":{"schema":{"type":"object","description":"All errors return { code, detail }. Some carry extra fields (e.g. price_moved adds current_total_usd, insufficient_balance adds required_usd/current_usd, item_unavailable adds unavailable_ids and, on CS2 buys, unknown_ids).","properties":{"code":{"type":"string","description":"Machine-readable error code, e.g. rate_limit_exceeded, trading_not_enabled, price_moved.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","description":"Human-readable explanation.","uniqueKey":"detail","typeLabel":"string"}},"required":["code"],"uniqueKey":"","typeLabel":"object"},"example":{"code":"missing_api_key","detail":"Provide your API key via `Authorization: Bearer csb_pub_…`. Generate one at https://csboard.com/profile?tab=api"},"examples":{"Example":{"title":"Example","value":{"code":"missing_api_key","detail":"Provide your API key via `Authorization: Bearer csb_pub_…`. Generate one at https://csboard.com/profile?tab=api"}}},"exampleType":"examples"}},"exampleType":"examples"},"c93dd02b-9c11-4728-ad0a-a915d69577aa":{"description":"Payment required — the balance does not cover the order, or the purchase needs identity verification first.","content":{"application/json":{"schema":{"type":"object","description":"All errors return { code, detail }. Some carry extra fields (e.g. price_moved adds current_total_usd, insufficient_balance adds required_usd/current_usd, item_unavailable adds unavailable_ids and, on CS2 buys, unknown_ids).","properties":{"code":{"type":"string","description":"Machine-readable error code, e.g. rate_limit_exceeded, trading_not_enabled, price_moved.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","description":"Human-readable explanation.","uniqueKey":"detail","typeLabel":"string"}},"required":["code"],"uniqueKey":"","typeLabel":"object"},"examples":{"insufficient_balance":{"title":"insufficient_balance","value":{"code":"insufficient_balance","detail":"Top up your CSBoard balance to cover this order.","required_usd":26.47,"current_usd":10}},"kyc_required":{"title":"kyc_required","value":{"code":"kyc_required","detail":"Identity verification required before this purchase.","kyc_url":"https://csboard.com/...","reasons":["..."]}}},"exampleType":"examples"}},"exampleType":"examples"},"1ae69c8f-e98b-4b0a-87e0-b4f07c324850":{"description":"Forbidden — trading is not enabled on this key, the account is restricted, or the account is not eligible for this purchase.","content":{"application/json":{"schema":{"type":"object","description":"All errors return { code, detail }. Some carry extra fields (e.g. price_moved adds current_total_usd, insufficient_balance adds required_usd/current_usd, item_unavailable adds unavailable_ids and, on CS2 buys, unknown_ids).","properties":{"code":{"type":"string","description":"Machine-readable error code, e.g. rate_limit_exceeded, trading_not_enabled, price_moved.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","description":"Human-readable explanation.","uniqueKey":"detail","typeLabel":"string"}},"required":["code"],"uniqueKey":"","typeLabel":"object"},"examples":{"trading_not_enabled":{"title":"trading_not_enabled","value":{"code":"trading_not_enabled","detail":"Buying via API is disabled for this key. Enable it at https://csboard.com/profile?tab=api"}},"account_restricted":{"title":"account_restricted","value":{"code":"account_restricted","detail":"Account is restricted — contact support."}}},"exampleType":"examples"}},"exampleType":"examples"},"4f394fc0-0c34-4969-a87e-5a477e4edced":{"description":"Conflict — the live price moved past your ceiling, an item sold out, a duplicate Idempotency-Key is still processing, the recipient has too many pending offers, prices are mid-refresh, or a concurrent order won the race. An in-progress conflict leaves the original request unresolved. `item_unavailable` lists every missing id in `unavailable_ids`; on a CS2 buy, `unknown_ids` names the ones we have no record of at all — not a CSBoard listing id (a Steam asset id is the usual mix-up; listing ids are never all digits) or a listing that left the catalogue more than an hour ago. Follow the stream's `gone` events to drop listings before you buy them.","content":{"application/json":{"schema":{"type":"object","description":"All errors return { code, detail }. Some carry extra fields (e.g. price_moved adds current_total_usd, insufficient_balance adds required_usd/current_usd, item_unavailable adds unavailable_ids and, on CS2 buys, unknown_ids).","properties":{"code":{"type":"string","description":"Machine-readable error code, e.g. rate_limit_exceeded, trading_not_enabled, price_moved.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","description":"Human-readable explanation.","uniqueKey":"detail","typeLabel":"string"}},"required":["code"],"uniqueKey":"","typeLabel":"object"},"examples":{"price_moved":{"title":"price_moved","value":{"code":"price_moved","detail":"Live price exceeds your max_price_usd. Re-read /v1/listings and retry.","quoted_max_usd":30,"current_total_usd":31.2,"items":[{"id":"itm_8841201","market_hash_name":"AK-47 | Redline (Minimal Wear)","price_usd":15.1},{"id":"itm_8841340","market_hash_name":"AWP | Atheris (Field-Tested)","price_usd":16.1}]}},"item_unavailable":{"title":"item_unavailable","value":{"code":"item_unavailable","detail":"One or more items are no longer available.","unavailable_ids":["itm_8841999"]}},"item_unknown":{"title":"item_unknown","value":{"code":"item_unavailable","detail":"One or more items are no longer available. 1 of the ids are not known here (`unknown_ids`): not a listing id, or a listing gone for over an hour. Steam asset ids are not listing ids: send the `id` of a row from /v1/listings or the stream.","unavailable_ids":["31846262931"],"unknown_ids":["31846262931"]}},"idempotency_in_progress":{"title":"idempotency_in_progress","value":{"code":"idempotency_in_progress","detail":"A request with this Idempotency-Key is still processing."}},"concurrent_update":{"title":"concurrent_update","value":{"code":"concurrent_update","detail":"Another order touched the same items at the same moment and this one was rolled back. Nothing was charged — retry."}},"pending_trades_limit":{"title":"pending_trades_limit","value":{"code":"pending_trades_limit","detail":"The recipient has too many pending Steam trade offers; they must accept them before more can be delivered.","limit":5}},"price_updating":{"title":"price_updating","value":{"code":"price_updating","detail":"Prices are being updated — retry in a moment."}}},"exampleType":"examples"}},"exampleType":"examples"},"0d571e76-e9c5-4a29-be40-e86e5b831268":{"description":"A per-key limit is spent. The key's own buckets answer `rate_limit_exceeded` with `bucket` (`read`, `trading` or `buy_orders`), `limit_per_min` and `retry_after_sec`. `Retry-After` is the seconds left until the one-minute window restarts (1–60), not a flat 60. Endpoint-specific limits (`snapshot_rate_limited` on the price snapshot, `rate_limited` on Instant Sell) send only `code` and `detail`.","headers":{"Retry-After":{"description":"Seconds until the one-minute window restarts (1–60). Waiting that long is always enough.","schema":{"type":"integer"}},"X-RateLimit-Limit":{"description":"The ceiling per minute of the bucket this call spent (named in `X-RateLimit-Bucket`).","schema":{"type":"integer"},"example":3000},"X-RateLimit-Remaining":{"description":"Calls left on that bucket in the current one-minute window.","schema":{"type":"integer","minimum":0},"example":2987},"X-RateLimit-Reset":{"description":"Seconds until the one-minute window restarts and the counter starts again.","schema":{"type":"integer","minimum":1,"maximum":60},"example":41},"X-RateLimit-Bucket":{"description":"The bucket this call spent: `read` (reads and every other keyed call) or `trading` (buys, order reads, claims, cancels, balance). A `429` from the buy-order limit says `buy_orders`.","schema":{"type":"string","enum":["read","trading","buy_orders"]},"example":"trading"}},"content":{"application/json":{"schema":{"type":"object","description":"The `429` body of a per-key bucket. Endpoint-specific limits send only `code` and `detail`.","properties":{"code":{"type":"string","description":"`rate_limit_exceeded` for the key's buckets. Endpoint-specific limits use their own code (`snapshot_rate_limited`, `rate_limited`).","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","description":"Human-readable explanation.","uniqueKey":"detail","typeLabel":"string"},"bucket":{"type":"string","enum":["read","trading","buy_orders"],"description":"Which bucket is spent.","uniqueKey":"bucket","typeLabel":"enum\u003cstring>"},"limit_per_min":{"type":"integer","description":"That bucket's ceiling per minute.","uniqueKey":"limit_per_min","typeLabel":"integer"},"retry_after_sec":{"type":"integer","minimum":1,"maximum":60,"description":"Seconds until the window restarts — the same number as `Retry-After`.","uniqueKey":"retry_after_sec","typeLabel":"integer"}},"required":["code"],"uniqueKey":"","typeLabel":"object"},"example":{"code":"rate_limit_exceeded","detail":"Read rate limit of 100 requests/min exceeded. The counter restarts in 23 s. For new listings use GET /v1/listings/stream instead of polling.","bucket":"read","limit_per_min":100,"retry_after_sec":23},"examples":{"Example":{"title":"Example","value":{"code":"rate_limit_exceeded","detail":"Read rate limit of 100 requests/min exceeded. The counter restarts in 23 s. For new listings use GET /v1/listings/stream instead of polling.","bucket":"read","limit_per_min":100,"retry_after_sec":23}}},"exampleType":"examples"}},"exampleType":"examples"},"5f3f28e5-26a4-44b8-a8d7-6484210081d2":{"description":"Unexpected failure. The order may still exist — check `GET /orders/info` with your `custom_id` before retrying.","content":{"application/json":{"schema":{"type":"object","description":"All errors return { code, detail }. Some carry extra fields (e.g. price_moved adds current_total_usd, insufficient_balance adds required_usd/current_usd, item_unavailable adds unavailable_ids and, on CS2 buys, unknown_ids).","properties":{"code":{"type":"string","description":"Machine-readable error code, e.g. rate_limit_exceeded, trading_not_enabled, price_moved.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","description":"Human-readable explanation.","uniqueKey":"detail","typeLabel":"string"}},"required":["code"],"uniqueKey":"","typeLabel":"object"},"example":{"code":"order_failed","detail":"Could not complete the order."},"examples":{"Example":{"title":"Example","value":{"code":"order_failed","detail":"Could not complete the order."}}},"exampleType":"examples"}},"exampleType":"examples"},"83eadbef-5fb8-40e3-8e61-82105c3989ad":{"description":"The marketplace for one of the items is temporarily unavailable. No charge was made.","content":{"application/json":{"schema":{"type":"object","description":"All errors return { code, detail }. Some carry extra fields (e.g. price_moved adds current_total_usd, insufficient_balance adds required_usd/current_usd, item_unavailable adds unavailable_ids and, on CS2 buys, unknown_ids).","properties":{"code":{"type":"string","description":"Machine-readable error code, e.g. rate_limit_exceeded, trading_not_enabled, price_moved.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","description":"Human-readable explanation.","uniqueKey":"detail","typeLabel":"string"}},"required":["code"],"uniqueKey":"","typeLabel":"object"},"example":{"code":"market_unavailable","detail":"The marketplace for one of these items is temporarily unavailable — retry shortly. No charge was made."},"examples":{"Example":{"title":"Example","value":{"code":"market_unavailable","detail":"The marketplace for one of these items is temporarily unavailable — retry shortly. No charge was made."}}},"exampleType":"examples"}},"exampleType":"examples"},"8e029c4f-7934-44e1-acd6-7cf3b129dd14":{"description":"The purchase outcome is unknown. Keep the original order pending and reconcile through GET /v1/orders/info using the saved identifier. An empty lookup can precede order creation. Do not automatically repeat an unresolved purchase, even with the same identifier.","content":{"application/json":{"schema":{"type":"object","description":"All errors return { code, detail }. Some carry extra fields (e.g. price_moved adds current_total_usd, insufficient_balance adds required_usd/current_usd, item_unavailable adds unavailable_ids and, on CS2 buys, unknown_ids).","properties":{"code":{"type":"string","description":"Machine-readable error code, e.g. rate_limit_exceeded, trading_not_enabled, price_moved.","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"detail":{"type":"string","description":"Human-readable explanation.","uniqueKey":"detail","typeLabel":"string"}},"required":["code"],"uniqueKey":"","typeLabel":"object"},"example":{"code":"upstream_timeout","detail":"The marketplace did not answer in time, so the outcome of this purchase is UNKNOWN — it may still have gone through. Do not re-send blindly: poll the order list (or re-send the identical custom_id, which replays rather than buys) before treating it as failed."},"examples":{"Example":{"title":"Example","value":{"code":"upstream_timeout","detail":"The marketplace did not answer in time, so the outcome of this purchase is UNKNOWN — it may still have gone through. Do not re-send blindly: poll the order list (or re-send the identical custom_id, which replays rather than buys) before treating it as failed."}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"06dc2d5d-3307-4e9d-932f-2c2f29b1a6df":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Send your key as a Bearer token on every request: `Authorization: Bearer csb_pub_...`. Generate keys in your CSBoard profile. Calls made with a key are metered only by that key's own limits — there is no per-IP limit on top — and every answer carries `X-RateLimit-Limit`, `X-RateLimit-Remaining`, `X-RateLimit-Reset` and `X-RateLimit-Bucket` for the bucket the call spent. See [Rate limits](/rate-limits).","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"0e703a7c-bb72-4382-a5c4-7af713801e30":{"url":"https://csboard.com/v1","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Send your key as a Bearer token on every request: `Authorization: Bearer csb_pub_...`. Generate keys in your CSBoard profile. Calls made with a key are metered only by that key's own limits — there is no per-IP limit on top — and every answer carries `X-RateLimit-Limit`, `X-RateLimit-Remaining`, `X-RateLimit-Reset` and `X-RateLimit-Bucket` for the bucket the call spent. See [Rate limits](/rate-limits).","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Send your key as a Bearer token on every request: `Authorization: Bearer csb_pub_...`. Generate keys in your CSBoard profile. Calls made with a key are metered only by that key's own limits — there is no per-IP limit on top — and every answer carries `X-RateLimit-Limit`, `X-RateLimit-Remaining`, `X-RateLimit-Reset` and `X-RateLimit-Bucket` for the bucket the call spent. See [Rate limits](/rate-limits).","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"openapi.json"},"subdomain":"csboard","siteName":"CSBoard API","title":"POST /v1/orders — 使用余额购买 CS2 挂单 - CSBoard API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/api-reference/post-orders","matchLevel":1},"ru":{"href":"/ru/api-reference/post-orders","matchLevel":1},"zh-Hans":{"href":"/zh-Hans/api-reference/post-orders","matchLevel":0}}},"lastModified":"2026-11-06T03:11:39.979Z","originalFileLocation":"zh-Hans/api-reference/post-orders.mdx","locale":"zh-Hans"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"在单次原子请求中按 ID 购买 1–10 件 CS2 挂单,从您的 CSBoard 余额中扣款。需要启用交易的 API 密钥以及已绑定的 Steam 账户。\">\u003cmeta data-mint-head name=\"application-name\" content=\"CSBoard API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/csboard/m4zEijRxsV60XgHV/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/csboard/m4zEijRxsV60XgHV/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/csboard/m4zEijRxsV60XgHV/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/csboard/m4zEijRxsV60XgHV/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/csboard/m4zEijRxsV60XgHV/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/csboard/m4zEijRxsV60XgHV/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/csboard/m4zEijRxsV60XgHV/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/csboard/m4zEijRxsV60XgHV/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/csboard/m4zEijRxsV60XgHV/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"POST /v1/orders — 使用余额购买 CS2 挂单 - CSBoard API\">\u003cmeta data-mint-head property=\"og:description\" content=\"在单次原子请求中按 ID 购买 1–10 件 CS2 挂单,从您的 CSBoard 余额中扣款。需要启用交易的 API 密钥以及已绑定的 Steam 账户。\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"CSBoard API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://api.csboard.com/zh-Hans/api-reference/post-orders\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://csboard.mintlify.site/_mintlify/api/og/v2?division=%E4%BA%A4%E6%98%93\u0026amp;title=POST+%2Fv1%2Forders+%E2%80%94+%E4%BD%BF%E7%94%A8%E4%BD%99%E9%A2%9D%E8%B4%AD%E4%B9%B0+CS2+%E6%8C%82%E5%8D%95\u0026amp;description=%E5%9C%A8%E5%8D%95%E6%AC%A1%E5%8E%9F%E5%AD%90%E8%AF%B7%E6%B1%82%E4%B8%AD%E6%8C%89+ID+%E8%B4%AD%E4%B9%B0+1%E2%80%9310+%E4%BB%B6+CS2+%E6%8C%82%E5%8D%95%EF%BC%8C%E4%BB%8E%E6%82%A8%E7%9A%84+CSBoard+%E4%BD%99%E9%A2%9D%E4%B8%AD%E6%89%A3%E6%AC%BE%E3%80%82%E9%9C%80%E8%A6%81%E5%90%AF%E7%94%A8%E4%BA%A4%E6%98%93%E7%9A%84+API+%E5%AF%86%E9%92%A5%E4%BB%A5%E5%8F%8A%E5%B7%B2%E7%BB%91%E5%AE%9A%E7%9A%84+Steam+%E8%B4%A6%E6%88%B7%E3%80%82\u0026amp;theme=932e691933583ab42431355a\u0026amp;signature=214be724bc44673c9c153bffc6ea4cbe05bfaf645a9e73756338c3fd88392bed\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"POST /v1/orders — 使用余额购买 CS2 挂单 - CSBoard API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"在单次原子请求中按 ID 购买 1–10 件 CS2 挂单,从您的 CSBoard 余额中扣款。需要启用交易的 API 密钥以及已绑定的 Steam 账户。\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://csboard.mintlify.site/_mintlify/api/og/v2?division=%E4%BA%A4%E6%98%93\u0026amp;title=POST+%2Fv1%2Forders+%E2%80%94+%E4%BD%BF%E7%94%A8%E4%BD%99%E9%A2%9D%E8%B4%AD%E4%B9%B0+CS2+%E6%8C%82%E5%8D%95\u0026amp;description=%E5%9C%A8%E5%8D%95%E6%AC%A1%E5%8E%9F%E5%AD%90%E8%AF%B7%E6%B1%82%E4%B8%AD%E6%8C%89+ID+%E8%B4%AD%E4%B9%B0+1%E2%80%9310+%E4%BB%B6+CS2+%E6%8C%82%E5%8D%95%EF%BC%8C%E4%BB%8E%E6%82%A8%E7%9A%84+CSBoard+%E4%BD%99%E9%A2%9D%E4%B8%AD%E6%89%A3%E6%AC%BE%E3%80%82%E9%9C%80%E8%A6%81%E5%90%AF%E7%94%A8%E4%BA%A4%E6%98%93%E7%9A%84+API+%E5%AF%86%E9%92%A5%E4%BB%A5%E5%8F%8A%E5%B7%B2%E7%BB%91%E5%AE%9A%E7%9A%84+Steam+%E8%B4%A6%E6%88%B7%E3%80%82\u0026amp;theme=932e691933583ab42431355a\u0026amp;signature=214be724bc44673c9c153bffc6ea4cbe05bfaf645a9e73756338c3fd88392bed\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/csboard/m4zEijRxsV60XgHV/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"CSBoard API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2563eb\">\u003clink data-mint-head rel=\"canonical\" href=\"https://api.csboard.com/zh-Hans/api-reference/post-orders\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/zh-Hans/api-reference/post-orders.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh-Hans\" href=\"https://api.csboard.com/zh-Hans/api-reference/post-orders\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://api.csboard.com/api-reference/post-orders\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ru\" href=\"https://api.csboard.com/ru/api-reference/post-orders\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://api.csboard.com/api-reference/post-orders\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://api.csboard.com/#organization\",\"name\":\"CSBoard API\",\"url\":\"https://api.csboard.com\"},{\"@type\":\"WebSite\",\"@id\":\"https://api.csboard.com#website\",\"name\":\"CSBoard API\",\"url\":\"https://api.csboard.com\",\"publisher\":{\"@id\":\"https://api.csboard.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://api.csboard.com/zh-Hans/api-reference/post-orders#webpage\",\"url\":\"https://api.csboard.com/zh-Hans/api-reference/post-orders\",\"name\":\"POST /v1/orders — 使用余额购买 CS2 挂单\",\"description\":\"在单次原子请求中按 ID 购买 1–10 件 CS2 挂单,从您的 CSBoard 余额中扣款。需要启用交易的 API 密钥以及已绑定的 Steam 账户。\",\"dateModified\":\"2026-11-06T03:11:39.979Z\",\"isPartOf\":{\"@id\":\"https://api.csboard.com#website\"},\"breadcrumb\":{\"@id\":\"https://api.csboard.com/zh-Hans/api-reference/post-orders#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://api.csboard.com/zh-Hans/api-reference/post-orders#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"CSBoard API\",\"item\":\"https://api.csboard.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"POST /v1/orders — 使用余额购买 CS2 挂单\",\"item\":\"https://api.csboard.com/zh-Hans/api-reference/post-orders\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://api.csboard.com/zh-Hans/api-reference/post-orders#apireference\",\"headline\":\"POST /v1/orders — 使用余额购买 CS2 挂单\",\"name\":\"POST /v1/orders — 使用余额购买 CS2 挂单\",\"description\":\"在单次原子请求中按 ID 购买 1–10 件 CS2 挂单,从您的 CSBoard 余额中扣款。需要启用交易的 API 密钥以及已绑定的 Steam 账户。\",\"url\":\"https://api.csboard.com/zh-Hans/api-reference/post-orders\",\"mainEntityOfPage\":{\"@id\":\"https://api.csboard.com/zh-Hans/api-reference/post-orders#webpage\"},\"dateModified\":\"2026-11-06T03:11:39.979Z\",\"publisher\":{\"@id\":\"https://api.csboard.com/#organization\"},\"isPartOf\":{\"@id\":\"https://api.csboard.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"CSBoard API\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"CSBoard API\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/zh-Hans/api-reference/post-orders.md","siteName":"CSBoard API","nav":{"global":null,"languages":[{"language":"en","pages":[{"title":"en","href":"/api-reference/post-orders"}]},{"language":"ru","pages":[{"title":"ru","href":"/ru/api-reference/post-orders"}]},{"language":"zh-Hans","tabs":[{"tab":"指南","pages":[{"title":"指南","href":"/zh-Hans/introduction"}]},{"tab":"API 参考","groups":[{"group":"市场数据","pages":[{"title":"GET /v1/listings — 浏览实时的 CS2 市场挂单","sidebarTitle":"GET /listings","openapi":"GET /listings","href":"/zh-Hans/api-reference/get-listings"},{"title":"GET /v1/listings/stream — 上架与售出的实时推送","sidebarTitle":"GET /listings/stream","openapi":"GET /listings/stream","href":"/zh-Hans/api-reference/get-listings-stream"},{"title":"GET /v1/listings/availability — 批量可用性查询","sidebarTitle":"GET /listings/availability","openapi":"GET /listings/availability","href":"/zh-Hans/api-reference/get-listings-availability"},{"title":"GET /v1/games — 可作为 appId 传入的游戏","sidebarTitle":"GET /games","openapi":"GET /games","href":"/zh-Hans/api-reference/get-games"},{"title":"GET /v1/prices — 按商品组的 CS2 minAsk 价格列表","sidebarTitle":"GET /prices","openapi":"GET /prices","href":"/zh-Hans/api-reference/get-prices"},{"title":"GET /v1/prices/snapshot.ndjson.gz — 完整价格快照","sidebarTitle":"GET /prices/snapshot","openapi":"GET /prices/snapshot.ndjson.gz","href":"/zh-Hans/api-reference/get-prices-snapshot"},{"title":"GET /v1/public/prices — 无需密钥的 CS2、Dota 2 与 Rust 最低价数据源","sidebarTitle":"GET /public/prices","openapi":"GET /public/prices","href":"/zh-Hans/api-reference/get-public-prices"},{"title":"GET /v1/currency — 用于美元价格换算的汇率","sidebarTitle":"GET /currency","description":"获取 CSBoard 支付流程所使用的以美元为基准的汇率表。将任意 price_usd 乘以目标货币汇率,即可得到当地货币价格。","openapi":"GET /currency","href":"/zh-Hans/api-reference/get-currency"}]},{"group":"交易","pages":[{"title":"POST /v1/orders — 使用余额购买 CS2 挂单","sidebarTitle":"POST /orders","openapi":"POST /orders","href":"/zh-Hans/api-reference/post-orders"},{"title":"POST /v1/market/buy — 购买并交付到 Steam 交易链接","sidebarTitle":"POST /market/buy","description":"一次最多购买 100 件商品,并直接交付到您提供的任意 Steam 交易链接,使用已结算余额支付。专为批发与自动化交付而设计。","openapi":"POST /market/buy","href":"/zh-Hans/api-reference/post-market-buy"},{"title":"POST /v1/orders/:id/claim — 领取处于持有中的订单","sidebarTitle":"POST /orders/:id/claim","openapi":"POST /orders/{id}/claim","href":"/zh-Hans/api-reference/post-orders-claim"},{"title":"POST /v1/orders/:id/cancel — 取消尚未交付的订单","sidebarTitle":"POST /orders/:id/cancel","openapi":"POST /orders/{id}/cancel","href":"/zh-Hans/api-reference/post-orders-cancel"},{"title":"GET /v1/orders — 列出您的购买历史","sidebarTitle":"GET /orders","openapi":"GET /orders","href":"/zh-Hans/api-reference/get-orders"},{"title":"GET /v1/orders/info — 批量订单查询","sidebarTitle":"GET /orders/info","openapi":"GET /orders/info","href":"/zh-Hans/api-reference/get-orders-info"},{"title":"GET /v1/orders/{id} — 获取单个订单","sidebarTitle":"GET /orders/{id}","openapi":"GET /orders/{id}","href":"/zh-Hans/api-reference/get-order"}]},{"group":"P2P","pages":[{"title":"GET /v1/p2p/inventory — 可上架的 CS2 库存","sidebarTitle":"GET /p2p/inventory","openapi":"GET /p2p/inventory","href":"/zh-Hans/api-reference/get-p2p-inventory"},{"title":"POST /v1/p2p/listings — 在 P2P 市场上架您的 CS2 物品","sidebarTitle":"POST /p2p/listings","openapi":"POST /p2p/listings","href":"/zh-Hans/api-reference/post-p2p-listings"},{"title":"GET /v1/p2p/listings — 您的 P2P 挂单","sidebarTitle":"GET /p2p/listings","openapi":"GET /p2p/listings","href":"/zh-Hans/api-reference/get-p2p-listings"},{"title":"PATCH /v1/p2p/listings/{id} — 修改挂单价格","sidebarTitle":"PATCH /p2p/listings/{id}","openapi":"PATCH /p2p/listings/{id}","href":"/zh-Hans/api-reference/patch-p2p-listing"},{"title":"DELETE /v1/p2p/listings/{id} — 下架 P2P 挂单","sidebarTitle":"DELETE /p2p/listings/{id}","openapi":"DELETE /p2p/listings/{id}","href":"/zh-Hans/api-reference/delete-p2p-listing"}]},{"group":"账户","pages":[{"title":"GET /v1/balance — 账户余额与交易状态","sidebarTitle":"GET /balance","openapi":"GET /balance","href":"/zh-Hans/api-reference/get-balance"}]},{"group":"状态","pages":[{"title":"GET /v1/health — CSBoard API 存活与新鲜度探针","sidebarTitle":"GET /health","openapi":"GET /health","href":"/zh-Hans/api-reference/get-health"}]}]},{"tab":"更新日志","pages":[{"title":"更新日志","href":"/zh-Hans/changelog/overview"}]}]}]},"basePath":"","title":"POST /v1/orders — 使用余额购买 CS2 挂单 - CSBoard API","buildId":"dpl_41S5Z2jG9QnfDRwN1KZrLdBwj7DM","deploymentId":"dpl_41S5Z2jG9QnfDRwN1KZrLdBwj7DM","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-DDP9JXtj.js","utils-8yQyvEtx.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-CBCFR8Sn.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-rQaXkUHa.js","snippetPresets-J5KpBTgV.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","Page-DTNSD-0M.js","ApiExamples-BVxVH4Cj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BxdQ2vIi.js","shallow-BjV2tFiD.js","getApiPlaygroundDisplay-C_55tL4O.js","CodeSnippet-C0JpiCOC.js","CodeSnippets-w9Ps7djG.js","getPastedJson-BDfB-H8d.js","icon-g-kUkkO9.js","MethodPill-v4l6fq0h.js","DuplicateIcon-CvLo-CfU.js","createIcon-165clrrV.js","DynamicMarkdown-D3RQ-fEj.js","SectionHeading-vvo-3yLf.js","axios-vUo_bRtp.js","Markdown-CMT1uFWQ.js","clsx-C8f2yC9R.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CI2D8R2Y.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-k78Wrw_e.js"]}