Discover/HaloSkins API
live

HaloSkins APIhaloskins.com

Search HaloSkins CS2 skin listings, retrieve seller prices, float values, stickers, and paint seeds across 3 structured endpoints.

Endpoint health
verified 4d ago
search_market
get_item_listings
search_and_get_listings
3/3 passing latest checkself-healing
Endpoints
3
Updated
26d ago

What is the HaloSkins API?

The HaloSkins API gives programmatic access to the HaloSkins CS2 skin marketplace across 3 endpoints. Use search_market to find items by keyword with price and quantity data, get_item_listings to pull per-seller listing details including float values, stickers, keychains, and paint seeds, or search_and_get_listings to combine both operations in a single call for the top-matching item.

Try it
Page number for pagination. Pages beyond total available return empty items.
Number of results per page (max 50)
Search keyword (e.g., 'dragon lore', 'ak-47', 'karambit doppler')
api.parse.bot/scraper/7e3806d9-5b8f-4ed8-8c4d-33859c76126f/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X POST 'https://api.parse.bot/scraper/7e3806d9-5b8f-4ed8-8c4d-33859c76126f/search_market' \
  -H 'X-API-Key: $PARSE_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "page": "1",
  "limit": "20",
  "keyword": "ak-47"
}'
Python SDK · recommended

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 haloskins-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: HaloSkins CS2 Marketplace SDK — search skins, browse listings."""
from parse_apis.haloskins_cs2_marketplace_api import HaloSkins, Sort, ItemNotFound

client = HaloSkins()

# Search for AK-47 skins on the marketplace
for item in client.items.search(keyword="ak-47", limit=5):
    print(item.item_name, item.price, item.quantity)

# Drill into a specific item's seller listings, sorted by price ascending
item = client.items.search(keyword="dragon lore", limit=1).first()
if item:
    for listing in item.listings.list(sort=Sort.PRICE_ASC, limit=3):
        print(listing.seller_name, listing.price, listing.float_value)

# Combined search + listings in one call
result = client.marketsearchresults.search_with_listings(keyword="karambit doppler", listings_limit=5)
print(result.keyword, len(result.search_results))
if result.selected_item:
    print(result.selected_item.item_name, result.selected_item.total_listings)

# Handle a missing item gracefully
try:
    bad_item = client.item(item_id="99999999999")
    for listing in bad_item.listings.list(limit=1):
        print(listing.price)
except ItemNotFound as exc:
    print(f"Item not found: {exc.item_id}")

print("exercised: items.search / item.listings.list / marketsearchresults.search_with_listings / ItemNotFound")
All endpoints · 3 totalmissing one? ·

Search the HaloSkins marketplace by keyword. Returns matching items with their prices, quantities, and metadata. Supports pagination. Note: requesting a page beyond total pages returns an empty items array with HTTP 200.

Input
ParamTypeDescription
pageintegerPage number for pagination. Pages beyond total available return empty items.
limitintegerNumber of results per page (max 50)
keywordrequiredstringSearch keyword (e.g., 'dragon lore', 'ak-47', 'karambit doppler')
Response
{
  "type": "object",
  "fields": {
    "page": "integer - current page number",
    "items": "array of item objects with: item_id, item_name, short_name, price, steam_price, discount_rate, quantity, image_url, market_hash_name, market_url, item_info (type, exterior, rarity, weapon, quality, collection)",
    "limit": "integer - items per page",
    "pages": "integer - total number of pages",
    "total": "integer - total number of matching items",
    "keyword": "string - the search keyword used",
    "search_url": "string - URL of the search results page on haloskins.com"
  },
  "sample": {
    "data": {
      "page": 1,
      "items": [
        {
          "price": 14379.8,
          "item_id": "553487702",
          "quantity": 24,
          "image_url": "https://img.zbt.com/e/steam/item/730/QUstNDcgfCBXaWxkIExvdHVzIChGYWN0b3J5IE5ldyk=.png",
          "item_info": {
            "type": "Rifle",
            "rarity": "Covert",
            "weapon": "AK-47",
            "quality": "",
            "exterior": "Factory New",
            "collection": "The St. Marc Collection"
          },
          "item_name": "AK-47 | Wild Lotus (Factory New)",
          "market_url": "https://www.haloskins.com/market/553487702?keyword=ak-47",
          "short_name": "AK-47 | Wild Lotus",
          "steam_price": null,
          "discount_rate": null,
          "market_hash_name": "AK-47 | Wild Lotus (Factory New)"
        }
      ],
      "limit": 20,
      "pages": 29,
      "total": 564,
      "keyword": "ak-47",
      "search_url": "https://www.haloskins.com/market?keyword=ak-47"
    },
    "status": "success"
  }
}

About the HaloSkins API

Searching the Marketplace

The search_market endpoint accepts a keyword string (e.g. 'karambit doppler', 'ak-47') and returns a paginated list of matching items. Each item in the items array includes item_id, item_name, short_name, price, steam_price, discount_rate, quantity, and image_url. Pagination is controlled via page and limit (max 50 per page). Requesting a page number beyond the total available returns an empty items array with HTTP 200, so your pagination loop should check the pages field before advancing.

Per-Seller Listing Detail

get_item_listings takes an item_id (obtained from search_market) and returns individual seller listings. Each entry in the listings array exposes listing_id, price, seller_name, seller_avatar, float_value, paint_seed, stickers, keychains, and a 3D inspect URL. Listings can be sorted by price ascending (sort=1) or descending (sort=2), or left at default order (sort=0). The response also carries total, pages, item_name, and a market_url pointing to the item page on haloskins.com.

Combined Single-Call Lookup

search_and_get_listings merges the two operations above. Pass a keyword and optionally a listings_limit to cap how many seller listings are returned for the top result. The response includes a search_results array covering all matching items and a selected_item object with full listing detail for the first result. When no items match the keyword, selected_item is null rather than an error, so null-checks are required in consuming code.

Reliability & maintenanceVerified

The HaloSkins API is a managed, monitored endpoint for haloskins.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when haloskins.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 haloskins.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.

Last verified
4d ago
Latest check
3/3 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Track price fluctuations for specific CS2 skins by polling search_market with item keywords over time.
  • Build a float-value filter tool by pulling float_value and paint_seed from get_item_listings for sniper-grade skin selection.
  • Compare HaloSkins price against steam_price using discount_rate fields to surface the best discount opportunities.
  • Aggregate sticker and keychain combinations on high-value listings to identify rare applied items.
  • Automate inventory checks by searching a list of skin names and reading the quantity field from search_market results.
  • Build a CS2 skin arbitrage monitor that flags listings where price diverges significantly from steam_price.
  • Populate a skin database with image_url, item_name, and metadata from paginated search_market results.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 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.

Frequently asked questions
Does HaloSkins have an official developer API?+
HaloSkins does not currently publish a public developer API or documented developer portal. This Parse API is the structured way to access marketplace data programmatically.
What does `get_item_listings` return beyond price?+
Each listing object includes float_value, paint_seed, seller_name, seller_avatar, a list of applied stickers, keychains, and a 3D inspect URL. You also get pagination metadata (total, pages) and a market_url for the item's page on haloskins.com.
What happens when I paginate past the last page in `search_market`?+
Requesting a page value beyond the pages total returns an empty items array with an HTTP 200 status rather than an error. Your code should read the pages field from the first response and stop pagination there.
Can I filter search results by float range or exterior condition?+
The search_market endpoint filters by keyword only and does not currently support float range or exterior condition parameters. Float values are available at the listing level via get_item_listings. You can fork this API on Parse and revise it to add float-based filtering as an additional input parameter.
Does the API cover seller profiles, transaction history, or trade statuses?+
Not currently. The API covers item search, per-seller listing detail (price, float, stickers, paint seed), and a combined search-and-list call. Seller profile pages, historical sales, and trade status data are not included. You can fork it on Parse and revise to add the missing endpoint.
Page content last updated . Spec covers 3 endpoints from haloskins.com.
Related APIs in MarketplaceSee all →
skinport.com API
Browse and retrieve CS2 skin listings on Skinport. Search and filter the marketplace by category, exterior, and price; pull full item details and sales history; and access aggregated pricing data across the entire catalog.
pricempire.com API
Search and compare CS2 skin prices across multiple marketplaces. Look up skins by name, retrieve per-condition pricing and historical data, explore order books, and browse marketplace details including fees and payment methods.
csgoskins.gg API
csgoskins.gg API
csgo.steamanalyst.com API
Track CS2 skin prices in real-time, search for specific skins, and analyze market trends with historical pricing data and top gainers. Compare marketplace listings across different weapons and collections to make informed trading decisions.
wiki.rustclash.com API
Access Rust game items, skins, blueprints, and crafting data from the RustClash Wiki. Browse and search items by category, explore skin listings with market prices, and retrieve detailed stats including crafting recipes, repair costs, loot locations, and workbench blueprint tiers.
csgostash.com API
Access live CS2 skin prices, weapon catalogs, and case details. Search across weapons, skins, and collections to find specific items and their current market values.
csfloat.com API
Monitor the latest CS2 skins posted on the CSFloat marketplace with real-time access to item names and prices. Stay ahead of new listings to find deals or track market trends as soon as items go live.
blendermarket.com API
Browse and search Blender Market (Superhive) to discover 3D assets, add-ons, and creator tools. Access detailed product information, reviews, FAQs, documentation, and creator profiles. Filter by category, sort results, and explore current sales.