Marketplace API

DMarket API

Global marketplace covering both CS2 and Rust, read through its signed v2 API. Get DMarket's lowest ask and listing count for 24,551 CS2 and Rust items, refreshed every 30 minutes — in the same response as Steam and 7 other marketplaces. Grab a free key or read the docs.

24,551
items priced
30 minutes
refresh cycle
469
Doppler phase prices
9
markets in one call

Why read DMarket through this API

DMarket carries CS2 and Rust side by side and exposes Doppler phases per offer, so it is one of the few markets that can price a Ruby distinctly from a Phase 4.

DMarket retired its public price endpoint, so this data comes from the authenticated v2 offers API with Ed25519 request signing — the kind of integration work you would otherwise be doing yourself. We shard the scan across thousands of pages per cycle.

The point of a single API is that you are not maintaining 8 integrations. DMarket arrives in the same shape as every other market: minor units, a currency, a listing count and a capture timestamp. Switch ?currency=EUR and every market converts together.

What you get for each DMarket item

Example: DMarket in a cross-market response

One request returns every market's live price for an item. Prices below were true when this page was built:

curl "https://steamdataapi.com/api/v1/items/AK-47%20%7C%20Redline%20(Field-Tested)/markets" \
  -H "Authorization: Bearer sdk_YOUR_KEY"
{
  "currency": "USD",
  "best": { "market": "csfloat", "price": 2871 },
  "spread": 297,
  "markets": [
    { "market": "csfloat", "price": 2871, "quantity": 3450, "capturedAt": "2026-07-30T11:40:02Z" },
    { "market": "buff163", "price": 2871, "quantity": 10589, "capturedAt": "2026-07-30T11:40:06Z" },
    { "market": "youpin", "price": 2926, "quantity": 10000, "capturedAt": "2026-07-30T11:40:06Z" },
    { "market": "c5game", "price": 2971, "quantity": 2428, "capturedAt": "2026-07-30T11:40:06Z" },
    { "market": "skinport", "price": 3015, "quantity": 559, "capturedAt": "2026-07-30T11:40:06Z" }
  ]
}

At build time DMarket was asking $30.16 for that item with 242 listings, against $28.71 at the cheapest venue (csfloat). That gap is exactly what the best and spread fields hand you without comparing anything yourself.

Tracking DMarket prices over time

A single ask tells you today; a series tells you whether today is unusual. Every market accrues a daily lowest-ask point, so you can pull DMarket's own history and compare it against Steam's median-sale series — which reaches back to 2013-08-13 and totals 15,581,753 daily points across the catalog.

curl "https://steamdataapi.com/api/v1/items/AK-47%20%7C%20Redline%20(Field-Tested)/history?source=markets&days=90" \
  -H "Authorization: Bearer sdk_YOUR_KEY"

The two series answer different questions. Steam's median is what items actually sold for, which lags but cannot be moved by one optimistic listing. DMarket's daily low is what you could have bought at. Traders generally want both: the sale price to value a position, the ask to act on one.

From a DMarket price to a portfolio total

The same prices drive inventory valuation. Give the inventory endpoint a public SteamID and every item comes back priced — at the Steam ask and at cross-market real value, with DMarket included in the comparison — plus float, paint seed and Doppler phase where they apply, and a portfolio total in your currency.

const res = await fetch(
  "https://steamdataapi.com/api/v1/inventory/76561198000000000?game=cs2&currency=EUR",
  { headers: { Authorization: "Bearer sdk_YOUR_KEY" } },
);
const { totalValue, items } = await res.json();

DMarket versus the other markets we read

Item coverage differs a lot by venue. These counts are live from our own catalog:

MarketplaceItems pricedGames
DMarket (this page)24,551CS2 + Rust
Skinport29,507CS2 + Rust
CSFloat27,360CS2
Buff16313,417CS2
Waxpeer27,135CS2 + Rust
WhiteMarket27,054CS2
YouPin89813,081CS2
C5Game13,425CS2

Steam itself is the ninth source: 29,458 CS2 and 5,397 Rust items carry a Steam ask, with median-sale history back to 2013 — 15,581,753 daily points in total.

Frequently asked questions

Does the DMarket API cover Rust as well as CS2?

Yes. We currently price 19,448 CS2 items and 5,103 Rust items from DMarket. Pass ?game=rust to filter.

How fresh are DMarket prices?

DMarket is re-read every 30 minutes. Every price carries a capturedAt timestamp so you can see exactly how old it is rather than guessing.

Do I get DMarket prices for Doppler phases?

Yes — DMarket quotes phases per listing, and we hold 469 phase prices across 101 knives from it. Ruby, Sapphire, Black Pearl, Emerald and Phase 1–4 are priced separately.

Can I get historical DMarket prices?

Yes. Every market accrues a daily lowest-ask series, so /history?source=markets returns DMarket's day-by-day price next to the others. Steam's median-sale series reaches back to 2013-08-13 and is on the same endpoint with ?source=steam.

What happens when DMarket stops listing an item?

It drops out of that item's markets array once its last capture ages past seven days, rather than showing a price nobody is offering. The cross-market real value keeps its last known figure, so a delisting does not turn your valuations into nulls.

Is this an official API?

No. This is an independent API that reads public marketplace data and serves it in one normalised shape. We are not affiliated with DMarket, Valve or Steam.

Start reading DMarket prices

Free key, no card. Create one, then call /api/v1/items/{name}/markets. Full reference in the docs, limits on pricing.