Built to keep your content yours
Tenant isolation, hashed credentials, scoped collaboration tokens, and payments that never expose card data — the security model behind the managed backend.
PBKDF2 password hashing
Passwords are never stored in plain text — they are hashed with PBKDF2 before storage.
Expiring sessions
The account plane uses bearer sessions that expire, separate from the data-plane API keys.
Two auth planes
Session tokens drive the console; per-account API keys drive documents, conversion, and collaboration.
Isolated tenants
Every API key is its own tenant. Documents and usage never cross account boundaries.
Plan-based quotas
Limits on documents, conversions, collaboration rooms, and keys are enforced automatically per tenant.
Scoped API keys
Rotate or revoke keys per account without touching the rest of your integration.
Room-scoped access
The collaboration layer uses short-lived, per-room tokens, so users only join the documents they are granted.
Graceful degradation
If the collaboration layer is unreachable, editing falls back to single-user with autosave rather than exposing an open channel.
Stripe-handled billing
Card details are processed by Stripe — no card data ever touches the service.
Secrets via environment
Connection strings and provider keys are supplied through environment variables, never committed to the repo.
Your data on self-host
Run the same service on your own SQL Server behind IIS so content stays inside your infrastructure.