RMQ Management Client
An asynchronous and synchronous Python client for the RabbitMQ Management HTTP API.
Key Features
-
Dual Interface: Provides both AsyncRMQManagementAPI and RMQManagementAPI.
-
HTTP Backend: Built on top of httpx for high-performance requests.
-
Compatibility: Designed for RabbitMQ 3.11+.
-
Environment: Python 3.9+ with full type hinting.
Installation
pip install rabbitmq-management
Usage Examples
Asynchronous Interface
The library supports asynchronous context managers for automatic session cleanup.
from rabbitmq_management import AsyncRMQManagementAPI
async def main():
# Using as a context manager
async with AsyncRMQManagementAPI("http://localhost:15672", "guest", "guest") as rmq:
# Get cluster overview
stats = await rmq.overview()
# Access sub-resources (e.g., queues)
queues = await rmq.queues.all()
# Perform health checks
status = await rmq.aliveness_test(vhost="/")
# Manual session management:
# client = AsyncRMQManagementAPI(...)
# await client.overview()
# await client.close()
Synchronous Interface
Identical to the async version but uses blocking calls.
from rabbitmq_management import RMQManagementAPI
with RMQManagementAPI("http://localhost:15672", "guest", "guest") as rmq:
nodes = rmq.nodes.all()
print(nodes)
API Structure
Methods are grouped into sub-resources matching the RabbitMQ Management API endpoints:
| Resource | Description |
|---|---|
rmq.queues |
Creating, deleting, purging, and fetching messages. |
rmq.users |
Managing users, password hashes, and user limits. |
rmq.vhosts |
Managing virtual hosts and their operational state. |
rmq.permissions |
Standard and Topic Permissions management. |
rmq.policies |
Managing runtime and operator policies. |
rmq.nodes |
Monitoring cluster nodes and memory statistics. |
Full API reference and detailed method parameters are available in the documentation.
Roadmap
- Full API coverage for the latest RabbitMQ Management specifications
- Resource-oriented model (Queue, User, VHost objects)
- Expanded test suite for cluster configurations
- Optional HTTP backends via extras (requests, aiohttp)
Metadata
Release files for rabbitmq-management 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| rabbitmq_management-0.1.0.tar.gz | 21.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| rabbitmq_management-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 68.5 kB
Release files / rabbitmq_management-0.1.0.tar.gz
| Download URL | rabbitmq_management-0.1.0.tar.gz |
|---|---|
| Size | 21.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
54b240dcafdc66de43a94a5f5c100a8599a680cc044a2bc107b41477e7008a59
|
|
BLAKE2b-256 checksum How to use checksums |
7d4cd6366738d24b904f7a87594f5a77819f84d9b62a444eb43742b70763cf1d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / rabbitmq_management-0.1.0-py3-none-any.whl
| Download URL | rabbitmq_management-0.1.0-py3-none-any.whl |
|---|---|
| Size | 47.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c427a2a11646360ed03512e46e18571d01023493752ef60185da1287b0512f94
|
|
BLAKE2b-256 checksum How to use checksums |
16827a34380f01705b5e13fc88cb4b2f8e1962f6c2c1a3c03be2c0354a4de23c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|