transmission-rpc
Python module that implements the Transmission bittorent client JSON-RPC protocol
What it is and what it does
transmission-rpc is a Python client library that wraps the Transmission BitTorrent daemon's JSON-RPC interface, allowing you to control a remote or local Transmission instance programmatically. It abstracts the low-level RPC protocol details behind a Python API, letting you query torrent status, add or remove torrents, adjust settings, and monitor the daemon without direct socket communication.
The library supports Transmission versions from 2.40 (released 2011-10-05) through 4.0.6 (released 2024-05-29) and is actively maintained. It depends only on requests and typing-extensions, making it lightweight to integrate into automation scripts, monitoring tools, or applications that need to manage torrents. Development requires Python ~=3.8, with explicit support for Python 3.8 through 3.12 and PyPy.
Use it for:
- Automate torrent management in scripts or applications that need to add, remove, or monitor torrents on a Transmission daemon.
- Build monitoring dashboards or alerting systems that track Transmission daemon status and torrent progress.
- Integrate torrent control into larger download or media management pipelines that orchestrate multiple services.
- Create custom torrent clients or wrappers that extend Transmission's functionality with application-specific logic.
- Test Transmission daemon behavior or RPC protocol compliance in CI/CD pipelines.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Python wrapper around the Transmission BitTorrent client JSON-RPC protocol, enabling programmatic control of Transmission daemon instances.
Yes. The package is actively maintained with a release 5 days ago, has low install friction, carries no known vulnerabilities, uses a permissive MIT license, and solves a clear problem for anyone needing programmatic control of Transmission. Install it if you need to automate or integrate Transmission into a Python application.
Install
transmission-rpc on PyPI
pip
pip install transmission-rpcuv
uv add transmission-rpcpoetry
poetry add transmission-rpcInstalling transmission-rpc
Before you install
Low install friction with only 2 runtime dependencies (requests and typing-extensions). Actively maintained with a release 5 days ago; repository shows recent activity and is not archived.
License in practice
MIT license permits free use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects.
Quickstart
pip install transmission-rpc
import transmission_rpc
client = transmission_rpc.Client(host='localhost')
torrents = client.get_torrents()
Requires a running Transmission daemon accessible at the specified host; connection credentials may be needed depending on daemon configuration.
Verify before relying
- Whether all Transmission RPC features from versions 2.40 through 4.0.6 are fully implemented or if some newer features may be missing.
- Specific performance characteristics when managing large torrent lists or frequent polling operations.
- Default port and authentication requirements for typical Transmission daemon setups.
Package facts
| License | not declared (permissive) |
| Python support | supports the current Python release (~=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — requests, typing-extensions |
| Maintenance | actively maintained — 5 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 151,164/month — #10,942 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: transmission_rpc-7.0.12-py3-none-any.whl
Keywords: transmission, rpc
Tags
More Networking packages
h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
psutilpsutil retrieves real-time information about…
permissive · top 1,000 on PyPI
pyOpenSSLpyOpenSSL wraps OpenSSL's SSL/TLS functionality…
permissive · top 1,000 on PyPI
uvloopuvloop is a drop-in replacement for Python's…
permissive · top 1,000 on PyPI
execnetexecnet lets you spawn and communicate with…
permissive · top 1,000 on PyPI
pyzmqPyZMQ provides Python bindings for ZeroMQ…
permissive · top 1,000 on PyPI
deluge-clientA lightweight pure-Python RPC client that…
permissive · top 15,000 on PyPI
python-bitcoinrpcProvides a JSON-RPC client library for…
copyleft · top 15,000 on PyPI
jsonrpcclientGenerates JSON-RPC request objects and parses…
unclear · top 15,000 on PyPI
pykodiPyKodi provides an async Python interface to…
permissive · top 15,000 on PyPI
json-rpcImplements JSON-RPC 2.0 and 1.0 protocol…
permissive · top 5,000 on PyPI
libtorrentPython bindings for libtorrent-rasterbar,…
permissive · top 15,000 on PyPI
ajsonrpcImplements the JSON-RPC 2.0 protocol with an…
permissive · top 5,000 on PyPI
kanboardA Python client library that wraps the Kanboard…
permissive · top 15,000 on PyPI
OdooRPCOdooRPC is a Python client library that…
copyleft · top 15,000 on PyPI
python-jsonrpc-serverImplements a JSON RPC 2.0 server that handles…
unclear · top 15,000 on PyPI