Skip to main content

POST /client/trading/withdraw//items//cancel

Requests cancellation of a single undelivered withdrawal item. AssetPay asks the marketplace supplier to cancel the purchase; on success your merchant wallet is refunded automatically. Authentication: Client Token (Authorization header)
CS2 (Assetpay) withdrawals only. Rust withdrawals are fulfilled by a polling supplier with no cancel API and cannot be cancelled.

Request

POST https://api.assetpay.gg/client/trading/withdraw/{tradeId}/items/{itemId}/cancel
Authorization: CLIENT_TOKEN

Path Parameters

ParameterTypeRequiredDescription
tradeIdstring (uuid)YesThe withdrawal trade’s ID.
itemIdstring (uuid)YesThe item’s ID within that trade (the id of an entry in the trade’s items array).

When an item can be cancelled

A cancel is only accepted when all of the following hold:
  • The item belongs to a withdrawal trade owned by the authenticated user.
  • The item is a CS2 (Assetpay) item.
  • The item is at least 30 minutes old (measured from when it was created).
  • The item is not already in a terminal state (completed, failed, reverted, canceled).

Response

{
  "requestId": "...",
  "success": true,
  "data": {
    "tradeId": "trade-uuid",
    "itemId": "item-uuid",
    "status": "cancelled"
  }
}
A 200 only confirms the marketplace accepted the cancellation. AssetPay does not change the item state inline — the refund and the transition to reverted arrive asynchronously through the standard trade.* callback. Poll GET /client/trades/{id} or rely on callbacks for the final state, and refund the user’s balance when you receive the reverted callback.

Rate Limits

Merchant StatusLimit
Verified60 requests / min
Unverified10 requests / min
Shared across all clients of the same merchant.

Errors

CodeKeyWhen
27TRADE_CANCEL_TOO_SOONThe item is younger than 30 minutes. Retry after the 30-minute window.
28TRADE_NOT_CANCELLABLENot cancellable: not a withdrawal, not a CS2/Assetpay item, already in a terminal state, or the marketplace rejected the cancel.
1300FORBIDDENThe trade does not belong to the authenticated user.
2201ITEM_NOT_FOUNDNo item with that itemId exists under the given tradeId.