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.1rc25.tar.gz (3.3 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.1rc25-py3-none-any.whl (3.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for bella_baxter_flask-0.1.1rc25.tar.gz
Algorithm Hash digest
SHA256 dfdfd0707ec95f0faf8041375f1e8534ffcdbc9a7a115a8a859959776306cec1
MD5 8e55a177cf12a9e41d30f80262f37f2e
BLAKE2b-256 53110735128bf51c5d8eba0ef9344dc8b7a59722e2fb156db615f125af803770

See more details on using hashes here.

Provenance

The following attestation bundles were made for bella_baxter_flask-0.1.1rc25.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.1rc25-py3-none-any.whl.

File metadata

File hashes

Hashes for bella_baxter_flask-0.1.1rc25-py3-none-any.whl
Algorithm Hash digest
SHA256 3a2a7dba7179369c6b4589af6d2df033eae7e1298536572d5e7fd213e597d3ad
MD5 4417740ea28c30ba567935cb5ab00a09
BLAKE2b-256 a89e4b89dbfea5071fd75f2bf15aad24ac053c29a0999b67f46c3c698b91ce0f

See more details on using hashes here.

Provenance

The following attestation bundles were made for bella_baxter_flask-0.1.1rc25-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