Pricempire APIpricempire.com ↗
Access CS2 skin prices, historical data, order books, and marketplace details from PriceEmpire via 9 structured endpoints.
What is the Pricempire API?
The PriceEmpire API covers 9 endpoints for CS2 skin pricing data, letting you search skins by name, pull per-condition prices across multiple marketplaces, retrieve daily historical price series, and inspect buy-order books. The get_skin_marketplace_prices endpoint returns a flat list of current listings with condition, provider key, price in cents USD, and a freshness timestamp for every tracked marketplace.
curl -X GET 'https://api.parse.bot/scraper/13aff093-bec6-4662-8f55-4d151152977a/search_skins?limit=5&query=AK-47' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace pricempire-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: PriceEmpire CS2 Skin API — search, compare prices, drill into details."""
from parse_apis.priceempire_cs2_skin_api import PriceEmpire, Days, SkinNotFound
client = PriceEmpire()
# Search for skins by keyword — limit= caps total items fetched.
for skin in client.skinsummaries.search(query="AK-47", limit=3):
print(skin.market_hash_name, f"${skin.min_price / 100:.2f}" if skin.min_price else "N/A")
# Drill into a single search result for full details.
result = client.skinsummaries.search(query="Dragon Lore", limit=1).first()
if result:
detail = result.details()
print(detail.name, detail.app.name)
for variant in detail.asset_items[:2]:
print(f" {variant.discriminator}: liquidity={variant.liquidity}")
# Get marketplace prices for a known skin.
skin = client.skins.get(slug="ak-47-wild-lotus")
for price in skin.marketplace_prices(limit=3):
print(price.condition, price.provider_key, price.price)
# Price statistics with historical ranges.
stats = skin.price_statistics()
for v in stats.variants[:2]:
print(v.condition, v.price_history)
# Fetch price history for an asset item using the Days enum.
item = skin.asset_items[0]
for point in item.history(days=Days._7, limit=3):
print(point)
# List marketplaces and get one by slug.
mp = client.marketplaces.list(limit=1).first()
if mp:
detail_mp = client.marketplaces.get(slug=mp.slug)
print(detail_mp.name, detail_mp.fee, detail_mp.rating)
# Typed error handling — catch SkinNotFound on a bad slug.
try:
client.skins.get(slug="nonexistent-skin-xyz")
except SkinNotFound as exc:
print(f"Skin not found: {exc.slug}")
print("exercised: search / details / marketplace_prices / price_statistics / history / marketplaces.list / marketplaces.get")
Search for CS2 skins by name or keyword. Returns a list of matching items with basic info and minimum prices. Results are sorted by price descending. The query matches against market_hash_name.
| Param | Type | Description |
|---|---|---|
| limit | integer | Max results to return. |
| queryrequired | string | Search keyword matching skin market_hash_name (e.g., 'AK-47', 'Dragon Lore', 'Karambit') |
{
"type": "object",
"fields": {
"items": "array of skin objects with market_hash_name, slug, min_price, offers, id, rarity, discriminator_slug, image, type",
"total": "integer total number of results returned"
},
"sample": {
"data": {
"items": [
{
"id": 4466,
"slug": "ak-47-wild-lotus",
"type": "skin",
"image": "https://community.akamai.steamstatic.com/economy/image/...",
"offers": 483,
"rarity": "Covert",
"min_price": 1372173,
"is_exact_match": 0,
"market_hash_name": "AK-47 | Wild Lotus (Factory New)",
"similarity_score": 0,
"discriminator_slug": "factory-new"
}
],
"total": 5
},
"status": "success"
}
}About the Pricempire API
Skin Search and Detail
Use search_skins with a query string — such as 'AK-47 Wild Lotus' — to get a ranked list of matching skins. Each result includes market_hash_name, slug, min_price, offers, rarity, and discriminator_slug. Pass that slug into get_skin_detail to retrieve the full item record: all condition variants (asset_items), per-variant price history and liquidity, a text description, and an array of similar_assets.
Pricing and Statistics
get_skin_marketplace_prices returns a flat listing per marketplace per condition, with provider_key, price (cents USD), condition, and updated_at ISO timestamp. For aggregate statistics, get_skin_price_statistics returns per-condition min_price, max_price, listings, liquidity, and historical price ranges across 7-day, 30-day, 90-day, and yearly windows. Historical daily series are available through get_skin_price_history, which accepts an item_id (from search_skins or asset_items[].id) and an optional days integer; it returns [timestamp, price, volume] tuples.
Order Book and Marketplaces
get_skin_order_book groups active buy orders by condition variant, exposing provider_key, price, count, and updated_at for each order. To understand which marketplaces are tracked, list_marketplaces returns fee (as a decimal), payment methods, item count, offer count, and Trustpilot rating for every supported platform. get_marketplace_detail deepens this with pros, cons, buyer_fee, description, and rating_count for a specific marketplace slug such as 'skinport' or 'buff163'.
Item Categories
list_weapon_categories exposes the full catalog taxonomy: collections, crates, souvenir packages, sticker capsules, tournaments, teams, and pro players — each as a typed array with name, URL, and (where applicable) image or year fields. This is useful for building navigation or scoping bulk price pulls to a specific collection or event.
The Pricempire API is a managed, monitored endpoint for pricempire.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when pricempire.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official pricempire.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Track daily price movements for specific CS2 skins across multiple condition grades using
get_skin_price_history - Compare seller fees and payment methods across all supported marketplaces with
list_marketplaces - Build a skin portfolio tracker that monitors
min_priceandliquidityper condition fromget_skin_price_statistics - Identify arbitrage opportunities by comparing
provider_keyprices fromget_skin_marketplace_prices - Display active buy-order depth for a skin using
get_skin_order_bookbuy_orders grouped by condition - Populate a skin catalog with collection and crate metadata from
list_weapon_categories - Surface similar item recommendations from
get_skin_detailsimilar_assetsin a trading application
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does PriceEmpire have an official developer API?+
What does `get_skin_price_history` return and how granular is it?+
get_skin_price_history returns an array of [timestamp, price, volume] tuples. Timestamps are Unix epoch seconds, price is in cents USD, and volume is the trade count for that day. You control the lookback window with the days parameter; omitting it returns the default history window the source exposes.Does the API expose StatTrak or souvenir variant prices separately?+
get_skin_marketplace_prices and get_skin_price_statistics. StatTrak and souvenir items are separate entries in the catalog and can be retrieved by searching their full market_hash_name via search_skins and passing the resulting slug to the detail or pricing endpoints.Does the API cover float value or individual item inspect data?+
Are there any known freshness limitations on marketplace prices?+
get_skin_marketplace_prices includes an updated_at ISO timestamp, so freshness varies by marketplace and can be checked per-entry. Marketplaces that update infrequently will have older timestamps; the updated_at field is the reliable way to determine data age rather than assuming uniform refresh intervals.