{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-apis/mgmt/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["admonition","cards","card"]},"type":"markdown"},"seo":{"title":"Management API Guide","projectTitle":"Vilna Docs","description":"Learn how workspaces, projects, team members, and API keys work together in Vilna. Resource hierarchy, key types, invitation lifecycle, and key rotation.","siteUrl":"https://docs.vilna.io","keywords":["crypto asset management","blockchain monitoring","digital asset security","cryptocurrency API","wallet tracking","blockchain analytics","enterprise crypto","real-time blockchain","CAIP-19","BIP44"],"lang":"en-US","image":"https://cdn.vilna.io/docs/previews/mgmt-api.png","meta":[{"name":"og:type","content":"website"},{"name":"og:site_name","content":"Vilna Documentation"},{"name":"og:image:width","content":"1200"},{"name":"og:image:height","content":"630"},{"name":"twitter:card","content":"summary_large_image"}],"llmstxt":{"title":"Vilna API Documentation","description":"Vilna is a blockchain monitoring and wallet management platform. It provides a single unified REST API for tracking addresses, transactions, balances, and activity across top blockchains - Bitcoin, Ethereum, Solana, TRON, TON, Cosmos, and others. The API uses CAIP-2/CAIP-19 standards for cross-chain identification, HD wallet management (BIP-32/44) for address derivation, and RFC 7807 for error responses. Authentication is via API key in the X-Api-Key header.\n","excludeFiles":["legal/**/*.md","@l10n/**/*.md"],"sections":[{"title":"Overview","description":"What Vilna is, supported blockchains, and target audience","includeFiles":["overview.md"],"excludeFiles":[]},{"title":"Getting Started","description":"Quickstart guide and core API concepts","includeFiles":["guides/quickstart.md","guides/dashboard.md","guides/core-concepts.md","guides/authentication.md"],"excludeFiles":[]},{"title":"API Reference","description":"Platform API and Management API endpoint documentation","includeFiles":["apis/platform/index.md","apis/mgmt/index.md","apis/rpc/index.md","apis/platform/api.yaml","apis/mgmt/api.yaml"],"excludeFiles":[]},{"title":"Developer Guides","description":"Integration patterns, events, notifications, SDK, and error handling","includeFiles":["guides/events.md","guides/channels.md","guides/integration-patterns.md","guides/sdk.md","guides/mcp.md","guides/errors.md","guides/simulation.md","guides/invoices.md"],"excludeFiles":[]},{"title":"Business","description":"Value proposition, use cases, and onboarding","includeFiles":["business/index.md","business/use-cases.md"],"excludeFiles":[]},{"title":"Optional","description":"Additional reference material","includeFiles":["guides/blockchain-basics.md","guides/faq.md","apis/mgmt/guide.md","guides/widget.md","guides/storage-client.md","apis/platform/caip-standards.md","apis/mgmt/authorization.md"],"excludeFiles":[]}],"hide":false},"priority":0.7,"jsonLd":{"@context":"https://schema.org","@graph":[{"@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://docs.vilna.io/"},{"@type":"ListItem","position":2,"name":"Management API","item":"https://docs.vilna.io/apis/mgmt"},{"@type":"ListItem","position":3,"name":"Guide"}]},{"@type":"TechArticle","headline":"Management API Guide","description":"Learn how workspaces, projects, team members, and API keys work together in Vilna.","url":"https://docs.vilna.io/apis/mgmt/guide","datePublished":"2026-01-15","proficiencyLevel":"Intermediate","image":"https://cdn.vilna.io/docs/previews/mgmt-api.png","author":{"@id":"https://vilna.io/#organization"},"publisher":{"@id":"https://vilna.io/#organization"}}]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"management-api-guide","__idx":0},"children":["Management API Guide"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This guide explains how workspaces, projects, team members, and API keys are organized in Vilna. For endpoint details, see the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/apis/mgmt/api"},"children":["API Reference"]},". For roles and permissions, see ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/apis/mgmt/authorization"},"children":["Authorization"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"resource-hierarchy","__idx":1},"children":["Resource hierarchy"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Everything in Vilna is organized under workspaces:"]},{"$$mdtype":"Tag","name":"Diagram","attributes":{"data-language":"mermaid","diagramType":"mermaid","diagramSource":"flowchart TB\n    W[Workspace] --> M[Members]\n    W --> I[Invitations]\n    W --> P[Projects]\n    W --> RK[RPC Keys]\n    W --> MK[Management Keys]\n    P --> AK[API Keys]\n    P --> PM[Project Members]\n","diagramHtml":"<svg id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27\" width=\"100%\" xmlns=\"http://www.w3.org/2000/svg\" class=\"flowchart\" style=\"max-width: 929.8125px;\" viewBox=\"0 0 929.8125 278\" role=\"graphics-document document\" aria-roledescription=\"flowchart-v2\"><style>#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .error-icon{fill:#552222;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .error-text{fill:#552222;stroke:#552222;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .edge-thickness-normal{stroke-width:1px;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .edge-thickness-thick{stroke-width:3.5px;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .edge-pattern-solid{stroke-dasharray:0;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .edge-thickness-invisible{stroke-width:0;fill:none;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .edge-pattern-dashed{stroke-dasharray:3;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .edge-pattern-dotted{stroke-dasharray:2;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .marker{fill:#333333;stroke:#333333;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .marker.cross{stroke:#333333;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 svg{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 p{margin:0;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .label{font-family:\"Redocly Mermaid Sans\",sans-serif;color:#333;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .cluster-label text{fill:#333;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .cluster-label span{color:#333;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .cluster-label span p{background-color:transparent;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .label text,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 span{fill:#333;color:#333;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .node rect,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .node circle,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .node ellipse,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .node polygon,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .rough-node .label text,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .node .label text,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .image-shape .label,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .icon-shape .label{text-anchor:middle;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .rough-node .label,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .node .label,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .image-shape .label,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .icon-shape .label{text-align:center;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .node.clickable{cursor:pointer;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .arrowheadPath{fill:#333333;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .edgePath .path{stroke:#333333;stroke-width:1px;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .flowchart-link{stroke:#333333;fill:none;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .cluster text{fill:#333;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .cluster span{color:#333;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 rect.text{fill:none;stroke-width:0;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .icon-shape,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .icon-shape p,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .icon-shape .label rect,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 .node .neo-node{stroke:#9370DB;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 [data-look=\"neo\"].node rect,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 [data-look=\"neo\"].cluster rect,#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 [data-look=\"neo\"].node polygon{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 [data-look=\"neo\"].node path{stroke:#9370DB;stroke-width:1px;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 [data-look=\"neo\"].node .outer-path{filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 [data-look=\"neo\"].node .neo-line path{stroke:#9370DB;filter:none;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 [data-look=\"neo\"].node circle{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 [data-look=\"neo\"].node circle .state-start{fill:#000000;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 [data-look=\"neo\"].icon-shape .icon{fill:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 [data-look=\"neo\"].icon-shape .icon-neo path{stroke:#9370DB;filter:drop-shadow(1px 2px 2px rgba(185, 185, 185, 1));}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27 :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}</style><g><marker id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-pointEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 0 L 10 5 L 0 10 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-pointStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"4.5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 5 L 10 10 L 10 0 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-pointEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"11.5\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"10.5\" markerHeight=\"14\" orient=\"auto\"><path d=\"M 0 0 L 11.5 7 L 0 14 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-pointStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"1\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11.5\" markerHeight=\"14\" orient=\"auto\"><polygon points=\"0,7 11.5,14 11.5,0\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></polygon></marker><marker id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-circleEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"11\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-circleStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-1\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-circleEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refY=\"5\" refX=\"12.25\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-circleStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-2\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-crossEnd\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"12\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-crossStart\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"-1\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-crossEnd-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"17.7\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5;\"></path></marker><marker id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-crossStart-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"-3.5\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5; stroke-dasharray: 1, 0;\"></path></marker><g class=\"root\"><g class=\"clusters\"></g><g class=\"edgePaths\"><path d=\"M365.664,45.171L316.991,52.142C268.318,59.114,170.971,73.057,122.298,83.528C73.625,94,73.625,101,73.625,104.5L73.625,108\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-L_W_M_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_W_M_0\" data-points=\"W3sieCI6MzY1LjY2NDA2MjUsInkiOjQ1LjE3MDYwNDY5MTE5ODYyfSx7IngiOjczLjYyNSwieSI6ODd9LHsieCI6NzMuNjI1LCJ5IjoxMTJ9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-pointEnd)\"></path><path d=\"M365.664,55.678L347.737,60.898C329.81,66.118,293.956,76.559,276.029,85.28C258.102,94,258.102,101,258.102,104.5L258.102,108\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-L_W_I_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_W_I_0\" data-points=\"W3sieCI6MzY1LjY2NDA2MjUsInkiOjU1LjY3NzYwNDIzNTAyNjQ2NX0seyJ4IjoyNTguMTAxNTYyNSwieSI6ODd9LHsieCI6MjU4LjEwMTU2MjUsInkiOjExMn1d\" data-look=\"classic\" marker-end=\"url(#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-pointEnd)\"></path><path d=\"M436.672,62L436.672,66.167C436.672,70.333,436.672,78.667,436.672,86.333C436.672,94,436.672,101,436.672,104.5L436.672,108\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-L_W_P_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_W_P_0\" data-points=\"W3sieCI6NDM2LjY3MTg3NSwieSI6NjJ9LHsieCI6NDM2LjY3MTg3NSwieSI6ODd9LHsieCI6NDM2LjY3MTg3NSwieSI6MTEyfV0=\" data-look=\"classic\" marker-end=\"url(#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-pointEnd)\"></path><path d=\"M507.68,56.258L524.794,61.382C541.909,66.505,576.138,76.753,593.253,85.376C610.367,94,610.367,101,610.367,104.5L610.367,108\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-L_W_RK_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_W_RK_0\" data-points=\"W3sieCI6NTA3LjY3OTY4NzUsInkiOjU2LjI1Nzk0OTg5NDMwMTI2fSx7IngiOjYxMC4zNjcxODc1LCJ5Ijo4N30seyJ4Ijo2MTAuMzY3MTg3NSwieSI6MTEyfV0=\" data-look=\"classic\" marker-end=\"url(#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-pointEnd)\"></path><path d=\"M507.68,44.556L560.246,51.63C612.813,58.704,717.945,72.852,770.512,83.426C823.078,94,823.078,101,823.078,104.5L823.078,108\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-L_W_MK_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_W_MK_0\" data-points=\"W3sieCI6NTA3LjY3OTY4NzUsInkiOjQ0LjU1NTc2MjIzMjEwNjc1fSx7IngiOjgyMy4wNzgxMjUsInkiOjg3fSx7IngiOjgyMy4wNzgxMjUsInkiOjExMn1d\" data-look=\"classic\" marker-end=\"url(#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-pointEnd)\"></path><path d=\"M383.483,166L375.275,170.167C367.067,174.333,350.651,182.667,342.443,190.333C334.234,198,334.234,205,334.234,208.5L334.234,212\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-L_P_AK_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_P_AK_0\" data-points=\"W3sieCI6MzgzLjQ4MzE3MzA3NjkyMzEsInkiOjE2Nn0seyJ4IjozMzQuMjM0Mzc1LCJ5IjoxOTF9LHsieCI6MzM0LjIzNDM3NSwieSI6MjE2fV0=\" data-look=\"classic\" marker-end=\"url(#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-pointEnd)\"></path><path d=\"M489.861,166L498.069,170.167C506.277,174.333,522.693,182.667,530.901,190.333C539.109,198,539.109,205,539.109,208.5L539.109,212\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-L_P_PM_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_P_PM_0\" data-points=\"W3sieCI6NDg5Ljg2MDU3NjkyMzA3NjksInkiOjE2Nn0seyJ4Ijo1MzkuMTA5Mzc1LCJ5IjoxOTF9LHsieCI6NTM5LjEwOTM3NSwieSI6MjE2fV0=\" data-look=\"classic\" marker-end=\"url(#diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27_flowchart-v2-pointEnd)\"></path></g><g class=\"edgeLabels\"><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_W_M_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_W_I_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_W_P_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_W_RK_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_W_MK_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_P_AK_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_P_PM_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g></g><g class=\"nodes\"><g class=\"node default\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-flowchart-W-0\" data-look=\"classic\" transform=\"translate(436.671875, 35)\"><rect class=\"basic label-container\" style=\"\" x=\"-71.0078125\" y=\"-27\" width=\"142.015625\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-41.0078125, -12)\"><rect></rect><foreignObject width=\"82.015625\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Workspace</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-flowchart-M-1\" data-look=\"classic\" transform=\"translate(73.625, 139)\"><rect class=\"basic label-container\" style=\"\" x=\"-65.625\" y=\"-27\" width=\"131.25\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-35.625, -12)\"><rect></rect><foreignObject width=\"71.25\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Members</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-flowchart-I-3\" data-look=\"classic\" transform=\"translate(258.1015625, 139)\"><rect class=\"basic label-container\" style=\"\" x=\"-68.8515625\" y=\"-27\" width=\"137.703125\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-38.8515625, -12)\"><rect></rect><foreignObject width=\"77.703125\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Invitations</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-flowchart-P-5\" data-look=\"classic\" transform=\"translate(436.671875, 139)\"><rect class=\"basic label-container\" style=\"\" x=\"-59.71875\" y=\"-27\" width=\"119.4375\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-29.71875, -12)\"><rect></rect><foreignObject width=\"59.4375\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Projects</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-flowchart-RK-7\" data-look=\"classic\" transform=\"translate(610.3671875, 139)\"><rect class=\"basic label-container\" style=\"\" x=\"-63.9765625\" y=\"-27\" width=\"127.953125\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-33.9765625, -12)\"><rect></rect><foreignObject width=\"67.953125\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>RPC Keys</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-flowchart-MK-9\" data-look=\"classic\" transform=\"translate(823.078125, 139)\"><rect class=\"basic label-container\" style=\"\" x=\"-98.734375\" y=\"-27\" width=\"197.46875\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-68.734375, -12)\"><rect></rect><foreignObject width=\"137.46875\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Management Keys</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-flowchart-AK-11\" data-look=\"classic\" transform=\"translate(334.234375, 243)\"><rect class=\"basic label-container\" style=\"\" x=\"-61.2734375\" y=\"-27\" width=\"122.546875\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-31.2734375, -12)\"><rect></rect><foreignObject width=\"62.546875\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>API Keys</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-flowchart-PM-13\" data-look=\"classic\" transform=\"translate(539.109375, 243)\"><rect class=\"basic label-container\" style=\"\" x=\"-93.6015625\" y=\"-27\" width=\"187.203125\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-63.6015625, -12)\"><rect></rect><foreignObject width=\"127.203125\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Project Members</p></span></div></foreignObject></g></g></g></g></g><defs><filter id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-drop-shadow\" height=\"130%\" width=\"130%\"><feDropShadow dx=\"4\" dy=\"4\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#000000\"></feDropShadow></filter></defs><defs><filter id=\"diagram-c648fc50dc0027f677ab597058f7fb4f1aa4e039409d6cd929d2484095fbfc27-drop-shadow-small\" height=\"150%\" width=\"150%\"><feDropShadow dx=\"2\" dy=\"2\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#000000\"></feDropShadow></filter></defs></svg>","diagramHtmlDark":"<svg id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c\" width=\"100%\" xmlns=\"http://www.w3.org/2000/svg\" class=\"flowchart\" style=\"max-width: 929.8125px;\" viewBox=\"0 0 929.8125 278\" role=\"graphics-document document\" aria-roledescription=\"flowchart-v2\"><style>#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;fill:#ccc;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .error-icon{fill:#a44141;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .error-text{fill:#ddd;stroke:#ddd;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .edge-thickness-normal{stroke-width:1px;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .edge-thickness-thick{stroke-width:3.5px;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .edge-pattern-solid{stroke-dasharray:0;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .edge-thickness-invisible{stroke-width:0;fill:none;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .edge-pattern-dashed{stroke-dasharray:3;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .edge-pattern-dotted{stroke-dasharray:2;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .marker{fill:lightgrey;stroke:lightgrey;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .marker.cross{stroke:lightgrey;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c svg{font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:16px;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c p{margin:0;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .label{font-family:\"Redocly Mermaid Sans\",sans-serif;color:#ccc;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .cluster-label text{fill:#F9FFFE;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .cluster-label span{color:#F9FFFE;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .cluster-label span p{background-color:transparent;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .label text,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c span{fill:#ccc;color:#ccc;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .node rect,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .node circle,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .node ellipse,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .node polygon,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .node path{fill:#1f2020;stroke:#ccc;stroke-width:1px;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .rough-node .label text,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .node .label text,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .image-shape .label,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .icon-shape .label{text-anchor:middle;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .rough-node .label,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .node .label,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .image-shape .label,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .icon-shape .label{text-align:center;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .node.clickable{cursor:pointer;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .root .anchor path{fill:lightgrey!important;stroke-width:0;stroke:lightgrey;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .arrowheadPath{fill:lightgrey;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .edgePath .path{stroke:lightgrey;stroke-width:1px;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .flowchart-link{stroke:lightgrey;fill:none;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .edgeLabel{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .edgeLabel p{background-color:hsl(0, 0%, 34.4117647059%);}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .edgeLabel rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .labelBkg{background-color:rgba(87.75, 87.75, 87.75, 0.5);}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .cluster rect{fill:hsl(180, 1.5873015873%, 28.3529411765%);stroke:rgba(255, 255, 255, 0.25);stroke-width:1px;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .cluster text{fill:#F9FFFE;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .cluster span{color:#F9FFFE;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:\"Redocly Mermaid Sans\",sans-serif;font-size:12px;background:hsl(20, 1.5873015873%, 12.3529411765%);border:1px solid rgba(255, 255, 255, 0.25);border-radius:2px;pointer-events:none;z-index:100;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#ccc;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c rect.text{fill:none;stroke-width:0;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .icon-shape,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .image-shape{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .icon-shape p,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .image-shape p{background-color:hsl(0, 0%, 34.4117647059%);padding:2px;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .icon-shape .label rect,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .image-shape .label rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c .node .neo-node{stroke:#ccc;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c [data-look=\"neo\"].node rect,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c [data-look=\"neo\"].cluster rect,#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c [data-look=\"neo\"].node polygon{stroke:url(#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c [data-look=\"neo\"].node path{stroke:url(#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-gradient);stroke-width:1px;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c [data-look=\"neo\"].node .outer-path{filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c [data-look=\"neo\"].node .neo-line path{stroke:#ccc;filter:none;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c [data-look=\"neo\"].node circle{stroke:url(#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c [data-look=\"neo\"].node circle .state-start{fill:#000000;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c [data-look=\"neo\"].icon-shape .icon{fill:url(#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c [data-look=\"neo\"].icon-shape .icon-neo path{stroke:url(#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c :root{--mermaid-font-family:\"Redocly Mermaid Sans\",sans-serif;}</style><g><marker id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-pointEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 0 L 10 5 L 0 10 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-pointStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"4.5\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"8\" markerHeight=\"8\" orient=\"auto\"><path d=\"M 0 5 L 10 10 L 10 0 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-pointEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"11.5\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"10.5\" markerHeight=\"14\" orient=\"auto\"><path d=\"M 0 0 L 11.5 7 L 0 14 z\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-pointStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 11.5 14\" refX=\"1\" refY=\"7\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11.5\" markerHeight=\"14\" orient=\"auto\"><polygon points=\"0,7 11.5,14 11.5,0\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></polygon></marker><marker id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-circleEnd\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"11\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-circleStart\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-1\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 1; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-circleEnd-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refY=\"5\" refX=\"12.25\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-circleStart-margin\" class=\"marker flowchart-v2\" viewBox=\"0 0 10 10\" refX=\"-2\" refY=\"5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"14\" markerHeight=\"14\" orient=\"auto\"><circle cx=\"5\" cy=\"5\" r=\"5\" class=\"arrowMarkerPath\" style=\"stroke-width: 0; stroke-dasharray: 1, 0;\"></circle></marker><marker id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-crossEnd\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"12\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-crossStart\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 11 11\" refX=\"-1\" refY=\"5.2\" markerUnits=\"userSpaceOnUse\" markerWidth=\"11\" markerHeight=\"11\" orient=\"auto\"><path d=\"M 1,1 l 9,9 M 10,1 l -9,9\" class=\"arrowMarkerPath\" style=\"stroke-width: 2; stroke-dasharray: 1, 0;\"></path></marker><marker id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-crossEnd-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"17.7\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5;\"></path></marker><marker id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-crossStart-margin\" class=\"marker cross flowchart-v2\" viewBox=\"0 0 15 15\" refX=\"-3.5\" refY=\"7.5\" markerUnits=\"userSpaceOnUse\" markerWidth=\"12\" markerHeight=\"12\" orient=\"auto\"><path d=\"M 1,1 L 14,14 M 1,14 L 14,1\" class=\"arrowMarkerPath\" style=\"stroke-width: 2.5; stroke-dasharray: 1, 0;\"></path></marker><g class=\"root\"><g class=\"clusters\"></g><g class=\"edgePaths\"><path d=\"M365.664,45.171L316.991,52.142C268.318,59.114,170.971,73.057,122.298,83.528C73.625,94,73.625,101,73.625,104.5L73.625,108\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-L_W_M_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_W_M_0\" data-points=\"W3sieCI6MzY1LjY2NDA2MjUsInkiOjQ1LjE3MDYwNDY5MTE5ODYyfSx7IngiOjczLjYyNSwieSI6ODd9LHsieCI6NzMuNjI1LCJ5IjoxMTJ9XQ==\" data-look=\"classic\" marker-end=\"url(#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-pointEnd)\"></path><path d=\"M365.664,55.678L347.737,60.898C329.81,66.118,293.956,76.559,276.029,85.28C258.102,94,258.102,101,258.102,104.5L258.102,108\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-L_W_I_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_W_I_0\" data-points=\"W3sieCI6MzY1LjY2NDA2MjUsInkiOjU1LjY3NzYwNDIzNTAyNjQ2NX0seyJ4IjoyNTguMTAxNTYyNSwieSI6ODd9LHsieCI6MjU4LjEwMTU2MjUsInkiOjExMn1d\" data-look=\"classic\" marker-end=\"url(#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-pointEnd)\"></path><path d=\"M436.672,62L436.672,66.167C436.672,70.333,436.672,78.667,436.672,86.333C436.672,94,436.672,101,436.672,104.5L436.672,108\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-L_W_P_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_W_P_0\" data-points=\"W3sieCI6NDM2LjY3MTg3NSwieSI6NjJ9LHsieCI6NDM2LjY3MTg3NSwieSI6ODd9LHsieCI6NDM2LjY3MTg3NSwieSI6MTEyfV0=\" data-look=\"classic\" marker-end=\"url(#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-pointEnd)\"></path><path d=\"M507.68,56.258L524.794,61.382C541.909,66.505,576.138,76.753,593.253,85.376C610.367,94,610.367,101,610.367,104.5L610.367,108\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-L_W_RK_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_W_RK_0\" data-points=\"W3sieCI6NTA3LjY3OTY4NzUsInkiOjU2LjI1Nzk0OTg5NDMwMTI2fSx7IngiOjYxMC4zNjcxODc1LCJ5Ijo4N30seyJ4Ijo2MTAuMzY3MTg3NSwieSI6MTEyfV0=\" data-look=\"classic\" marker-end=\"url(#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-pointEnd)\"></path><path d=\"M507.68,44.556L560.246,51.63C612.813,58.704,717.945,72.852,770.512,83.426C823.078,94,823.078,101,823.078,104.5L823.078,108\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-L_W_MK_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_W_MK_0\" data-points=\"W3sieCI6NTA3LjY3OTY4NzUsInkiOjQ0LjU1NTc2MjIzMjEwNjc1fSx7IngiOjgyMy4wNzgxMjUsInkiOjg3fSx7IngiOjgyMy4wNzgxMjUsInkiOjExMn1d\" data-look=\"classic\" marker-end=\"url(#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-pointEnd)\"></path><path d=\"M383.483,166L375.275,170.167C367.067,174.333,350.651,182.667,342.443,190.333C334.234,198,334.234,205,334.234,208.5L334.234,212\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-L_P_AK_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_P_AK_0\" data-points=\"W3sieCI6MzgzLjQ4MzE3MzA3NjkyMzEsInkiOjE2Nn0seyJ4IjozMzQuMjM0Mzc1LCJ5IjoxOTF9LHsieCI6MzM0LjIzNDM3NSwieSI6MjE2fV0=\" data-look=\"classic\" marker-end=\"url(#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-pointEnd)\"></path><path d=\"M489.861,166L498.069,170.167C506.277,174.333,522.693,182.667,530.901,190.333C539.109,198,539.109,205,539.109,208.5L539.109,212\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-L_P_PM_0\" class=\"edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link\" style=\";\" data-edge=\"true\" data-et=\"edge\" data-id=\"L_P_PM_0\" data-points=\"W3sieCI6NDg5Ljg2MDU3NjkyMzA3NjksInkiOjE2Nn0seyJ4Ijo1MzkuMTA5Mzc1LCJ5IjoxOTF9LHsieCI6NTM5LjEwOTM3NSwieSI6MjE2fV0=\" data-look=\"classic\" marker-end=\"url(#diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c_flowchart-v2-pointEnd)\"></path></g><g class=\"edgeLabels\"><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_W_M_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_W_I_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_W_P_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_W_RK_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_W_MK_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_P_AK_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g><g class=\"edgeLabel\"><g class=\"label\" data-id=\"L_P_PM_0\" transform=\"translate(0, 0)\"><foreignObject width=\"0\" height=\"0\"><div xmlns=\"http://www.w3.org/1999/xhtml\" class=\"labelBkg\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"edgeLabel\"></span></div></foreignObject></g></g></g><g class=\"nodes\"><g class=\"node default\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-flowchart-W-0\" data-look=\"classic\" transform=\"translate(436.671875, 35)\"><rect class=\"basic label-container\" style=\"\" x=\"-71.0078125\" y=\"-27\" width=\"142.015625\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-41.0078125, -12)\"><rect></rect><foreignObject width=\"82.015625\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Workspace</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-flowchart-M-1\" data-look=\"classic\" transform=\"translate(73.625, 139)\"><rect class=\"basic label-container\" style=\"\" x=\"-65.625\" y=\"-27\" width=\"131.25\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-35.625, -12)\"><rect></rect><foreignObject width=\"71.25\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Members</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-flowchart-I-3\" data-look=\"classic\" transform=\"translate(258.1015625, 139)\"><rect class=\"basic label-container\" style=\"\" x=\"-68.8515625\" y=\"-27\" width=\"137.703125\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-38.8515625, -12)\"><rect></rect><foreignObject width=\"77.703125\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Invitations</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-flowchart-P-5\" data-look=\"classic\" transform=\"translate(436.671875, 139)\"><rect class=\"basic label-container\" style=\"\" x=\"-59.71875\" y=\"-27\" width=\"119.4375\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-29.71875, -12)\"><rect></rect><foreignObject width=\"59.4375\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Projects</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-flowchart-RK-7\" data-look=\"classic\" transform=\"translate(610.3671875, 139)\"><rect class=\"basic label-container\" style=\"\" x=\"-63.9765625\" y=\"-27\" width=\"127.953125\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-33.9765625, -12)\"><rect></rect><foreignObject width=\"67.953125\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>RPC Keys</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-flowchart-MK-9\" data-look=\"classic\" transform=\"translate(823.078125, 139)\"><rect class=\"basic label-container\" style=\"\" x=\"-98.734375\" y=\"-27\" width=\"197.46875\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-68.734375, -12)\"><rect></rect><foreignObject width=\"137.46875\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Management Keys</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-flowchart-AK-11\" data-look=\"classic\" transform=\"translate(334.234375, 243)\"><rect class=\"basic label-container\" style=\"\" x=\"-61.2734375\" y=\"-27\" width=\"122.546875\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-31.2734375, -12)\"><rect></rect><foreignObject width=\"62.546875\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>API Keys</p></span></div></foreignObject></g></g><g class=\"node default\" id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-flowchart-PM-13\" data-look=\"classic\" transform=\"translate(539.109375, 243)\"><rect class=\"basic label-container\" style=\"\" x=\"-93.6015625\" y=\"-27\" width=\"187.203125\" height=\"54\"></rect><g class=\"label\" style=\"\" transform=\"translate(-63.6015625, -12)\"><rect></rect><foreignObject width=\"127.203125\" height=\"24\"><div xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;\"><span class=\"nodeLabel\"><p>Project Members</p></span></div></foreignObject></g></g></g></g></g><defs><filter id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-drop-shadow\" height=\"130%\" width=\"130%\"><feDropShadow dx=\"4\" dy=\"4\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#FFFFFF\"></feDropShadow></filter></defs><defs><filter id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-drop-shadow-small\" height=\"150%\" width=\"150%\"><feDropShadow dx=\"2\" dy=\"2\" stdDeviation=\"0\" flood-opacity=\"0.06\" flood-color=\"#FFFFFF\"></feDropShadow></filter></defs><linearGradient id=\"diagram-4dae899456e2c72adc378996cb93e71b67df8e5cdc8a614986cbdac90cc2e78c-gradient\" gradientUnits=\"objectBoundingBox\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\"><stop offset=\"0%\" stop-color=\"#cccccc\" stop-opacity=\"1\"></stop><stop offset=\"100%\" stop-color=\"hsl(180, 0%, 18.3529411765%)\" stop-opacity=\"1\"></stop></linearGradient></svg>"},"children":["flowchart TB\n    W[Workspace] --> M[Members]\n    W --> I[Invitations]\n    W --> P[Projects]\n    W --> RK[RPC Keys]\n    W --> MK[Management Keys]\n    P --> AK[API Keys]\n    P --> PM[Project Members]\n"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["A ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["workspace"]}," is the top-level unit. Each user can create up to 5 workspaces."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Projects"]}," live inside a workspace and provide data isolation - each project has its own monitored addresses, transactions, and API keys."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Members"]}," are users with access to the workspace. They are added through invitations."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["API keys"]}," are scoped to a project. ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["RPC keys"]}," and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["management keys"]}," are scoped to the workspace."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"api-key-types","__idx":2},"children":["API key types"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Vilna uses three types of API keys, each with a distinct prefix and scope:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Prefix"},"children":["Prefix"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Scope"},"children":["Scope"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What it accesses"},"children":["What it accesses"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["API key"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["vilna_api_"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Project"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Platform API - addresses, transactions, balances, events, invoices"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["RPC key"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["vilna_rpc_"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Workspace"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Blockchain RPC - JSON-RPC and gRPC node access"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Management key"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["vilna_mgt_"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Workspace"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Management API - workspaces, members, projects, keys"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Each key carries an embedded set of permissions. When you create a key, you specify which permissions it should have. The key can only perform actions within its granted permissions."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"warning","name":"Store keys securely"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The raw key value is returned only once at creation. It cannot be retrieved again. Store it in a secret manager or environment variable immediately."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"invitation-lifecycle","__idx":3},"children":["Invitation lifecycle"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["New team members join a workspace through email invitations. The flow:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["An admin creates an invitation for an email address with a role (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["admin"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["member"]},")."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The invitee receives the invitation and can accept or decline."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["On acceptance, the user becomes a workspace member with the assigned role."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Pending invitations can be revoked by any admin."]}]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Status"},"children":["Status"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Meaning"},"children":["Meaning"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pending"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Invitation sent, waiting for response"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["accepted"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["User accepted and became a member"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["declined"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["User declined the invitation"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["revoked"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["An admin cancelled the invitation"]}]}]}]}]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Admin protection"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A workspace must retain at least one admin at all times. Removing the last admin or demoting them to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["member"]}," is rejected."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"key-rotation","__idx":4},"children":["Key rotation"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To rotate an API key without downtime:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Create a new key with the same permissions."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Update your application to use the new key."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Verify the new key works in production."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Revoke the old key."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The same process applies to RPC keys and management keys."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"common-workflows","__idx":5},"children":["Common workflows"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"set-up-a-new-project","__idx":6},"children":["Set up a new project"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Create a project in your workspace (via dashboard or API)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Create an API key for the project with the permissions your application needs."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Use the API key in the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["X-Api-Key"]}," header to access the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/apis/platform/"},"children":["Platform API"]},"."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"onboard-a-team-member","__idx":7},"children":["Onboard a team member"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Send an invitation to the user's email."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Once accepted, assign the member to specific projects if their role is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["member"]}," (admins see all projects automatically)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The member can now access the workspace through the dashboard."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"automate-key-provisioning","__idx":8},"children":["Automate key provisioning"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If your platform serves multiple customers, you can automate the setup for each one:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Create a project per customer."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Generate API keys programmatically for each project."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Distribute keys securely to each customer's integration."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This is the pattern used by exchanges, payment platforms, and other platforms that manage multiple isolated environments. See the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/apis/mgmt/api"},"children":["API Reference"]}," for endpoint details."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"next-steps","__idx":9},"children":["Next steps"]},{"$$mdtype":"Tag","name":"Cards","attributes":{"columns":2,"cardMinWidth":240},"children":[{"$$mdtype":"Tag","name":"Card","attributes":{"title":"Authorization","imagePosition":"start","iconPosition":"auto","layout":"vertical","align":"start","variant":"filled","to":"/apis/mgmt/authorization"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Roles, permissions, and the full permission matrix"]}]},{"$$mdtype":"Tag","name":"Card","attributes":{"title":"API Reference","imagePosition":"start","iconPosition":"auto","layout":"vertical","align":"start","variant":"filled","to":"/apis/mgmt/api"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Complete endpoint documentation for all management operations"]}]},{"$$mdtype":"Tag","name":"Card","attributes":{"title":"Quickstart","imagePosition":"start","iconPosition":"auto","layout":"vertical","align":"start","variant":"filled","to":"/guides/quickstart"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Integrate with the Platform API using your keys"]}]}]}]},"headings":[{"value":"Management API Guide","id":"management-api-guide","depth":1},{"value":"Resource hierarchy","id":"resource-hierarchy","depth":2},{"value":"API key types","id":"api-key-types","depth":2},{"value":"Invitation lifecycle","id":"invitation-lifecycle","depth":2},{"value":"Key rotation","id":"key-rotation","depth":2},{"value":"Common workflows","id":"common-workflows","depth":2},{"value":"Set up a new project","id":"set-up-a-new-project","depth":3},{"value":"Onboard a team member","id":"onboard-a-team-member","depth":3},{"value":"Automate key provisioning","id":"automate-key-provisioning","depth":3},{"value":"Next steps","id":"next-steps","depth":2}],"frontmatter":{"seo":{"title":"Management API Guide","description":"Learn how workspaces, projects, team members, and API keys work together in Vilna. Resource hierarchy, key types, invitation lifecycle, and key rotation.","priority":0.7,"image":"https://cdn.vilna.io/docs/previews/mgmt-api.png","jsonLd":{"@context":"https://schema.org","@graph":[{"@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://docs.vilna.io/"},{"@type":"ListItem","position":2,"name":"Management API","item":"https://docs.vilna.io/apis/mgmt"},{"@type":"ListItem","position":3,"name":"Guide"}]},{"@type":"TechArticle","headline":"Management API Guide","description":"Learn how workspaces, projects, team members, and API keys work together in Vilna.","url":"https://docs.vilna.io/apis/mgmt/guide","datePublished":"2026-01-15","proficiencyLevel":"Intermediate","image":"https://cdn.vilna.io/docs/previews/mgmt-api.png","author":{"@id":"https://vilna.io/#organization"},"publisher":{"@id":"https://vilna.io/#organization"}}]}}},"lastModified":"2026-05-26T20:25:55.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/apis/mgmt/guide","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}