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.1rc50.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.1rc50-py3-none-any.whl (3.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: bella_baxter_flask-0.1.1rc50.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.1rc50.tar.gz
Algorithm Hash digest
SHA256 89223c1073b4537079c02772ad942e5777926639b208c62e5e03c7e59ebf8705
MD5 b484c9ef91fd8c0de92a8b7b340bd44a
BLAKE2b-256 8660e81b6838a8a0461b707f045f083e34e4f7f97943db8144870a2ff5a9edae

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for bella_baxter_flask-0.1.1rc50-py3-none-any.whl
Algorithm Hash digest
SHA256 f5fed29518ac28f6726a560ad5ac492f9505f677ce455c6221bf3b0599f460fd
MD5 95c92275439309f60a066eeb29e5c84f
BLAKE2b-256 e87e723506c1515191479774c9b767f7d1fab5d71c7c7594e646865fb9956512

See more details on using hashes here.

Provenance

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