ophix-cred-client
Python client for ophix-creds credential servers.
Provides a CLI for operators and an importable library for automation scripts and Tier 2 clients. Credentials are fetched on demand and never persisted to disk.
Installation
pip install ophix-cred-client venv-cmds
venv-cmds is optional but recommended — it provides venv-cmds list to discover all
commands available in the venv and venv-cmds check_updates to check for new releases.
Quick start
# Bootstrap in one step
cred-client quickstart https://credserver.internal my-client
# Fetch a credential (JSON printed to stdout)
cred-client fetch my-database-password
# Check all credentials mapped in .cred.env
cred-client check --all
# Diagnose config and connectivity
cred-client doctor
Configuration
Settings are stored in .cred.env (mode 600).
| Variable | Purpose |
|---|---|
CREDSERVER_URL |
Base URL of the credential server |
CREDSERVER_API_TOKEN |
64-char hex API token (set by register) |
CREDSERVER_CA_CERT |
Path to CA certificate (set by download ca-cert) |
Additional keys in .cred.env are treated as credential name mappings used by
check --all — each key maps an environment variable name to a credential name
on the server.
CLI reference
cred-client quickstart <server_url> <client_name> [--deployment-ref ...]
cred-client fetch {--name <n>|--var <VAR>}
cred-client register <name> [deployment_ref]
cred-client update [--deployment-ref ...]
cred-client set {server|ca-cert|token} <value>
cred-client download ca-cert
cred-client import --input-file <file> [--name <n>] [--var <VAR>] [--description ...] [--overwrite]
cred-client check {--all|--var <VAR>|--name <name>} [--verbose]
cred-client info
cred-client rotate-token
cred-client doctor
fetch
| Usage | What happens |
|---|---|
--name <n> |
Fetches the credential named <n> directly |
--var <VAR> |
Reads the credential name from <VAR> in .cred.env, then fetches it |
import
Uploads a JSON file as a credential on the server. The credential name is resolved from the flags provided:
| Flags | Behaviour |
|---|---|
--name <n> only |
Creates the credential with the given name |
--var <VAR> only |
Reads the credential name from the <VAR> mapping already in .cred.env |
--name <n> --var <VAR> |
Writes <VAR>=<n> to .cred.env, then creates the credential — one step setup for Tier 2 consumers |
When --name and --var are both given and <VAR> already exists in .cred.env with a different name, the command refuses with an error. If it already maps to the same name, it proceeds normally.
Add --overwrite to update an existing credential instead of creating a new one (requires can_update on the server-side link).
Python API — Tier 2 clients
from cred_client.core import get_cred
# Reads credential name from the named env var, fetches from server,
# returns the secret as a dict. Calls sys.exit(1) on failure.
db_creds = get_cred("DB_CRED_NAME")
password = db_creds["password"]
Full CRUD:
from cred_client.core import (
fetch_credential, # returns secret dict
create_credential,
update_credential,
delete_credential,
)
Server
This client connects to ophix-creds.
Metadata
Release files for ophix-cred-client 2026.10.6.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| ophix_cred_client-2026.10.6.2.tar.gz | 9.5 kB | Without provenance | Details for ophix_cred_client-2026.10.6.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| ophix_cred_client-2026.10.6.2-py3-none-any.whl | Python 3 | none | any | Details for ophix_cred_client-2026.10.6.2-py3-none-any.whl |
Total release size: 18.3 kB
Release files / ophix_cred_client-2026.10.6.2.tar.gz
| Download URL | ophix_cred_client-2026.10.6.2.tar.gz |
|---|---|
| Size | 9.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7006b1057dc59f0ead908841886a5c342de63b37f4ec02d7d4d9fcd85b57a3b5
|
|
BLAKE2b-256 checksum How to use checksums |
b75ce0f6833f6f18ecd7ffc03da8b56d450752dc858496ca12119fa07a574f92
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.3
|
Release files / ophix_cred_client-2026.10.6.2-py3-none-any.whl
| Download URL | ophix_cred_client-2026.10.6.2-py3-none-any.whl |
|---|---|
| Size | 8.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c303b547ac7152d289337055096bab9313e0aa323607e2e9358d740b75bcfe8c
|
|
BLAKE2b-256 checksum How to use checksums |
d6ddac9c76a6fb7263c288987b540a4247a40d0b5139a1cef0485ff3472f2a3a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.3
|
Security for ophix-cred-client 2026.10.6.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.