[{"data":1,"prerenderedAt":2485},["ShallowReactive",2],{"navigation":3,"/lumen/send-data":879,"/lumen/send-data-surround":2480},[4,22,45,115,156,187,214,235,264,295,318,361,389,418,436,470,491,534,548,571,632,670,693,757,850],{"title":5,"path":6,"stem":7,"children":8,"icon":11},"Introduction","/introduction","01.introduction/1.index",[9,12,17],{"title":10,"path":6,"stem":7,"icon":11},"What is Orkestia?","i-lucide-sparkles",{"title":13,"path":14,"stem":15,"icon":16},"Core Philosophy","/introduction/core-philosophy","01.introduction/2.core-philosophy","i-lucide-shield-check",{"title":18,"path":19,"stem":20,"icon":21},"Key Benefits","/introduction/key-benefits","01.introduction/3.key-benefits","i-lucide-trophy",{"title":23,"path":24,"stem":25,"children":26,"icon":29},"Getting Started","/getting-started","02.getting-started/1.index",[27,30,35,40],{"title":28,"path":24,"stem":25,"icon":29},"Quick Start","i-lucide-rocket",{"title":31,"path":32,"stem":33,"icon":34},"Architecture Overview","/getting-started/architecture-overview","02.getting-started/2.architecture-overview","i-lucide-layout-dashboard",{"title":36,"path":37,"stem":38,"icon":39},"Concepts at a Glance","/getting-started/concepts","02.getting-started/3.concepts","i-lucide-list",{"title":41,"path":42,"stem":43,"icon":44},"Connect an AI Assistant","/getting-started/connect-an-ai-assistant","02.getting-started/4.connect-an-ai-assistant","i-lucide-bot",{"title":46,"path":47,"stem":48,"children":49,"icon":51},"Core Concepts","/concepts","03.concepts/01.index",[50,52,57,62,67,71,76,81,86,91,96,100,105,110],{"title":46,"path":47,"stem":48,"icon":51},"i-lucide-book-open",{"title":53,"path":54,"stem":55,"icon":56},"Workflows","/concepts/workflows","03.concepts/02.workflows","i-lucide-workflow",{"title":58,"path":59,"stem":60,"icon":61},"DGI — Dialog Generative Interface","/concepts/dgi","03.concepts/03.dgi","i-lucide-brain",{"title":63,"path":64,"stem":65,"icon":66},"Staff & AI Workforce Governance","/concepts/staff-governance","03.concepts/04.staff-governance","i-lucide-users-round",{"title":68,"path":69,"stem":70,"icon":44},"Agents — the execution substrate","/concepts/agents-platform","03.concepts/05.agents-platform",{"title":72,"path":73,"stem":74,"icon":75},"Runners & Execution Environments","/concepts/runners","03.concepts/06.runners","i-lucide-server-cog",{"title":77,"path":78,"stem":79,"icon":80},"Lumen Observability","/concepts/lumen","03.concepts/07.lumen","i-lucide-activity",{"title":82,"path":83,"stem":84,"icon":85},"Identity & Multi-Tenancy","/concepts/identity-multi-tenancy","03.concepts/08.identity-multi-tenancy","i-lucide-users",{"title":87,"path":88,"stem":89,"icon":90},"Billing, Pricing & Seats","/concepts/billing-and-seats","03.concepts/09.billing-and-seats","i-lucide-credit-card",{"title":92,"path":93,"stem":94,"icon":95},"App Data","/concepts/appdata","03.concepts/10.appdata","i-lucide-database",{"title":97,"path":98,"stem":99,"icon":61},"Engram","/concepts/engram","03.concepts/11.engram",{"title":101,"path":102,"stem":103,"icon":104},"DevKit","/concepts/devkit","03.concepts/12.devkit","i-lucide-terminal",{"title":106,"path":107,"stem":108,"icon":109},"App Host","/concepts/app-host","03.concepts/13.app-host","i-lucide-globe",{"title":111,"path":112,"stem":113,"icon":114},"Agent Exchange","/concepts/agent-exchange","03.concepts/14.agent-exchange","i-lucide-landmark",{"title":116,"path":117,"stem":118,"children":119,"icon":121},"Guides","/guides","04.guides/1.index",[120,122,127,132,137,142,147,151],{"title":116,"path":117,"stem":118,"icon":121},"i-lucide-compass",{"title":123,"path":124,"stem":125,"icon":126},"Building with DGI","/guides/building-with-dgi","04.guides/2.building-with-dgi","i-lucide-brain-circuit",{"title":128,"path":129,"stem":130,"icon":131},"Creating & Exposing Virtual Workflows","/guides/virtual-workflows","04.guides/4.virtual-workflows","i-lucide-blocks",{"title":133,"path":134,"stem":135,"icon":136},"Runner Management & Provisioning","/guides/runner-management","04.guides/5.runner-management","i-lucide-server",{"title":138,"path":139,"stem":140,"icon":141},"Security & Compliance","/guides/security-and-compliance","04.guides/7.security-and-compliance","i-lucide-shield",{"title":143,"path":144,"stem":145,"icon":146},"Tickets & Software Delivery","/guides/tickets-and-software-delivery","04.guides/8.tickets-and-software-delivery","i-lucide-ticket",{"title":148,"path":149,"stem":150},"Orkestia for AI-driven cloud infrastructure automation","/guides/cloud-automation-alternatives","04.guides/9.cloud-automation-alternatives",{"title":152,"path":153,"stem":154,"icon":155},"Typed decisions with TypeSafe","/guides/typed-decisions-with-typesafe","04.guides/9.typed-decisions-with-typesafe","i-lucide-git-branch",{"title":157,"path":158,"stem":159,"children":160,"icon":162},"Reference","/reference","05.reference/1.index",[161,163,168,173,177,182],{"title":157,"path":158,"stem":159,"icon":162},"i-lucide-library",{"title":164,"path":165,"stem":166,"icon":167},"Workflow Types & Registry","/reference/workflow-types-registry","05.reference/2.workflow-types-registry","i-lucide-list-tree",{"title":169,"path":170,"stem":171,"icon":172},"MCP Integration","/reference/mcp-integration","05.reference/3.mcp-integration","i-lucide-plug-zap",{"title":174,"path":175,"stem":176,"icon":104},"API & Tooling","/reference/api-tooling","05.reference/4.api-tooling",{"title":178,"path":179,"stem":180,"icon":181},"Integrations Catalog","/reference/integrations-catalog","05.reference/6.integrations-catalog","i-lucide-plug",{"title":183,"path":184,"stem":185,"icon":186},"Platform Services","/reference/platform-services","05.reference/7.platform-services","i-lucide-boxes",{"title":188,"path":189,"stem":190,"children":191,"icon":193},"Advanced Topics","/advanced","06.advanced/1.index",[192,194,199,204,209],{"title":188,"path":189,"stem":190,"icon":193},"i-lucide-flask-conical",{"title":195,"path":196,"stem":197,"icon":198},"Hybrid AI + Deterministic Execution","/advanced/hybrid-execution-model","06.advanced/2.hybrid-execution-model","i-lucide-git-merge",{"title":200,"path":201,"stem":202,"icon":203},"Drift Detection & Self-Healing","/advanced/drift-detection-self-healing","06.advanced/3.drift-detection-self-healing","i-lucide-heart-pulse",{"title":205,"path":206,"stem":207,"icon":208},"Governance & Approvals","/advanced/governance-and-approvals","06.advanced/4.governance-and-approvals","i-lucide-scale",{"title":210,"path":211,"stem":212,"icon":213},"Cost & Performance Optimization","/advanced/cost-and-performance","06.advanced/5.cost-and-performance","i-lucide-zap",{"title":215,"path":216,"stem":217,"children":218,"icon":220},"Operations","/operations","07.operations/1.index",[219,221,225,230],{"title":215,"path":216,"stem":217,"icon":220},"i-lucide-settings-2",{"title":222,"path":223,"stem":224,"icon":186},"Deployment Models","/operations/deployment-models","07.operations/2.deployment-models",{"title":226,"path":227,"stem":228,"icon":229},"Monitoring & Debugging","/operations/monitoring-and-debugging","07.operations/3.monitoring-and-debugging","i-lucide-bug",{"title":231,"path":232,"stem":233,"icon":234},"Best Practices","/operations/best-practices","07.operations/4.best-practices","i-lucide-check-check",{"title":236,"path":237,"stem":238,"children":239,"icon":241},"AWS Connections","/aws-connections","08.aws-connections/1.index",[240,242,245,250,255,260],{"title":236,"path":237,"stem":238,"icon":241},"i-simple-icons-amazonaws",{"title":23,"path":243,"stem":244,"icon":29},"/aws-connections/getting-started","08.aws-connections/2.getting-started",{"title":246,"path":247,"stem":248,"icon":249},"Setup Methods","/aws-connections/setup-methods","08.aws-connections/3.setup-methods","i-lucide-wrench",{"title":251,"path":252,"stem":253,"icon":254},"Managing Connections","/aws-connections/managing-connections","08.aws-connections/4.managing-connections","i-lucide-settings",{"title":256,"path":257,"stem":258,"icon":259},"Security Best Practices","/aws-connections/security-best-practices","08.aws-connections/5.security-best-practices","i-lucide-lock",{"title":261,"path":262,"stem":263,"icon":229},"Troubleshooting","/aws-connections/troubleshooting","08.aws-connections/6.troubleshooting",{"title":265,"path":266,"stem":267,"children":268,"icon":270},"Cloud Connections","/cloud-connections","09.cloud-connections/1.index",[269,271,276,281,286,291],{"title":265,"path":266,"stem":267,"icon":270},"i-lucide-cable",{"title":272,"path":273,"stem":274,"icon":275},"Google Cloud (GCP)","/cloud-connections/gcp","09.cloud-connections/2.gcp","i-simple-icons-googlecloud",{"title":277,"path":278,"stem":279,"icon":280},"Microsoft Azure","/cloud-connections/azure","09.cloud-connections/3.azure","i-simple-icons-microsoftazure",{"title":282,"path":283,"stem":284,"icon":285},"Magalu Cloud","/cloud-connections/magalu","09.cloud-connections/4.magalu","i-lucide-cloud",{"title":287,"path":288,"stem":289,"icon":290},"Kubernetes","/cloud-connections/kubernetes","09.cloud-connections/5.kubernetes","i-simple-icons-kubernetes",{"title":292,"path":293,"stem":294,"icon":208},"TypeSafe","/cloud-connections/typesafe","09.cloud-connections/6.typesafe",{"title":296,"path":297,"stem":298,"children":299,"icon":136},"DNS Providers","/dns-providers","10.dns-providers/1.index",[300,302,305,308,311,315],{"title":301,"path":297,"stem":298,"icon":136},"DNS Provider Connections",{"title":23,"path":303,"stem":304,"icon":29},"/dns-providers/getting-started","10.dns-providers/2.getting-started",{"title":246,"path":306,"stem":307,"icon":249},"/dns-providers/setup-methods","10.dns-providers/3.setup-methods",{"title":251,"path":309,"stem":310,"icon":254},"/dns-providers/managing-connections","10.dns-providers/4.managing-connections",{"title":312,"path":313,"stem":314,"icon":39},"Zones and Records","/dns-providers/zones-and-records","10.dns-providers/5.zones-and-records",{"title":261,"path":316,"stem":317,"icon":229},"/dns-providers/troubleshooting","10.dns-providers/6.troubleshooting",{"title":319,"path":320,"stem":321,"children":322,"icon":29},"Cloud Deploy","/cloud-deploy","11.cloud-deploy/01.index",[323,324,327,332,336,341,345,349,354,358],{"title":319,"path":320,"stem":321,"icon":29},{"title":23,"path":325,"stem":326,"icon":29},"/cloud-deploy/getting-started","11.cloud-deploy/02.getting-started",{"title":328,"path":329,"stem":330,"icon":331},"Creating a Site","/cloud-deploy/creating-a-site","11.cloud-deploy/03.creating-a-site","i-lucide-plus-circle",{"title":333,"path":334,"stem":335,"icon":34},"Site Overview and Deployments","/cloud-deploy/site-overview","11.cloud-deploy/04.site-overview",{"title":337,"path":338,"stem":339,"icon":340},"Deployment Progress and Success","/cloud-deploy/deployment-progress","11.cloud-deploy/05.deployment-progress","i-lucide-loader",{"title":342,"path":343,"stem":344,"icon":254},"Settings","/cloud-deploy/settings","11.cloud-deploy/06.settings",{"title":346,"path":347,"stem":348,"icon":109},"Custom Domains","/cloud-deploy/custom-domains","11.cloud-deploy/07.custom-domains",{"title":350,"path":351,"stem":352,"icon":353},"Resources, Releases, and Danger Zone","/cloud-deploy/resources-releases","11.cloud-deploy/08.resources-releases","i-lucide-package",{"title":355,"path":356,"stem":357,"icon":141},"Admin Dashboard","/cloud-deploy/admin-dashboard","11.cloud-deploy/09.admin-dashboard",{"title":261,"path":359,"stem":360,"icon":229},"/cloud-deploy/troubleshooting","11.cloud-deploy/10.troubleshooting",{"title":362,"path":363,"stem":364,"children":365,"icon":368},"User Onboarding","/user-onboarding","12.user-onboarding/1.index",[366,369,372,377,382,386],{"title":367,"path":363,"stem":364,"icon":368},"User Creation and Onboarding","i-lucide-user-plus",{"title":23,"path":370,"stem":371,"icon":29},"/user-onboarding/getting-started","12.user-onboarding/2.getting-started",{"title":373,"path":374,"stem":375,"icon":376},"Creating Your Organization","/user-onboarding/onboarding","12.user-onboarding/3.onboarding","i-lucide-building-2",{"title":378,"path":379,"stem":380,"icon":381},"Invitations","/user-onboarding/invitations","12.user-onboarding/4.invitations","i-lucide-mail",{"title":383,"path":384,"stem":385,"icon":254},"Managing Your Account","/user-onboarding/managing-account","12.user-onboarding/5.managing-account",{"title":261,"path":387,"stem":388,"icon":229},"/user-onboarding/troubleshooting","12.user-onboarding/6.troubleshooting",{"title":342,"path":390,"stem":391,"children":392,"icon":394},"/settings","13.settings/1.index",[393,395,400,404,409,413],{"title":342,"path":390,"stem":391,"icon":394},"i-lucide-sliders-horizontal",{"title":396,"path":397,"stem":398,"icon":399},"General Settings","/settings/general","13.settings/2.general","i-lucide-user",{"title":401,"path":402,"stem":403,"icon":85},"Members Settings","/settings/members","13.settings/3.members",{"title":405,"path":406,"stem":407,"icon":408},"Notifications Settings","/settings/notifications","13.settings/4.notifications","i-lucide-bell",{"title":410,"path":411,"stem":412,"icon":141},"Security Settings","/settings/security","13.settings/5.security",{"title":414,"path":415,"stem":416,"icon":417},"Signing Keys","/settings/keys","13.settings/6.keys","i-lucide-key-round",{"title":419,"path":420,"stem":421,"children":422,"icon":29},"App Enablement","/app-enablement","14.app-enablement/1.index",[423,424,428,432],{"title":419,"path":420,"stem":421,"icon":29},{"title":425,"path":426,"stem":427,"icon":417},"Sign in with Orkestia","/app-enablement/sign-in-with-orkestia","14.app-enablement/2.sign-in-with-orkestia",{"title":429,"path":430,"stem":431,"icon":95},"End-user data","/app-enablement/end-user-data","14.app-enablement/3.end-user-data",{"title":433,"path":434,"stem":435,"icon":131},"Compositions — use, invoke, share","/app-enablement/compositions","14.app-enablement/4.compositions",{"title":437,"path":438,"stem":439,"children":440,"icon":80},"Lumen","/lumen","15.lumen/1.index",[441,442,447,452,457,461,465],{"title":437,"path":438,"stem":439,"icon":80},{"title":443,"path":444,"stem":445,"icon":446},"Enable Lumen","/lumen/enable","15.lumen/2.enable","i-lucide-power",{"title":448,"path":449,"stem":450,"icon":451},"Send data","/lumen/send-data","15.lumen/3.send-data","i-lucide-upload",{"title":453,"path":454,"stem":455,"icon":456},"Collector","/lumen/collector","15.lumen/4.collector","i-lucide-container",{"title":458,"path":459,"stem":460,"icon":34},"Use Lumen","/lumen/observe","15.lumen/5.observe",{"title":462,"path":463,"stem":464,"icon":44},"Lumen MCP","/lumen/mcp","15.lumen/6.mcp",{"title":466,"path":467,"stem":468,"icon":469},"Query API","/lumen/query-api","15.lumen/7.query-api","i-lucide-search",{"title":471,"path":472,"stem":473,"children":474,"icon":476},"SDKs","/sdks","16.sdks/1.index",[475,477,482,487],{"title":471,"path":472,"stem":473,"icon":476},"i-lucide-code",{"title":478,"path":479,"stem":480,"icon":481},"Workflows SDK — Node / TypeScript","/sdks/workflows-nodejs","16.sdks/2.workflows-nodejs","i-lucide-file-ts",{"title":483,"path":484,"stem":485,"icon":486},"Workflows SDK — Python","/sdks/workflows-python","16.sdks/3.workflows-python","i-simple-icons-python",{"title":488,"path":489,"stem":490,"icon":417},"Auth SDK — Sign in with Orkestia","/sdks/auth","16.sdks/4.auth",{"title":92,"path":492,"stem":493,"children":494,"icon":95},"/appdata","17.appdata/1.index",[495,496,501,506,510,515,520,525,530],{"title":92,"path":492,"stem":493,"icon":95},{"title":497,"path":498,"stem":499,"icon":500},"Declare structures","/appdata/declare","17.appdata/2.declare","i-lucide-table",{"title":502,"path":503,"stem":504,"icon":505},"Records & Data API","/appdata/data-api","17.appdata/3.data-api","i-lucide-rows-3",{"title":507,"path":508,"stem":509,"icon":376},"Ownership & workspaces","/appdata/ownership","17.appdata/4.ownership",{"title":511,"path":512,"stem":513,"icon":514},"Expose App Data to end-users","/appdata/expose","17.appdata/5.expose","i-lucide-app-window",{"title":516,"path":517,"stem":518,"icon":519},"PostgREST HTTP","/appdata/postgrest","17.appdata/6.postgrest","i-lucide-unplug",{"title":521,"path":522,"stem":523,"icon":524},"Ordered append","/appdata/append","17.appdata/7.append","i-lucide-list-ordered",{"title":526,"path":527,"stem":528,"icon":529},"Databases and instances","/appdata/instances","17.appdata/8.instances","i-lucide-hard-drive",{"title":531,"path":532,"stem":533,"icon":104},"Query console and SQL","/appdata/query","17.appdata/9.query",{"title":97,"path":535,"stem":536,"children":537,"icon":61},"/engram","18.engram/1.index",[538,539,543],{"title":97,"path":535,"stem":536,"icon":61},{"title":540,"path":541,"stem":542,"icon":155},"Write & recall","/engram/write-recall","18.engram/2.write-recall",{"title":544,"path":545,"stem":546,"icon":547},"Field & feed","/engram/agent-memory","18.engram/3.agent-memory","i-lucide-radio",{"title":101,"path":549,"stem":550,"children":551,"icon":104},"/devkit","19.devkit/1.index",[552,553,558,562,567],{"title":101,"path":549,"stem":550,"icon":104},{"title":554,"path":555,"stem":556,"icon":557},"Install DevKit","/devkit/install","19.devkit/2.install","i-lucide-download",{"title":559,"path":560,"stem":561,"icon":519},"Hook redirect","/devkit/hooks","19.devkit/3.hooks",{"title":563,"path":564,"stem":565,"icon":566},"Local coding runner","/devkit/local-runner","19.devkit/4.local-runner","i-lucide-cpu",{"title":568,"path":569,"stem":570,"icon":131},"Compositions from DevKit","/devkit/compositions","19.devkit/5.compositions",{"title":572,"path":573,"stem":574,"children":575,"icon":44},"Staff & Agents","/staff-and-agents","20.staff-and-agents/01.index",[576,577,582,586,590,594,598,602,606,611,615,620,625,629],{"title":572,"path":573,"stem":574,"icon":44},{"title":578,"path":579,"stem":580,"icon":581},"Prerequisites","/staff-and-agents/prerequisites","20.staff-and-agents/02.prerequisites","i-lucide-list-checks",{"title":583,"path":584,"stem":585,"icon":368},"Hire an actor","/staff-and-agents/hire-an-actor","20.staff-and-agents/03.hire-an-actor",{"title":587,"path":588,"stem":589,"icon":34},"Console","/staff-and-agents/console","20.staff-and-agents/04.console",{"title":591,"path":592,"stem":593,"icon":11},"Configs, skills, and MCP","/staff-and-agents/configs-skills-mcp","20.staff-and-agents/05.configs-skills-mcp",{"title":595,"path":596,"stem":597,"icon":136},"Agent runner groups","/staff-and-agents/runner-groups","20.staff-and-agents/06.runner-groups",{"title":599,"path":600,"stem":601,"icon":16},"Governance","/staff-and-agents/governance","20.staff-and-agents/07.governance",{"title":603,"path":604,"stem":605,"icon":417},"Identity and tokens","/staff-and-agents/identity","20.staff-and-agents/08.identity",{"title":607,"path":608,"stem":609,"icon":610},"Memory and cost","/staff-and-agents/memory-and-cost","20.staff-and-agents/09.memory-and-cost","i-lucide-wallet",{"title":612,"path":613,"stem":614,"icon":155},"Coding agents","/staff-and-agents/coding-agents","20.staff-and-agents/10.coding-agents",{"title":616,"path":617,"stem":618,"icon":619},"Wire a repository for coding agents","/staff-and-agents/wire-a-repository","20.staff-and-agents/11.wire-a-repository","i-lucide-link",{"title":621,"path":622,"stem":623,"icon":624},"Run a ticket end to end","/staff-and-agents/run-a-ticket","20.staff-and-agents/12.run-a-ticket","i-lucide-play",{"title":626,"path":627,"stem":628,"icon":66},"Build a product team of actors","/staff-and-agents/build-a-product-team","20.staff-and-agents/13.build-a-product-team",{"title":261,"path":630,"stem":631,"icon":249},"/staff-and-agents/troubleshooting","20.staff-and-agents/14.troubleshooting",{"title":106,"path":633,"stem":634,"children":635,"icon":109},"/app-host","21.app-host/1.index",[636,637,641,644,649,653,658,662,666],{"title":106,"path":633,"stem":634,"icon":109},{"title":638,"path":639,"stem":640,"icon":514},"Your app and site","/app-host/your-app","21.app-host/2.your-app",{"title":92,"path":642,"stem":643,"icon":95},"/app-host/app-data","21.app-host/3.app-data",{"title":645,"path":646,"stem":647,"icon":648},"Website and process","/app-host/hosting","21.app-host/4.hosting","i-lucide-cloud-upload",{"title":650,"path":651,"stem":652,"icon":547},"Buzz","/app-host/buzz","21.app-host/5.buzz",{"title":654,"path":655,"stem":656,"icon":657},"Files","/app-host/files","21.app-host/6.files","i-lucide-folder",{"title":659,"path":660,"stem":661,"icon":109},"Your own domain","/app-host/your-domain","21.app-host/7.your-domain",{"title":663,"path":664,"stem":665,"icon":229},"Troubleshooting App Host","/app-host/troubleshooting","21.app-host/8.troubleshooting",{"title":667,"path":668,"stem":669,"icon":417},"Signing keys","/app-host/signing-keys","21.app-host/9.signing-keys",{"title":111,"path":671,"stem":672,"children":673,"icon":114},"/agent-exchange","22.agent-exchange/01.index",[674,675,678,682,686,690],{"title":111,"path":671,"stem":672,"icon":114},{"title":583,"path":676,"stem":677,"icon":368},"/agent-exchange/hire","22.agent-exchange/02.hire",{"title":679,"path":680,"stem":681,"icon":208},"List an actor","/agent-exchange/list","22.agent-exchange/03.list",{"title":683,"path":684,"stem":685,"icon":104},"Invoke & leases","/agent-exchange/invoke","22.agent-exchange/04.invoke",{"title":687,"path":688,"stem":689,"icon":141},"Settlement & trust","/agent-exchange/settlement","22.agent-exchange/05.settlement",{"title":53,"path":691,"stem":692,"icon":56},"/agent-exchange/workflows","22.agent-exchange/06.workflows",{"title":694,"path":695,"stem":696,"children":697,"icon":75},"Runners","/runners","23.runners/1.index",[698,700,704,709,713,717,721,726,730,734,738,741,745,749,753],{"title":699,"path":695,"stem":696,"icon":75},"Runner groups",{"title":701,"path":702,"stem":703,"icon":275},"Cloud Run","/runners/cloud-run","23.runners/10.cloud-run",{"title":705,"path":706,"stem":707,"icon":708},"DigitalOcean App Job","/runners/do-app-job","23.runners/11.do-app-job","i-simple-icons-digitalocean",{"title":710,"path":711,"stem":712,"icon":708},"DigitalOcean Droplet","/runners/do-droplet","23.runners/12.do-droplet",{"title":714,"path":715,"stem":716,"icon":285},"Magalu Cloud VM","/runners/magalu-vm","23.runners/13.magalu-vm",{"title":101,"path":718,"stem":719,"icon":720},"/runners/devkit","23.runners/14.devkit","i-lucide-laptop",{"title":722,"path":723,"stem":724,"icon":725},"Purposes & integrations","/runners/purposes","23.runners/16.purposes","i-lucide-layers",{"title":727,"path":728,"stem":729,"icon":241},"Fargate","/runners/fargate","23.runners/2.fargate",{"title":731,"path":732,"stem":733,"icon":241},"EC2 Auto Scaling","/runners/ec2-auto-scaling","23.runners/3.ec2-auto-scaling",{"title":735,"path":736,"stem":737,"icon":241},"EC2 VM","/runners/ec2-vm","23.runners/4.ec2-vm",{"title":287,"path":739,"stem":740,"icon":290},"/runners/kubernetes","23.runners/5.kubernetes",{"title":742,"path":743,"stem":744,"icon":280},"Azure Container Apps","/runners/azure-container-apps","23.runners/6.azure-container-apps",{"title":746,"path":747,"stem":748,"icon":280},"Azure VMSS","/runners/azure-vmss","23.runners/7.azure-vmss",{"title":750,"path":751,"stem":752,"icon":280},"Azure VM","/runners/azure-vm","23.runners/8.azure-vm",{"title":754,"path":755,"stem":756,"icon":275},"GCE","/runners/gce","23.runners/9.gce",{"title":758,"path":759,"stem":760,"children":761,"icon":763},"Chat","/chat","24.chat/01.index",[762,764,768,773,777,782,787,791,796,800,805,810,814,819,824,828,832,836,840,845],{"title":758,"path":759,"stem":760,"icon":763},"i-lucide-messages-square",{"title":765,"path":766,"stem":767,"icon":446},"Enable and publish","/chat/enable-and-publish","24.chat/02.enable-and-publish",{"title":769,"path":770,"stem":771,"icon":772},"Theme and customization","/chat/theme-and-customization","24.chat/03.theme-and-customization","i-lucide-palette",{"title":774,"path":775,"stem":776,"icon":85},"Members and moderation","/chat/members-and-moderation","24.chat/04.members-and-moderation",{"title":778,"path":779,"stem":780,"icon":781},"Channels","/chat/channels","24.chat/05.channels","i-lucide-hash",{"title":783,"path":784,"stem":785,"icon":786},"Using the chat","/chat/using-the-chat","24.chat/06.using-the-chat","i-lucide-message-circle",{"title":788,"path":789,"stem":790,"icon":44},"Actors in chat","/chat/actors-in-chat","24.chat/07.actors-in-chat",{"title":792,"path":793,"stem":794,"icon":795},"Internal support actor","/chat/internal-support-actor","24.chat/08.internal-support-actor","i-lucide-life-buoy",{"title":797,"path":798,"stem":799,"icon":104},"API and console","/chat/api-and-console","24.chat/09.api-and-console",{"title":801,"path":802,"stem":803,"icon":804},"Limits","/chat/limits","24.chat/10.limits","i-lucide-triangle-alert",{"title":806,"path":807,"stem":808,"icon":809},"Structured chat with DGI","/chat/structured-chat","24.chat/11.structured-chat","i-lucide-layout-list",{"title":811,"path":812,"stem":813,"icon":109},"Option A: hosted chat with DGI","/chat/option-a-hosted-chat","24.chat/12.option-a-hosted-chat",{"title":815,"path":816,"stem":817,"icon":818},"Option B: embed the chat component","/chat/option-b-embed-component","24.chat/13.option-b-embed-component","i-lucide-component",{"title":820,"path":821,"stem":822,"icon":823},"Option C: custom client (wire contract)","/chat/option-c-custom-client","24.chat/14.option-c-custom-client","i-lucide-braces",{"title":825,"path":826,"stem":827,"icon":394},"Responder configuration reference","/chat/responder-reference","24.chat/15.responder-reference",{"title":829,"path":830,"stem":831,"icon":547},"Cards, live updates and proactive posts","/chat/cards-live-and-proactive","24.chat/16.cards-live-and-proactive",{"title":833,"path":834,"stem":835,"icon":16},"Structured chat security model","/chat/structured-chat-security","24.chat/17.structured-chat-security",{"title":837,"path":838,"stem":839,"icon":181},"Option D: any app or API (dgi.chat)","/chat/option-d-chat-api","24.chat/18.option-d-chat-api",{"title":841,"path":842,"stem":843,"icon":844},"Card catalog","/chat/card-catalog","24.chat/19.card-catalog","i-lucide-layout-grid",{"title":846,"path":847,"stem":848,"icon":849},"Living Surfaces","/chat/living-surfaces","24.chat/20.living-surfaces","i-lucide-sprout",{"title":851,"path":852,"stem":853,"children":854,"icon":61},"DGI","/dgi","25.dgi/1.index",[855,857,862,866,870,874],{"title":856,"path":852,"stem":853,"icon":61},"What is DGI",{"title":858,"path":859,"stem":860,"icon":861},"How DGI works","/dgi/how-it-works","25.dgi/2.how-it-works","i-lucide-cog",{"title":863,"path":864,"stem":865,"icon":844},"Interfaces","/dgi/interfaces","25.dgi/3.interfaces",{"title":867,"path":868,"stem":869,"icon":29},"Quickstart","/dgi/quickstart","25.dgi/4.quickstart",{"title":871,"path":872,"stem":873,"icon":16},"Trust and safety","/dgi/trust-and-safety","25.dgi/5.trust-and-safety",{"title":875,"path":876,"stem":877,"icon":878},"FAQ","/dgi/faq","25.dgi/6.faq","i-lucide-circle-help",{"id":880,"title":448,"body":881,"description":2473,"extension":2474,"links":2475,"meta":2476,"navigation":2477,"path":449,"seo":2478,"stem":450,"__hash__":2479},"docs/15.lumen/3.send-data.md",{"type":882,"value":883,"toc":2459},"minimark",[884,892,906,917,922,1012,1015,1020,1154,1170,1181,1185,1195,1204,1359,1709,1718,1722,1744,1748,1754,1781,1794,1799,1846,1861,1865,1871,1882,1967,2105,2114,2118,2135,2141,2185,2217,2221,2233,2239,2249,2252,2274,2366,2413,2431,2435,2455],[885,886,887,888],"p",{},"Base: ",[889,890,891],"code",{},"https://lumen-api.orkestia.dev",[885,893,894,895,899,900,902,903,905],{},"Provision + key first — ",[896,897,898],"a",{"href":444},"Enable",". Query side: ",[896,901,466],{"href":467},". Cluster: ",[896,904,453],{"href":454},".",[885,907,908,909,913,914,905],{},"This is ",[910,911,912],"strong",{},"JSON HTTP",", not OpenTelemetry protobuf. Unknown top-level log fields → ",[910,915,916],{},"422",[918,919,921],"h2",{"id":920},"auth-write","Auth (write)",[923,924,925,938],"table",{},[926,927,928],"thead",{},[929,930,931,935],"tr",{},[932,933,934],"th",{},"Header",[932,936,937],{},"When",[939,940,941,963,983,996],"tbody",{},[929,942,943,954],{},[944,945,946,949,950,953],"td",{},[889,947,948],{},"X-Api-Key: lumk_…"," (scope ",[889,951,952],{},"ingest",")",[944,955,956,959,960],{},[889,957,958],{},"POST /api/logs/*",", ",[889,961,962],{},"/api/metrics/*",[929,964,965,978],{},[944,966,967,970,971,974,975,953],{},[889,968,969],{},"X-Api-Key: lump_…"," (or ",[889,972,973],{},"Authorization: Bearer lump_…",", or ",[889,976,977],{},"X-Lumen-Pulse-Write-Key",[944,979,980],{},[889,981,982],{},"POST /api/product/*",[929,984,985,990],{},[944,986,987],{},[889,988,989],{},"Origin",[944,991,992,993],{},"Required for Pulse keys with ",[889,994,995],{},"client_kind=browser",[929,997,998,1003],{},[944,999,1000],{},[889,1001,1002],{},"X-Lumen-Pulse",[944,1004,1005,1008,1009],{},[910,1006,1007],{},"Must not"," appear on ops ingest → ",[889,1010,1011],{},"400 PRODUCT_SIGNAL_NOT_ALLOWED",[885,1013,1014],{},"Do not send an organization UUID. Customer keys are org-bound.",[1016,1017,1019],"h3",{"id":1018},"responses-logs","Responses (logs)",[923,1021,1022,1035],{},[926,1023,1024],{},[929,1025,1026,1029,1032],{},[932,1027,1028],{},"HTTP",[932,1030,1031],{},"Body",[932,1033,1034],{},"Meaning",[939,1036,1037,1056,1071,1090,1105,1124,1139],{},[929,1038,1039,1044,1049],{},[944,1040,1041],{},[910,1042,1043],{},"201",[944,1045,1046],{},[889,1047,1048],{},"{ \"id\": \"\u003Cuuid>\", \"received_at\": \"\u003Ciso>\" }",[944,1050,1051,1052,1055],{},"Stored. ",[889,1053,1054],{},"id"," is the public log UUID",[929,1057,1058,1063,1068],{},[944,1059,1060],{},[910,1061,1062],{},"200",[944,1064,1065],{},[889,1066,1067],{},"{ \"id\": null, \"dropped\": true }",[944,1069,1070],{},"Ingest rule drop / sample miss — not stored",[929,1072,1073,1078,1087],{},[944,1074,1075],{},[910,1076,1077],{},"429",[944,1079,1080,1083,1084],{},[889,1081,1082],{},"{ \"id\": null, \"quota_exceeded\": true }"," or ",[889,1085,1086],{},"INGEST_RATE_LIMITED",[944,1088,1089],{},"Plan cap or per-minute rate",[929,1091,1092,1097,1102],{},[944,1093,1094],{},[910,1095,1096],{},"403",[944,1098,1099],{},[889,1100,1101],{},"{ \"code\": \"LUMEN_NOT_PROVISIONED\" }",[944,1103,1104],{},"Org not enabled or paused",[929,1106,1107,1112,1121],{},[944,1108,1109],{},[910,1110,1111],{},"401",[944,1113,1114,1117,1118],{},[889,1115,1116],{},"INGEST_AUTH_REQUIRED"," / ",[889,1119,1120],{},"INGEST_AUTH_INVALID",[944,1122,1123],{},"Missing or bad key",[929,1125,1126,1131,1136],{},[944,1127,1128],{},[910,1129,1130],{},"400",[944,1132,1133],{},[889,1134,1135],{},"PRODUCT_SIGNAL_NOT_ALLOWED",[944,1137,1138],{},"Pulse payload/header on ops path",[929,1140,1141,1145,1151],{},[944,1142,1143],{},[910,1144,916],{},[944,1146,1147,1148],{},"validation ",[889,1149,1150],{},"messages",[944,1152,1153],{},"Schema",[885,1155,1156,1157,959,1160,959,1163,959,1166,1169],{},"Rate-limited ingest also sets ",[889,1158,1159],{},"Retry-After",[889,1161,1162],{},"X-RateLimit-Limit",[889,1164,1165],{},"X-RateLimit-Remaining",[889,1167,1168],{},"X-RateLimit-Reset",". Limit is the plan's ingest cap / minute.",[885,1171,1172,1173,1176,1177,1180],{},"Batch: ",[889,1174,1175],{},"{ \"items\": [ … ] }",", max ",[910,1178,1179],{},"1000",". Prefer batch over single.",[918,1182,1184],{"id":1183},"logs","Logs",[1186,1187,1192],"pre",{"className":1188,"code":1190,"language":1191},[1189],"language-text","POST /api/logs/ingest\nPOST /api/logs/ingest/batch\n","text",[889,1193,1190],{"__ignoreMap":1194},"",[885,1196,1197,1198,959,1201,905],{},"Required: ",[889,1199,1200],{},"project",[889,1202,1203],{},"message",[1186,1205,1209],{"className":1206,"code":1207,"language":1208,"meta":1194,"style":1194},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","curl -X POST https://lumen-api.orkestia.dev/api/logs/ingest \\\n  -H \"X-Api-Key: lumk_REPLACE_ME\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"project\": \"billing-api\",\n    \"source\": \"api\",\n    \"level\": \"ERROR\",\n    \"message\": \"charge failed: card_declined\",\n    \"environment\": \"production\",\n    \"release\": \"v2.4.1\",\n    \"traceback\": \"…\",\n    \"context\": { \"request_id\": \"abc\" },\n    \"trace_id\": \"11111111-1111-1111-1111-111111111111\",\n    \"span_id\": \"22222222-2222-2222-2222-222222222222\",\n    \"exception_class\": \"CardDeclined\",\n    \"error_code\": \"card_declined\"\n  }'\n","bash",[889,1210,1211,1234,1252,1266,1278,1284,1290,1296,1302,1308,1314,1320,1326,1332,1338,1344,1350],{"__ignoreMap":1194},[1212,1213,1216,1220,1224,1227,1230],"span",{"class":1214,"line":1215},"line",1,[1212,1217,1219],{"class":1218},"sBMFI","curl",[1212,1221,1223],{"class":1222},"sfazB"," -X",[1212,1225,1226],{"class":1222}," POST",[1212,1228,1229],{"class":1222}," https://lumen-api.orkestia.dev/api/logs/ingest",[1212,1231,1233],{"class":1232},"sTEyZ"," \\\n",[1212,1235,1237,1240,1244,1247,1250],{"class":1214,"line":1236},2,[1212,1238,1239],{"class":1222},"  -H",[1212,1241,1243],{"class":1242},"sMK4o"," \"",[1212,1245,1246],{"class":1222},"X-Api-Key: lumk_REPLACE_ME",[1212,1248,1249],{"class":1242},"\"",[1212,1251,1233],{"class":1232},[1212,1253,1255,1257,1259,1262,1264],{"class":1214,"line":1254},3,[1212,1256,1239],{"class":1222},[1212,1258,1243],{"class":1242},[1212,1260,1261],{"class":1222},"Content-Type: application/json",[1212,1263,1249],{"class":1242},[1212,1265,1233],{"class":1232},[1212,1267,1269,1272,1275],{"class":1214,"line":1268},4,[1212,1270,1271],{"class":1222},"  -d",[1212,1273,1274],{"class":1242}," '",[1212,1276,1277],{"class":1222},"{\n",[1212,1279,1281],{"class":1214,"line":1280},5,[1212,1282,1283],{"class":1222},"    \"project\": \"billing-api\",\n",[1212,1285,1287],{"class":1214,"line":1286},6,[1212,1288,1289],{"class":1222},"    \"source\": \"api\",\n",[1212,1291,1293],{"class":1214,"line":1292},7,[1212,1294,1295],{"class":1222},"    \"level\": \"ERROR\",\n",[1212,1297,1299],{"class":1214,"line":1298},8,[1212,1300,1301],{"class":1222},"    \"message\": \"charge failed: card_declined\",\n",[1212,1303,1305],{"class":1214,"line":1304},9,[1212,1306,1307],{"class":1222},"    \"environment\": \"production\",\n",[1212,1309,1311],{"class":1214,"line":1310},10,[1212,1312,1313],{"class":1222},"    \"release\": \"v2.4.1\",\n",[1212,1315,1317],{"class":1214,"line":1316},11,[1212,1318,1319],{"class":1222},"    \"traceback\": \"…\",\n",[1212,1321,1323],{"class":1214,"line":1322},12,[1212,1324,1325],{"class":1222},"    \"context\": { \"request_id\": \"abc\" },\n",[1212,1327,1329],{"class":1214,"line":1328},13,[1212,1330,1331],{"class":1222},"    \"trace_id\": \"11111111-1111-1111-1111-111111111111\",\n",[1212,1333,1335],{"class":1214,"line":1334},14,[1212,1336,1337],{"class":1222},"    \"span_id\": \"22222222-2222-2222-2222-222222222222\",\n",[1212,1339,1341],{"class":1214,"line":1340},15,[1212,1342,1343],{"class":1222},"    \"exception_class\": \"CardDeclined\",\n",[1212,1345,1347],{"class":1214,"line":1346},16,[1212,1348,1349],{"class":1222},"    \"error_code\": \"card_declined\"\n",[1212,1351,1353,1356],{"class":1214,"line":1352},17,[1212,1354,1355],{"class":1222},"  }",[1212,1357,1358],{"class":1242},"'\n",[923,1360,1361,1377],{},[926,1362,1363],{},[929,1364,1365,1368,1371,1374],{},[932,1366,1367],{},"Field",[932,1369,1370],{},"Req",[932,1372,1373],{},"Type / default",[932,1375,1376],{},"Notes",[939,1378,1379,1398,1411,1440,1477,1494,1508,1522,1537,1563,1576,1591,1610,1640,1667,1683],{},[929,1380,1381,1385,1388,1391],{},[944,1382,1383],{},[889,1384,1200],{},[944,1386,1387],{},"yes",[944,1389,1390],{},"string",[944,1392,1393,1394,1397],{},"First accepted event creates the project. ",[889,1395,1396],{},"GET /api/projects"," lists names that have ingested",[929,1399,1400,1404,1406,1408],{},[944,1401,1402],{},[889,1403,1203],{},[944,1405,1387],{},[944,1407,1390],{},[944,1409,1410],{},"Body. Dynamic tokens are collapsed for fingerprinting",[929,1412,1413,1418,1421,1427],{},[944,1414,1415],{},[889,1416,1417],{},"source",[944,1419,1420],{},"no",[944,1422,1423,1424],{},"string, default ",[889,1425,1426],{},"\"workflow\"",[944,1428,1429,1430,1117,1433,1436,1437],{},"Collector sends ",[889,1431,1432],{},"kubernetes",[889,1434,1435],{},"kubernetes-event","; Python SDK default ",[889,1438,1439],{},"python-sdk",[929,1441,1442,1447,1449,1451],{},[944,1443,1444],{},[889,1445,1446],{},"level",[944,1448,1420],{},[944,1450,1390],{},[944,1452,1453,959,1456,959,1459,959,1462,1465,1466,1468,1469,1472,1473,1476],{},[889,1454,1455],{},"ERROR",[889,1457,1458],{},"WARNING",[889,1460,1461],{},"CRITICAL",[889,1463,1464],{},"INFO",", … If omitted, normalizer may set ",[889,1467,1455],{}," when exception evidence is present, else ",[889,1470,1471],{},"UNKNOWN",". Omitted + no exception is ",[910,1474,1475],{},"not"," treated as ERROR",[929,1478,1479,1484,1486,1492],{},[944,1480,1481],{},[889,1482,1483],{},"environment",[944,1485,1420],{},[944,1487,1488,1489],{},"default ",[889,1490,1491],{},"\"production\"",[944,1493],{},[929,1495,1496,1501,1503,1505],{},[944,1497,1498],{},[889,1499,1500],{},"release",[944,1502,1420],{},[944,1504,1390],{},[944,1506,1507],{},"Tag / commit",[929,1509,1510,1515,1517,1519],{},[944,1511,1512],{},[889,1513,1514],{},"traceback",[944,1516,1420],{},[944,1518,1390],{},[944,1520,1521],{},"Stack text — used in fingerprint",[929,1523,1524,1529,1531,1534],{},[944,1525,1526],{},[889,1527,1528],{},"context",[944,1530,1420],{},[944,1532,1533],{},"object",[944,1535,1536],{},"Arbitrary JSON. PII-oriented keys are redacted; do not put secrets here",[929,1538,1539,1550,1552,1557],{},[944,1540,1541,959,1544,959,1547],{},[889,1542,1543],{},"trace_id",[889,1545,1546],{},"span_id",[889,1548,1549],{},"parent_span_id",[944,1551,1420],{},[944,1553,1554],{},[910,1555,1556],{},"UUID",[944,1558,1559,1560],{},"Required for a real span tree. Other IDs → ",[889,1561,1562],{},"external_trace_id",[929,1564,1565,1569,1571,1573],{},[944,1566,1567],{},[889,1568,1562],{},[944,1570,1420],{},[944,1572,1390],{},[944,1574,1575],{},"Upstream non-UUID trace",[929,1577,1578,1583,1585,1588],{},[944,1579,1580],{},[889,1581,1582],{},"received_at",[944,1584,1420],{},[944,1586,1587],{},"ISO-8601",[944,1589,1590],{},"Default: server now",[929,1592,1593,1604,1606,1608],{},[944,1594,1595,959,1598,959,1601],{},[889,1596,1597],{},"service",[889,1599,1600],{},"operation",[889,1602,1603],{},"request_id",[944,1605,1420],{},[944,1607,1390],{},[944,1609],{},[929,1611,1612,1632,1634,1637],{},[944,1613,1614,959,1617,959,1620,959,1623,959,1626,959,1629],{},[889,1615,1616],{},"workflow_id",[889,1618,1619],{},"workflow_type",[889,1621,1622],{},"workflow_run_id",[889,1624,1625],{},"workflow_step",[889,1627,1628],{},"workflow_state_id",[889,1630,1631],{},"actor_id",[944,1633,1420],{},[944,1635,1636],{},"string / int",[944,1638,1639],{},"Structural attribution for Orkestia runs",[929,1641,1642,1659,1661,1664],{},[944,1643,1644,959,1647,959,1650,959,1653,959,1656],{},[889,1645,1646],{},"exception_class",[889,1648,1649],{},"exception_message",[889,1651,1652],{},"error_code",[889,1654,1655],{},"handled",[889,1657,1658],{},"retryable",[944,1660,1420],{},[944,1662,1663],{},"mixed",[944,1665,1666],{},"Improves grouping",[929,1668,1669,1676,1678,1680],{},[944,1670,1671,1117,1673],{},[889,1672,1432],{},[889,1674,1675],{},"kubernetes_*",[944,1677,1420],{},[944,1679,1663],{},[944,1681,1682],{},"Collector enrichment",[929,1684,1685,1690,1692,1703],{},[944,1686,1687],{},[889,1688,1689],{},"audience",[944,1691,1420],{},[944,1693,1694,1697,1698,1697,1700],{},[889,1695,1696],{},"configuration"," | ",[889,1699,889],{},[889,1701,1702],{},"internal",[944,1704,1705,1706],{},"Producer may only ",[910,1707,1708],{},"downgrade",[885,1710,1711,1712,1714,1715,1717],{},"A ",[910,1713,1200],{}," is not created in the UI first. It is the ",[889,1716,1200],{}," string on the first stored event.",[1016,1719,1721],{"id":1720},"optional-kafka","Optional: Kafka",[885,1723,1724,1725,1730,1731,1733,1734,1737,1738,1743],{},"Same log JSON can be produced to topic ",[910,1726,1727],{},[889,1728,1729],{},"lumen.logs",". Metrics have ",[910,1732,1420],{}," Kafka consumer — HTTP only. Alert rules with ",[889,1735,1736],{},"channel=ticket"," publish ",[910,1739,1740],{},[889,1741,1742],{},"lumen.alert.fired"," for the workflow side to open a ticket.",[918,1745,1747],{"id":1746},"fingerprint-error-groups","Fingerprint (error groups)",[885,1749,1750,1751,1753],{},"Grouping is ",[910,1752,1475],{}," a second ingest. On write:",[1755,1756,1757,1768,1774],"ol",{},[1758,1759,1760,1761,1117,1764,1767],"li",{},"Ingest rules run (",[889,1762,1763],{},"drop",[889,1765,1766],{},"sample",") — dropped lines never group.",[1758,1769,1711,1770,1773],{},[910,1771,1772],{},"64-char lowercase hex SHA-256"," is computed synchronously.",[1758,1775,1776,1777,1780],{},"A background processor attaches the log to an ",[910,1778,1779],{},"error group"," and evaluates alert rules.",[885,1782,1783,1786,1787,959,1789,959,1791,1793],{},[910,1784,1785],{},"Levels that group"," (default): ",[889,1788,1455],{},[889,1790,1458],{},[889,1792,1461],{},". Other levels are stored but skipped for groups.",[885,1795,1796],{},[910,1797,1798],{},"Hash, in order:",[1755,1800,1801,1811],{},[1758,1802,1803,1804,1807,1808,905],{},"Matching ",[910,1805,1806],{},"fingerprint rule"," → ",[889,1809,1810],{},"sha256(fingerprint_key)",[1758,1812,1813,1814,1817,1818,1821,1822,1824,1825],{},"Else extract ",[889,1815,1816],{},"error_type"," (structured or traceback) and ",[889,1819,1820],{},"location"," (last non-library frame, line stripped); normalize ",[889,1823,1203],{}," (UUIDs, timestamps, volatile headers, long ints, URLs collapsed).\n",[1826,1827,1828,1834,1840],"ul",{},[1758,1829,1830,1831],{},"traceback + error_type → ",[889,1832,1833],{},"sha256(error_type|message_norm)",[1758,1835,1836,1837],{},"traceback + location → ",[889,1838,1839],{},"sha256(location|message_norm)",[1758,1841,1842,1843],{},"else (weak) → ",[889,1844,1845],{},"sha256(project|level|message_norm)",[885,1847,1848,1849,1852,1853,1856,1857,1860],{},"A new log is ",[910,1850,1851],{},"searchable immediately",". The group (and any alert) appears after the processor. Severity is derived automatically unless you ",[889,1854,1855],{},"PATCH"," it (",[889,1858,1859],{},"severity_source=manual",").",[918,1862,1864],{"id":1863},"metrics","Metrics",[1186,1866,1869],{"className":1867,"code":1868,"language":1191},[1189],"POST /api/metrics/ingest\nPOST /api/metrics/ingest/batch\n",[889,1870,1868],{"__ignoreMap":1194},[885,1872,1197,1873,959,1876,959,1878,1881],{},[889,1874,1875],{},"metric_name",[889,1877,1200],{},[889,1879,1880],{},"value"," (number).",[1186,1883,1885],{"className":1206,"code":1884,"language":1208,"meta":1194,"style":1194},"curl -X POST https://lumen-api.orkestia.dev/api/metrics/ingest \\\n  -H \"X-Api-Key: lumk_REPLACE_ME\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"metric_name\": \"checkout.latency_ms\",\n    \"project\": \"billing-api\",\n    \"service_name\": \"checkout\",\n    \"value\": 187.4,\n    \"metric_type\": \"gauge\",\n    \"attrs\": { \"route\": \"/charge\" }\n  }'\n",[889,1886,1887,1900,1912,1924,1932,1937,1941,1946,1951,1956,1961],{"__ignoreMap":1194},[1212,1888,1889,1891,1893,1895,1898],{"class":1214,"line":1215},[1212,1890,1219],{"class":1218},[1212,1892,1223],{"class":1222},[1212,1894,1226],{"class":1222},[1212,1896,1897],{"class":1222}," https://lumen-api.orkestia.dev/api/metrics/ingest",[1212,1899,1233],{"class":1232},[1212,1901,1902,1904,1906,1908,1910],{"class":1214,"line":1236},[1212,1903,1239],{"class":1222},[1212,1905,1243],{"class":1242},[1212,1907,1246],{"class":1222},[1212,1909,1249],{"class":1242},[1212,1911,1233],{"class":1232},[1212,1913,1914,1916,1918,1920,1922],{"class":1214,"line":1254},[1212,1915,1239],{"class":1222},[1212,1917,1243],{"class":1242},[1212,1919,1261],{"class":1222},[1212,1921,1249],{"class":1242},[1212,1923,1233],{"class":1232},[1212,1925,1926,1928,1930],{"class":1214,"line":1268},[1212,1927,1271],{"class":1222},[1212,1929,1274],{"class":1242},[1212,1931,1277],{"class":1222},[1212,1933,1934],{"class":1214,"line":1280},[1212,1935,1936],{"class":1222},"    \"metric_name\": \"checkout.latency_ms\",\n",[1212,1938,1939],{"class":1214,"line":1286},[1212,1940,1283],{"class":1222},[1212,1942,1943],{"class":1214,"line":1292},[1212,1944,1945],{"class":1222},"    \"service_name\": \"checkout\",\n",[1212,1947,1948],{"class":1214,"line":1298},[1212,1949,1950],{"class":1222},"    \"value\": 187.4,\n",[1212,1952,1953],{"class":1214,"line":1304},[1212,1954,1955],{"class":1222},"    \"metric_type\": \"gauge\",\n",[1212,1957,1958],{"class":1214,"line":1310},[1212,1959,1960],{"class":1222},"    \"attrs\": { \"route\": \"/charge\" }\n",[1212,1962,1963,1965],{"class":1214,"line":1316},[1212,1964,1355],{"class":1222},[1212,1966,1358],{"class":1242},[923,1968,1969,1979],{},[926,1970,1971],{},[929,1972,1973,1975,1977],{},[932,1974,1367],{},[932,1976,1370],{},[932,1978,1376],{},[939,1980,1981,1991,2001,2012,2026,2038,2052,2077,2092],{},[929,1982,1983,1987,1989],{},[944,1984,1985],{},[889,1986,1875],{},[944,1988,1387],{},[944,1990],{},[929,1992,1993,1997,1999],{},[944,1994,1995],{},[889,1996,1200],{},[944,1998,1387],{},[944,2000],{},[929,2002,2003,2007,2009],{},[944,2004,2005],{},[889,2006,1880],{},[944,2008,1387],{},[944,2010,2011],{},"float",[929,2013,2014,2019,2021],{},[944,2015,2016],{},[889,2017,2018],{},"service_name",[944,2020,1420],{},[944,2022,1488,2023],{},[889,2024,2025],{},"\"\"",[929,2027,2028,2033,2035],{},[944,2029,2030],{},[889,2031,2032],{},"timestamp",[944,2034,1420],{},[944,2036,2037],{},"ISO-8601, default now",[929,2039,2040,2045,2047],{},[944,2041,2042],{},[889,2043,2044],{},"metric_type",[944,2046,1420],{},[944,2048,1488,2049],{},[889,2050,2051],{},"gauge",[929,2053,2054,2062,2064],{},[944,2055,2056,959,2059],{},[889,2057,2058],{},"resource_attrs",[889,2060,2061],{},"attrs",[944,2063,1420],{},[944,2065,2066,2067,1117,2070,2073,2074,953],{},"Dimensions (",[889,2068,2069],{},"attrs.key",[889,2071,2072],{},"resource_attrs.key"," in query ",[889,2075,2076],{},"filter",[929,2078,2079,2087,2089],{},[944,2080,2081,959,2084],{},[889,2082,2083],{},"count",[889,2085,2086],{},"sum_value",[944,2088,1420],{},[944,2090,2091],{},"Histogram-style points",[929,2093,2094,2100,2102],{},[944,2095,2096,959,2098],{},[889,2097,1543],{},[889,2099,1546],{},[944,2101,1420],{},[944,2103,2104],{},"UUIDs",[885,2106,2107,2108,2110,2111,905],{},"Batch ",[889,2109,1043],{},": ",[889,2112,2113],{},"{ \"inserted\": N, \"items\": [ { \"id\": \"\u003Cuuid>\" }, … ] }",[918,2115,2117],{"id":2116},"pulse","Pulse",[885,2119,2120,2121,2123,2124,2127,2128,2130,2131,2134],{},"Separate path. Do ",[910,2122,1475],{}," POST product events to ",[889,2125,2126],{},"/api/logs/ingest",". Do ",[910,2129,1475],{}," put ",[889,2132,2133],{},"lumk_"," in a browser.",[1186,2136,2139],{"className":2137,"code":2138,"language":1191},[1189],"POST /api/product/ingest\nPOST /api/product/ingest/batch     { \"events\": [ … ] }  or  { \"items\": [ … ] }\n",[889,2140,2138],{"__ignoreMap":1194},[885,2142,1197,2143,959,2146,2148,2149,2152,2153,2156,2157,959,2160,959,2163,959,2166,959,2169,959,2172,959,2175,2177,2178,2181,2182,905],{},[889,2144,2145],{},"event_name",[889,2147,1200],{},". Optional: ",[889,2150,2151],{},"signal_kind"," (must be ",[889,2154,2155],{},"\"product\"","), ",[889,2158,2159],{},"event_id",[889,2161,2162],{},"occurred_at",[889,2164,2165],{},"anonymous_id",[889,2167,2168],{},"user_id",[889,2170,2171],{},"session_id",[889,2173,2174],{},"properties",[889,2176,1528],{},". ",[889,2179,2180],{},"organization_uuid"," in the body is ",[910,2183,2184],{},"ignored",[885,2186,2187,2188,2191,2192,1117,2195,2198,2199,959,2202,959,2205,959,2208,959,2211,959,2214,905],{},"Caps (events / min · / month): Free 1,200 / 1M; Pro 10,000 / 25M; Enterprise 60,000 / 250M. Browser keys: batch max ",[910,2189,2190],{},"50",", plus ",[889,2193,2194],{},"allowed_origins",[889,2196,2197],{},"allowed_projects",". Codes include ",[889,2200,2201],{},"PULSE_NOT_PROVISIONED",[889,2203,2204],{},"PULSE_ORIGIN_FORBIDDEN",[889,2206,2207],{},"PULSE_PROJECT_FORBIDDEN",[889,2209,2210],{},"PULSE_PII_PROPERTY_FORBIDDEN",[889,2212,2213],{},"PULSE_RATE_LIMITED",[889,2215,2216],{},"413 PULSE_BATCH_TOO_LARGE",[918,2218,2220],{"id":2219},"traces-registration","Traces (registration)",[885,2222,2223,2224,1117,2226,2228,2229,2232],{},"Logs correlate if they carry UUID ",[889,2225,1543],{},[889,2227,1546],{},". You can also ",[910,2230,2231],{},"open"," a trace with an org session (not an ingest key):",[1186,2234,2237],{"className":2235,"code":2236,"language":1191},[1189],"POST /api/traces                    { \"root_project\": \"billing-api\", \"trace_id\"?: uuid }\nPOST /api/traces/{trace_id}/spans   { \"project\", \"operation_name\", \"span_id\"?, \"parent_span_id\"?, \"status\"?: \"ok\" }\nPATCH /api/traces/{trace_id}        close: status, ended_at\n",[889,2238,2236],{"__ignoreMap":1194},[885,2240,2241,2244,2245,2248],{},[889,2242,2243],{},"GET /api/traces/{trace_id}"," merges spans, nested logs, and referenced error groups into ",[889,2246,2247],{},"timeline",". Without UUIDs you still get error groups; you do not get a span tree.",[918,2250,2251],{"id":1439},"Python SDK",[1186,2253,2255],{"className":1206,"code":2254,"language":1208,"meta":1194,"style":1194},"pip install orkestia-lumen-sdk\n# pip install \"orkestia-lumen-sdk[flask]\"   # or [fastapi]\n",[889,2256,2257,2268],{"__ignoreMap":1194},[1212,2258,2259,2262,2265],{"class":1214,"line":1215},[1212,2260,2261],{"class":1218},"pip",[1212,2263,2264],{"class":1222}," install",[1212,2266,2267],{"class":1222}," orkestia-lumen-sdk\n",[1212,2269,2270],{"class":1214,"line":1236},[1212,2271,2273],{"class":2272},"sHwdD","# pip install \"orkestia-lumen-sdk[flask]\"   # or [fastapi]\n",[1186,2275,2279],{"className":2276,"code":2277,"language":2278,"meta":1194,"style":1194},"language-python shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import orkestia_lumen_sdk as lumen\n\nlumen.init(\n    base_url=\"https://lumen-api.orkestia.dev\",\n    api_key=\"lumk_…\",\n    project=\"billing-api\",\n    source=\"python-sdk\",\n    environment=\"production\",\n    release=\"v2.4.1\",\n    delivery_mode=\"background\",  # or \"sync\"\n)\n\nlumen.capture_exception(exc, context={\"job_id\": \"job_123\"})\nlumen.capture_message(\"ready\", level=\"INFO\")\nlumen.set_tag(\"region\", \"us-east-1\")\nlumen.set_trace_context(trace_id=\"…\", span_id=\"…\")\nlumen.flush()\n","python",[889,2280,2281,2286,2292,2297,2302,2307,2312,2317,2322,2327,2332,2337,2341,2346,2351,2356,2361],{"__ignoreMap":1194},[1212,2282,2283],{"class":1214,"line":1215},[1212,2284,2285],{},"import orkestia_lumen_sdk as lumen\n",[1212,2287,2288],{"class":1214,"line":1236},[1212,2289,2291],{"emptyLinePlaceholder":2290},true,"\n",[1212,2293,2294],{"class":1214,"line":1254},[1212,2295,2296],{},"lumen.init(\n",[1212,2298,2299],{"class":1214,"line":1268},[1212,2300,2301],{},"    base_url=\"https://lumen-api.orkestia.dev\",\n",[1212,2303,2304],{"class":1214,"line":1280},[1212,2305,2306],{},"    api_key=\"lumk_…\",\n",[1212,2308,2309],{"class":1214,"line":1286},[1212,2310,2311],{},"    project=\"billing-api\",\n",[1212,2313,2314],{"class":1214,"line":1292},[1212,2315,2316],{},"    source=\"python-sdk\",\n",[1212,2318,2319],{"class":1214,"line":1298},[1212,2320,2321],{},"    environment=\"production\",\n",[1212,2323,2324],{"class":1214,"line":1304},[1212,2325,2326],{},"    release=\"v2.4.1\",\n",[1212,2328,2329],{"class":1214,"line":1310},[1212,2330,2331],{},"    delivery_mode=\"background\",  # or \"sync\"\n",[1212,2333,2334],{"class":1214,"line":1316},[1212,2335,2336],{},")\n",[1212,2338,2339],{"class":1214,"line":1322},[1212,2340,2291],{"emptyLinePlaceholder":2290},[1212,2342,2343],{"class":1214,"line":1328},[1212,2344,2345],{},"lumen.capture_exception(exc, context={\"job_id\": \"job_123\"})\n",[1212,2347,2348],{"class":1214,"line":1334},[1212,2349,2350],{},"lumen.capture_message(\"ready\", level=\"INFO\")\n",[1212,2352,2353],{"class":1214,"line":1340},[1212,2354,2355],{},"lumen.set_tag(\"region\", \"us-east-1\")\n",[1212,2357,2358],{"class":1214,"line":1346},[1212,2359,2360],{},"lumen.set_trace_context(trace_id=\"…\", span_id=\"…\")\n",[1212,2362,2363],{"class":1214,"line":1352},[1212,2364,2365],{},"lumen.flush()\n",[885,2367,2368,2371,2372,959,2375,959,2378,2381,2382,2385,2386,2389,2390,1117,2393,2177,2396,2399,2400,959,2403,959,2406,959,2409,2412],{},[889,2369,2370],{},"init"," also reads ",[889,2373,2374],{},"LUMEN_URL",[889,2376,2377],{},"LUMEN_API_KEY",[889,2379,2380],{},"LUMEN_PROJECT",". Delivery is ",[889,2383,2384],{},"POST /api/logs/ingest/batch",". Client redacts obvious secrets and truncates message/traceback. ",[889,2387,2388],{},"capture_exception"," fills ",[889,2391,2392],{},"exception_*",[889,2394,2395],{},"root_*",[889,2397,2398],{},"CaptureResult"," is bool-compatible (",[889,2401,2402],{},"delivered",[889,2404,2405],{},"dropped",[889,2407,2408],{},"status_code",[889,2410,2411],{},"server_id","). Retries: 408, 429, 500, 502, 503, 504.",[885,2414,2415,2416,2419,2420,2423,2424,1117,2427,2430],{},"Also: ",[889,2417,2418],{},"LumenLoggingHandler",", Flask / FastAPI / Kafka integrations. Workflow ",[910,2421,2422],{},"control-plane"," calls stay on the ",[896,2425,2426],{"href":479},"Node",[896,2428,2429],{"href":484},"Python"," workflow SDKs — different host and token.",[918,2432,2434],{"id":2433},"next","Next",[2436,2437,2438,2444,2449],"card-group",{},[2439,2440,2441],"card",{"icon":469,"title":466,"to":467},[885,2442,2443],{},"Filters, pagination, rules JSON.",[2439,2445,2446],{"icon":456,"title":453,"to":454},[885,2447,2448],{},"How cluster lines map onto this schema.",[2439,2450,2452],{"icon":44,"title":2451,"to":463},"MCP",[885,2453,2454],{},"Same reads and triage as tools.",[2456,2457,2458],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}",{"title":1194,"searchDepth":1215,"depth":1236,"links":2460},[2461,2464,2467,2468,2469,2470,2471,2472],{"id":920,"depth":1236,"text":921,"children":2462},[2463],{"id":1018,"depth":1254,"text":1019},{"id":1183,"depth":1236,"text":1184,"children":2465},[2466],{"id":1720,"depth":1254,"text":1721},{"id":1746,"depth":1236,"text":1747},{"id":1863,"depth":1236,"text":1864},{"id":2116,"depth":1236,"text":2117},{"id":2219,"depth":1236,"text":2220},{"id":1439,"depth":1236,"text":2251},{"id":2433,"depth":1236,"text":2434},"Ingest contract — log/metric/Pulse JSON, batch semantics, fingerprint algorithm, status codes, Python SDK, Kafka lumen.logs","md",null,{},{"icon":451},{"title":448,"description":2473},"om-SM1p3Ew5Ta-w6UNeueppCRy7xcGCtVRKqM9sf4z0",[2481,2483],{"title":443,"path":444,"stem":445,"description":2482,"icon":446,"children":-1},"Provision the org, plan caps, 403/429 codes, mint lumk_/lump_, first POST /api/logs/ingest",{"title":453,"path":454,"stem":455,"description":2484,"icon":456,"children":-1},"Install the Kubernetes collector so pod logs, events, and cluster metrics land in your Lumen organization",1790354052762]