Download OpenAPI specification:
Welcome to the DMarket Trading API section. Our JSON-based API enables you to manage your DMarket inventory through the methods featured below. In order to use the API, please generate your personal API keys in the account settings.
Request signature instructions
A valid HTTP request to the trading API must include 3 request headers:
X-Api-Key: public key (must be a hex string in lowercase) To get you your own public key, use https://dmarket.com/ (details : https://dmarket.com/faq#tradingAPI)
X-Sign-Date: timestamp or current time Example: 1605619994. Must not be older than 2 minutes from the request time.
X-Request-Sign: signature
The SHA256 signature scheme is used for signing requests and proving items’ origin and ownership through public-private key pairs. Private and public keys diversification is aimed to provide secure back-to-back communication and the ability to rotate keys in case of security breaches on any side of the integration.
To make a signature, take the following steps:
Build non-signed string formula (HTTP Method) + (Route path + HTTP query params) + (body string) + (timestamp) ). Example: POST/get-item?Amount=%220.25%22&Limit=%22100%22&Offset=%22150%22&Order=%22desc%22&1605619994)
After you’ve created a non-signed string with a default concatenation method, sign it with NACL https://en.wikipedia.org/wiki/NaCl_(software) using you secret key.
Encode the result string with hex
Add your signature string to HTTP request headers X-Request-Sign (dmar ed25519 signature)
You can check out examples on https://github.com/dmarket/dm-trading-tools.
DMarket uses rate limiting to control the rate of API requests. Please read FAQ for details https://dmarket.com/faq#startUsingTradingAPI.
{- "agreementsInfo": {
- "isConfirmed": true,
- "updated": 0
}, - "countryCode": "string",
- "countryCodeFromIP": "string",
- "email": "string",
- "features": [
- {
- "enabled": true,
- "name": "P2P"
}
], - "ga_client_id": "string",
- "hasActiveSubscriptions": true,
- "hasHistoryEvents": true,
- "id": "string",
- "imageUrl": "string",
- "isEmailVerified": true,
- "isPasswordSet": true,
- "level": 0,
- "linkedGames": [
- {
- "gameId": "string",
- "gameUserId": "string",
- "username": "string"
}
], - "migrated": true,
- "publicKey": "string",
- "regType": "steam",
- "restrictions": [
- {
- "expirationTime": 0,
- "name": "P2POfferCreation"
}
], - "settings": {
- "enabledDeviceConfirmation": true,
- "isSubscribedToNewsletters": true,
- "targetsLimit": 0,
- "tradingApiToken": "string"
}, - "steamAccount": {
- "apiKey": "string",
- "apiKeyStatus": "New",
- "icon": "string",
- "isProfilePrivate": true,
- "level": 0,
- "steamId": "string",
- "tradeUrl": "string",
- "username": "string"
}, - "twitchAccount": {
- "icon": "string",
- "userId": "string",
- "username": "string"
}, - "username": "string"
}Getting the current USD & DMC balance that is available for trading items / buying subscriptions. The response format is in coins (cents for USD, dimoshi for DMC).
{- "dmc": "string",
- "dmcAvailableToWithdraw": "string",
- "usd": "string",
- "usdAvailableToWithdraw": "string"
}Transferring items from a 3rd party inventory (e.g. a Steam game) to a Dmarket inventory.
| AssetID | Array of strings List of asset id to deposit. |
{- "AssetID": [
- "string"
]
}{- "DepositID": "string"
}Get information about current deposit transfers.
| DepositID required | string Deposit operation unique identifier. |
{- "DepositID": "string",
- "AssetID": [
- "string"
], - "Status": "TransferStatusPending",
- "Error": "string",
- "Assets": [
- {
- "InGameAssetID": "string",
- "DmarketAssetID": "string"
}
], - "SteamDepositInfo": {
- "TradeOfferID": "string",
- "Message": "string"
}
}Get the list of offers of the current user for further management (remove from sale/change price, etc.). The price amount format is in USD i.e. 0.5 is 50 cents. 'gameId' param values are: CS:GO - a8db, Team Fortress 2 - tf2, Dota 2 - 9a92, Rust - rust.
| GameID | string Game identifier on market. |
| Status | string Default: "OfferStatusDefault" Enum: "OfferStatusDefault" "OfferStatusActive" "OfferStatusSold" "OfferStatusInactive" "OfferStatusIn_transfer" On sale offer current status. |
| SortType | string Default: "UserOffersSortTypeDefault" Enum: "UserOffersSortTypeDefault" "UserOffersSortTypeDateNewestFirst" Sort user offers by one of predefined sort types.
|
| BasicFilters.PriceFrom | number <float> Price range filtering. |
| BasicFilters.PriceTo | number <float> Price range filtering. |
| BasicFilters.Currency | string Currency code to use with price range filter. |
| Offset | string <uint64> Offsets items in response. |
| Limit | string <uint64> Limits number or returned items in response. |
| Cursor | string Cursor is a next page identifier. |
{- "Items": [
- {
- "AssetID": "string",
- "VariantID": "string",
- "Title": "string",
- "ImageURL": "string",
- "GameID": "string",
- "GameType": "GameTypeBlockchain",
- "Location": "AssetLocationInGame",
- "Withdrawable": true,
- "Depositable": true,
- "Tradable": true,
- "Attributes": [
- {
- "Name": "string",
- "Value": "string"
}
], - "Offer": {
- "OfferID": "string",
- "Price": {
- "Currency": "string",
- "Amount": 0.1
}, - "Fee": {
- "Currency": "string",
- "Amount": 0.1
}, - "CreatedDate": "string"
}, - "MarketPrice": {
- "Currency": "string",
- "Amount": 0.1
}, - "InstantPrice": {
- "Currency": "string",
- "Amount": 0.1
}, - "ClassID": "string"
}
], - "Total": "string",
- "Cursor": "string"
}Batch offers creation. As a result, the selected asset is locked and the newly-created offer appears in the Market and on Sale tabs. The price amount format is in USD, i.e. 0.5 is 50 cents.
Array of objects (marketplaceCreateOfferRequest) List of offers to create. |
{- "Offers": [
- {
- "AssetID": "string",
- "Price": {
- "Currency": "string",
- "Amount": 0.1
}
}
]
}{- "Result": [
- {
- "CreateOffer": {
- "AssetID": "string",
- "Price": {
- "Currency": "string",
- "Amount": 0.1
}
}, - "OfferID": "string",
- "Successful": true,
- "Error": {
- "Code": "Internal",
- "Message": "string"
}
}
]
}Change the sale price for existing offers. The price amount format is in USD, i.e. 0.5 is 50 cents.
Array of objects (marketplaceEditOfferRequest) List of offers to edit. |
{- "Offers": [
- {
- "OfferID": "string",
- "AssetID": "string",
- "Price": {
- "Currency": "string",
- "Amount": 0.1
}
}
]
}{- "Result": [
- {
- "EditOffer": {
- "OfferID": "string",
- "AssetID": "string",
- "Price": {
- "Currency": "string",
- "Amount": 0.1
}
}, - "Successful": true,
- "Error": {
- "Code": "Internal",
- "Message": "string"
}, - "NewOfferID": "string"
}
]
}Get the list of items that are available for purchase on DMarket. The response format is in coins (cents for USD). 'gameId' param values are: CS:GO - a8db, Team Fortress 2 - tf2, Dota 2 - 9a92, Rust - rust.
| gameId required | string gameId |
| title | string title |
| limit | integer Default: 50 limit |
| offset | integer Default: 0 offset |
| orderBy | string Default: "title" orderBy |
| orderDir | string Default: "desc" orderDir |
| treeFilters | string treeFilters |
| currency required | string currency |
| priceFrom | integer Default: 0 priceFrom |
| priceTo | integer Default: 0 priceTo |
| types | string comma separated offer types to filter |
| cursor | string next page identifier |
{- "cursor": "string",
- "objects": [
- {
- "amount": 0,
- "classId": "string",
- "createdAt": 0,
- "description": "string",
- "discount": 0,
- "extra": {
- "ability": "string",
- "backgroundColor": "string",
- "category": "string",
- "categoryPath": "string",
- "class": [
- "string"
], - "collection": [
- "string"
], - "exterior": "field-tested",
- "floatValue": 0,
- "gameId": "string",
- "gems": [
- {
- "image": "string",
- "name": "string",
- "type": "string"
}
], - "grade": "string",
- "groupId": "string",
- "growth": 0,
- "hero": "string",
- "inspectInGame": "string",
- "isNew": true,
- "itemType": "string",
- "linkId": "string",
- "name": "string",
- "nameColor": "string",
- "offerId": "string",
- "quality": "string",
- "rarity": "string",
- "serialNumber": 0,
- "stickers": [
- {
- "image": "string",
- "name": "string"
}
], - "subscribers": 0,
- "tagName": "string",
- "tradable": true,
- "tradeLock": 0,
- "tradeLockDuration": 0,
- "type": "string",
- "videos": 0,
- "viewAtSteam": "string",
- "withdrawable": true
}, - "extraDoc": "viewAtSteam",
- "gameId": "string",
- "gameType": "blockchain",
- "image": "string",
- "inMarket": true,
- "instantPrice": {
- "DMC": "string",
- "USD": "string"
}, - "instantTargetId": "string",
- "itemId": "string",
- "lockStatus": true,
- "owner": "string",
- "ownerDetails": {
- "avatar": "string",
- "id": "string",
- "wallet": "string"
}, - "ownersBlockchainId": "string",
- "price": {
- "DMC": "string",
- "USD": "string"
}, - "recommendedPrice": {
- "d3": {
- "DMC": "string",
- "USD": "string"
}, - "d7": {
- "DMC": "string",
- "USD": "string"
}, - "d7Plus": {
- "DMC": "string",
- "USD": "string"
}
}, - "slug": "string",
- "status": "default",
- "suggestedPrice": {
- "DMC": "string",
- "USD": "string"
}, - "title": "string",
- "type": "item"
}
], - "total": null
}Remove offers from sale. Once an offer is removed, the corresponding item is unlocked and appears in the user's inventory. The offer is also removed from the market. The price amount format is in USD, i.e. 0.5 is 50 cents.
| force required | boolean |
required | Array of objects (entity.ManagingOffer) |
{- "force": true,
- "objects": [
- {
- "itemId": "string",
- "offerId": "string",
- "price": {
- "amount": "string",
- "currency": "USD"
}
}
]
}{- "created": [
- {
- "assetId": "string",
- "offerId": "string"
}
], - "fail": [
- "string"
], - "locked": [
- "string"
], - "success": [
- "string"
]
}Get user inventory details. Both 3rd party (e.g. Steam) and DMarket inventories are merged into one list. The price amount format is in USD i.e. 0.5 is 50 cents. 'gameId' param values are: CS:GO - a8db, Team Fortress 2 - tf2, Dota 2 - 9a92, Rust - rust.
| GameID | string Game identifier on market. |
| BasicFilters.Title | string Filter assets in inventory by asset's title. |
| BasicFilters.InMarket | boolean <boolean> Show only deposited on market assets. |
| BasicFilters.HasSteamLock | boolean <boolean> Filter assets only with Steam trade-lock. Can be applied only for Steam-based games. |
| BasicFilters.SteamLockDays | integer <int64> Filter assets only with Steam trade-lock lock not more than specified number of days. Can be applied only for Steam-based games. |
| BasicFilters.AssetID | Array of strings Filter inventory by specified asset ID list. |
| SortType | string Default: "UserInventorySortTypeDefault" Value: "UserInventorySortTypeDefault" Sort inventory by one of predefined sort types.
|
| Presentation | string Default: "InventoryPresentationSimple" Enum: "InventoryPresentationSimple" "InventoryPresentationDetailed" Inventory asset presentation type. |
| Offset | string <uint64> Offsets items in response. |
| Limit | string <uint64> Limits number or returned items in response. |
| Cursor | string Cursor is a next page identifier. |
{- "Items": [
- {
- "AssetID": "string",
- "VariantID": "string",
- "Title": "string",
- "ImageURL": "string",
- "GameID": "string",
- "GameType": "GameTypeBlockchain",
- "Location": "AssetLocationInGame",
- "Withdrawable": true,
- "Depositable": true,
- "Tradable": true,
- "Attributes": [
- {
- "Name": "string",
- "Value": "string"
}
], - "Offer": {
- "OfferID": "string",
- "Price": {
- "Currency": "string",
- "Amount": 0.1
}, - "Fee": {
- "Currency": "string",
- "Amount": 0.1
}, - "CreatedDate": "string"
}, - "MarketPrice": {
- "Currency": "string",
- "Amount": 0.1
}, - "InstantPrice": {
- "Currency": "string",
- "Amount": 0.1
}, - "ClassID": "string"
}
], - "Total": "string",
- "Cursor": "string"
}Updating DMarket inventory details to sync them with data from Steam.
| Type | string (marketplaceInventorySyncType) Default: "UnknownSyncType" Enum: "UnknownSyncType" "Inventory" |
| GameID | string (marketplaceGames) Default: "UnknownGame" Enum: "UnknownGame" "CSGO" "Dota2" "TF2" "LifeBeyond" "Rust" |
{- "Type": "UnknownSyncType",
- "GameID": "UnknownGame"
}{ }Withdraw assets. 'gameId' param values are: CS:GO - a8db, Team Fortress 2 - tf2, Dota 2 - 9a92, Rust - rust
required | Array of objects (entity.Asset) |
| requestId required | string |
{- "assets": [
- {
- "classId": "string",
- "gameId": "string",
- "id": "string"
}
], - "requestId": "string"
}{- "transferId": "string"
}Getting user inventory details filtered by a certain game, including DMarket-stored and Steam-stored items. Items for sale are not included. gameId param values are: CS:GO - a8db, Team Fortress 2 - tf2, Dota 2 - 9a92, Rust - rust
| gameId required | string gameId |
| title | string title |
| limit | integer Default: 50 limit |
| offset | integer Default: 0 offset |
| orderBy | string Default: "title" orderBy |
| orderDir | string Default: "desc" orderDir |
| treeFilters | string treeFilters |
| currency required | string currency |
| priceFrom | integer Default: 0 priceFrom |
| priceTo | integer Default: 0 priceTo |
| classIds | string classIds |
| cursor | string next page identifier |
{- "cursor": "string",
- "objects": [
- {
- "amount": 0,
- "classId": "string",
- "createdAt": 0,
- "description": "string",
- "discount": 0,
- "extra": {
- "ability": "string",
- "backgroundColor": "string",
- "category": "string",
- "categoryPath": "string",
- "class": [
- "string"
], - "collection": [
- "string"
], - "exterior": "field-tested",
- "floatValue": 0,
- "gameId": "string",
- "gems": [
- {
- "image": "string",
- "name": "string",
- "type": "string"
}
], - "grade": "string",
- "groupId": "string",
- "growth": 0,
- "hero": "string",
- "inspectInGame": "string",
- "isNew": true,
- "itemType": "string",
- "linkId": "string",
- "name": "string",
- "nameColor": "string",
- "offerId": "string",
- "quality": "string",
- "rarity": "string",
- "serialNumber": 0,
- "stickers": [
- {
- "image": "string",
- "name": "string"
}
], - "subscribers": 0,
- "tagName": "string",
- "tradable": true,
- "tradeLock": 0,
- "tradeLockDuration": 0,
- "type": "string",
- "videos": 0,
- "viewAtSteam": "string",
- "withdrawable": true
}, - "extraDoc": "viewAtSteam",
- "gameId": "string",
- "gameType": "blockchain",
- "image": "string",
- "inMarket": true,
- "instantPrice": {
- "DMC": "string",
- "USD": "string"
}, - "instantTargetId": "string",
- "itemId": "string",
- "lockStatus": true,
- "owner": "string",
- "ownerDetails": {
- "avatar": "string",
- "id": "string",
- "wallet": "string"
}, - "ownersBlockchainId": "string",
- "price": {
- "DMC": "string",
- "USD": "string"
}, - "recommendedPrice": {
- "d3": {
- "DMC": "string",
- "USD": "string"
}, - "d7": {
- "DMC": "string",
- "USD": "string"
}, - "d7Plus": {
- "DMC": "string",
- "USD": "string"
}
}, - "slug": "string",
- "status": "default",
- "suggestedPrice": {
- "DMC": "string",
- "USD": "string"
}, - "title": "string",
- "type": "item"
}
], - "total": null
}Get the list of items with lower fees. The new list of items every day. 'gameId' param values are: CS:GO - a8db, Team Fortress 2 - tf2, Dota 2 - 9a92, Rust - rust. 'offerType' param values are: 'dmarket', 'p2p'.
| gameId required | string enums: CS:GO - a8db, Team Fortress 2 - tf2, Dota 2 - 9a92, Rust - rust |
| offerType | string Default: "dmarket" enums: "dmarket", "p2p" |
| limit | integer Default: 10 limit |
| offset | integer Default: 0 offset |
{- "defaultFee": {
- "fraction": "string",
- "minAmount": 0
}, - "reducedFees": [
- {
- "expiresAt": 0,
- "fraction": "string",
- "maxPrice": 0,
- "minPrice": 0,
- "title": "string"
}
]
}Get the list of the user’s closed sell offers. The price amount format is in USD, i.e. 0.5 is 50 cents.
| Limit | string <uint64> Limits number of returned closed offers in response. |
| OrderDir | string Default: "desc" Enum: "desc" "asc" |
| OfferCreated.From | string <int64> Example: OfferCreated.From=1730419200 |
| OfferCreated.To | string <int64> Example: OfferCreated.To=1730419200 |
| OfferClosed.From | string <int64> Example: OfferClosed.From=1730419200 |
| OfferClosed.To | string <int64> Example: OfferClosed.To=1730419200 |
| Cursor | string Cursor is next page identifier. |
| Finalization.From | string <int64> Example: Finalization.From=1730419200 |
| Finalization.To | string <int64> Example: Finalization.To=1730419200 |
| Status | Array of strings Items Enum: "successful" "reverted" "trade_protected" |
{- "Trades": [
- {
- "OfferID": "string",
- "TargetID": "string",
- "AssetID": "string",
- "Price": {
- "Currency": "string",
- "Amount": 0.1
}, - "CurrencyCode": "string",
- "Amount": "string",
- "Title": "string",
- "Fee": {
- "Amount": {
- "Currency": "string",
- "Amount": 0.1
}, - "Percent": "string",
- "IsPersonal": true
}, - "OfferCreatedAt": "string",
- "OfferClosedAt": "string",
- "Status": "successful",
- "FinalizationTime": "string"
}
], - "Total": "string",
- "Cursor": "string"
}Get the list of all offers for a single item title. The price amount format is in USD, i.e. 0.5 is 50 cents.
| Title required | string Item name on market. |
| Limit | number Default: 100 Limit. |
| Cursor | string Cursor is next page identifier. |
{- "objects": [
- {
- "amount": 0,
- "classId": "string",
- "createdAt": 0,
- "description": "string",
- "discount": 0,
- "extra": {
- "ability": "string",
- "backgroundColor": "string",
- "category": "string",
- "categoryPath": "string",
- "class": [
- "string"
], - "collection": [
- "string"
], - "exterior": "field-tested",
- "floatValue": 0,
- "gameId": "string",
- "gems": [
- {
- "image": "string",
- "name": "string",
- "type": "string"
}
], - "grade": "string",
- "groupId": "string",
- "growth": 0,
- "hero": "string",
- "inspectInGame": "string",
- "isNew": true,
- "itemType": "string",
- "linkId": "string",
- "name": "string",
- "nameColor": "string",
- "offerId": "string",
- "quality": "string",
- "rarity": "string",
- "serialNumber": 0,
- "stickers": [
- {
- "image": "string",
- "name": "string"
}
], - "subscribers": 0,
- "tagName": "string",
- "tradable": true,
- "tradeLock": 0,
- "tradeLockDuration": 0,
- "type": "string",
- "videos": 0,
- "viewAtSteam": "string",
- "withdrawable": true
}, - "extraDoc": "viewAtSteam",
- "gameId": "string",
- "gameType": "blockchain",
- "image": "string",
- "inMarket": true,
- "instantPrice": {
- "DMC": "string",
- "USD": "string"
}, - "instantTargetId": "string",
- "itemId": "string",
- "lockStatus": true,
- "owner": "string",
- "ownerDetails": {
- "avatar": "string",
- "id": "string",
- "wallet": "string"
}, - "ownersBlockchainId": "string",
- "price": {
- "DMC": "string",
- "USD": "string"
}, - "recommendedPrice": {
- "d3": {
- "DMC": "string",
- "USD": "string"
}, - "d7": {
- "DMC": "string",
- "USD": "string"
}, - "d7Plus": {
- "DMC": "string",
- "USD": "string"
}
}, - "slug": "string",
- "status": "default",
- "suggestedPrice": {
- "DMC": "string",
- "USD": "string"
}, - "title": "string",
- "type": "item"
}
], - "total": null,
- "cursor": "string"
}Returns aggregated buy orders (targets) for a specific game and item title. Use this endpoint to see current demand: how many buy orders exist and at what prices.
Path parameters:
Response contains a list of orders with fields: amount (number of items requested), price (best price for that title and attributes), title, and attributes (quality/rarity/skin parameters, depending on the game).
| game_id required | string |
| title required | string |
{- "orders": [
- {
- "amount": "string",
- "price": "string",
- "title": "string",
- "attributes": { }
}
]
}Returns aggregated pricing for specified item titles, including best buy (order) and best sell (offer) prices and the total number of orders/offers per title. Use this to quickly assess market depth and price levels.
Request body:
Response:
| cursor | string |
| limit | string <int64> |
object (ListAggregatedPricesRequestFilter) |
{- "cursor": "string",
- "limit": "string",
- "filter": {
- "game": "string",
- "titles": [
- "string"
]
}
}{- "aggregatedPrices": [
- {
- "title": "string",
- "orderBestPrice": {
- "Currency": "string",
- "Amount": "string"
}, - "orderCount": "string",
- "offerBestPrice": {
- "Currency": "string",
- "Amount": "string"
}, - "offerCount": "string"
}
], - "nextCursor": "string"
}Get the list of user's targets. 'gameId' param values are: CS:GO - a8db, Team Fortress 2 - tf2, Dota 2 - 9a92, Rust - rust. The price amount format is in USD, i.e. 0.5 is 50 cents.
| GameID | string Game identifier on market. |
| BasicFilters.PriceFrom | number <float> Price range filtering. |
| BasicFilters.PriceTo | number <float> Price range filtering. |
| BasicFilters.Currency | string Currency code to use with price range filter. |
| BasicFilters.Title | string Filter user targets by asset's title. |
| BasicFilters.TargetID | string Filter by unique target identifier. |
| BasicFilters.Status | string Default: "TargetStatusInactive" Enum: "TargetStatusInactive" "TargetStatusActive" Target current status.
|
| SortType | string Default: "UserTargetsSortTypeDefault" Value: "UserTargetsSortTypeDefault" Sort user targets by one of predefined sort types.
|
| Offset | string <uint64> Offsets items in response. |
| Limit | string <uint64> Limits number or returned items in response. |
| Cursor | string Cursor is next page identifier. |
{- "Items": [
- {
- "TargetID": "string",
- "Title": "string",
- "Amount": "string",
- "Status": "TargetStatusInactive",
- "GameID": "string",
- "GameType": "GameTypeBlockchain",
- "Attributes": [
- {
- "Name": "string",
- "Value": "string"
}
], - "Price": {
- "Currency": "string",
- "Amount": 0.1
}
}
], - "Total": "string",
- "Cursor": "string"
}Get the list of the user’s closed targets. The price amount format is in USD, i.e. 0.5 is 50 cents.
| Limit | string <uint64> Limits number of returned closed targets in response. |
| OrderDir | string Default: "desc" Enum: "desc" "asc" |
| TargetCreated.From | string <int64> Example: TargetCreated.From=1730419200 |
| TargetCreated.To | string <int64> Example: TargetCreated.To=1730419200 |
| TargetClosed.From | string <int64> Example: TargetClosed.From=1730419200 |
| TargetClosed.To | string <int64> Example: TargetClosed.To=1730419200 |
| Cursor | string Cursor is next page identifier. |
| Finalization.From | string <int64> Example: Finalization.From=1730419200 |
| Finalization.To | string <int64> Example: Finalization.To=1730419200 |
| Status | Array of strings Items Enum: "successful" "reverted" "trade_protected" |
{- "Trades": [
- {
- "OfferID": "string",
- "TargetID": "string",
- "AssetID": "string",
- "Price": {
- "Currency": "string",
- "Amount": 0.1
}, - "CurrencyCode": "string",
- "Amount": "string",
- "Title": "string",
- "ClosedAt": "string",
- "Status": "successful",
- "FinalizationTime": "string"
}
], - "Total": "string",
- "Cursor": "string"
}The request for target creation requires the following fields: "GameID" param (values are: CS:GO - a8db, Team Fortress 2 - tf2, Dota 2 - 9a92, Rust - rust) and array of "Targets". The price amount format is in USD, i.e. 0.5 is 50 cents, "Title" - full item name. Also, additional attributes ("Attrs" field in #/components/schemas/marketplaceCreateTargetRequest) for each item such as "phase", "floatPartValue" and "paintSeed" are available. You can check possible values of additional attributes here. Limitations: maximum "Amount" value is 100; maximum quantity of targets in one request is 100; maximum number of created targets for one game is individual for each user and can be different for each game. You can contact our customer support team to find out your Target's limit.
| GameID | string GameID of same assets in one single target entity. |
Array of objects (marketplaceCreateTargetRequest) List of targets to create. |
{- "GameID": "string",
- "Targets": [
- {
- "Amount": "string",
- "Price": {
- "Currency": "string",
- "Amount": 0.1
}, - "Title": "string",
- "Attrs": {
- "paintSeed": 0,
- "phase": "",
- "floatPartValue": ""
}
}
]
}{- "Result": [
- {
- "CreateTarget": {
- "Amount": "string",
- "Price": {
- "Currency": "string",
- "Amount": 0.1
}, - "Title": "string",
- "Attrs": {
- "paintSeed": 0,
- "phase": "",
- "floatPartValue": ""
}
}, - "TargetID": "string",
- "Successful": true,
- "Error": {
- "Code": "Internal",
- "Message": "string"
}
}
]
}Remove targets.
Array of objects (marketplaceDeleteTargetRequest) Targets list to delete. |
{- "Targets": [
- {
- "TargetID": "string"
}
]
}{- "Result": [
- {
- "DeleteTarget": {
- "TargetID": "string"
}, - "Successful": true,
- "Error": {
- "Code": "Internal",
- "Message": "string"
}
}
]
}Buy the selected offers from the market. As the result of the operation: the offer is removed, the items are transferred to the buyer, the purchase amount is transferred to the seller, the fee is transferred to DMarket. The price amount format is in coins (cents for USD).
required | Array of objects (entity.OfferPrice) |
{- "offers": [
- {
- "offerId": "string",
- "price": {
- "amount": "string",
- "currency": "USD"
}, - "type": "dmarket"
}
]
}{- "dmOffersFailReason": {
- "code": "string"
}, - "dmOffersStatus": {
- "property1": {
- "started": true
}, - "property2": {
- "started": true
}
}, - "orderId": "string",
- "p2pOffersStatus": {
- "property1": {
- "started": true
}, - "property2": {
- "started": true
}
}, - "status": "TxPending",
- "txId": "string"
}Get the item sales history. Up to 12 last months.
| gameId required | string |
| title required | string |
| filters | string filters is a list of filters. For example: exterior[]=factory new,phase[]=phase-1,phase[]=phase-2,float[]=2,float[]=133. |
| txOperationType | Array of arrays tx_operation_type is a type of transaction to return. Values: "", "Target", "Offer". |
| limit | string <int64> limit is a maximum number of sales to return. min: 1 max: 20 |
| offset | string <int64> |
{- "sales": [
- {
- "price": "string",
- "date": "string",
- "txOperationType": "Offer",
- "offerAttributes": { },
- "orderAttributes": { }
}
]
}