Skip to main content

The official python library for CSMarketAPI

Project description

CSMarketAPI Client

Asynchronous Python client for CSMarketAPI — typed responses (Pydantic), enums for marketplaces/currencies, and convenient async context managers.

Highlights

  • Async & Fast: Use with async with CSMarketAPI(...)
  • Typed Models: All responses are Pydantic models
  • Enums: For Market and Currency
  • Modern Python: 3.13+, type hints everywhere

Installation

pip install csmarketapi

Requirements

  • Python 3.13+
  • CSMarketAPI API key

Quickstart

import asyncio
from csmarketapi import CSMarketAPI
from csmarketapi.enums import Market, Currency

async def main():
    async with CSMarketAPI("YOUR_API_KEY") as client:
        items = await client.get_items()
        print(f"Loaded {len(items.items)} items.")

asyncio.run(main())

Usage Examples

All methods are async and return Pydantic models.

Listings (Latest)

async with CSMarketAPI("YOUR_API_KEY") as client:
    res = await client.get_listings_latest_aggregated(
        market_hash_name="Chroma 2 Case",
        markets=list(Market)
        curreny=Currency.USD
    )
    print(res.market_hash_name, res.listings[0].market, res.listings[0].min_price)

Sales (Latest)

async with CSMarketAPI("YOUR_API_KEY") as client:
    res = await client.get_sales_latest_aggregated(
        market_hash_name="Chroma 2 Case",
        markets=[Market.SKINPORT, Market.SKINBARON]
    )
    print(res.sales[0].market, res.sales[0].median_price)

Currency Rates

async with CSMarketAPI("YOUR_API_KEY") as client:
    rates = await client.get_currency_rates()
    print(rates.items)

Steam Inventory

async with CSMarketAPI("YOUR_API_KEY") as client:
    inv = await client.get_steam_inventory(steam_id="YOUR_STEAM_ID")
    print(inv.assets)

Error Handling & Tipps

  • Wrap API calls in try/except for network errors
  • Optional fields may be None
  • Use markets=list(Market) for all markets

License

MIT


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

csmarketapi-1.1.0.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

csmarketapi-1.1.0-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file csmarketapi-1.1.0.tar.gz.

File metadata

  • Download URL: csmarketapi-1.1.0.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.15

File hashes

Hashes for csmarketapi-1.1.0.tar.gz
Algorithm Hash digest
SHA256 164798ddcb2f318dd79c8c17e7ff398aecd12f76d740786555711ec64ff846b9
MD5 abac70346054be1428d19d4270e64a8c
BLAKE2b-256 2637a55c5b9d98d5474344e3d19e44e0b986f1e0d9d98c0fc40563bc55583b26

See more details on using hashes here.

File details

Details for the file csmarketapi-1.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for csmarketapi-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a02bba1067fc557b11f3cca92268037a0d42421ff359793ec80ae6d422659867
MD5 2cdbce07e9f75ee5f47764cb7d8c602b
BLAKE2b-256 52413b86b0060dd4336dc21662377f8dadba2b6fb54573c27748e4063967c83d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page