redfish
Redfish Python Library
Decision gist · record as of 2026-08-14
Yes. The library is actively maintained, has no known vulnerabilities, carries a permissive BSD license, and offers low install friction. It is the standard Python client for Redfish services and is well-suited for anyone automating hardware management on systems that expose a Redfish API. Install it if you need to interact with Redfish-conformant BMCs, management controllers, or cloud infrastructure APIs.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires a Redfish-conformant service endpoint; conflicts with the OpenStack 'python-redfish' package if both are installed.
- Low install friction; pure Python wheel with seven runtime dependencies (jsonpath_ng, jsonpointer, requests, requests_toolbelt, requests-unixsocket, jsonpatch, urllib3).
- Active maintenance with recent commits and no known vulnerabilities.
License · maintenance · safety
permissive license (permissive) — BSD 3-clause permissive license allows commercial and private use with minimal restrictions; attribution required but no copyleft obligations.
last release 2026-08-14 (0 days) · last repo commit 2026-08-14 · 214 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 599,561 downloads/mo, #5,828 on PyPI
Alternatives
Verify before relying
pip install redfish
import redfish
REDFISH_OBJ = redfish.redfish_client(base_url='https://192.168.1.100', username='admin', password='pass')
REDFISH_OBJ.login(auth='session')
response = REDFISH_OBJ.get('/redfish/v1/Systems/1')- Whether the library supports modern Python versions beyond 3.5 (requires_python is unspecified in metadata).
- Performance characteristics when handling large response bodies or high-frequency polling.
- Whether SSL/TLS certificate validation can be fully disabled or only customized via cafile.
What it is and what it does
The Redfish library is a Python client for REST-based hardware management services that conform to the Redfish specification. It wraps HTTP operations (GET, POST, PUT, PATCH, DELETE) on Redfish service endpoints, handling authentication via session tokens or HTTP Basic auth, and managing request/response serialization through its dependencies on jsonpath_ng, jsonpointer, and jsonpatch. The library is built on requests and urllib3, supporting proxies, custom timeouts, retry logic, and Unix socket connections via requests-unixsocket.
Typical usage involves creating a Redfish client object with a service URL and credentials, logging in, then issuing REST calls to query or modify system resources like compute nodes, power states, or firmware. The library handles task polling for long-running operations and supports optional parameters like custom CA certificates, per-request timeouts, and retry counts. It is actively maintained, carries no known vulnerabilities, and is widely used in hardware management automation workflows.
Use it for
- Query hardware inventory and system status from BMCs or management controllers supporting the Redfish standard.
- Automate power operations (reset, shutdown) and firmware updates on managed systems.
- Monitor system health metrics and sensor readings from Redfish-compliant services.
- Integrate hardware provisioning and lifecycle management into infrastructure-as-code or orchestration tools.
- Perform bulk operations across multiple managed systems via Redfish API endpoints.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
The library is actively maintained, has no known vulnerabilities, carries a permissive BSD license, and offers low install friction. It is the standard Python client for Redfish services and is well-suited for anyone automating hardware management on systems that expose a Redfish API. Install it if you need to interact with Redfish-conformant BMCs, management controllers, or cloud infrastructure APIs.
Install
redfish on PyPI
Before you install
Low install friction; pure Python wheel with seven runtime dependencies (jsonpath_ng, jsonpointer, requests, requests_toolbelt, requests-unixsocket, jsonpatch, urllib3). Active maintenance with recent commits and no known vulnerabilities.
Requires a Redfish-conformant service endpoint; conflicts with the OpenStack 'python-redfish' package if both are installed.
License in practice
BSD 3-clause permissive license allows commercial and private use with minimal restrictions; attribution required but no copyleft obligations.
Quickstart
pip install redfish
import redfish
REDFISH_OBJ = redfish.redfish_client(base_url='https://192.168.1.100', username='admin', password='pass')
REDFISH_OBJ.login(auth='session')
response = REDFISH_OBJ.get('/redfish/v1/Systems/1')
Verify before relying
- Whether the library supports modern Python versions beyond 3.5 (requires_python is unspecified in metadata).
- Performance characteristics when handling large response bodies or high-frequency polling.
- Whether SSL/TLS certificate validation can be fully disabled or only customized via cafile.
Package facts
| License | permissive license permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 7 packagesjsonpath_ngjsonpointerrequestsrequests_toolbeltrequests-unixsocketjsonpatchurllib3 |
| Maintenance | Actively maintained 0 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 599,561 / month, #5,828 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableLicense :: OSI Approved :: BSD LicenseProgramming Language :: Python :: 3Topic :: Communications |
Evidence: redfish-3.3.8-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “redfish api client”
- redfishA Python library for interacting with Redfish-conformant REST…
- codewords-clientA Python client library for the Codewords API with built-in FastAPI…
- twentyc.rpcA client library for consuming 20c's RESTful API, built on top of the…
Give your agent the search over MCP, or paste the wish link into any chat.
More Communications packages
Pyasn1 encodes and decodes ASN.1 data structures using BER, CER, DER, and native Python codecs, allowing you to serialize complex data for network protocols and file formats.
Install it if you need to work with ASN.1-based protocols or formats; it is the standard library for this in Python and has no known vulnerabilities.
Provides a collection of ASN.1 data structures expressed as Python classes, built on the pyasn1 library, for working with ASN.1-based protocols and standards.
Kombu is a messaging library that provides a high-level Python interface to AMQP and other message brokers, supporting pluggable transports for RabbitMQ, Redis, MongoDB, Amazon SQS, and others.
Install it if you are building any distributed system that requires reliable message passing.
Formats and parses numbers, file sizes, timespans, and other values into human-readable text; provides terminal interaction utilities including ANSI text styling and user prompts.
Adds colored output to Python's standard logging module using ANSI escape sequences, with automatic fallback support for Windows terminals.
However, it is abandoned and receives no maintenance, so it will not adapt to future Python changes or platform updates.
Parse, validate, format, and analyze international phone numbers across all countries, with support for extracting geographic, carrier, and timezone information from phone number data.
See also openshift · pyactiveresource · prometheus-remote-writer · requests-hardened · hammock · azure-mgmt-redisenterprise · urllib3 · yarn-api-client · vllm-sr · requests-ntlm2