Offline-verifiable. No phone-home.
Every deployment needs a license token; the server refuses to start without one. Verification happens entirely inside your network, against a public key pinned in the build.
On this page
Free vs. commercial
nautris is free for personal, non-commercial, and evaluation use. Commercial use, including deployment inside a business or embedding in a product, service, or tool you charge for, requires a commercial license. Contact us to discuss pricing for your use case.
How verification works
Licenses are signed, offline-verifiable tokens. The issuer signs with a private key that never leaves its environment; the engine verifies with a public key pinned in the build. Nothing is looked up remotely, at startup or ever:
the private key never leaves the issuer; the engine ships only the public key
Personal tokens are deliberately short-lived (90 days) and renew free at get.nautris.com/renew; a renewal keeps the same license identity with a fresh term, so nothing else changes. The short term is what keeps revocation tractable without any phone-home.
Set NAUTRIS_LICENSE=<token> and the engine verifies it at startup, enforces any page quota and feature gates at the API layer, and reports position at GET /v1/license. Tokens carry a kid so the vendor can rotate the signing key without re-issuing outstanding licenses.
Quotas and true-up
Plans carry page quotas and feature gates that the engine enforces locally at the API layer. GET /v1/license reports your plan, quota position, and days remaining, which is all a true-up conversation ever needs; there is no usage reporting back to us, because there is no channel for it.
curl -s localhost:8000/v1/license -H "X-API-Key: dek_..." | jq
{
"licensed": true,
"plan": "personal",
"customer": "you@example.com",
"expires_at": "2026-10-15T00:00:00+00:00",
"days_left": 61,
"pages_used_this_month": 1240,
"max_pages_per_month": 10000,
"features": []
}