How Licensing Works
Normal GenAI Smart Router release builds enforce an offline Metrum-issued signed JSON license. The deployed router verifies the license locally and does not need private signing keys or a network call to Metrum at startup.
Use this section for customer-facing install, renewal, and support workflows. It intentionally does not describe signing-key custody, signing-service internals, private deployment operations, or development bypass mechanics.
What Operators Install
Operators install one Metrum-issued runtime file:
license.json
Mount it at the configured server.license.path and keep the license state file at a durable server.license.state_path.
server:
license:
enabled: true
path: /app/config/license.json
state_path: /app/state/license-state.json
recheck_interval: 1h
Do not edit license.json. Any payload change invalidates the signature.
What The Router Exposes
When authorized, operators can inspect safe license status fields such as:
- status and reason;
- license ID;
- customer ID;
- SKU;
- key ID;
- expiry;
- grace-active flag;
- enabled feature gates and safe limit status.
The router does not expose private signing keys, provider API keys, raw router tokens, token hashes, full config files, raw prompts, raw images, raw signatures, or full license payloads through ordinary caller APIs.
Customer Journey
- Metrum issues a license for the contracted evaluation, pilot, annual deployment, renewal, replacement, private managed deployment, marketplace/private-offer term, or volume top-up.
- The customer installs the release package and mounts
license.json. - The operator validates
/readyz,/admin/license/status, and one licensed caller workflow. - The operator monitors license status through metrics, admin status, and request errors.
- Renewal, replacement, and top-up are handled by replacing
license.jsonand restarting the router or waiting for the configured recheck interval.
Metrum may provide a safe summary alongside the issued file. That summary is for support handoff and should include only scalar metadata such as license ID, customer ID, SKU, key ID, issuer, issue time, not-before time, expiry, feature names, and configured limits. It is not a substitute for the signed license.json.
For the step-by-step replacement workflow, see Renewal And Top-Up. For operational failure modes, see Troubleshooting Licensing.
Commercial Shapes
Licenses can encode feature gates, time bounds, volume limits, concurrency or operational limits, and deployment scope. Common commercial shapes include short evaluations, paid pilots, annual enterprise self-hosted licenses, private managed deployments, marketplace/private-offer licenses, and prepaid volume top-ups.
A planned portal may eventually provide download or re-download for approved evaluation, pilot, renewal, and top-up packages after payment confirmation. Until that portal is implemented and enabled, use the contact-led commercial and support path.
Support Boundaries
Share request IDs and safe status fields with support. Do not send provider keys, router tokens, token hashes, raw prompts, raw images, raw tool outputs, private host details, full production config, private signing material, or full customer-specific license payloads through ordinary support channels.
For license issuance, renewal, volume top-up, or commercial plan changes, contact contact@metrum.ai.