<!DOCTYPE html> <html lang="en-US"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=Edge"> <link rel="stylesheet" href="/docs/assets/css/just-the-docs-default.css"> <link rel="stylesheet" href="/docs/assets/css/just-the-docs-head-nav.css" id="jtd-head-nav-stylesheet"> <style id="jtd-nav-activation"> .site-nav ul li a { background-image: none; } </style> <script src="/docs/assets/js/vendor/lunr.min.js"></script> <script src="/docs/assets/js/just-the-docs.js"></script> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="icon" href="/docs/favicon.ico" type="image/x-icon"> <!-- Begin Jekyll SEO tag v2.9.0 --> <title>Labs64.IO Documentation | Public reference documentation for the Labs64.IO Ecosystem: module-by-module technical detail, integration guides, and the architecture reference.</title> <meta name="generator" content="Jekyll v4.4.1" /> <meta property="og:title" content="Labs64.IO Documentation" /> <meta property="og:locale" content="en_US" /> <meta name="description" content="Public reference documentation for the Labs64.IO Ecosystem: module-by-module technical detail, integration guides, and the architecture reference." /> <meta name="twitter:description" property="og:description" content="Public reference documentation for the Labs64.IO Ecosystem: module-by-module technical detail, integration guides, and the architecture reference." /> <link rel="canonical" href="https://labs64.io/docs/assets/css/just-the-docs-head-nav.css" /> <meta property="og:url" content="https://labs64.io/docs/assets/css/just-the-docs-head-nav.css" /> <meta property="og:site_name" content="Labs64.IO Documentation" /> <meta property="og:type" content="website" /> <meta name="twitter:card" content="summary" /> <meta name="twitter:title" content="Labs64.IO Documentation" /> <script type="application/ld+json"> {"@context":"https://schema.org","@type":"WebPage","description":"Public reference documentation for the Labs64.IO Ecosystem: module-by-module technical detail, integration guides, and the architecture reference.","headline":"Labs64.IO Documentation","publisher":{"@type":"Organization","logo":{"@type":"ImageObject","url":"https://labs64.io/docs/assets/images/labs64-logo.png"}},"url":"https://labs64.io/docs/assets/css/just-the-docs-head-nav.css"}</script> <!-- End Jekyll SEO tag --> <script> /* Mermaid diagrams: click to open a fullscreen view (mirrors GitHub's mermaid rendering). Styling lives in _sass/custom/custom.scss. Runs independently of mermaid's own rendering timing: it wires the click on the stable code.language-mermaid element and only looks up the <svg> mermaid renders into it at click time. NOTE: this theme's layout collapses HTML onto very few lines, so avoid `//` line comments anywhere in this script — they would swallow the rest of the line. */ (function () { function ready(fn) { if (document.readyState !== "loading") fn(); else document.addEventListener("DOMContentLoaded", fn); } ready(function () { var diagrams = document.querySelectorAll("code.language-mermaid"); if (!diagrams.length) return; var lightbox = document.createElement("div"); lightbox.className = "mermaid-lightbox"; lightbox.innerHTML = '<button type="button" class="mermaid-lightbox-close" aria-label="Close">&times;</button>' + '<div class="mermaid-lightbox-inner"></div>'; document.body.appendChild(lightbox); var inner = lightbox.querySelector(".mermaid-lightbox-inner"); function openLightbox(svg) { var clone = svg.cloneNode(true); clone.removeAttribute("width"); clone.removeAttribute("height"); clone.style.removeProperty("max-width"); /* A bare inline <svg> with only a viewBox (no width/height) does not reliably get browser-computed intrinsic sizing the way <img> does — in testing it collapsed to a near-zero box instead. So the fit is computed by hand from the viewBox, using the same "as large as possible without overflowing either dimension" rule object-fit: contain would give, and applied as explicit pixel width/height. */ var viewBox = (svg.getAttribute("viewBox") || "").split(/\s+/); var ratio = viewBox.length === 4 ? viewBox[2] / viewBox[3] : null; if (ratio) { var maxW = window.innerWidth * 0.88; var maxH = window.innerHeight * 0.82; var w = maxW; var h = w / ratio; if (h > maxH) { h = maxH; w = h * ratio; } clone.setAttribute("width", w); clone.setAttribute("height", h); } inner.innerHTML = ""; inner.appendChild(clone); lightbox.classList.add("open"); } function closeLightbox() { lightbox.classList.remove("open"); inner.innerHTML = ""; } lightbox.addEventListener("click", function (e) { if (e.target === lightbox || e.target.closest(".mermaid-lightbox-close")) { closeLightbox(); } }); document.addEventListener("keydown", function (e) { if (e.key === "Escape") closeLightbox(); }); diagrams.forEach(function (code) { code.addEventListener("click", function () { var svg = code.querySelector("svg"); if (svg) openLightbox(svg); }); }); }); })(); </script> </head> <body> <a class="skip-to-main" href="#main-content">Skip to main content</a> <svg xmlns="http://www.w3.org/2000/svg" class="d-none"> <symbol id="svg-link" viewBox="0 0 24 24"> <title>Link</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link"> <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path> </svg> </symbol> <symbol id="svg-menu" viewBox="0 0 24 24"> <title>Menu</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-menu"> <line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line> </svg> </symbol> <symbol id="svg-arrow-right" viewBox="0 0 24 24"> <title>Expand</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevron-right"> <polyline points="9 18 15 12 9 6"></polyline> </svg> </symbol> <!-- Feather. MIT License: https://github.com/feathericons/feather/blob/master/LICENSE --> <symbol id="svg-external-link" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-external-link"> <title id="svg-external-link-title">(external link)</title> <path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line> </symbol> <symbol id="svg-doc" viewBox="0 0 24 24"> <title>Document</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file"> <path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline> </svg> </symbol> <symbol id="svg-search" viewBox="0 0 24 24"> <title>Search</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-search"> <circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line> </svg> </symbol> <!-- Bootstrap Icons. MIT License: https://github.com/twbs/icons/blob/main/LICENSE.md --> <symbol id="svg-copy" viewBox="0 0 16 16"> <title>Copy</title> <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-clipboard" viewBox="0 0 16 16"> <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/> <path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/> </svg> </symbol> <symbol id="svg-copied" viewBox="0 0 16 16"> <title>Copied</title> <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-clipboard-check-fill" viewBox="0 0 16 16"> <path d="M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3Zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3Z"/> <path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5v-1Zm6.854 7.354-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L7.5 10.793l2.646-2.647a.5.5 0 0 1 .708.708Z"/> </svg> </symbol> </svg> <header class="side-bar"> <div class="site-header"> <a href="/docs/" class="site-title lh-tight"> <div class="site-logo" role="img" aria-label="Labs64.IO Documentation"></div> </a> <button id="menu-button" class="site-button btn-reset" aria-label="Menu" aria-expanded="false"> <svg viewBox="0 0 24 24" class="icon" aria-hidden="true"><use xlink:href="#svg-menu"></use></svg> </button> </div> <nav aria-label="Main" id="site-nav" class="site-nav"> <ul class="nav-list"><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="Overview submenu" aria-expanded="false"> <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg> </button><a href="/docs/" class="nav-list-link">Overview</a><ul class="nav-list"><li class="nav-list-item"><a href="/docs/introduction/what-is-labs64-io.html" class="nav-list-link">What is Labs64.IO?</a></li><li class="nav-list-item"><a href="/docs/introduction/core-concepts.html" class="nav-list-link">Core Concepts</a></li><li class="nav-list-item"><a href="/docs/introduction/architecture.html" class="nav-list-link">Architecture Overview</a></li></ul></li><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="Get Started submenu" aria-expanded="false"> <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg> </button><a href="/docs/getting-started/" class="nav-list-link">Get Started</a><ul class="nav-list"><li class="nav-list-item"><a href="/docs/getting-started/choose-a-deployment-path.html" class="nav-list-link">Choose a Deployment Path</a></li><li class="nav-list-item"><a href="/docs/getting-started/run-one-module-locally.html" class="nav-list-link">Run One Module Locally</a></li><li class="nav-list-item"><a href="/docs/getting-started/run-the-full-ecosystem-locally.html" class="nav-list-link">Run the Full Ecosystem Locally</a></li><li class="nav-list-item"><a href="/docs/getting-started/deploy-to-kubernetes.html" class="nav-list-link">Deploy to Your Kubernetes Cluster</a></li></ul></li><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="Services & Modules submenu" aria-expanded="false"> <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg> </button><a href="/docs/services/" class="nav-list-link">Services & Modules</a><ul class="nav-list"><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="Core Platform submenu" aria-expanded="false"> <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg> </button><a href="/docs/modules/core-platform.html" class="nav-list-link">Core Platform</a><ul class="nav-list"><li class="nav-list-item"><a href="/docs/modules/auth-gateway/" class="nav-list-link">Auth Gateway</a></li><li class="nav-list-item"><a href="/docs/modules/auditflow/" class="nav-list-link">AuditFlow</a></li><li class="nav-list-item"><a href="/docs/modules/mcp-gateway/" class="nav-list-link">MCP Gateway</a></li></ul></li><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="Commerce & Billing submenu" aria-expanded="false"> <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg> </button><a href="/docs/modules/commerce-billing.html" class="nav-list-link">Commerce & Billing</a><ul class="nav-list"><li class="nav-list-item"><a href="/docs/modules/netlicensing/" class="nav-list-link">NetLicensing</a></li><li class="nav-list-item"><a href="/docs/modules/payment-gateway/" class="nav-list-link">Payment Gateway</a></li><li class="nav-list-item"><a href="/docs/modules/checkout/" class="nav-list-link">Checkout</a></li><li class="nav-list-item"><a href="/docs/modules/invoicing/" class="nav-list-link">Invoicing</a></li></ul></li><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="Extensions submenu" aria-expanded="false"> <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg> </button><a href="/docs/modules/extensions.html" class="nav-list-link">Extensions</a><ul class="nav-list"><li class="nav-list-item"><a href="/docs/modules/notifications/" class="nav-list-link">Notifications</a></li><li class="nav-list-item"><a href="/docs/modules/reporting/" class="nav-list-link">Reporting</a></li><li class="nav-list-item"><a href="/docs/modules/customer-portal/" class="nav-list-link">Customer Portal</a></li><li class="nav-list-item"><a href="/docs/modules/guidechimp/" class="nav-list-link">GuideChimp</a></li></ul></li></ul></li><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="Operate & Manage submenu" aria-expanded="false"> <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg> </button><a href="/docs/operate-manage/" class="nav-list-link">Operate & Manage</a><ul class="nav-list"><li class="nav-list-item"><a href="/docs/operate-manage/deployment-tiers.html" class="nav-list-link">Deployment Tiers</a></li><li class="nav-list-item"><a href="/docs/operate-manage/kubernetes-helm-setup.html" class="nav-list-link">Kubernetes & Helm Setup</a></li><li class="nav-list-item"><a href="/docs/operate-manage/traefik-gateway-routing.html" class="nav-list-link">Traefik Gateway Routing</a></li><li class="nav-list-item"><a href="/docs/operate-manage/databases-persistence.html" class="nav-list-link">Databases & Persistence</a></li><li class="nav-list-item"><a href="/docs/operate-manage/scaling-multi-tenancy.html" class="nav-list-link">Scaling & Multi-Tenancy</a></li><li class="nav-list-item"><a href="/docs/operate-manage/monitoring-observability.html" class="nav-list-link">Monitoring & Observability</a></li><li class="nav-list-item"><a href="/docs/operate-manage/security-compliance.html" class="nav-list-link">Security & Compliance</a></li><li class="nav-list-item"><a href="/docs/operate-manage/troubleshooting.html" class="nav-list-link">Troubleshooting</a></li></ul></li><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="Reference submenu" aria-expanded="false"> <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg> </button><a href="/docs/reference/" class="nav-list-link">Reference</a><ul class="nav-list"><li class="nav-list-item"><a href="/docs/reference/openapi.html" class="nav-list-link">API Reference (OpenAPI)</a></li><li class="nav-list-item"><a href="/docs/reference/events.html" class="nav-list-link">Event Catalogue</a></li><li class="nav-list-item"><a href="/docs/reference/configuration.html" class="nav-list-link">Configuration & Environment Variables</a></li><li class="nav-list-item"><a href="/docs/reference/docker-images.html" class="nav-list-link">Docker Images Index</a></li><li class="nav-list-item"><a href="/docs/reference/helm-values.html" class="nav-list-link">Helm Charts Reference</a></li><li class="nav-list-item"><a href="/docs/reference/glossary.html" class="nav-list-link">Glossary</a></li></ul></li><li class="nav-list-item"><a href="/docs/changelog.html" class="nav-list-link">Changelog & Release Notes</a></li><li class="nav-list-item"><button class="nav-list-expander btn-reset" aria-label="Community & Contributing submenu" aria-expanded="false"> <svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg> </button><a href="/docs/development/" class="nav-list-link">Community & Contributing</a><ul class="nav-list"><li class="nav-list-item"><a href="/docs/development/contributing.html" class="nav-list-link">Contributing</a></li><li class="nav-list-item"><a href="/docs/development/workspace-repositories.html" class="nav-list-link">Workspace and Source Repositories</a></li></ul></li></ul> </nav> <div class="d-md-block d-none site-footer"> Copyright &copy; 2010 - 2026<br><a href="https://www.labs64.com">Labs64 GmbH</a> </div> </header> <div class="main" id="top"> <div id="main-header" class="main-header"> <div class="search" role="search"> <div class="search-input-wrap"> <input type="text" id="search-input" class="search-input" tabindex="0" placeholder="Search Labs64.IO Documentation" autocomplete="off"> <label for="search-input" class="search-label"> <span class="sr-only">Search Labs64.IO Documentation</span> <svg viewBox="0 0 24 24" class="search-icon" aria-hidden="true"><use xlink:href="#svg-search"></use></svg> </label> </div> <div id="search-results" class="search-results"></div> </div> <nav aria-label="Auxiliary" class="aux-nav"> <ul class="aux-nav-list"> <li class="aux-nav-list-item"> <a href="https://labs64.io" class="site-button" > Labs64.IO </a> </li> <li class="aux-nav-list-item"> <a href="https://github.com/Labs64/labs64.io-workspace" class="site-button" > Labs64.IO GitHub </a> </li> </ul> </nav> </div> <div class="main-content-wrap"> <div id="main-content" class="main-content"> <main> <h.site-nav ul li a { background-image: linear-gradient(-90deg, rgb(92.0784313725%, 92.8705882353%, 96.0392156863%) 0%, rgba(92.0784313725%, 92.8705882353%, 96.0392156863%, 0.8) 80%, rgba(92.0784313725%, 92.8705882353%, 96.0392156863%, 0) 100%); } </main> <hr> <footer> <p class="text-small mb-0"> <a href="https://netlicensing.io">NetLicensing - Innovative License Management Solution</a> &nbsp;·&nbsp; <a href="https://www.labs64.com/guidechimp/">GuideChimp - Interactive Guided Tours</a> </p> <div class="d-flex mt-2"> <p class="text-small mb-0"> <a href="https://github.com/Labs64/labs64.io-docs/tree/master/assets/css/just-the-docs-head-nav.css" id="edit-this-page">Edit this page on GitHub.</a> </p> </div> <div class="d-md-none mt-4 fs-2"> Copyright &copy; 2010 - 2026<br><a href="https://www.labs64.com">Labs64 GmbH</a> </div> </footer> </div> </div> <div class="search-overlay"></div> </div> <script type="module"> import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@11.16.0/dist/mermaid.esm.min.mjs'; var config = {} ; mermaid.initialize(config); mermaid.run({ querySelector: '.language-mermaid', }); </script> </body> </html>
