Skip to main content

SteamCommunityKit

PyPI version Python versions License

SteamCommunityKit is a Python client for real Steam user workflows. It covers public Steam Web API reads, no-key Steam Community reads, and authenticated community actions such as profile management, privacy updates, trade URL helpers, market lookups, inventory helpers, and group workflows.

The library is built around features normal users can actually access. It intentionally avoids Steamworks publisher-only administration endpoints that require partner permissions.

Installation

Install from PyPI:

python -m pip install SteamCommunityKit

Upgrade an existing installation:

python -m pip install --upgrade SteamCommunityKit

Install from a local checkout for development:

python -m pip install -e .[dev]

Python 3.8+ is supported.

Quick Start

Use the client without login or API keys for public community data:

from steamcommunitykit import SteamClient

client = SteamClient()

steam_id = client.resolve_steam_id("gaben")
summary = client.get_player_summary("https://steamcommunity.com/id/gaben/")
price = client.get_market_price_overview(730, "AK-47 | Redline (Field-Tested)")

print(steam_id)
print(summary["personaname"])
print(price["lowest_price"])

Provide a normal steamcommunity.com/dev key when you need Web API methods:

from steamcommunitykit import SteamClient

client = SteamClient(api_key="YOUR_WEB_API_KEY")

summary = client.get_player_summary("gaben")
games = client.get_owned_games_for_user("https://steamcommunity.com/id/gaben/")
news = client.get_news_summary(570, count=2)

print(summary["personaname"])
print(games.get("game_count"))
print(news["items"][0]["title"])

Login only when you need account-backed community actions:

from steamcommunitykit import SteamClient

client = SteamClient()
client.login_to_community("YOUR_USERNAME", "YOUR_PASSWORD")

print(client.get_account_info())
print(client.get_trade_offer_url())
print(client.get_group_membership_state("Valve"))

If Steam Guard is required, interactive terminal logins prompt automatically. For non-interactive environments, you can still pass a steam_guard_code explicitly.

Common Workflows

Save and restore a logged-in community session:

from steamcommunitykit import SteamClient

client = SteamClient()
client.login_to_community("YOUR_USERNAME", "YOUR_PASSWORD")
client.save_community_session_bundle("steam_session.json")

restored = SteamClient()
restored.load_community_session_bundle("steam_session.json")
print(restored.get_community_session_state())

Reuse the authenticated session with raw requests calls:

from steamcommunitykit import SteamClient

client = SteamClient()
client.login_to_community("YOUR_USERNAME", "YOUR_PASSWORD")

session = client.build_community_requests_session()
response = session.get("https://steamcommunity.com/my/edit/")
print(response.status_code)

Build a market snapshot from a full listing URL:

from steamcommunitykit import SteamClient

client = SteamClient()
snapshot = client.get_market_price_snapshot_by_url(
    "https://steamcommunity.com/market/listings/730/AK-47%20%7C%20Redline%20%28Field-Tested%29"
)

print(snapshot["price_overview"]["lowest_price"])
print(snapshot["listing_summary"]["listing_count"])

Feature Overview

Authentication and sessions

  • Username and password login with Steam Guard support
  • Refresh-token reuse helpers
  • Cookie string, cookie dict, and JSON session import/export
  • File-based session save and restore helpers
  • Authenticated requests.Session handoff for custom workflows

Community account tools

  • Account and profile state reads
  • Profile edits for persona name, vanity URL, summary, real name, and location
  • Privacy reads and updates
  • Avatar upload
  • Trade offer URL read and rotation helpers
  • Web API key status parsing

Groups

  • Group name, URL, and tag availability checks
  • Group detail and member reads
  • Multi-page member aggregation helpers
  • Logged-in membership state parsing
  • Group creation with validation and limited-account error handling

Market

  • Market search and exact-match helpers
  • Price overview and listing summaries
  • Item name ID, order histogram, order summary, and price history
  • Multi-page aggregation helpers
  • Full URL-based helper variants

Inventory

  • Raw and normalized inventory reads
  • Pagination helpers
  • Item search and filtering helpers
  • Asset ID lookups and URL-based inventory helpers

Workshop and collections

  • Published file detail helpers
  • Collection detail and child item helpers
  • Query helpers with cursor pagination
  • Exact-match and normalized map helpers

Steam Web API

  • Users, friends, bans, badges, and levels
  • Owned games and recently played games
  • App, news, and utility endpoints
  • Trade and econ summary helpers that work with normal user-accessible keys

Documentation

Testing

Run the unit suite:

python -m pytest -q

Run public smoke tests with an API key:

python examples/smoke_test.py --api-key YOUR_WEB_API_KEY --public-only

Run community smoke tests with a Steam account:

python examples/smoke_test.py --username YOUR_USERNAME --password YOUR_PASSWORD --community-only

Notes

  • Web API methods require a normal Steam Web API key from steamcommunity.com/dev.
  • Community write actions require a logged-in Steam session.
  • Some actions depend on Steam account state, including limited accounts, Family View, and privacy restrictions.
  • When authentication or input requirements are missing, the library raises explicit errors instead of silently failing.

Disclaimer

This project is not affiliated with Valve or Steam. Steam pages and community response shapes can change over time, so community-backed helpers may require maintenance when Steam updates its web flows.

Metadata

Release files for SteamCommunityKit 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for SteamCommunityKit 0.1.1
File Size Uploaded
steamcommunitykit-0.1.1.tar.gz 70.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for SteamCommunityKit 0.1.1
File Interpreter ABI Platform
steamcommunitykit-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 128.4 kB

Release files / steamcommunitykit-0.1.1.tar.gz

Download URL steamcommunitykit-0.1.1.tar.gz
Size 70.5 kB
Tags Source
SHA-256 checksum
How to use checksums
aecf31fdfb7e8ce0d32d22c5cd3cfc1790c3eb3177b25d3b77934838a38f15a1
BLAKE2b-256 checksum
How to use checksums
39e9d71736b29ef56edbe6c199bf6aa546d5c4de71ddf451766ebbef0d02c0fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 14, 2026.

Transparency log

Release files / steamcommunitykit-0.1.1-py3-none-any.whl

Download URL steamcommunitykit-0.1.1-py3-none-any.whl
Size 57.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e8cb70ffbba0b7241231a2b5a2e0c8093baf98a8ad5f060e56fb053212dbb233
BLAKE2b-256 checksum
How to use checksums
afbaec25b48f5b3a521d082b5ea53765b1f73bfc81fdafc46b775db8c73fac93
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 14, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page