{"id":21787,"library":"pyrabbit2","title":"pyrabbit2","description":"A Pythonic interface to the RabbitMQ Management HTTP API. Version 1.0.7 wraps the RabbitMQ management plugin's REST API for cluster management, queue introspection, and user administration. Maintained slowly; no breaking changes in the 1.x line.","status":"active","version":"1.0.7","language":"python","source_language":"en","source_url":"https://github.com/deslum/pyrabbit2","tags":["rabbitmq","management-api","http-client"],"install":[{"cmd":"pip install pyrabbit2","lang":"bash","label":"Install from PyPI"}],"dependencies":[{"reason":"HTTP client for RabbitMQ management API","package":"requests","optional":false}],"imports":[{"note":"pyrabbit (without '2') is a different, older library; pyrabbit2 requires explicit 'api' submodule.","wrong":"from pyrabbit import Client","symbol":"Client","correct":"from pyrabbit2.api import Client"}],"quickstart":{"code":"from pyrabbit2.api import Client\nimport os\n\nclient = Client(\n    host=os.environ.get('RABBIT_HOST', 'localhost'),\n    port=os.environ.get('RABBIT_PORT', 15672),\n    user=os.environ.get('RABBIT_USER', 'guest'),\n    password=os.environ.get('RABBIT_PASS', 'guest')\n)\nqueues = client.get_queues()\nprint(queues)","lang":"python","description":"Connect to RabbitMQ management plugin and list queues."},"warnings":[{"fix":"Use `from pyrabbit2.api import Client` and consult pyrabbit2 docs for method arguments.","message":"pyrabbit2 is NOT drop-in compatible with the original pyrabbit. API module structure and method signatures differ (e.g., `get_queues()` vs `get_queues()` similar but parameter names changed).","severity":"breaking","affected_versions":"all"},{"fix":"Ensure RABBIT_PORT is set to the management plugin port (usually 15672).","message":"Default port is 15672 (management plugin HTTP port), not 5672 (AMQP). Common mistake: using AMQP port, causing connection timeout.","severity":"gotcha","affected_versions":"all"},{"fix":"Use threading/asyncio wrapper or consider aio-pika for async AMQP management.","message":"The library provides only synchronous HTTP calls; no async support. Long-running operations may block.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-04-27T00:00:00.000Z","next_check":"2026-07-26T00:00:00.000Z","problems":[{"fix":"Use `from pyrabbit2.api import Client`.","cause":"Incorrect import: trying `from pyrabbit2 import Client` instead of `from pyrabbit2.api import Client`.","error":"AttributeError: module 'pyrabbit2' has no attribute 'Client'"},{"fix":"Pass port=15672 (or correct management port) to Client.","cause":"Using default AMQP port (5672) for HTTP management API; should be 15672.","error":"requests.exceptions.ConnectionError: HTTPConnectionPool(host='localhost', port=5672): Max retries exceeded"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}