Licensing and plans
License-free Viewer usage, commercial plans, and Portal account access.
Plan boundary
| Plan | What it provides |
|---|---|
| Free | Every available document format without a license, with retained DocViewKit branding. |
| Viewer Commercial | White-label Viewer and bounded business UI slots; no Engine API. |
| SDK | Engine API and advanced integration customization. |
| Enterprise | SDK capabilities plus contract-scoped performance customization. A format-specific build can omit unused format modules, reduce delivered assets, and optimize first-open and target-document paths. |
| Evaluation | Thirty-day full-capability technical evaluation; no general production rights. |
Portal accounts
There is no default administrator account or password. Set DOCVIEWKIT_ADMIN_EMAILS to a comma-separated list of registered email addresses, restart the service, then sign in normally. Matching accounts receive the administrator role; removing an email and restarting revokes it. All other self-registered accounts remain scoped to their own applications and requests.
- Administrators can use GET /api/admin/summary and the Administration view to see stored user profiles and counts plus all commercial requests. Password hashes, password salts, and session tokens are not returned.
- The administrator endpoint requires the same random server-side session token as the Portal plus the configured administrator role; ordinary authenticated users receive HTTP 403.
- Signed-in users can change their password in the Portal or with POST /api/auth/password by providing currentPassword, newPassword, and confirmPassword. A successful change invalidates other sessions and returns a replacement HttpOnly session cookie.
- Portal sessions are stored as SHA-256 hashes and delivered in HttpOnly, SameSite=Strict cookies. Passwords use Node.js scrypt, sign-in attempts are rate limited, and plain-text passwords are never stored or sent by email.
- The Portal can be disabled at deployment with DOCVIEWKIT_ENABLE_PREVIEW_PORTAL unset; production deployment must terminate TLS.
Realistic protection boundary
Browser-delivered JS and Wasm can be inspected or modified. Signed licenses, controlled commercial distribution, artifact signatures, customer fingerprints, contracts, and support rights deter ordinary copying and preserve provenance; they are not unbreakable DRM.