Admin Guide
Internal-only surface at ai.numintek.com/admin. For Danum platform operators, not tenant customers.
Who is an admin
Users with AdminUser records. Roles:
- SUPER_ADMIN — wildcard permission (all actions).
- ADMIN — most actions except deleting other admins.
- SUPPORT — read-only + impersonate.
- FINANCE — billing + payment approvals only.
- COMPLIANCE — audit log, compliance rules, data subject requests.
Editable at /admin/roles. SUPER_ADMIN role always keeps the wildcard.
Common workflows
Approve a manual payment
/admin/payments-manual→ open aSUBMITTEDrow.- Verify proof image against Danum bank statement (amount + sender + date).
- Click Approve — invoice becomes
PAID, subscription activates.
Impersonate a tenant (support)
/admin/tenants/<id>→ Issue impersonation token → reason (min 8 chars).- Copy the JWT that appears.
- Paste as
danum_sessioncookie in a browser (orAuthorization: Bearerfor API). - Session is valid 30 minutes. Every issuance is audit-logged.
Send a broadcast
/admin/broadcasts→ Compose new broadcast.- Title + body (markdown OK).
- Audience:
ALL,PLAN_TIER,INDUSTRY, orTENANT_LIST. - Channels:
IN_APP(dashboard notification) +EMAIL(via Resend). - Save → Send (idempotent, safe to retry).
Toggle a feature flag
/admin/feature-flags.- Toggle
isActivefor master on/off. defaultValuereturned when no tenant override exists.- Override per tenant via Overrides collapse.
Verify audit chain
/admin/audit → Verify chain. Runs SHA-256 chain check across all
audit rows (scoped by tenant if you set the filter). intact: false →
escalate to security lead. Do not delete or modify the flagged row.
Support hub
/admin/support is a card grid pointing to every ops surface plus an escalation
playbook (billing dispute, security incident, compliance report, outage).
Runbook
Deploy, restore, secret rotation, incident response — see
docs/RUNBOOK.md in the repo.