{"library":"stream-python","title":"Stream Python Client","type":"library","description":"Client for getstream.io, enabling developers to build scalable newsfeeds and activity streams. The library provides functionality to interact with Stream's API for feed management, activity posting, and user token generation. Currently at version 5.4.0, it maintains an active development pace with several releases per year, including minor updates and occasional major feature additions.","language":"python","status":"active","last_verified":"Fri May 22","install":{"commands":["pip install stream-python"],"cli":null},"imports":["import stream\nclient = stream.connect(...)"],"auth":{"required":false,"env_vars":[]},"links":{"homepage":"https://getstream.io","github":"https://github.com/GetStream/stream-python","docs":"https://getstream.io/activity-feeds/docs/python/?language=python","changelog":"https://github.com/GetStream/stream-python/releases/tag/v5.4.0","pypi":"https://pypi.org/project/stream-python/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null},"quickstart":{"code":"import stream\nimport os\n\n# Get your API key and secret from getstream.io/dashboard\nSTREAM_API_KEY = os.environ.get('STREAM_API_KEY', 'YOUR_STREAM_API_KEY')\nSTREAM_API_SECRET = os.environ.get('STREAM_API_SECRET', 'YOUR_STREAM_API_SECRET')\n\n# Connect to the Stream API\nclient = stream.connect(STREAM_API_KEY, STREAM_API_SECRET)\n\n# Get a user feed\nuser_feed = client.feed('user', 'john-doe')\n\n# Add an activity to the feed\nactivity_data = {\n    'actor': 'john-doe',\n    'verb': 'post',\n    'object': '1',\n    'foreign_id': 'post:1',\n    'message': 'Hello world from Stream!'\n}\nresponse = user_feed.add_activity(activity_data)\nprint(f\"Activity added: {response['id']}\")\n\n# Read activities from the feed (optional, for demonstration)\nactivities = user_feed.get(limit=1)['results']\nif activities:\n    print(f\"Retrieved activity: {activities[0]['message']}\")\n","lang":"python","description":"Connects to the Stream API using environment variables for credentials, initializes a user feed, adds a simple activity, and then retrieves it to confirm.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-22","installed_version":"5.4.0","pypi_latest":"5.4.0","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":4.7,"avg_import_s":0,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"stream-python","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0,"mem_mb":0,"disk_size":"33.1M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"stream-python","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":5.5,"import_time_s":0,"mem_mb":0,"disk_size":"35M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"stream-python","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0,"mem_mb":0,"disk_size":"36.1M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"stream-python","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":4.5,"import_time_s":0,"mem_mb":0,"disk_size":"38M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"stream-python","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0,"mem_mb":0,"disk_size":"27.9M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"stream-python","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":3.6,"import_time_s":0,"mem_mb":0,"disk_size":"30M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"stream-python","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0,"mem_mb":0,"disk_size":"27.3M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"stream-python","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":3.7,"import_time_s":0,"mem_mb":0,"disk_size":"30M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"stream-python","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0,"mem_mb":0,"disk_size":"33.2M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"stream-python","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":6.3,"import_time_s":0,"mem_mb":0,"disk_size":"36M"}]}}