Operator console for the Lifub platform. Issue, revoke, and inspect metered API keys, and fulfill paid Site Audit voucher purchases.
Use the dedicated admin secret
(API_ADMIN_CONSOLE_SECRET) — not a workspace secret and not an API key. This
console can mint and revoke uncapped keys; the secret is held only in page memory until
logout or reload, never in storage or the URL, and every action re-sends it.
Hand this to the customer over a secure channel. Only the salted hash is stored — after a refresh, logout, or reload the plaintext is gone for good.
| Status | Plan | Key hash | Created | Usage | Actions | |
|---|---|---|---|---|---|---|
| Loading… | ||||||
Revocation is a soft delete — the record stays for audit. Revoke is a two-click action: the first click arms the button, the second one revokes.
After verifying a settled 5 EUR payment, enter the payment provider's immutable transaction ID and the buyer's purchase-reference UUID. The transaction ID is the idempotency key: retrying the same payment returns the same voucher instead of granting another 100 audits.
Use the provider's settled charge or transfer identifier, never an editable customer note. The console sends it only to the admin API and never stores it in browser storage.
Send this UUID to the buyer over a secure channel. It is kept only in this page's current DOM and is cleared on refresh, logout, reload, or the next fulfillment. The list below contains only its one-way hash.
| Status | Audits | Provider | Purchase reference | Transaction fingerprint | Voucher hash | Issued | Actions |
|---|---|---|---|---|---|---|---|
| Loading... | |||||||
Plaintext voucher codes are never listed. Revocation is a two-click action by voucher hash: the first click arms the button, the second one revokes.
| When | Action | Target | Actor |
|---|---|---|---|
| Loading… | |||
Every issue and revoke is audit-logged server-side
(api:adminaudit:*) with actor IP and timestamp.