# AssetPay - [AssetPay Merchant API Documentation](https://assetpay.gg/docs/index.md): Integrate CS2 and Rust skin deposits and withdrawals: authenticate users, price Steam inventory, create trades, and verify signed settlement callbacks. - [Quick Start — Your First AssetPay Trade](https://assetpay.gg/docs/quickstart.md): Go from zero to a working skin deposit in four steps: authenticate a client, fetch priced inventory, initiate the trade, and handle the settlement callbacks. - [Authenticating Users with Client Tokens](https://assetpay.gg/docs/guides/authentication.md): Create scoped client tokens that tie a Steam account to your merchant account, and pass clientData so every trading call is authorized and risk-scored. - [Inventory](https://assetpay.gg/docs/guides/inventory.md): Fetch a user's tradeable Steam inventory with live offer prices: query parameters, response fields, caching behaviour, Rust items, filtering and sorting. - [Market](https://assetpay.gg/docs/guides/market.md): Browse items available for withdrawal: fetching market items, query parameters, sandbox mode, search suggestions, item listings, and how pricing works. - [Deposits](https://assetpay.gg/docs/guides/deposits.md): Process skin deposits end to end: the deposit flow, single- and multi-item requests, request fields, rate limits, and the exact response you get back. - [Withdrawals](https://assetpay.gg/docs/guides/withdrawals.md): Process skin withdrawals for your users: the withdrawal flow, initiating a purchase, request fields, the initiated callback, balance handling and reversals. - [Instant Credit](https://assetpay.gg/docs/guides/instant-credit.md): How instant CS2 deposit credit works: the preCredit and pendingCredit split, collateral sources, verification caps, and handling the reversal callbacks. - [Identity Verification](https://assetpay.gg/docs/guides/identity-verification.md): How Signicat PictureID verification works and what it unlocks: the verification flow, checking status, multi-account linking, and the full trust cascade. - [Trade Lifecycle](https://assetpay.gg/docs/guides/trade-lifecycle.md): Every trade status and transition: deposit and withdrawal flows, the 7-day CS2 hold, terminal states, and what the revertedBy field actually tells you. - [Callbacks](https://assetpay.gg/docs/guides/callbacks.md): Receive signed webhooks on every trade state change: payload shape, signature verification, event handling, idempotency, and retry and backoff behaviour. - [WebSocket](https://assetpay.gg/docs/guides/websocket.md): Push real-time trade status and price updates to your frontend over Socket.IO: connecting, the available events, and WebSocket versus signed callbacks. - [Price Feed (Redis)](https://assetpay.gg/docs/guides/price-feed.md): Tail the AssetPay price feed over Redis Streams instead of polling: connection, stream keys, event format, and snapshot-then-tail consumption. - [Types Reference](https://assetpay.gg/docs/reference/types.md): The TypeScript interfaces behind every API response and callback: Trade, Item, ItemOffer, Sticker, Charm and Doppler shapes with all their field types. - [Error Codes](https://assetpay.gg/docs/reference/errors.md): Every error code the AssetPay API returns, grouped by category: general, authentication, account access, API keys, trading, wallet, and async trade failures. - [AssetPay API Overview & Reference](https://assetpay.gg/docs/api-reference/introduction.md): The AssetPay API essentials on one page: base URL, API key and client token authentication, the success and error response envelopes, and rate limits. - [Authenticate Client](https://assetpay.gg/docs/api-reference/authentication/authenticate-client.md): Create a scoped JWT client token for a Steam user so they can call inventory, market and trading endpoints. Requires an API key with CORE_ACCESS scope. - [Get Inventory](https://assetpay.gg/docs/api-reference/client/get-inventory.md): Return the authenticated user's full Steam inventory for one game with live offer and market prices attached, paginated. Authenticated with a client token. - [Get Market Items](https://assetpay.gg/docs/api-reference/client/get-market.md): Return the items currently available to buy for withdrawal, with search, filtering, sorting and pagination. Authenticated with a client token; CS2 and Rust. - [Get Search Suggestions](https://assetpay.gg/docs/api-reference/client/get-suggestions.md): Return lightweight autocomplete suggestions for your market search UI — far faster than running a full market query on every keystroke. Client token only. - [Get Item Listings](https://assetpay.gg/docs/api-reference/client/get-item-listings.md): Return every individual listing for one item so users can pick a specific float, sticker or phase variant instead of just the cheapest available listing. - [Get Trade History](https://assetpay.gg/docs/api-reference/client/get-trades.md): Return the authenticated client's trade history with cursor-based pagination, filterable by trade type and game, for reconciliation and support tooling. - [Initiate Deposit](https://assetpay.gg/docs/api-reference/trading/deposit.md): Start a deposit (sell) trade: the user sends items by Steam trade offer and the value is credited to your merchant balance, with instant credit optional. - [Initiate Withdrawal](https://assetpay.gg/docs/api-reference/trading/withdraw.md): Start a withdrawal (buy) trade: AssetPay purchases the item from a marketplace supplier and delivers it to the user by Steam trade offer. Client token. - [Quick Withdrawal](https://assetpay.gg/docs/api-reference/trading/withdraw-quick.md): Start a quick withdrawal: pass an itemId, a per-unit price ceiling and an amount, and AssetPay buys the cheapest listings at or below it. CS2 and Rust. - [Cancel Withdrawal](https://assetpay.gg/docs/api-reference/trading/cancel-withdrawal.md): Cancel every still-undelivered item in a withdrawal in one call; the response reports a per-item outcome and refunds settle asynchronously. CS2 items only. - [Cancel Withdrawal Item](https://assetpay.gg/docs/api-reference/trading/cancel-withdraw-item.md): Request cancellation of a single undelivered withdrawal item; AssetPay asks the supplier to cancel and refunds your merchant wallet on success. CS2 only. - [Check Trade URL](https://assetpay.gg/docs/api-reference/secure/check-tradeurl.md): Validate a Steam trade URL and check the linked account's trade eligibility before you authenticate a client, so restricted or invalid accounts fail early. - [Get Prices](https://assetpay.gg/docs/api-reference/secure/get-prices.md): Return current offer prices for every item in a game, so you can sync pricing into your own database without first fetching a specific user's inventory. - [Get Inventory (Self-Trade)](https://assetpay.gg/docs/api-reference/secure/inventory.md): Fetch any Steam account's inventory straight from its trade URL, authenticated by the merchant API key alone with no separate client-authentication step. - [Sell Items (Self-Trade)](https://assetpay.gg/docs/api-reference/secure/sell.md): Merchant-side deposit: AssetPay receives the skins by Steam trade offer and credits the merchant wallet, the server-to-server equivalent of a client deposit. - [Buy Items (Self-Trade)](https://assetpay.gg/docs/api-reference/secure/buy.md): Merchant-side withdrawal: AssetPay sources listings from the upstream marketplace and delivers them to the Steam account behind the supplied trade URL. - [Quick Buy (Self-Trade)](https://assetpay.gg/docs/api-reference/secure/buy-quick.md): Merchant-side quick buy: pass an itemId, a per-unit price ceiling and an amount, and AssetPay buys the cheapest listings up to it. Available for CS2 and Rust. - [Cancel Buy (Self-Trade)](https://assetpay.gg/docs/api-reference/secure/cancel-buy.md): Cancel every still-undelivered item in a merchant self-trade buy in one call; per-item outcomes come back in the body and refunds settle asynchronously. - [Cancel Buy Item (Self-Trade)](https://assetpay.gg/docs/api-reference/secure/cancel-buy-item.md): Request cancellation of a single undelivered item from a merchant buy; the merchant wallet is refunded automatically on success. CS2 and AssetPay only. - [Browse Market (Self-Trade)](https://assetpay.gg/docs/api-reference/secure/get-market.md): Merchant-side market search returning the items a merchant can buy through the secure buy endpoint, with exactly the same listing data as the client route. - [Get Item Listings (Self-Trade)](https://assetpay.gg/docs/api-reference/secure/get-item-listings.md): Merchant-side listing lookup for one item type; pass the returned listing id straight to the secure buy endpoint. Authenticated with a merchant API key. - [List Self-Trades](https://assetpay.gg/docs/api-reference/secure/get-trades.md): Cursor-paginated history of trades the merchant initiated through secure sell and secure buy; end-user client trades are not included on this endpoint. - [Get Self-Trade(s)](https://assetpay.gg/docs/api-reference/secure/get-trade.md): Fetch one merchant self-trade by internal trade id or by the externalId you supplied at creation. Scoped to the calling merchant's own trades, single or batch. - [Start Verification](https://assetpay.gg/docs/api-reference/verification/start.md): Start a Signicat PictureID verification and return the captureUrl where the user scans their identity document and takes a selfie to prove who they are. - [Verification Status](https://assetpay.gg/docs/api-reference/verification/status.md): Return the client's current verification level, associated email address, latest Signicat process, and the linked verified identity if one already exists. - [Link Verified Identity](https://assetpay.gg/docs/api-reference/verification/link.md): Link the authenticated client to an existing verified identity by email address, so one document scan covers all of a user's multiple Steam accounts at once. ## OpenAPI Specs - [openapi](/docs/openapi.json)