Skip to main content

Flask integration for the Bella Baxter secret management SDK

Project description

bella-baxter-flask

Flask extension for the Bella Baxter secrets management platform. Attaches a BaxterClient to your Flask app as app.bella.

Installation

pip install bella-baxter-flask

Quickstart

from flask import Flask
from bella_baxter_flask import BellaBaxter

app = Flask(__name__)
bella = BellaBaxter(app, api_key="bax-...")

@app.route("/health")
def health():
    secrets = app.bella.get_all_secrets()
    return {"database": secrets.secrets.get("DATABASE_URL")}

Application factory pattern

# extensions.py
from bella_baxter_flask import BellaBaxter

bella = BellaBaxter()  # not bound to an app yet

# app.py
from flask import Flask
from extensions import bella

def create_app():
    app = Flask(__name__)
    app.config["BELLA_BAXTER_API_KEY"] = "bax-..."
    bella.init_app(app)
    return app
# routes.py
from extensions import bella

@app.route("/secrets")
def get_secrets():
    resp = bella.get_all_secrets()
    return resp.secrets

Configuration

Pass api_key= directly to the constructor, or set it in app.config:

Config key Required Default Description
BELLA_BAXTER_API_KEY API key (bax-...)
BELLA_BAXTER_URL https://api.bella-baxter.io Base URL of the Baxter API
app.config["BELLA_BAXTER_API_KEY"] = os.environ["BELLA_BAXTER_API_KEY"]
app.config["BELLA_BAXTER_URL"] = os.environ.get("BELLA_BAXTER_URL", "https://api.bella-baxter.io")

bella = BellaBaxter()
bella.init_app(app)

Accessing the underlying client

# Full BaxterClient API available via .client
kiota = app.bella.client.client  # Kiota-generated HTTP client

# Or via the extension directly
resp = bella.get_all_secrets()
version = bella.get_secrets_version()

Authentication

Generate an API key via the CLI or the Bella WebApp:

bella api-keys create --env production --name "Flask Production"

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bella_baxter_flask-0.1.1rc80.tar.gz (3.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bella_baxter_flask-0.1.1rc80-py3-none-any.whl (3.7 kB view details)

Uploaded Python 3

File details

Details for the file bella_baxter_flask-0.1.1rc80.tar.gz.

File metadata

  • Download URL: bella_baxter_flask-0.1.1rc80.tar.gz
  • Upload date:
  • Size: 3.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for bella_baxter_flask-0.1.1rc80.tar.gz
Algorithm Hash digest
SHA256 b9d61749f4c82b56e6ce69c43540443a544eb29f5f2c3a51079289b28b092f55
MD5 d19046bdaa8ffcc1ae1c393ae9e1e2e5
BLAKE2b-256 c9192a7494700139019792a0ca69017e465833b0c01b9da82ba60b5e5df9a9f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for bella_baxter_flask-0.1.1rc80.tar.gz:

Publisher: publish.yml on Cosmic-Chimps/bella-baxter-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bella_baxter_flask-0.1.1rc80-py3-none-any.whl.

File metadata

File hashes

Hashes for bella_baxter_flask-0.1.1rc80-py3-none-any.whl
Algorithm Hash digest
SHA256 e8c6b236aac0b06313fc2b8f8ce65ca5989490e4778c44a60b2f041cb291a0d0
MD5 491f7c369c5baffd15bfca69c86e9af9
BLAKE2b-256 f75c861b7ff72a554b3bb0089e5482c808b39e95adc53600889be484f29324e0

See more details on using hashes here.

Provenance

The following attestation bundles were made for bella_baxter_flask-0.1.1rc80-py3-none-any.whl:

Publisher: publish.yml on Cosmic-Chimps/bella-baxter-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page