Security
BellowAI is a multi-tenant product built so that each organization's data and keys stay isolated, and so that no run leaves compute or state behind. This page describes the security posture in plain terms.
Authentication
Access to the application is protected by token-based authentication. After you sign in, the API authorizes each request with a signed JSON Web Token (JWT, HS256), whose signing key is held in a managed secrets vault rather than in application code.
Two-factor authentication
BellowAI supports TOTP two-factor authentication — the standard time-based one-time codes generated by authenticator apps — as a first-class part of the sign-in flow. Passwords are never stored in plain text; they are protected with PBKDF2 password hashing.
Per-organization key isolation
Secrets are kept in a managed key vault, and each organization's model key is stored under its own isolated secret — scoped per organization, not shared across tenants. When a worker needs a key to make a model call, it retrieves it from the vault using a scoped managed identity, so raw keys are not passed around loosely between components.
Ephemeral, per-job workers
The heavy work of a run executes on an ephemeral worker that is created per job and torn down as soon as the job finishes. There is no long-running shared worker holding state between runs: each job gets its own isolated, short-lived compute. This limits how long any data or credential is resident on compute and keeps runs isolated from one another.
Bring-your-own-key control
Because BellowAI uses a bring-your-own-key model, you retain control of your provider credentials: you add them, you can remove them, and model usage is billed to you directly by the provider. See Bring your own keys for details.