bext.dev
DocsLicensing
Licensing2 min read
On this page

License Setup

The open core needs no license key — every base feature is active out of the box. A key unlocks the Pro add-on for self-hosting (managed WAF, distributed Redis, team dashboard, OpenTelemetry), or carries Enterprise / OEM entitlements. If you have one, configure it as below.

Getting a key#

Buy Pro from bext.dev/pricing; Enterprise and OEM keys are issued as part of your agreement (bext.dev/partners). You'll receive a key starting with BEXT-PRO-, BEXT-ENT-, or BEXT-OEM-.

Configuration#

Add a [license] section to your bext.config.toml:

toml
[license]
key = "BEXT-PRO-eyJ0aWVy..."

Option 2: Environment variable#

bash
export BEXT_LICENSE_KEY="BEXT-PRO-eyJ0aWVy..."
bext-server run .

If both are set, the environment variable takes precedence — useful for keeping keys out of config files in CI/CD.

Option 3: .env file#

bash
# .env
BEXT_LICENSE_KEY=BEXT-PRO-eyJ0aWVy...

bext automatically loads .env on startup.

Verifying a key#

bash
bext-server license

Output:

code
bext license

  Plan:       Pro
  Org:        Acme Corp
  Expires:    2027-04-03
  Remaining:  365 days
  Servers:    5
  Add-ons:    waf-managed, redis-cluster, dashboard-team, otel

Startup behavior#

When the server starts, it validates any configured key and logs the result:

code
INFO License: Pro (Acme Corp)

The open core runs with or without a key. If a Pro add-on is configured but no key is present, the server logs an info message and keeps running:

code
INFO Managed WAF rules configured but require Pro — using the base WAF

It never refuses to start.

How keys work#

License keys are Ed25519-signed JSON payloads encoded in Base64:

code
BEXT-PRO-{base64_payload}.{base64_signature}

The payload carries your plan, org, server limit, expiry, and add-ons. Verification uses a public key embedded in the binary — no network calls are ever made.

Expiry#

  • Keys have an expiry date set at purchase
  • After expiry there is a 14-day grace period with a logged warning
  • After the grace period, the Pro add-ons turn off and the open core keeps running
  • Renewal generates a new key; just update your config
Edit this page ↗Need a hand? ↗
FIND YOUR NEXT STEP

Start with a topic, a command, or a question.