DALI Help0.97 · Clinical
Admin guide · Licensing

License management

~10 minutes · requires portal admin role

Activate, move, and audit DALI clinical seats through the portal and the DALI CLI.

DALI licenses are managed through two surfaces: the portal at daliplan.com (web UI) and the DALI CLI (uv run python main.py --license-status). This page covers the admin-facing flows.

License model

Tier
Clinical · Clinical+ · Research
Seat
Per-user · bound to hardware fingerprint
Validation
Keygen.sh · 24 h offline grace
Transport
HTTPS · Ed25519 signed token
Machine move
Self-serve in portal · unlimited reassignments
Placeholder content — awaiting legal sign-off before publication

Activate a seat

  1. Sign into the portal with an admin account.
  2. Open Licenses → Assign seat.
  3. Paste the target machine's hardware fingerprint (surfaced in DALI via Help → About → Copy fingerprint).
  4. The portal issues a signed license token and stores it on the machine's next DALI launch.
Round-trip typically completes in under 500 ms

Move a seat to a new machine

Moving a seat is self-serve. In the portal:

  1. Licenses → Assigned seats → ⋯ → Revoke.
  2. On the new machine, launch DALI once to emit a fingerprint, or copy it from About.
  3. Assign the freed seat to the new fingerprint.
The old machine silently drops to grace mode on its next heartbeat

Audit access

The portal's Audit log lists every license validation, move, and administrative action. Export as CSV for compliance reporting (KVKK / HIPAA).

Retention
365 days online · 7 y cold archive
Fields
timestamp · actor · action · target · IP · user-agent
Export
CSV · JSON · Audit-ready PDF

Troubleshooting

Grace period expired · validation loop in DALI

If DALI reports "license invalid" after grace, verify:

  • Outbound HTTPS to api.daliplan.com is open (no TLS MITM that breaks the Ed25519 chain).
  • System clock is accurate (Keygen rejects > 5 min skew).
  • Hardware fingerprint has not changed (motherboard or primary NIC swap invalidates).

What next

On this page