[{"data":1,"prerenderedAt":3426},["ShallowReactive",2],{"navigation_docs":3,"-docs-guides-operate-debug-a-failed-request":2413},[4,82,446,500,743,2131],{"title":5,"path":6,"stem":7,"children":8},"Getting Started","\u002Fdocs\u002Fgetting-started","docs\u002Fgetting-started\u002Findex",[9,10,17,23,30,37,44,51,57,63,69,75],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13,"children":14,"icon":16},"Apps and Sites","\u002Fdocs\u002Fgetting-started\u002Fapps-and-sites","docs\u002Fgetting-started\u002Fapps-and-sites\u002Findex",[15],{"title":11,"path":12,"stem":13,"icon":16},"i-lucide-columns-2",{"title":18,"path":19,"stem":20,"children":21},"Architecture Overview","\u002Fdocs\u002Fgetting-started\u002Farchitecture","docs\u002Fgetting-started\u002Farchitecture\u002Findex",[22],{"title":18,"path":19,"stem":20},{"title":24,"path":25,"stem":26,"children":27,"icon":29},"Bring an existing frontend","\u002Fdocs\u002Fgetting-started\u002Fbring-an-existing-frontend","docs\u002Fgetting-started\u002Fbring-an-existing-frontend\u002Findex",[28],{"title":24,"path":25,"stem":26,"icon":29},"i-lucide-arrow-right-left",{"title":31,"path":32,"stem":33,"children":34,"icon":36},"Concepts","\u002Fdocs\u002Fgetting-started\u002Fconcepts","docs\u002Fgetting-started\u002Fconcepts\u002Findex",[35],{"title":31,"path":32,"stem":33,"icon":36},"i-lucide-shapes",{"title":38,"path":39,"stem":40,"children":41,"icon":43},"Frontend stacks","\u002Fdocs\u002Fgetting-started\u002Ffrontend-stacks","docs\u002Fgetting-started\u002Ffrontend-stacks\u002Findex",[42],{"title":38,"path":39,"stem":40,"icon":43},"i-lucide-layers",{"title":45,"path":46,"stem":47,"children":48,"icon":50},"Get Help","\u002Fdocs\u002Fgetting-started\u002Fget-help","docs\u002Fgetting-started\u002Fget-help\u002Findex",[49],{"title":45,"path":46,"stem":47,"icon":50},"i-lucide-life-buoy",{"title":52,"path":53,"stem":54,"children":55},"Glossary","\u002Fdocs\u002Fgetting-started\u002Fglossary","docs\u002Fgetting-started\u002Fglossary\u002Findex",[56],{"title":52,"path":53,"stem":54},{"title":58,"path":59,"stem":60,"children":61},"Platform Overview","\u002Fdocs\u002Fgetting-started\u002Fplatform-overview","docs\u002Fgetting-started\u002Fplatform-overview\u002Findex",[62],{"title":58,"path":59,"stem":60},{"title":64,"path":65,"stem":66,"children":67},"Prerequisites","\u002Fdocs\u002Fgetting-started\u002Fprerequisites","docs\u002Fgetting-started\u002Fprerequisites\u002Findex",[68],{"title":64,"path":65,"stem":66},{"title":70,"path":71,"stem":72,"children":73},"Your First App in 15 Minutes","\u002Fdocs\u002Fgetting-started\u002Fquick-start","docs\u002Fgetting-started\u002Fquick-start\u002Findex",[74],{"title":70,"path":71,"stem":72},{"title":76,"path":77,"stem":78,"children":79,"icon":81},"Security and trust","\u002Fdocs\u002Fgetting-started\u002Fsecurity-and-trust","docs\u002Fgetting-started\u002Fsecurity-and-trust\u002Findex",[80],{"title":76,"path":77,"stem":78,"icon":81},"i-lucide-shield-check",{"title":83,"path":84,"stem":85,"children":86},"Guides","\u002Fdocs\u002Fguides","docs\u002Fguides\u002Findex",[87,88,151,249,256,310,364,391],{"title":83,"path":84,"stem":85},{"title":89,"path":90,"stem":91,"children":92,"icon":94},"Build an App","\u002Fdocs\u002Fguides\u002Fapps","docs\u002Fguides\u002Fapps\u002Findex",[93,95,102,109,116,123,130,137,144],{"title":89,"path":90,"stem":91,"icon":94},"i-lucide-layout-grid",{"title":96,"path":97,"stem":98,"children":99,"icon":101},"Give your App a Cockpit screen","\u002Fdocs\u002Fguides\u002Fapps\u002Fadd-a-cockpit-screen","docs\u002Fguides\u002Fapps\u002Fadd-a-cockpit-screen\u002Findex",[100],{"title":96,"path":97,"stem":98,"icon":101},"i-lucide-layout-dashboard",{"title":103,"path":104,"stem":105,"children":106,"icon":108},"Add a data model","\u002Fdocs\u002Fguides\u002Fapps\u002Fadd-a-data-model","docs\u002Fguides\u002Fapps\u002Fadd-a-data-model\u002Findex",[107],{"title":103,"path":104,"stem":105,"icon":108},"i-lucide-database",{"title":110,"path":111,"stem":112,"children":113,"icon":115},"Build your first App","\u002Fdocs\u002Fguides\u002Fapps\u002Fbuild-your-first-app","docs\u002Fguides\u002Fapps\u002Fbuild-your-first-app\u002Findex",[114],{"title":110,"path":111,"stem":112,"icon":115},"i-lucide-hammer",{"title":117,"path":118,"stem":119,"children":120,"icon":122},"Deploy and verify an App","\u002Fdocs\u002Fguides\u002Fapps\u002Fdeploy-with-the-cli","docs\u002Fguides\u002Fapps\u002Fdeploy-with-the-cli\u002Findex",[121],{"title":117,"path":118,"stem":119,"icon":122},"i-lucide-square-terminal",{"title":124,"path":125,"stem":126,"children":127,"icon":129},"Publish a business event from your App","\u002Fdocs\u002Fguides\u002Fapps\u002Fpublish-a-business-event","docs\u002Fguides\u002Fapps\u002Fpublish-a-business-event\u002Findex",[128],{"title":124,"path":125,"stem":126,"icon":129},"i-lucide-megaphone",{"title":131,"path":132,"stem":133,"children":134,"icon":136},"Publish on the Marketplace","\u002Fdocs\u002Fguides\u002Fapps\u002Fpublish-on-the-marketplace","docs\u002Fguides\u002Fapps\u002Fpublish-on-the-marketplace\u002Findex",[135],{"title":131,"path":132,"stem":133,"icon":136},"i-lucide-store",{"title":138,"path":139,"stem":140,"children":141,"icon":143},"React to events and run scheduled work in your App","\u002Fdocs\u002Fguides\u002Fapps\u002Freact-to-events-and-run-scheduled-work","docs\u002Fguides\u002Fapps\u002Freact-to-events-and-run-scheduled-work\u002Findex",[142],{"title":138,"path":139,"stem":140,"icon":143},"i-lucide-timer",{"title":145,"path":146,"stem":147,"children":148,"icon":150},"Ship a schema change","\u002Fdocs\u002Fguides\u002Fapps\u002Fship-a-schema-change","docs\u002Fguides\u002Fapps\u002Fship-a-schema-change\u002Findex",[149],{"title":145,"path":146,"stem":147,"icon":150},"i-lucide-git-branch",{"title":152,"path":153,"stem":154,"children":155,"icon":157},"Set up selling","\u002Fdocs\u002Fguides\u002Fcommerce","docs\u002Fguides\u002Fcommerce\u002Findex",[156,158,165,172,179,186,193,200,207,214,221,228,235,242],{"title":152,"path":153,"stem":154,"icon":157},"i-lucide-shopping-cart",{"title":159,"path":160,"stem":161,"children":162,"icon":164},"Set up B2B pricing","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fb2b-pricing","docs\u002Fguides\u002Fcommerce\u002Fb2b-pricing\u002Findex",[163],{"title":159,"path":160,"stem":161,"icon":164},"i-lucide-circle-dollar-sign",{"title":166,"path":167,"stem":168,"children":169,"icon":171},"Give buyer staff the right permissions","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fbuyer-permissions","docs\u002Fguides\u002Fcommerce\u002Fbuyer-permissions\u002Findex",[170],{"title":166,"path":167,"stem":168,"icon":171},"i-lucide-user-cog",{"title":173,"path":174,"stem":175,"children":176,"icon":178},"Confirm invoice payments","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fconfirm-invoice-payments","docs\u002Fguides\u002Fcommerce\u002Fconfirm-invoice-payments\u002Findex",[177],{"title":173,"path":174,"stem":175,"icon":178},"i-lucide-receipt",{"title":180,"path":181,"stem":182,"children":183,"icon":185},"Model a catalog with attributes, families and variants","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fmodel-a-catalog","docs\u002Fguides\u002Fcommerce\u002Fmodel-a-catalog\u002Findex",[184],{"title":180,"path":181,"stem":182,"icon":185},"i-lucide-boxes",{"title":187,"path":188,"stem":189,"children":190,"icon":192},"Order and quote numbers","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fnumber-ranges","docs\u002Fguides\u002Fcommerce\u002Fnumber-ranges\u002Findex",[191],{"title":187,"path":188,"stem":189,"icon":192},"i-lucide-hash",{"title":194,"path":195,"stem":196,"children":197,"icon":199},"Manage product images and documents","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fproduct-media","docs\u002Fguides\u002Fcommerce\u002Fproduct-media\u002Findex",[198],{"title":194,"path":195,"stem":196,"icon":199},"i-lucide-image",{"title":201,"path":202,"stem":203,"children":204,"icon":206},"Run promotions and voucher codes","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fpromotions-and-vouchers","docs\u002Fguides\u002Fcommerce\u002Fpromotions-and-vouchers\u002Findex",[205],{"title":201,"path":202,"stem":203,"icon":206},"i-lucide-ticket-percent",{"title":208,"path":209,"stem":210,"children":211,"icon":213},"Set up purchase approvals","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fpurchase-approvals","docs\u002Fguides\u002Fcommerce\u002Fpurchase-approvals\u002Findex",[212],{"title":208,"path":209,"stem":210,"icon":213},"i-lucide-stamp",{"title":215,"path":216,"stem":217,"children":218,"icon":220},"Turn an accepted quote into an order","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fquotes-to-orders","docs\u002Fguides\u002Fcommerce\u002Fquotes-to-orders\u002Findex",[219],{"title":215,"path":216,"stem":217,"icon":220},"i-lucide-handshake",{"title":222,"path":223,"stem":224,"children":225,"icon":227},"Build categories from rules","\u002Fdocs\u002Fguides\u002Fcommerce\u002Frule-based-categories","docs\u002Fguides\u002Fcommerce\u002Frule-based-categories\u002Findex",[226],{"title":222,"path":223,"stem":224,"icon":227},"i-lucide-list-filter",{"title":229,"path":230,"stem":231,"children":232,"icon":234},"Ship, cancel and return an order","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fship-cancel-and-return","docs\u002Fguides\u002Fcommerce\u002Fship-cancel-and-return\u002Findex",[233],{"title":229,"path":230,"stem":231,"icon":234},"i-lucide-package-check",{"title":236,"path":237,"stem":238,"children":239,"icon":241},"Set up shipping rates and tax","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fshipping-rates","docs\u002Fguides\u002Fcommerce\u002Fshipping-rates\u002Findex",[240],{"title":236,"path":237,"stem":238,"icon":241},"i-lucide-truck",{"title":243,"path":244,"stem":245,"children":246,"icon":248},"Connect a payment provider and take a test payment","\u002Fdocs\u002Fguides\u002Fcommerce\u002Ftest-payments","docs\u002Fguides\u002Fcommerce\u002Ftest-payments\u002Findex",[247],{"title":243,"path":244,"stem":245,"icon":248},"i-lucide-credit-card",{"title":250,"path":251,"stem":252,"children":253,"icon":255},"Start from an example","\u002Fdocs\u002Fguides\u002Fexamples","docs\u002Fguides\u002Fexamples\u002Findex",[254],{"title":250,"path":251,"stem":252,"icon":255},"i-lucide-folder-code",{"title":257,"path":258,"stem":259,"children":260,"icon":262},"Connect a system","\u002Fdocs\u002Fguides\u002Fintegrations","docs\u002Fguides\u002Fintegrations\u002Findex",[261,263,269,276,283,289,296,303],{"title":257,"path":258,"stem":259,"icon":262},"i-lucide-plug",{"title":264,"path":265,"stem":266,"children":267,"icon":29},"Connect a procurement system by punchout","\u002Fdocs\u002Fguides\u002Fintegrations\u002Fconnect-by-punchout","docs\u002Fguides\u002Fintegrations\u002Fconnect-by-punchout\u002Findex",[268],{"title":264,"path":265,"stem":266,"icon":29},{"title":270,"path":271,"stem":272,"children":273,"icon":275},"Hand an order to the ERP","\u002Fdocs\u002Fguides\u002Fintegrations\u002Fhand-an-order-to-the-erp","docs\u002Fguides\u002Fintegrations\u002Fhand-an-order-to-the-erp\u002Findex",[274],{"title":270,"path":271,"stem":272,"icon":275},"i-lucide-arrow-left-right",{"title":277,"path":278,"stem":279,"children":280,"icon":282},"Import a BMECAT catalog","\u002Fdocs\u002Fguides\u002Fintegrations\u002Fimport-a-bmecat-catalog","docs\u002Fguides\u002Fintegrations\u002Fimport-a-bmecat-catalog\u002Findex",[281],{"title":277,"path":278,"stem":279,"icon":282},"i-lucide-package-plus",{"title":284,"path":285,"stem":286,"children":287,"icon":50},"Keep an Integration Studio workflow running","\u002Fdocs\u002Fguides\u002Fintegrations\u002Fkeep-a-workflow-running","docs\u002Fguides\u002Fintegrations\u002Fkeep-a-workflow-running\u002Findex",[288],{"title":284,"path":285,"stem":286,"icon":50},{"title":290,"path":291,"stem":292,"children":293,"icon":295},"Receive platform events at your own endpoint","\u002Fdocs\u002Fguides\u002Fintegrations\u002Freceive-platform-events","docs\u002Fguides\u002Fintegrations\u002Freceive-platform-events\u002Findex",[294],{"title":290,"path":291,"stem":292,"icon":295},"i-lucide-webhook",{"title":297,"path":298,"stem":299,"children":300,"icon":302},"Recover abandoned carts with a workflow","\u002Fdocs\u002Fguides\u002Fintegrations\u002Frecover-abandoned-carts","docs\u002Fguides\u002Fintegrations\u002Frecover-abandoned-carts\u002Findex",[301],{"title":297,"path":298,"stem":299,"icon":302},"i-lucide-mail-check",{"title":304,"path":305,"stem":306,"children":307,"icon":309},"Send low-stock alerts to the ERP","\u002Fdocs\u002Fguides\u002Fintegrations\u002Fsend-low-stock-alerts-to-the-erp","docs\u002Fguides\u002Fintegrations\u002Fsend-low-stock-alerts-to-the-erp\u002Findex",[308],{"title":304,"path":305,"stem":306,"icon":309},"i-lucide-bell-ring",{"title":311,"path":312,"stem":313,"children":314,"icon":316},"Operate & go live","\u002Fdocs\u002Fguides\u002Foperate","docs\u002Fguides\u002Foperate\u002Findex",[315,317,323,330,337,344,351,357],{"title":311,"path":312,"stem":313,"icon":316},"i-lucide-activity",{"title":318,"path":319,"stem":320,"children":321,"icon":81},"Answer a customer's security questionnaire","\u002Fdocs\u002Fguides\u002Foperate\u002Fanswer-a-security-questionnaire","docs\u002Fguides\u002Foperate\u002Fanswer-a-security-questionnaire\u002Findex",[322],{"title":318,"path":319,"stem":320,"icon":81},{"title":324,"path":325,"stem":326,"children":327,"icon":329},"Debug a failed request","\u002Fdocs\u002Fguides\u002Foperate\u002Fdebug-a-failed-request","docs\u002Fguides\u002Foperate\u002Fdebug-a-failed-request\u002Findex",[328],{"title":324,"path":325,"stem":326,"icon":329},"i-lucide-bug",{"title":331,"path":332,"stem":333,"children":334,"icon":336},"Go live with a project","\u002Fdocs\u002Fguides\u002Foperate\u002Fgo-live-checklist","docs\u002Fguides\u002Foperate\u002Fgo-live-checklist\u002Findex",[335],{"title":331,"path":332,"stem":333,"icon":336},"i-lucide-list-checks",{"title":338,"path":339,"stem":340,"children":341,"icon":343},"Migrate from an existing shop","\u002Fdocs\u002Fguides\u002Foperate\u002Fmigrate-from-an-existing-shop","docs\u002Fguides\u002Foperate\u002Fmigrate-from-an-existing-shop\u002Findex",[342],{"title":338,"path":339,"stem":340,"icon":343},"i-lucide-route",{"title":345,"path":346,"stem":347,"children":348,"icon":350},"Size a launch","\u002Fdocs\u002Fguides\u002Foperate\u002Fplan-for-limits","docs\u002Fguides\u002Foperate\u002Fplan-for-limits\u002Findex",[349],{"title":345,"path":346,"stem":347,"icon":350},"i-lucide-gauge",{"title":352,"path":353,"stem":354,"children":355,"icon":336},"Script a bulk change","\u002Fdocs\u002Fguides\u002Foperate\u002Fscript-a-bulk-change","docs\u002Fguides\u002Foperate\u002Fscript-a-bulk-change\u002Findex",[356],{"title":352,"path":353,"stem":354,"icon":336},{"title":358,"path":359,"stem":360,"children":361,"icon":363},"Stay current","\u002Fdocs\u002Fguides\u002Foperate\u002Fstay-current","docs\u002Fguides\u002Foperate\u002Fstay-current\u002Findex",[362],{"title":358,"path":359,"stem":360,"icon":363},"i-lucide-refresh-cw",{"title":365,"path":366,"stem":367,"children":368,"icon":370},"Plan before you build","\u002Fdocs\u002Fguides\u002Fplan","docs\u002Fguides\u002Fplan\u002Findex",[369,371,378,385],{"title":365,"path":366,"stem":367,"icon":370},"i-lucide-map",{"title":372,"path":373,"stem":374,"children":375,"icon":377},"Choose a system of record","\u002Fdocs\u002Fguides\u002Fplan\u002Fchoose-a-system-of-record","docs\u002Fguides\u002Fplan\u002Fchoose-a-system-of-record\u002Findex",[376],{"title":372,"path":373,"stem":374,"icon":377},"i-lucide-network",{"title":379,"path":380,"stem":381,"children":382,"icon":384},"Choose an event surface","\u002Fdocs\u002Fguides\u002Fplan\u002Fchoose-an-event-surface","docs\u002Fguides\u002Fplan\u002Fchoose-an-event-surface\u002Findex",[383],{"title":379,"path":380,"stem":381,"icon":384},"i-lucide-signpost",{"title":386,"path":387,"stem":388,"children":389,"icon":343},"Choose where the logic goes","\u002Fdocs\u002Fguides\u002Fplan\u002Fchoose-where-the-logic-goes","docs\u002Fguides\u002Fplan\u002Fchoose-where-the-logic-goes\u002Findex",[390],{"title":386,"path":387,"stem":388,"icon":343},{"title":392,"path":393,"stem":394,"children":395,"icon":397},"Build a storefront","\u002Fdocs\u002Fguides\u002Fstorefronts","docs\u002Fguides\u002Fstorefronts\u002Findex",[396,398,405,412,419,426,432,439],{"title":392,"path":393,"stem":394,"icon":397},"i-lucide-paintbrush",{"title":399,"path":400,"stem":401,"children":402,"icon":404},"Brand a Theme with design tokens","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Fbrand-with-tokens","docs\u002Fguides\u002Fstorefronts\u002Fbrand-with-tokens\u002Findex",[403],{"title":399,"path":400,"stem":401,"icon":404},"i-lucide-palette",{"title":406,"path":407,"stem":408,"children":409,"icon":411},"Build a block","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Fbuild-a-block","docs\u002Fguides\u002Fstorefronts\u002Fbuild-a-block\u002Findex",[410],{"title":406,"path":407,"stem":408,"icon":411},"i-lucide-blocks",{"title":413,"path":414,"stem":415,"children":416,"icon":418},"Build your first Theme","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Fbuild-your-first-theme","docs\u002Fguides\u002Fstorefronts\u002Fbuild-your-first-theme\u002Findex",[417],{"title":413,"path":414,"stem":415,"icon":418},"i-lucide-layout-template",{"title":420,"path":421,"stem":422,"children":423,"icon":425},"Connect your own frontend","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Fconnect-a-frontend","docs\u002Fguides\u002Fstorefronts\u002Fconnect-a-frontend\u002Findex",[424],{"title":420,"path":421,"stem":422,"icon":425},"i-lucide-plug-zap",{"title":427,"path":428,"stem":429,"children":430,"icon":363},"Refresh price caches when a price list changes","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Frefresh-price-caches","docs\u002Fguides\u002Fstorefronts\u002Frefresh-price-caches\u002Findex",[431],{"title":427,"path":428,"stem":429,"icon":363},{"title":433,"path":434,"stem":435,"children":436,"icon":438},"Reorder and quick order","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Freorder-and-quick-order","docs\u002Fguides\u002Fstorefronts\u002Freorder-and-quick-order\u002Findex",[437],{"title":433,"path":434,"stem":435,"icon":438},"i-lucide-repeat",{"title":440,"path":441,"stem":442,"children":443,"icon":445},"Sign a buyer in from your server","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Fsign-a-buyer-in","docs\u002Fguides\u002Fstorefronts\u002Fsign-a-buyer-in\u002Findex",[444],{"title":440,"path":441,"stem":442,"icon":445},"i-lucide-log-in",{"title":447,"path":448,"stem":449,"children":450},"SDKs","\u002Fdocs\u002Fsdks","docs\u002Fsdks\u002Findex",[451,452,458,464,470,476,482,488,494],{"title":447,"path":448,"stem":449},{"title":453,"path":454,"stem":455,"children":456},"App SDK","\u002Fdocs\u002Fsdks\u002Fapp-sdk","docs\u002Fsdks\u002Fapp-sdk\u002Findex",[457],{"title":453,"path":454,"stem":455},{"title":459,"path":460,"stem":461,"children":462},"CLI","\u002Fdocs\u002Fsdks\u002Fcli","docs\u002Fsdks\u002Fcli\u002Findex",[463],{"title":459,"path":460,"stem":461},{"title":465,"path":466,"stem":467,"children":468},"Design systems","\u002Fdocs\u002Fsdks\u002Fdesign-systems","docs\u002Fsdks\u002Fdesign-systems\u002Findex",[469],{"title":465,"path":466,"stem":467},{"title":471,"path":472,"stem":473,"children":474},"Integration Node SDK","\u002Fdocs\u002Fsdks\u002Fintegration-nodes","docs\u002Fsdks\u002Fintegration-nodes\u002Findex",[475],{"title":471,"path":472,"stem":473},{"title":477,"path":478,"stem":479,"children":480},"Node SDK","\u002Fdocs\u002Fsdks\u002Fnode","docs\u002Fsdks\u002Fnode\u002Findex",[481],{"title":477,"path":478,"stem":479},{"title":483,"path":484,"stem":485,"children":486},"PHP SDK","\u002Fdocs\u002Fsdks\u002Fphp","docs\u002Fsdks\u002Fphp\u002Findex",[487],{"title":483,"path":484,"stem":485},{"title":489,"path":490,"stem":491,"children":492,"icon":150},"Versioning","\u002Fdocs\u002Fsdks\u002Fversioning","docs\u002Fsdks\u002Fversioning\u002Findex",[493],{"title":489,"path":490,"stem":491,"icon":150},{"title":495,"path":496,"stem":497,"children":498},"Web \u002F JavaScript SDK","\u002Fdocs\u002Fsdks\u002Fweb","docs\u002Fsdks\u002Fweb\u002Findex",[499],{"title":495,"path":496,"stem":497},{"title":501,"path":502,"stem":503,"children":504},"Services","\u002Fdocs\u002Fservices","docs\u002Fservices\u002Findex",[505,506,542,549,579,585,609,616,623,677,725],{"title":501,"path":502,"stem":503},{"title":507,"path":508,"stem":509,"children":510},"API usage","\u002Fdocs\u002Fservices\u002Fapi-usage","docs\u002Fservices\u002Fapi-usage\u002Findex",[511,512,518,524,530,536],{"title":507,"path":508,"stem":509},{"title":513,"path":514,"stem":515,"children":516},"Errors","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Ferrors","docs\u002Fservices\u002Fapi-usage\u002Ferrors\u002Findex",[517],{"title":513,"path":514,"stem":515},{"title":519,"path":520,"stem":521,"children":522},"Retries & idempotency","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Fidempotency","docs\u002Fservices\u002Fapi-usage\u002Fidempotency\u002Findex",[523],{"title":519,"path":520,"stem":521},{"title":525,"path":526,"stem":527,"children":528},"Pagination & filtering","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Fpagination","docs\u002Fservices\u002Fapi-usage\u002Fpagination\u002Findex",[529],{"title":525,"path":526,"stem":527},{"title":531,"path":532,"stem":533,"children":534},"Rate limits","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Frate-limits","docs\u002Fservices\u002Fapi-usage\u002Frate-limits\u002Findex",[535],{"title":531,"path":532,"stem":533},{"title":537,"path":538,"stem":539,"children":540},"Versioning & stability","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Fversioning","docs\u002Fservices\u002Fapi-usage\u002Fversioning\u002Findex",[541],{"title":537,"path":538,"stem":539},{"title":543,"path":544,"stem":545,"children":546,"icon":548},"Record history","\u002Fdocs\u002Fservices\u002Faudit","docs\u002Fservices\u002Faudit\u002Findex",[547],{"title":543,"path":544,"stem":545,"icon":548},"i-lucide-history",{"title":550,"path":551,"stem":552,"children":553},"Authentication","\u002Fdocs\u002Fservices\u002Fauth","docs\u002Fservices\u002Fauth\u002Findex",[554,555,561,567,573],{"title":550,"path":551,"stem":552},{"title":556,"path":557,"stem":558,"children":559},"API keys","\u002Fdocs\u002Fservices\u002Fauth\u002Fapi-keys","docs\u002Fservices\u002Fauth\u002Fapi-keys\u002Findex",[560],{"title":556,"path":557,"stem":558},{"title":562,"path":563,"stem":564,"children":565},"Multi-factor authentication","\u002Fdocs\u002Fservices\u002Fauth\u002Fmfa","docs\u002Fservices\u002Fauth\u002Fmfa\u002Findex",[566],{"title":562,"path":563,"stem":564},{"title":568,"path":569,"stem":570,"children":571},"Social sign-in","\u002Fdocs\u002Fservices\u002Fauth\u002Foauth2","docs\u002Fservices\u002Fauth\u002Foauth2\u002Findex",[572],{"title":568,"path":569,"stem":570},{"title":574,"path":575,"stem":576,"children":577},"Sessions","\u002Fdocs\u002Fservices\u002Fauth\u002Fsessions","docs\u002Fservices\u002Fauth\u002Fsessions\u002Findex",[578],{"title":574,"path":575,"stem":576},{"title":580,"path":581,"stem":582,"children":583,"icon":199},"Avatars","\u002Fdocs\u002Fservices\u002Favatars","docs\u002Fservices\u002Favatars\u002Findex",[584],{"title":580,"path":581,"stem":582,"icon":199},{"title":586,"path":587,"stem":588,"children":589},"Events","\u002Fdocs\u002Fservices\u002Fevents","docs\u002Fservices\u002Fevents\u002Findex",[590,591,597,603],{"title":586,"path":587,"stem":588},{"title":592,"path":593,"stem":594,"children":595},"Consuming events","\u002Fdocs\u002Fservices\u002Fevents\u002Fconsuming-events","docs\u002Fservices\u002Fevents\u002Fconsuming-events\u002Findex",[596],{"title":592,"path":593,"stem":594},{"title":598,"path":599,"stem":600,"children":601},"Event catalog","\u002Fdocs\u002Fservices\u002Fevents\u002Fevent-catalog","docs\u002Fservices\u002Fevents\u002Fevent-catalog\u002Findex",[602],{"title":598,"path":599,"stem":600},{"title":604,"path":605,"stem":606,"children":607},"Event types","\u002Fdocs\u002Fservices\u002Fevents\u002Fevent-types","docs\u002Fservices\u002Fevents\u002Fevent-types\u002Findex",[608],{"title":604,"path":605,"stem":606},{"title":610,"path":611,"stem":612,"children":613,"icon":615},"Locale","\u002Fdocs\u002Fservices\u002Flocale","docs\u002Fservices\u002Flocale\u002Findex",[614],{"title":610,"path":611,"stem":612,"icon":615},"i-lucide-globe",{"title":617,"path":618,"stem":619,"children":620,"icon":622},"Messaging","\u002Fdocs\u002Fservices\u002Fmessaging","docs\u002Fservices\u002Fmessaging\u002Findex",[621],{"title":617,"path":618,"stem":619,"icon":622},"i-lucide-mail",{"title":624,"path":625,"stem":626,"children":627},"Network","\u002Fdocs\u002Fservices\u002Fnetwork","docs\u002Fservices\u002Fnetwork\u002Findex",[628,629,635,641,647,653,659,665,671],{"title":624,"path":625,"stem":626},{"title":630,"path":631,"stem":632,"children":633},"Caching","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fcaching","docs\u002Fservices\u002Fnetwork\u002Fcaching\u002Findex",[634],{"title":630,"path":631,"stem":632},{"title":636,"path":637,"stem":638,"children":639},"Content delivery (CDN)","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fcdn","docs\u002Fservices\u002Fnetwork\u002Fcdn\u002Findex",[640],{"title":636,"path":637,"stem":638},{"title":642,"path":643,"stem":644,"children":645},"Compression","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fcompression","docs\u002Fservices\u002Fnetwork\u002Fcompression\u002Findex",[646],{"title":642,"path":643,"stem":644},{"title":648,"path":649,"stem":650,"children":651},"DDoS mitigation","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fddos","docs\u002Fservices\u002Fnetwork\u002Fddos\u002Findex",[652],{"title":648,"path":649,"stem":650},{"title":654,"path":655,"stem":656,"children":657},"Edge network","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fedges","docs\u002Fservices\u002Fnetwork\u002Fedges\u002Findex",[658],{"title":654,"path":655,"stem":656},{"title":660,"path":661,"stem":662,"children":663},"Endpoints","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fendpoints","docs\u002Fservices\u002Fnetwork\u002Fendpoints\u002Findex",[664],{"title":660,"path":661,"stem":662},{"title":666,"path":667,"stem":668,"children":669},"Transport Layer Security (TLS)","\u002Fdocs\u002Fservices\u002Fnetwork\u002Ftls","docs\u002Fservices\u002Fnetwork\u002Ftls\u002Findex",[670],{"title":666,"path":667,"stem":668},{"title":672,"path":673,"stem":674,"children":675},"Web application firewall (WAF)","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fwaf","docs\u002Fservices\u002Fnetwork\u002Fwaf\u002Findex",[676],{"title":672,"path":673,"stem":674},{"title":678,"path":679,"stem":680,"children":681},"Storage","\u002Fdocs\u002Fservices\u002Fstorage","docs\u002Fservices\u002Fstorage\u002Findex",[682,683,689,695,701,707,713,719],{"title":678,"path":679,"stem":680},{"title":684,"path":685,"stem":686,"children":687},"Folders","\u002Fdocs\u002Fservices\u002Fstorage\u002Fbuckets","docs\u002Fservices\u002Fstorage\u002Fbuckets\u002Findex",[688],{"title":684,"path":685,"stem":686},{"title":690,"path":691,"stem":692,"children":693},"Signed URLs and access","\u002Fdocs\u002Fservices\u002Fstorage\u002Ffile-tokens","docs\u002Fservices\u002Fstorage\u002Ffile-tokens\u002Findex",[694],{"title":690,"path":691,"stem":692},{"title":696,"path":697,"stem":698,"children":699},"Serve and transform images","\u002Fdocs\u002Fservices\u002Fstorage\u002Fimages","docs\u002Fservices\u002Fstorage\u002Fimages\u002Findex",[700],{"title":696,"path":697,"stem":698},{"title":702,"path":703,"stem":704,"children":705},"3D assets","\u002Fdocs\u002Fservices\u002Fstorage\u002Fmodel-viewer","docs\u002Fservices\u002Fstorage\u002Fmodel-viewer\u002Findex",[706],{"title":702,"path":703,"stem":704},{"title":708,"path":709,"stem":710,"children":711},"Access control and visibility","\u002Fdocs\u002Fservices\u002Fstorage\u002Fpermissions","docs\u002Fservices\u002Fstorage\u002Fpermissions\u002Findex",[712],{"title":708,"path":709,"stem":710},{"title":714,"path":715,"stem":716,"children":717},"Quick start","\u002Fdocs\u002Fservices\u002Fstorage\u002Fquick-start","docs\u002Fservices\u002Fstorage\u002Fquick-start\u002Findex",[718],{"title":714,"path":715,"stem":716},{"title":720,"path":721,"stem":722,"children":723},"Upload and manage files","\u002Fdocs\u002Fservices\u002Fstorage\u002Fupload-download","docs\u002Fservices\u002Fstorage\u002Fupload-download\u002Findex",[724],{"title":720,"path":721,"stem":722},{"title":726,"path":727,"stem":728,"children":729},"Webhooks","\u002Fdocs\u002Fservices\u002Fwebhooks","docs\u002Fservices\u002Fwebhooks\u002Findex",[730,731,737],{"title":726,"path":727,"stem":728},{"title":732,"path":733,"stem":734,"children":735},"Delivery","\u002Fdocs\u002Fservices\u002Fwebhooks\u002Fdelivery","docs\u002Fservices\u002Fwebhooks\u002Fdelivery\u002Findex",[736],{"title":732,"path":733,"stem":734},{"title":738,"path":739,"stem":740,"children":741},"Security","\u002Fdocs\u002Fservices\u002Fwebhooks\u002Fsecurity","docs\u002Fservices\u002Fwebhooks\u002Fsecurity\u002Findex",[742],{"title":738,"path":739,"stem":740},{"title":744,"path":745,"stem":746,"children":747},"Studios","\u002Fdocs\u002Fstudios","docs\u002Fstudios\u002Findex",[748,749,755,920,1271,1591,1773],{"title":744,"path":745,"stem":746},{"title":750,"path":751,"stem":752,"children":753},"AI Studio","\u002Fdocs\u002Fstudios\u002Fai","docs\u002Fstudios\u002Fai\u002Findex",[754],{"title":750,"path":751,"stem":752},{"title":756,"path":757,"stem":758,"children":759,"icon":761},"Analytics Studio","\u002Fdocs\u002Fstudios\u002Fanalytics","docs\u002Fstudios\u002Fanalytics\u002Findex",[760,762,805,842,848,866,896],{"title":756,"path":757,"stem":758,"icon":761},"i-lucide-chart-column",{"title":763,"path":764,"stem":765,"children":766,"icon":768},"Make your app's data analyzable","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Findex",[767,769,775,781,787,793,799],{"title":763,"path":764,"stem":765,"icon":768},"i-lucide-table-2",{"title":770,"path":771,"stem":772,"children":773},"Column locators","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fcolumn-locators","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fcolumn-locators\u002Findex",[774],{"title":770,"path":771,"stem":772},{"title":776,"path":777,"stem":778,"children":779},"Declaring a view","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fdeclaring-a-view","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fdeclaring-a-view\u002Findex",[780],{"title":776,"path":777,"stem":778},{"title":782,"path":783,"stem":784,"children":785},"Example","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fexample","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fexample\u002Findex",[786],{"title":782,"path":783,"stem":784},{"title":788,"path":789,"stem":790,"children":791},"Semantic roles","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fsemantic-roles","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fsemantic-roles\u002Findex",[792],{"title":788,"path":789,"stem":790},{"title":794,"path":795,"stem":796,"children":797},"Tenant isolation","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Ftenant-isolation","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Ftenant-isolation\u002Findex",[798],{"title":794,"path":795,"stem":796},{"title":800,"path":801,"stem":802,"children":803},"The contract","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fthe-contract","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fthe-contract\u002Findex",[804],{"title":800,"path":801,"stem":802},{"title":806,"path":807,"stem":808,"children":809,"icon":811},"Stream commerce activity","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Findex",[810,812,818,824,830,836],{"title":806,"path":807,"stem":808,"icon":811},"i-lucide-radio",{"title":813,"path":814,"stem":815,"children":816},"Delivery guarantees","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fdelivery-guarantees","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fdelivery-guarantees\u002Findex",[817],{"title":813,"path":814,"stem":815},{"title":819,"path":820,"stem":821,"children":822},"Event types for reporting","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fevent-types-for-reporting","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fevent-types-for-reporting\u002Findex",[823],{"title":819,"path":820,"stem":821},{"title":825,"path":826,"stem":827,"children":828},"Register an endpoint","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fregister-an-endpoint","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fregister-an-endpoint\u002Findex",[829],{"title":825,"path":826,"stem":827},{"title":831,"path":832,"stem":833,"children":834},"The event stream","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fthe-event-stream","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fthe-event-stream\u002Findex",[835],{"title":831,"path":832,"stem":833},{"title":837,"path":838,"stem":839,"children":840},"Verify a delivery","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fverify-a-delivery","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fverify-a-delivery\u002Findex",[841],{"title":837,"path":838,"stem":839},{"title":843,"path":844,"stem":845,"children":846,"icon":29},"Getting data out","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fgetting-data-out","docs\u002Fstudios\u002Fanalytics\u002Fgetting-data-out\u002Findex",[847],{"title":843,"path":844,"stem":845,"icon":29},{"title":849,"path":850,"stem":851,"children":852,"icon":336},"Limits and what's next","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Flimits","docs\u002Fstudios\u002Fanalytics\u002Flimits\u002Findex",[853,854,860],{"title":849,"path":850,"stem":851,"icon":336},{"title":855,"path":856,"stem":857,"children":858},"Designing for what's coming","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Flimits\u002Fdesigning-for-whats-coming","docs\u002Fstudios\u002Fanalytics\u002Flimits\u002Fdesigning-for-whats-coming\u002Findex",[859],{"title":855,"path":856,"stem":857},{"title":861,"path":862,"stem":863,"children":864},"What does not exist yet","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Flimits\u002Fwhat-does-not-exist-yet","docs\u002Fstudios\u002Fanalytics\u002Flimits\u002Fwhat-does-not-exist-yet\u002Findex",[865],{"title":861,"path":862,"stem":863},{"title":867,"path":868,"stem":869,"children":870,"icon":108},"Build your own reporting store","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Findex",[871,872,878,884,890],{"title":867,"path":868,"stem":869,"icon":108},{"title":873,"path":874,"stem":875,"children":876},"Backfill","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fbackfill","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fbackfill\u002Findex",[877],{"title":873,"path":874,"stem":875},{"title":879,"path":880,"stem":881,"children":882},"Incremental sync","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fincremental-sync","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fincremental-sync\u002Findex",[883],{"title":879,"path":880,"stem":881},{"title":885,"path":886,"stem":887,"children":888},"Modelling","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fmodelling","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fmodelling\u002Findex",[889],{"title":885,"path":886,"stem":887},{"title":891,"path":892,"stem":893,"children":894},"Pull versus push","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fpull-vs-push","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fpull-vs-push\u002Findex",[895],{"title":891,"path":892,"stem":893},{"title":897,"path":898,"stem":899,"children":900,"icon":761},"What the tenant sees","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees","docs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Findex",[901,902,908,914],{"title":897,"path":898,"stem":899,"icon":761},{"title":903,"path":904,"stem":905,"children":906},"Cohorts","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fcohorts","docs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fcohorts\u002Findex",[907],{"title":903,"path":904,"stem":905},{"title":909,"path":910,"stem":911,"children":912},"Datasets and charts","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fdatasets-and-charts","docs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fdatasets-and-charts\u002Findex",[913],{"title":909,"path":910,"stem":911},{"title":915,"path":916,"stem":917,"children":918},"Studio overview","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fstudio-overview","docs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fstudio-overview\u002Findex",[919],{"title":915,"path":916,"stem":917},{"title":921,"path":922,"stem":923,"children":924},"App Studio","\u002Fdocs\u002Fstudios\u002Fapps","docs\u002Fstudios\u002Fapps\u002Findex",[925,926,962,1032,1103,1121,1187],{"title":921,"path":922,"stem":923},{"title":927,"path":928,"stem":929,"children":930,"icon":101},"Admin UI","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Findex",[931,932,938,944,950,956],{"title":927,"path":928,"stem":929,"icon":101},{"title":933,"path":934,"stem":935,"children":936},"How the Cockpit renders","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fhow-cockpit-renders","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fhow-cockpit-renders\u002Findex",[937],{"title":933,"path":934,"stem":935},{"title":939,"path":940,"stem":941,"children":942},"Preview locally","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fpreview-locally","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fpreview-locally\u002Findex",[943],{"title":939,"path":940,"stem":941},{"title":945,"path":946,"stem":947,"children":948},"Reading settings","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Freading-settings","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Freading-settings\u002Findex",[949],{"title":945,"path":946,"stem":947},{"title":951,"path":952,"stem":953,"children":954},"Settings","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fsettings","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fsettings\u002Findex",[955],{"title":951,"path":952,"stem":953},{"title":957,"path":958,"stem":959,"children":960},"Vocabularies","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fvocabularies","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fvocabularies\u002Findex",[961],{"title":957,"path":958,"stem":959},{"title":963,"path":964,"stem":965,"children":966,"icon":343},"Your app's API","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi","docs\u002Fstudios\u002Fapps\u002Fapi\u002Findex",[967,968,973,979,985,991,997,1002,1008,1014,1020,1026],{"title":963,"path":964,"stem":965,"icon":343},{"title":630,"path":969,"stem":970,"children":971},"\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcaching","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcaching\u002Findex",[972],{"title":630,"path":969,"stem":970},{"title":974,"path":975,"stem":976,"children":977},"Calling another app","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcalling-another-app","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcalling-another-app\u002Findex",[978],{"title":974,"path":975,"stem":976},{"title":980,"path":981,"stem":982,"children":983},"Capabilities","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcapabilities","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcapabilities\u002Findex",[984],{"title":980,"path":981,"stem":982},{"title":986,"path":987,"stem":988,"children":989},"Capability reference","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcapability-reference","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcapability-reference\u002Findex",[990],{"title":986,"path":987,"stem":988},{"title":992,"path":993,"stem":994,"children":995},"CRUD","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcrud","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcrud\u002Findex",[996],{"title":992,"path":993,"stem":994},{"title":513,"path":998,"stem":999,"children":1000},"\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Ferrors","docs\u002Fstudios\u002Fapps\u002Fapi\u002Ferrors\u002Findex",[1001],{"title":513,"path":998,"stem":999},{"title":1003,"path":1004,"stem":1005,"children":1006},"Overriding a capability","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Foverriding-a-capability","docs\u002Fstudios\u002Fapps\u002Fapi\u002Foverriding-a-capability\u002Findex",[1007],{"title":1003,"path":1004,"stem":1005},{"title":1009,"path":1010,"stem":1011,"children":1012},"Pagination and filtering","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fpagination-and-filtering","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fpagination-and-filtering\u002Findex",[1013],{"title":1009,"path":1010,"stem":1011},{"title":1015,"path":1016,"stem":1017,"children":1018},"Published OpenAPI","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fpublished-openapi","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fpublished-openapi\u002Findex",[1019],{"title":1015,"path":1016,"stem":1017},{"title":1021,"path":1022,"stem":1023,"children":1024},"The router","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Frouter","docs\u002Fstudios\u002Fapps\u002Fapi\u002Frouter\u002Findex",[1025],{"title":1021,"path":1022,"stem":1023},{"title":1027,"path":1028,"stem":1029,"children":1030},"Tags","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Ftags","docs\u002Fstudios\u002Fapps\u002Fapi\u002Ftags\u002Findex",[1031],{"title":1027,"path":1028,"stem":1029},{"title":1033,"path":1034,"stem":1035,"children":1036,"icon":108},"Data model","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Findex",[1037,1038,1044,1050,1056,1062,1068,1074,1080,1086,1092,1097],{"title":1033,"path":1034,"stem":1035,"icon":108},{"title":1039,"path":1040,"stem":1041,"children":1042},"Adapters","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fadapters","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fadapters\u002Findex",[1043],{"title":1039,"path":1040,"stem":1041},{"title":1045,"path":1046,"stem":1047,"children":1048},"Column types","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fcolumn-types","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fcolumn-types\u002Findex",[1049],{"title":1045,"path":1046,"stem":1047},{"title":1051,"path":1052,"stem":1053,"children":1054},"Cross-app lookups","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fcross-app-lookups","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fcross-app-lookups\u002Findex",[1055],{"title":1051,"path":1052,"stem":1053},{"title":1057,"path":1058,"stem":1059,"children":1060},"Migrations","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fmigrations","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fmigrations\u002Findex",[1061],{"title":1057,"path":1058,"stem":1059},{"title":1063,"path":1064,"stem":1065,"children":1066},"Projections","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fprojections","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fprojections\u002Findex",[1067],{"title":1063,"path":1064,"stem":1065},{"title":1069,"path":1070,"stem":1071,"children":1072},"Relationships","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Frelationships","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Frelationships\u002Findex",[1073],{"title":1069,"path":1070,"stem":1071},{"title":1075,"path":1076,"stem":1077,"children":1078},"Schema reference","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fschema-reference","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fschema-reference\u002Findex",[1079],{"title":1075,"path":1076,"stem":1077},{"title":1081,"path":1082,"stem":1083,"children":1084},"Scoping","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fscoping","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fscoping\u002Findex",[1085],{"title":1081,"path":1082,"stem":1083},{"title":1087,"path":1088,"stem":1089,"children":1090},"search.json reference","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fsearch-json","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fsearch-json\u002Findex",[1091],{"title":1087,"path":1088,"stem":1089},{"title":794,"path":1093,"stem":1094,"children":1095},"\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Ftenant-isolation","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Ftenant-isolation\u002Findex",[1096],{"title":794,"path":1093,"stem":1094},{"title":1098,"path":1099,"stem":1100,"children":1101},"The typed client","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Ftyped-client","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Ftyped-client\u002Findex",[1102],{"title":1098,"path":1099,"stem":1100},{"title":1104,"path":1105,"stem":1106,"children":1107},"Getting started","\u002Fdocs\u002Fstudios\u002Fapps\u002Fgetting-started","docs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Findex",[1108,1109,1115],{"title":1104,"path":1105,"stem":1106},{"title":1110,"path":1111,"stem":1112,"children":1113},"App model","\u002Fdocs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Fapp-model","docs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Fapp-model\u002Findex",[1114],{"title":1110,"path":1111,"stem":1112},{"title":1116,"path":1117,"stem":1118,"children":1119},"App isolation","\u002Fdocs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Fisolation","docs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Fisolation\u002Findex",[1120],{"title":1116,"path":1117,"stem":1118},{"title":1122,"path":1123,"stem":1124,"children":1125,"icon":185},"Platform services","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Findex",[1126,1127,1133,1139,1145,1151,1157,1163,1169,1175,1181],{"title":1122,"path":1123,"stem":1124,"icon":185},{"title":1128,"path":1129,"stem":1130,"children":1131},"Entity access","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fentity-access","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fentity-access\u002Findex",[1132],{"title":1128,"path":1129,"stem":1130},{"title":1134,"path":1135,"stem":1136,"children":1137},"Events you emit","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fevents-you-emit","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fevents-you-emit\u002Findex",[1138],{"title":1134,"path":1135,"stem":1136},{"title":1140,"path":1141,"stem":1142,"children":1143},"Events you receive","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fevents-you-receive","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fevents-you-receive\u002Findex",[1144],{"title":1140,"path":1141,"stem":1142},{"title":1146,"path":1147,"stem":1148,"children":1149},"Not yet proven","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fnot-yet-proven","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fnot-yet-proven\u002Findex",[1150],{"title":1146,"path":1147,"stem":1148},{"title":1152,"path":1153,"stem":1154,"children":1155},"Outbound HTTP","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Foutbound-http","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Foutbound-http\u002Findex",[1156],{"title":1152,"path":1153,"stem":1154},{"title":1158,"path":1159,"stem":1160,"children":1161},"Permissions","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fpermissions","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fpermissions\u002Findex",[1162],{"title":1158,"path":1159,"stem":1160},{"title":1164,"path":1165,"stem":1166,"children":1167},"Person permissions","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fperson-permissions","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fperson-permissions\u002Findex",[1168],{"title":1164,"path":1165,"stem":1166},{"title":1170,"path":1171,"stem":1172,"children":1173},"Scheduled work","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fscheduled-work","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fscheduled-work\u002Findex",[1174],{"title":1170,"path":1171,"stem":1172},{"title":1176,"path":1177,"stem":1178,"children":1179},"Tenant identity","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Ftenant-identity","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Ftenant-identity\u002Findex",[1180],{"title":1176,"path":1177,"stem":1178},{"title":1182,"path":1183,"stem":1184,"children":1185},"Tracing","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Ftracing","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Ftracing\u002Findex",[1186],{"title":1182,"path":1183,"stem":1184},{"title":1188,"path":1189,"stem":1190,"children":1191,"icon":1193},"Ship and operate","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Findex",[1192,1194,1200,1206,1212,1218,1224,1230,1236,1242,1248,1254,1260,1266],{"title":1188,"path":1189,"stem":1190,"icon":1193},"i-lucide-rocket",{"title":1195,"path":1196,"stem":1197,"children":1198},"Billing","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fbilling","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fbilling\u002Findex",[1199],{"title":1195,"path":1196,"stem":1197},{"title":1201,"path":1202,"stem":1203,"children":1204},"Consent","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fconsent","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fconsent\u002Findex",[1205],{"title":1201,"path":1202,"stem":1203},{"title":1207,"path":1208,"stem":1209,"children":1210},"Dependencies","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fdependencies","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fdependencies\u002Findex",[1211],{"title":1207,"path":1208,"stem":1209},{"title":1213,"path":1214,"stem":1215,"children":1216},"Deploying","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fdeploying","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fdeploying\u002Findex",[1217],{"title":1213,"path":1214,"stem":1215},{"title":1219,"path":1220,"stem":1221,"children":1222},"Manifest reference","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fmanifest-reference","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fmanifest-reference\u002Findex",[1223],{"title":1219,"path":1220,"stem":1221},{"title":1225,"path":1226,"stem":1227,"children":1228},"Operating","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Foperating","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Foperating\u002Findex",[1229],{"title":1225,"path":1226,"stem":1227},{"title":1231,"path":1232,"stem":1233,"children":1234},"Pairing a frontend","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fpairing-a-frontend","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fpairing-a-frontend\u002Findex",[1235],{"title":1231,"path":1232,"stem":1233},{"title":1237,"path":1238,"stem":1239,"children":1240},"Private or Marketplace","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fprivate-vs-marketplace","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fprivate-vs-marketplace\u002Findex",[1241],{"title":1237,"path":1238,"stem":1239},{"title":1243,"path":1244,"stem":1245,"children":1246},"Publish and install","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fpublish-and-install","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fpublish-and-install\u002Findex",[1247],{"title":1243,"path":1244,"stem":1245},{"title":1249,"path":1250,"stem":1251,"children":1252},"Testing","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Ftesting","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Ftesting\u002Findex",[1253],{"title":1249,"path":1250,"stem":1251},{"title":1255,"path":1256,"stem":1257,"children":1258},"Validate","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fvalidate","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fvalidate\u002Findex",[1259],{"title":1255,"path":1256,"stem":1257},{"title":1261,"path":1262,"stem":1263,"children":1264},"Verifying live","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fverifying-live","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fverifying-live\u002Findex",[1265],{"title":1261,"path":1262,"stem":1263},{"title":489,"path":1267,"stem":1268,"children":1269},"\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fversioning","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fversioning\u002Findex",[1270],{"title":489,"path":1267,"stem":1268},{"title":1272,"path":1273,"stem":1274,"children":1275,"icon":1277},"Commerce Studio","\u002Fdocs\u002Fstudios\u002Fcommerce","docs\u002Fstudios\u002Fcommerce\u002Findex",[1276,1278,1350,1410,1459,1464,1517,1571],{"title":1272,"path":1273,"stem":1274,"icon":1277},"i-lucide-shopping-bag",{"title":1279,"path":1280,"stem":1281,"children":1282,"icon":1284},"Build an app","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Findex",[1283,1285,1291,1297,1303,1309,1315,1321,1327,1333,1339,1344],{"title":1279,"path":1280,"stem":1281,"icon":1284},"i-lucide-puzzle",{"title":1286,"path":1287,"stem":1288,"children":1289},"Actions and writes","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Factions-and-writes","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Factions-and-writes\u002Findex",[1290],{"title":1286,"path":1287,"stem":1288},{"title":1292,"path":1293,"stem":1294,"children":1295},"cockpit.json reference","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fcockpit-json-reference","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fcockpit-json-reference\u002Findex",[1296],{"title":1292,"path":1293,"stem":1294},{"title":1298,"path":1299,"stem":1300,"children":1301},"Detail views","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fdetail-views","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fdetail-views\u002Findex",[1302],{"title":1298,"path":1299,"stem":1300},{"title":1304,"path":1305,"stem":1306,"children":1307},"Forms","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fforms","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fforms\u002Findex",[1308],{"title":1304,"path":1305,"stem":1306},{"title":1310,"path":1311,"stem":1312,"children":1313},"From manifest to installed","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Ffrom-manifest-to-installed","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Ffrom-manifest-to-installed\u002Findex",[1314],{"title":1310,"path":1311,"stem":1312},{"title":1316,"path":1317,"stem":1318,"children":1319},"How it renders","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fhow-it-renders","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fhow-it-renders\u002Findex",[1320],{"title":1316,"path":1317,"stem":1318},{"title":1322,"path":1323,"stem":1324,"children":1325},"List views","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Flist-views","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Flist-views\u002Findex",[1326],{"title":1322,"path":1323,"stem":1324},{"title":1328,"path":1329,"stem":1330,"children":1331},"Navigation","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fnavigation","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fnavigation\u002Findex",[1332],{"title":1328,"path":1329,"stem":1330},{"title":1334,"path":1335,"stem":1336,"children":1337},"Permissions and scope","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fpermissions-and-scope","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fpermissions-and-scope\u002Findex",[1338],{"title":1334,"path":1335,"stem":1336},{"title":939,"path":1340,"stem":1341,"children":1342},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fpreview-locally","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fpreview-locally\u002Findex",[1343],{"title":939,"path":1340,"stem":1341},{"title":1345,"path":1346,"stem":1347,"children":1348},"Widgets","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fwidgets","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fwidgets\u002Findex",[1349],{"title":1345,"path":1346,"stem":1347},{"title":1351,"path":1352,"stem":1353,"children":1354,"icon":1356},"Catalog","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Findex",[1355,1357,1363,1369,1375,1381,1386,1392,1398,1404],{"title":1351,"path":1352,"stem":1353,"icon":1356},"i-lucide-package",{"title":1358,"path":1359,"stem":1360,"children":1361},"Assets","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fassets","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fassets\u002Findex",[1362],{"title":1358,"path":1359,"stem":1360},{"title":1364,"path":1365,"stem":1366,"children":1367},"Associations","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fassociations","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fassociations\u002Findex",[1368],{"title":1364,"path":1365,"stem":1366},{"title":1370,"path":1371,"stem":1372,"children":1373},"Categories","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fcategories","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fcategories\u002Findex",[1374],{"title":1370,"path":1371,"stem":1372},{"title":1376,"path":1377,"stem":1378,"children":1379},"Completeness","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fcompleteness","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fcompleteness\u002Findex",[1380],{"title":1376,"path":1377,"stem":1378},{"title":1033,"path":1382,"stem":1383,"children":1384},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fdata-model","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fdata-model\u002Findex",[1385],{"title":1033,"path":1382,"stem":1383},{"title":1387,"path":1388,"stem":1389,"children":1390},"Import and export","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fimport-and-export","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fimport-and-export\u002Findex",[1391],{"title":1387,"path":1388,"stem":1389},{"title":1393,"path":1394,"stem":1395,"children":1396},"Languages and locale codes","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Flanguages-and-locale-codes","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Flanguages-and-locale-codes\u002Findex",[1397],{"title":1393,"path":1394,"stem":1395},{"title":1399,"path":1400,"stem":1401,"children":1402},"Products","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fproducts","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fproducts\u002Findex",[1403],{"title":1399,"path":1400,"stem":1401},{"title":1405,"path":1406,"stem":1407,"children":1408},"References","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Freferences","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Freferences\u002Findex",[1409],{"title":1405,"path":1406,"stem":1407},{"title":1411,"path":1412,"stem":1413,"children":1414,"icon":1416},"Customers","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Findex",[1415,1417,1423,1429,1435,1441,1447,1453],{"title":1411,"path":1412,"stem":1413,"icon":1416},"i-lucide-building-2",{"title":1418,"path":1419,"stem":1420,"children":1421},"Contacts","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fcontacts","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fcontacts\u002Findex",[1422],{"title":1418,"path":1419,"stem":1420},{"title":1424,"path":1425,"stem":1426,"children":1427},"Organizations","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Forganizations","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Forganizations\u002Findex",[1428],{"title":1424,"path":1425,"stem":1426},{"title":1430,"path":1431,"stem":1432,"children":1433},"Roles and permissions","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Froles-and-permissions","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Froles-and-permissions\u002Findex",[1434],{"title":1430,"path":1431,"stem":1432},{"title":1436,"path":1437,"stem":1438,"children":1439},"Sales reps","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fsales-reps","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fsales-reps\u002Findex",[1440],{"title":1436,"path":1437,"stem":1438},{"title":1442,"path":1443,"stem":1444,"children":1445},"Segments","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fsegments","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fsegments\u002Findex",[1446],{"title":1442,"path":1443,"stem":1444},{"title":1448,"path":1449,"stem":1450,"children":1451},"Storefront accounts","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fstorefront-accounts","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fstorefront-accounts\u002Findex",[1452],{"title":1448,"path":1449,"stem":1450},{"title":1454,"path":1455,"stem":1456,"children":1457},"Value lists","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fvalue-lists","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fvalue-lists\u002Findex",[1458],{"title":1454,"path":1455,"stem":1456},{"title":1104,"path":1460,"stem":1461,"children":1462,"icon":1193},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fgetting-started","docs\u002Fstudios\u002Fcommerce\u002Fgetting-started\u002Findex",[1463],{"title":1104,"path":1460,"stem":1461,"icon":1193},{"title":1465,"path":1466,"stem":1467,"children":1468,"icon":615},"Markets and pricing","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Findex",[1469,1470,1476,1482,1488,1494,1500,1506,1511],{"title":1465,"path":1466,"stem":1467,"icon":615},{"title":1471,"path":1472,"stem":1473,"children":1474},"Carriers and tracking","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fcarriers-and-tracking","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fcarriers-and-tracking\u002Findex",[1475],{"title":1471,"path":1472,"stem":1473},{"title":1477,"path":1478,"stem":1479,"children":1480},"Channels","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fchannels","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fchannels\u002Findex",[1481],{"title":1477,"path":1478,"stem":1479},{"title":1483,"path":1484,"stem":1485,"children":1486},"Markets","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fmarkets","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fmarkets\u002Findex",[1487],{"title":1483,"path":1484,"stem":1485},{"title":1489,"path":1490,"stem":1491,"children":1492},"Payment lifecycle","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fpayment-lifecycle","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fpayment-lifecycle\u002Findex",[1493],{"title":1489,"path":1490,"stem":1491},{"title":1495,"path":1496,"stem":1497,"children":1498},"Payment methods","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fpayment-methods","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fpayment-methods\u002Findex",[1499],{"title":1495,"path":1496,"stem":1497},{"title":1501,"path":1502,"stem":1503,"children":1504},"Price lists","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fprice-lists","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fprice-lists\u002Findex",[1505],{"title":1501,"path":1502,"stem":1503},{"title":951,"path":1507,"stem":1508,"children":1509},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fsettings","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fsettings\u002Findex",[1510],{"title":951,"path":1507,"stem":1508},{"title":1512,"path":1513,"stem":1514,"children":1515},"Shipping rates","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fshipping-rates","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fshipping-rates\u002Findex",[1516],{"title":1512,"path":1513,"stem":1514},{"title":1518,"path":1519,"stem":1520,"children":1521,"icon":1523},"Orders","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Findex",[1522,1524,1530,1536,1542,1548,1554,1559,1565],{"title":1518,"path":1519,"stem":1520,"icon":1523},"i-lucide-receipt-text",{"title":1525,"path":1526,"stem":1527,"children":1528},"Carts","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Fcarts","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Fcarts\u002Findex",[1529],{"title":1525,"path":1526,"stem":1527},{"title":1531,"path":1532,"stem":1533,"children":1534},"Documents","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Fdocuments","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Fdocuments\u002Findex",[1535],{"title":1531,"path":1532,"stem":1533},{"title":1537,"path":1538,"stem":1539,"children":1540},"Events and comments","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Fevents-and-comments","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Fevents-and-comments\u002Findex",[1541],{"title":1537,"path":1538,"stem":1539},{"title":1543,"path":1544,"stem":1545,"children":1546},"Number ranges","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Fnumber-ranges","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Fnumber-ranges\u002Findex",[1547],{"title":1543,"path":1544,"stem":1545},{"title":1549,"path":1550,"stem":1551,"children":1552},"Order lists","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Forder-lists","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Forder-lists\u002Findex",[1553],{"title":1549,"path":1550,"stem":1551},{"title":1518,"path":1555,"stem":1556,"children":1557},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Forders","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Forders\u002Findex",[1558],{"title":1518,"path":1555,"stem":1556},{"title":1560,"path":1561,"stem":1562,"children":1563},"Returns","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Freturns","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Freturns\u002Findex",[1564],{"title":1560,"path":1561,"stem":1562},{"title":1566,"path":1567,"stem":1568,"children":1569},"Stock","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Fstock","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Fstock\u002Findex",[1570],{"title":1566,"path":1567,"stem":1568},{"title":1572,"path":1573,"stem":1574,"children":1575,"icon":1577},"Procurement","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fprocurement","docs\u002Fstudios\u002Fcommerce\u002Fprocurement\u002Findex",[1576,1578,1585],{"title":1572,"path":1573,"stem":1574,"icon":1577},"i-lucide-clipboard-check",{"title":1579,"path":1580,"stem":1581,"children":1582,"icon":1584},"Cost centers","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fprocurement\u002Fcost-centers","docs\u002Fstudios\u002Fcommerce\u002Fprocurement\u002Fcost-centers\u002Findex",[1583],{"title":1579,"path":1580,"stem":1581,"icon":1584},"i-lucide-wallet",{"title":1586,"path":1587,"stem":1588,"children":1589,"icon":29},"Punchout","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fprocurement\u002Fpunchout","docs\u002Fstudios\u002Fcommerce\u002Fprocurement\u002Fpunchout\u002Findex",[1590],{"title":1586,"path":1587,"stem":1588,"icon":29},{"title":1592,"path":1593,"stem":1594,"children":1595},"Integration Studio","\u002Fdocs\u002Fstudios\u002Fintegration-studio","docs\u002Fstudios\u002Fintegration-studio\u002Findex",[1596,1597,1634,1671,1701,1706,1736],{"title":1592,"path":1593,"stem":1594},{"title":1598,"path":1599,"stem":1600,"children":1601,"icon":1603},"Build the workflow","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Findex",[1602,1604,1610,1616,1622,1628],{"title":1598,"path":1599,"stem":1600,"icon":1603},"i-lucide-workflow",{"title":1605,"path":1606,"stem":1607,"children":1608},"Expressions","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fexpressions","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fexpressions\u002Findex",[1609],{"title":1605,"path":1606,"stem":1607},{"title":1611,"path":1612,"stem":1613,"children":1614},"Node catalog","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fnode-catalog","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fnode-catalog\u002Findex",[1615],{"title":1611,"path":1612,"stem":1613},{"title":1617,"path":1618,"stem":1619,"children":1620},"Node configuration","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fnode-configuration","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fnode-configuration\u002Findex",[1621],{"title":1617,"path":1618,"stem":1619},{"title":1623,"path":1624,"stem":1625,"children":1626},"Templates","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Ftemplates","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Ftemplates\u002Findex",[1627],{"title":1623,"path":1624,"stem":1625},{"title":1629,"path":1630,"stem":1631,"children":1632},"The workflow document","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fworkflow-model","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fworkflow-model\u002Findex",[1633],{"title":1629,"path":1630,"stem":1631},{"title":1635,"path":1636,"stem":1637,"children":1638,"icon":1640},"Connect the systems","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Findex",[1639,1641,1647,1653,1659,1665],{"title":1635,"path":1636,"stem":1637,"icon":1640},"i-lucide-key-round",{"title":1642,"path":1643,"stem":1644,"children":1645},"Credentials","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Fcredentials","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Fcredentials\u002Findex",[1646],{"title":1642,"path":1643,"stem":1644},{"title":1648,"path":1649,"stem":1650,"children":1651},"File transfer","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Ffiles","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Ffiles\u002Findex",[1652],{"title":1648,"path":1649,"stem":1650},{"title":1654,"path":1655,"stem":1656,"children":1657},"OAuth","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Foauth","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Foauth\u002Findex",[1658],{"title":1654,"path":1655,"stem":1656},{"title":1660,"path":1661,"stem":1662,"children":1663},"Reaching Revenue Cloud","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Freaching-revenue-cloud","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Freaching-revenue-cloud\u002Findex",[1664],{"title":1660,"path":1661,"stem":1662},{"title":1666,"path":1667,"stem":1668,"children":1669},"Secrets","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Fsecrets","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Fsecrets\u002Findex",[1670],{"title":1666,"path":1667,"stem":1668},{"title":1672,"path":1673,"stem":1674,"children":1675,"icon":1356},"Extend the Studio","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Findex",[1676,1677,1683,1689,1695],{"title":1672,"path":1673,"stem":1674,"icon":1356},{"title":1678,"path":1679,"stem":1680,"children":1681},"Custom nodes","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fcustom-nodes","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fcustom-nodes\u002Findex",[1682],{"title":1678,"path":1679,"stem":1680},{"title":1684,"path":1685,"stem":1686,"children":1687},"Dynamic behaviour","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fdynamic-behaviour","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fdynamic-behaviour\u002Findex",[1688],{"title":1684,"path":1685,"stem":1686},{"title":1690,"path":1691,"stem":1692,"children":1693},"Package manifest","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fpackage-manifest","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fpackage-manifest\u002Findex",[1694],{"title":1690,"path":1691,"stem":1692},{"title":1696,"path":1697,"stem":1698,"children":1699},"Registration","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fregistration","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fregistration\u002Findex",[1700],{"title":1696,"path":1697,"stem":1698},{"title":1104,"path":1702,"stem":1703,"children":1704,"icon":1193},"\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fgetting-started","docs\u002Fstudios\u002Fintegration-studio\u002Fgetting-started\u002Findex",[1705],{"title":1104,"path":1702,"stem":1703,"icon":1193},{"title":1707,"path":1708,"stem":1709,"children":1710,"icon":316},"Run, watch, recover","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Findex",[1711,1712,1718,1724,1730],{"title":1707,"path":1708,"stem":1709,"icon":316},{"title":1713,"path":1714,"stem":1715,"children":1716},"Missed runs","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Fdead-letters","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Fdead-letters\u002Findex",[1717],{"title":1713,"path":1714,"stem":1715},{"title":1719,"path":1720,"stem":1721,"children":1722},"Failure handling","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Ffailure-handling","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Ffailure-handling\u002Findex",[1723],{"title":1719,"path":1720,"stem":1721},{"title":1725,"path":1726,"stem":1727,"children":1728},"Revisions and audit","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Frevisions-and-audit","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Frevisions-and-audit\u002Findex",[1729],{"title":1725,"path":1726,"stem":1727},{"title":1731,"path":1732,"stem":1733,"children":1734},"Runs","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Fruns","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Fruns\u002Findex",[1735],{"title":1731,"path":1732,"stem":1733},{"title":1737,"path":1738,"stem":1739,"children":1740,"icon":1742},"Start the workflow","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Findex",[1741,1743,1749,1755,1761,1767],{"title":1737,"path":1738,"stem":1739,"icon":1742},"i-lucide-zap",{"title":1744,"path":1745,"stem":1746,"children":1747},"Event triggers","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fevent-triggers","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fevent-triggers\u002Findex",[1748],{"title":1744,"path":1745,"stem":1746},{"title":1750,"path":1751,"stem":1752,"children":1753},"Execution modes","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fexecution-modes","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fexecution-modes\u002Findex",[1754],{"title":1750,"path":1751,"stem":1752},{"title":1756,"path":1757,"stem":1758,"children":1759},"Schedule triggers","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fschedule-triggers","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fschedule-triggers\u002Findex",[1760],{"title":1756,"path":1757,"stem":1758},{"title":1762,"path":1763,"stem":1764,"children":1765},"Triggers","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Ftriggers","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Ftriggers\u002Findex",[1766],{"title":1762,"path":1763,"stem":1764},{"title":1768,"path":1769,"stem":1770,"children":1771},"Webhook triggers","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fwebhook-triggers","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fwebhook-triggers\u002Findex",[1772],{"title":1768,"path":1769,"stem":1770},{"title":1774,"path":1775,"stem":1776,"children":1777},"Experience Studio","\u002Fdocs\u002Fstudios\u002Fsites","docs\u002Fstudios\u002Fsites\u002Findex",[1778,1779,1827,1885,2011,2017,2059],{"title":1774,"path":1775,"stem":1776},{"title":1780,"path":1781,"stem":1782,"children":1783,"icon":418},"Compose pages","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Findex",[1784,1785,1791,1797,1803,1809,1815,1821],{"title":1780,"path":1781,"stem":1782,"icon":418},{"title":1786,"path":1787,"stem":1788,"children":1789},"Block catalog","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fblock-catalog","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fblock-catalog\u002Findex",[1790],{"title":1786,"path":1787,"stem":1788},{"title":1792,"path":1793,"stem":1794,"children":1795},"Block options","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fblock-options","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fblock-options\u002Findex",[1796],{"title":1792,"path":1793,"stem":1794},{"title":1798,"path":1799,"stem":1800,"children":1801},"How a block works","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fhow-a-block-works","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fhow-a-block-works\u002Findex",[1802],{"title":1798,"path":1799,"stem":1800},{"title":1804,"path":1805,"stem":1806,"children":1807},"Inline editing","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Finline-editing","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Finline-editing\u002Findex",[1808],{"title":1804,"path":1805,"stem":1806},{"title":1810,"path":1811,"stem":1812,"children":1813},"Reading published pages","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Freading-pages","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Freading-pages\u002Findex",[1814],{"title":1810,"path":1811,"stem":1812},{"title":1816,"path":1817,"stem":1818,"children":1819},"Registering blocks","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fregistering","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fregistering\u002Findex",[1820],{"title":1816,"path":1817,"stem":1818},{"title":1822,"path":1823,"stem":1824,"children":1825},"Shells and fields","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fshells-and-fields","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fshells-and-fields\u002Findex",[1826],{"title":1822,"path":1823,"stem":1824},{"title":1828,"path":1829,"stem":1830,"children":1831,"icon":262},"Connect data","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata","docs\u002Fstudios\u002Fsites\u002Fdata\u002Findex",[1832,1833,1838,1844,1850,1856,1861,1867,1873,1879],{"title":1828,"path":1829,"stem":1830,"icon":262},{"title":550,"path":1834,"stem":1835,"children":1836},"\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fauthentication","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fauthentication\u002Findex",[1837],{"title":550,"path":1834,"stem":1835},{"title":1839,"path":1840,"stem":1841,"children":1842},"The BFF pattern","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fbff-pattern","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fbff-pattern\u002Findex",[1843],{"title":1839,"path":1840,"stem":1841},{"title":1845,"path":1846,"stem":1847,"children":1848},"Catalog, cart, checkout","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fcatalog-cart-checkout","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fcatalog-cart-checkout\u002Findex",[1849],{"title":1845,"path":1846,"stem":1847},{"title":1851,"path":1852,"stem":1853,"children":1854},"Consent manager","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fconsent-manager","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fconsent-manager\u002Findex",[1855],{"title":1851,"path":1852,"stem":1853},{"title":1304,"path":1857,"stem":1858,"children":1859},"\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fforms","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fforms\u002Findex",[1860],{"title":1304,"path":1857,"stem":1858},{"title":1862,"path":1863,"stem":1864,"children":1865},"Media and assets","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fmedia","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fmedia\u002Findex",[1866],{"title":1862,"path":1863,"stem":1864},{"title":1868,"path":1869,"stem":1870,"children":1871},"Multi-tenant themes","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fmulti-tenant-themes","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fmulti-tenant-themes\u002Findex",[1872],{"title":1868,"path":1869,"stem":1870},{"title":1874,"path":1875,"stem":1876,"children":1877},"Search collections","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fsearch-collections","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fsearch-collections\u002Findex",[1878],{"title":1874,"path":1875,"stem":1876},{"title":1880,"path":1881,"stem":1882,"children":1883},"Search","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fsearch","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fsearch\u002Findex",[1884],{"title":1880,"path":1881,"stem":1882},{"title":1886,"path":1887,"stem":1888,"children":1889,"icon":1193},"Build and deploy","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Findex",[1890,1891,1897,1903,1909,1915,1921,1927,2005],{"title":1886,"path":1887,"stem":1888,"icon":1193},{"title":1892,"path":1893,"stem":1894,"children":1895},"Build configuration","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fbuild-configuration","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fbuild-configuration\u002Findex",[1896],{"title":1892,"path":1893,"stem":1894},{"title":1898,"path":1899,"stem":1900,"children":1901},"Compute specifications","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fcompute-specifications","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fcompute-specifications\u002Findex",[1902],{"title":1898,"path":1899,"stem":1900},{"title":1904,"path":1905,"stem":1906,"children":1907},"Environment variables","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fenvironment-variables","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fenvironment-variables\u002Findex",[1908],{"title":1904,"path":1905,"stem":1906},{"title":1910,"path":1911,"stem":1912,"children":1913},"From Git","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Ffrom-git","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Ffrom-git\u002Findex",[1914],{"title":1910,"path":1911,"stem":1912},{"title":1916,"path":1917,"stem":1918,"children":1919},"From the CLI","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Ffrom-the-cli","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Ffrom-the-cli\u002Findex",[1920],{"title":1916,"path":1917,"stem":1918},{"title":1922,"path":1923,"stem":1924,"children":1925},"Manually","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fmanually","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fmanually\u002Findex",[1926],{"title":1922,"path":1923,"stem":1924},{"title":1928,"path":1929,"stem":1930,"children":1931},"Quick-starts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Findex",[1932,1933,1939,1945,1951,1957,1963,1969,1975,1981,1987,1993,1999],{"title":1928,"path":1929,"stem":1930},{"title":1934,"path":1935,"stem":1936,"children":1937},"Deploy an Angular app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fangular","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fangular\u002Findex",[1938],{"title":1934,"path":1935,"stem":1936},{"title":1940,"path":1941,"stem":1942,"children":1943},"Deploy a Astro app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fastro","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fastro\u002Findex",[1944],{"title":1940,"path":1941,"stem":1942},{"title":1946,"path":1947,"stem":1948,"children":1949},"Deploy a Flutter Web app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fflutter","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fflutter\u002Findex",[1950],{"title":1946,"path":1947,"stem":1948},{"title":1952,"path":1953,"stem":1954,"children":1955},"Deploy a Next.js app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fnextjs","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fnextjs\u002Findex",[1956],{"title":1952,"path":1953,"stem":1954},{"title":1958,"path":1959,"stem":1960,"children":1961},"Deploy a Nuxt app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fnuxt","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fnuxt\u002Findex",[1962],{"title":1958,"path":1959,"stem":1960},{"title":1964,"path":1965,"stem":1966,"children":1967},"Deploy a React Native app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Freact-native","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Freact-native\u002Findex",[1968],{"title":1964,"path":1965,"stem":1966},{"title":1970,"path":1971,"stem":1972,"children":1973},"Deploy a React app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Freact","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Freact\u002Findex",[1974],{"title":1970,"path":1971,"stem":1972},{"title":1976,"path":1977,"stem":1978,"children":1979},"Deploy a Remix app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fremix","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fremix\u002Findex",[1980],{"title":1976,"path":1977,"stem":1978},{"title":1982,"path":1983,"stem":1984,"children":1985},"Deploy a SvelteKit app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fsveltekit","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fsveltekit\u002Findex",[1986],{"title":1982,"path":1983,"stem":1984},{"title":1988,"path":1989,"stem":1990,"children":1991},"Deploy a TanStack Start app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Ftanstack-start","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Ftanstack-start\u002Findex",[1992],{"title":1988,"path":1989,"stem":1990},{"title":1994,"path":1995,"stem":1996,"children":1997},"Deploy a Vanilla JS app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fvanilla","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fvanilla\u002Findex",[1998],{"title":1994,"path":1995,"stem":1996},{"title":2000,"path":2001,"stem":2002,"children":2003},"Deploy a Vue.js app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fvue","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fvue\u002Findex",[2004],{"title":2000,"path":2001,"stem":2002},{"title":2006,"path":2007,"stem":2008,"children":2009},"Starting points","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fstarting-points","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fstarting-points\u002Findex",[2010],{"title":2006,"path":2007,"stem":2008},{"title":1104,"path":2012,"stem":2013,"children":2014,"icon":2016},"\u002Fdocs\u002Fstudios\u002Fsites\u002Fgetting-started","docs\u002Fstudios\u002Fsites\u002Fgetting-started\u002Findex",[2015],{"title":1104,"path":2012,"stem":2013,"icon":2016},"i-lucide-terminal",{"title":2018,"path":2019,"stem":2020,"children":2021,"icon":615},"Production","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Findex",[2022,2023,2029,2035,2041,2047,2053],{"title":2018,"path":2019,"stem":2020,"icon":615},{"title":2024,"path":2025,"stem":2026,"children":2027},"Deployments","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Fdeployments","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Fdeployments\u002Findex",[2028],{"title":2024,"path":2025,"stem":2026},{"title":2030,"path":2031,"stem":2032,"children":2033},"Domains","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Fdomains","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Fdomains\u002Findex",[2034],{"title":2030,"path":2031,"stem":2032},{"title":2036,"path":2037,"stem":2038,"children":2039},"Instant rollbacks","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Finstant-rollbacks","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Finstant-rollbacks\u002Findex",[2040],{"title":2036,"path":2037,"stem":2038},{"title":2042,"path":2043,"stem":2044,"children":2045},"Logs","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Flogs","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Flogs\u002Findex",[2046],{"title":2042,"path":2043,"stem":2044},{"title":2048,"path":2049,"stem":2050,"children":2051},"Previews","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Fpreviews","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Fpreviews\u002Findex",[2052],{"title":2048,"path":2049,"stem":2050},{"title":2054,"path":2055,"stem":2056,"children":2057},"Publishing a theme","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Fpublishing-a-theme","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Fpublishing-a-theme\u002Findex",[2058],{"title":2054,"path":2055,"stem":2056},{"title":2060,"path":2061,"stem":2062,"children":2063,"icon":404},"Build the theme","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Findex",[2064,2065,2071,2077,2083,2089,2095,2101,2107,2125],{"title":2060,"path":2061,"stem":2062,"icon":404},{"title":2066,"path":2067,"stem":2068,"children":2069},"Theme anatomy","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fanatomy","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Fanatomy\u002Findex",[2070],{"title":2066,"path":2067,"stem":2068},{"title":2072,"path":2073,"stem":2074,"children":2075},"Design tokens","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fdesign-tokens","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Fdesign-tokens\u002Findex",[2076],{"title":2072,"path":2073,"stem":2074},{"title":2078,"path":2079,"stem":2080,"children":2081},"Frameworks","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fframeworks","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Fframeworks\u002Findex",[2082],{"title":2078,"path":2079,"stem":2080},{"title":2084,"path":2085,"stem":2086,"children":2087},"The layer chain","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Flayer-chain","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Flayer-chain\u002Findex",[2088],{"title":2084,"path":2085,"stem":2086},{"title":2090,"path":2091,"stem":2092,"children":2093},"Local development","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Flocal-development","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Flocal-development\u002Findex",[2094],{"title":2090,"path":2091,"stem":2092},{"title":2096,"path":2097,"stem":2098,"children":2099},"Modules and plugins","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fmodules-and-plugins","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Fmodules-and-plugins\u002Findex",[2100],{"title":2096,"path":2097,"stem":2098},{"title":2102,"path":2103,"stem":2104,"children":2105},"Overriding","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Foverriding","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Foverriding\u002Findex",[2106],{"title":2102,"path":2103,"stem":2104},{"title":2108,"path":2109,"stem":2110,"children":2111},"Rendering","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Findex",[2112,2113,2119],{"title":2108,"path":2109,"stem":2110},{"title":2114,"path":2115,"stem":2116,"children":2117},"SSR","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Fssr","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Fssr\u002Findex",[2118],{"title":2114,"path":2115,"stem":2116},{"title":2120,"path":2121,"stem":2122,"children":2123},"Static","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Fstatic","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Fstatic\u002Findex",[2124],{"title":2120,"path":2121,"stem":2122},{"title":2126,"path":2127,"stem":2128,"children":2129},"Service modes","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fservice-modes","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Fservice-modes\u002Findex",[2130],{"title":2126,"path":2127,"stem":2128},{"title":2132,"path":2133,"stem":2134,"children":2135},"Tools","\u002Fdocs\u002Ftools","docs\u002Ftools\u002Findex",[2136,2137,2144,2359],{"title":2132,"path":2133,"stem":2134},{"title":2138,"path":2139,"stem":2140,"children":2141,"icon":2143},"AI agents","\u002Fdocs\u002Ftools\u002Fai-agents","docs\u002Ftools\u002Fai-agents\u002Findex",[2142],{"title":2138,"path":2139,"stem":2140,"icon":2143},"i-lucide-shield-alert",{"title":2145,"path":2146,"stem":2147,"children":2148},"Command line","\u002Fdocs\u002Ftools\u002Fcommand-line","docs\u002Ftools\u002Fcommand-line\u002Findex",[2149,2150,2156,2161,2167,2173,2179,2185,2191,2197,2317,2323,2329,2335,2341,2347,2353],{"title":2145,"path":2146,"stem":2147},{"title":2151,"path":2152,"stem":2153,"children":2154},"Aliases","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Faliases","docs\u002Ftools\u002Fcommand-line\u002Faliases\u002Findex",[2155],{"title":2151,"path":2152,"stem":2153},{"title":550,"path":2157,"stem":2158,"children":2159},"\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fauthentication","docs\u002Ftools\u002Fcommand-line\u002Fauthentication\u002Findex",[2160],{"title":550,"path":2157,"stem":2158},{"title":2162,"path":2163,"stem":2164,"children":2165},"Commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fcommands","docs\u002Ftools\u002Fcommand-line\u002Fcommands\u002Findex",[2166],{"title":2162,"path":2163,"stem":2164},{"title":2168,"path":2169,"stem":2170,"children":2171},"Global commands reference","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fglobal-commands","docs\u002Ftools\u002Fcommand-line\u002Fglobal-commands\u002Findex",[2172],{"title":2168,"path":2169,"stem":2170},{"title":2174,"path":2175,"stem":2176,"children":2177},"Installation","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Finstallation","docs\u002Ftools\u002Fcommand-line\u002Finstallation\u002Findex",[2178],{"title":2174,"path":2175,"stem":2176},{"title":2180,"path":2181,"stem":2182,"children":2183},"Interactive use","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Finteractive","docs\u002Ftools\u002Fcommand-line\u002Finteractive\u002Findex",[2184],{"title":2180,"path":2181,"stem":2182},{"title":2186,"path":2187,"stem":2188,"children":2189},"Non-interactive use","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fnon-interactive","docs\u002Ftools\u002Fcommand-line\u002Fnon-interactive\u002Findex",[2190],{"title":2186,"path":2187,"stem":2188},{"title":2192,"path":2193,"stem":2194,"children":2195},"Project configuration","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fproject-configuration","docs\u002Ftools\u002Fcommand-line\u002Fproject-configuration\u002Findex",[2196],{"title":2192,"path":2193,"stem":2194},{"title":2198,"path":2199,"stem":2200,"children":2201},"Command reference","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Findex",[2202,2203,2209,2215,2221,2227,2233,2239,2245,2251,2257,2263,2269,2275,2281,2287,2293,2299,2305,2311],{"title":2198,"path":2199,"stem":2200},{"title":2204,"path":2205,"stem":2206,"children":2207},"About commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fabout","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fabout\u002Findex",[2208],{"title":2204,"path":2205,"stem":2206},{"title":2210,"path":2211,"stem":2212,"children":2213},"Apps commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fapps","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fapps\u002Findex",[2214],{"title":2210,"path":2211,"stem":2212},{"title":2216,"path":2217,"stem":2218,"children":2219},"Carts commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcarts","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcarts\u002Findex",[2220],{"title":2216,"path":2217,"stem":2218},{"title":2222,"path":2223,"stem":2224,"children":2225},"Channels commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fchannels","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fchannels\u002Findex",[2226],{"title":2222,"path":2223,"stem":2224},{"title":2228,"path":2229,"stem":2230,"children":2231},"Create commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcreate","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcreate\u002Findex",[2232],{"title":2228,"path":2229,"stem":2230},{"title":2234,"path":2235,"stem":2236,"children":2237},"Customers commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Findex",[2238],{"title":2234,"path":2235,"stem":2236},{"title":2240,"path":2241,"stem":2242,"children":2243},"Deploy commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fdeploy","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fdeploy\u002Findex",[2244],{"title":2240,"path":2241,"stem":2242},{"title":2246,"path":2247,"stem":2248,"children":2249},"Forms commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fforms","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fforms\u002Findex",[2250],{"title":2246,"path":2247,"stem":2248},{"title":2252,"path":2253,"stem":2254,"children":2255},"Markets commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmarkets","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmarkets\u002Findex",[2256],{"title":2252,"path":2253,"stem":2254},{"title":2258,"path":2259,"stem":2260,"children":2261},"Order lists commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Forderlists","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Forderlists\u002Findex",[2262],{"title":2258,"path":2259,"stem":2260},{"title":2264,"path":2265,"stem":2266,"children":2267},"Orders commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Forders","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Forders\u002Findex",[2268],{"title":2264,"path":2265,"stem":2266},{"title":2270,"path":2271,"stem":2272,"children":2273},"Pages commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpages","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpages\u002Findex",[2274],{"title":2270,"path":2271,"stem":2272},{"title":2276,"path":2277,"stem":2278,"children":2279},"Prices commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fprices","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fprices\u002Findex",[2280],{"title":2276,"path":2277,"stem":2278},{"title":2282,"path":2283,"stem":2284,"children":2285},"Products commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts\u002Findex",[2286],{"title":2282,"path":2283,"stem":2284},{"title":2288,"path":2289,"stem":2290,"children":2291},"Search commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsearch","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsearch\u002Findex",[2292],{"title":2288,"path":2289,"stem":2290},{"title":2294,"path":2295,"stem":2296,"children":2297},"Settings commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsettings","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsettings\u002Findex",[2298],{"title":2294,"path":2295,"stem":2296},{"title":2300,"path":2301,"stem":2302,"children":2303},"Sites commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsites","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsites\u002Findex",[2304],{"title":2300,"path":2301,"stem":2302},{"title":2306,"path":2307,"stem":2308,"children":2309},"Skills commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fskills","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fskills\u002Findex",[2310],{"title":2306,"path":2307,"stem":2308},{"title":2312,"path":2313,"stem":2314,"children":2315},"Storage commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fstorage","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fstorage\u002Findex",[2316],{"title":2312,"path":2313,"stem":2314},{"title":2318,"path":2319,"stem":2320,"children":2321},"Interactive shell (REPL)","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Frepl","docs\u002Ftools\u002Fcommand-line\u002Frepl\u002Findex",[2322],{"title":2318,"path":2319,"stem":2320},{"title":2324,"path":2325,"stem":2326,"children":2327},"Scaffolding","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fscaffolding","docs\u002Ftools\u002Fcommand-line\u002Fscaffolding\u002Findex",[2328],{"title":2324,"path":2325,"stem":2326},{"title":2330,"path":2331,"stem":2332,"children":2333},"Scripting & output","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fscripting","docs\u002Ftools\u002Fcommand-line\u002Fscripting\u002Findex",[2334],{"title":2330,"path":2331,"stem":2332},{"title":2336,"path":2337,"stem":2338,"children":2339},"Skills","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fskills","docs\u002Ftools\u002Fcommand-line\u002Fskills\u002Findex",[2340],{"title":2336,"path":2337,"stem":2338},{"title":2342,"path":2343,"stem":2344,"children":2345},"Full-screen app (TUI)","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Ftui","docs\u002Ftools\u002Fcommand-line\u002Ftui\u002Findex",[2346],{"title":2342,"path":2343,"stem":2344},{"title":2348,"path":2349,"stem":2350,"children":2351},"Type generation","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Ftype-generation","docs\u002Ftools\u002Fcommand-line\u002Ftype-generation\u002Findex",[2352],{"title":2348,"path":2349,"stem":2350},{"title":2354,"path":2355,"stem":2356,"children":2357},"Background watchers","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fwatch","docs\u002Ftools\u002Fcommand-line\u002Fwatch\u002Findex",[2358],{"title":2354,"path":2355,"stem":2356},{"title":2360,"path":2361,"stem":2362,"children":2363},"Model Context Protocol","\u002Fdocs\u002Ftools\u002Fmcp","docs\u002Ftools\u002Fmcp\u002Findex",[2364,2365,2371,2377,2383,2389,2395,2401,2407],{"title":2360,"path":2361,"stem":2362},{"title":2366,"path":2367,"stem":2368,"children":2369},"revenexx docs MCP in Google Antigravity","\u002Fdocs\u002Ftools\u002Fmcp\u002Fantigravity","docs\u002Ftools\u002Fmcp\u002Fantigravity\u002Findex",[2370],{"title":2366,"path":2367,"stem":2368},{"title":2372,"path":2373,"stem":2374,"children":2375},"revenexx docs MCP in Claude Code","\u002Fdocs\u002Ftools\u002Fmcp\u002Fclaude-code","docs\u002Ftools\u002Fmcp\u002Fclaude-code\u002Findex",[2376],{"title":2372,"path":2373,"stem":2374},{"title":2378,"path":2379,"stem":2380,"children":2381},"revenexx docs MCP in Claude Desktop","\u002Fdocs\u002Ftools\u002Fmcp\u002Fclaude-desktop","docs\u002Ftools\u002Fmcp\u002Fclaude-desktop\u002Findex",[2382],{"title":2378,"path":2379,"stem":2380},{"title":2384,"path":2385,"stem":2386,"children":2387},"revenexx docs MCP in Cursor","\u002Fdocs\u002Ftools\u002Fmcp\u002Fcursor","docs\u002Ftools\u002Fmcp\u002Fcursor\u002Findex",[2388],{"title":2384,"path":2385,"stem":2386},{"title":2390,"path":2391,"stem":2392,"children":2393},"revenexx docs MCP in OpenCode","\u002Fdocs\u002Ftools\u002Fmcp\u002Fopencode","docs\u002Ftools\u002Fmcp\u002Fopencode\u002Findex",[2394],{"title":2390,"path":2391,"stem":2392},{"title":2396,"path":2397,"stem":2398,"children":2399},"revenexx docs MCP in VS Code","\u002Fdocs\u002Ftools\u002Fmcp\u002Fvscode","docs\u002Ftools\u002Fmcp\u002Fvscode\u002Findex",[2400],{"title":2396,"path":2397,"stem":2398},{"title":2402,"path":2403,"stem":2404,"children":2405},"revenexx docs MCP in Windsurf","\u002Fdocs\u002Ftools\u002Fmcp\u002Fwindsurf","docs\u002Ftools\u002Fmcp\u002Fwindsurf\u002Findex",[2406],{"title":2402,"path":2403,"stem":2404},{"title":2408,"path":2409,"stem":2410,"children":2411},"revenexx docs MCP in Zenflow","\u002Fdocs\u002Ftools\u002Fmcp\u002Fzenflow","docs\u002Ftools\u002Fmcp\u002Fzenflow\u002Findex",[2412],{"title":2408,"path":2409,"stem":2410},{"id":2414,"title":324,"body":2415,"description":3418,"extension":3419,"landing":3420,"links":3420,"meta":3421,"navigation":3422,"path":325,"seo":3423,"sitemap":3424,"stem":326,"__hash__":3425},"docs\u002Fdocs\u002Fguides\u002Foperate\u002Fdebug-a-failed-request\u002Findex.md",{"type":2416,"value":2417,"toc":3406},"minimark",[2418,2427,2435,2454,2478,2483,2496,2577,2592,2596,2599,2679,2713,2722,2726,2732,2865,2876,2879,2883,2888,3179,3192,3197,3218,3222,3234,3253,3282,3286,3289,3323,3327,3340,3364,3375,3379,3402],[2419,2420,2421,2422,2426],"p",{},"A call to ",[2423,2424,2425],"code",{},"api.revenexx.com"," came back with an error and you need to know why. This guide takes you from that response to a cause: reproduce it so you can see everything, work out who answered, match the error to what went wrong, and hand over the right details if you still need help.",[2419,2428,2429,2430,2434],{},"It is written from the caller's side, so it applies to any code that calls the API: your own server, a Theme's server route, an integration or a script. If you wrote the App that answered, ",[2431,2432,2433],"a",{"href":1226},"Operating an App"," covers the same failures from inside the App.",[2419,2436,2437,2438,2442,2443,2445,2446,2449,2450,2453],{},"Two terms come up throughout. The ",[2439,2440,2441],"strong",{},"gateway"," is the front door at ",[2423,2444,2425],{},". It checks the tenant, the credential, the route and the request body, then hands the request to whatever serves that route. A ",[2439,2447,2448],{},"capability"," is a route that an installed App provides, and most routes under ",[2423,2451,2452],{},"\u002Fv1"," are one. The rest are platform services such as storage and search, which the gateway forwards to directly.",[2419,2455,2456,2457,2461,2462,2465,2466,2470,2471,2477],{},"You need the ",[2431,2458,2460],{"href":2459},"\u002Fdocs\u002Fgetting-started\u002Fprerequisites#find-your-tenant-slug","tenant slug"," (the value in ",[2423,2463,2464],{},"X-Revenexx-Tenant",") and the credential the failing call used. Which scope a route needs is in ",[2431,2467,2469],{"href":2468},"\u002Fdocs\u002Fgetting-started\u002Fprerequisites#which-scope-covers-which-app","which scope covers which app",". If several calls are failing at once, check ",[2431,2472,2476],{"href":2473,"rel":2474},"https:\u002F\u002Fstatus.revenexx.com",[2475],"nofollow","status.revenexx.com"," before anything else.",[2479,2480,2482],"h2",{"id":2481},"_1-reproduce-it-with-the-full-response","1. Reproduce it with the full response",[2419,2484,2485,2486,2489,2490,2492,2493,2495],{},"Most clients show you a status and a message. You need the headers too, and they decide step 3. Send the failing call again with ",[2423,2487,2488],{},"curl -i"," (with your ",[2431,2491,2460],{"href":2459}," in ",[2423,2494,2464],{},"), and give it a request ID of your own:",[2497,2498,2504],"pre",{"className":2499,"code":2500,"filename":2501,"language":2502,"meta":2503,"style":2503},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","curl -i https:\u002F\u002Fapi.revenexx.com\u002Fv1\u002Fproducts \\\n  -H \"X-Revenexx-Tenant: \u003CTENANT_SLUG>\" \\\n  -H \"X-Revenexx-Api-Key: rvxk_...\" \\\n  -H \"X-Request-ID: $(uuidgen)\"\n","Request","bash","",[2423,2505,2506,2526,2544,2558],{"__ignoreMap":2503},[2507,2508,2511,2515,2519,2522],"span",{"class":2509,"line":2510},"line",1,[2507,2512,2514],{"class":2513},"sBMFI","curl",[2507,2516,2518],{"class":2517},"sfazB"," -i",[2507,2520,2521],{"class":2517}," https:\u002F\u002Fapi.revenexx.com\u002Fv1\u002Fproducts",[2507,2523,2525],{"class":2524},"sTEyZ"," \\\n",[2507,2527,2529,2532,2536,2539,2542],{"class":2509,"line":2528},2,[2507,2530,2531],{"class":2517},"  -H",[2507,2533,2535],{"class":2534},"sMK4o"," \"",[2507,2537,2538],{"class":2517},"X-Revenexx-Tenant: \u003CTENANT_SLUG>",[2507,2540,2541],{"class":2534},"\"",[2507,2543,2525],{"class":2524},[2507,2545,2547,2549,2551,2554,2556],{"class":2509,"line":2546},3,[2507,2548,2531],{"class":2517},[2507,2550,2535],{"class":2534},[2507,2552,2553],{"class":2517},"X-Revenexx-Api-Key: rvxk_...",[2507,2555,2541],{"class":2534},[2507,2557,2525],{"class":2524},[2507,2559,2561,2563,2565,2568,2571,2574],{"class":2509,"line":2560},4,[2507,2562,2531],{"class":2517},[2507,2564,2535],{"class":2534},[2507,2566,2567],{"class":2517},"X-Request-ID: ",[2507,2569,2570],{"class":2534},"$(",[2507,2572,2573],{"class":2513},"uuidgen",[2507,2575,2576],{"class":2534},")\"\n",[2419,2578,2579,2580,2586,2587,2591],{},"Send your own ID because ",[2439,2581,2582,2583],{},"when the gateway refuses a request itself, the response carries no ",[2423,2584,2585],{},"X-Request-ID",", even if you sent one. The ID comes back only once the request has been handed on. So create one per request, send it, and log it next to the response. Do the same in your production client, and the next failure arrives with an ID you can quote. See ",[2431,2588,2590],{"href":2589},"\u002Fdocs\u002Fservices\u002Fapi-usage#request-ids","Request IDs",".",[2479,2593,2595],{"id":2594},"_2-read-the-status-and-the-error-code","2. Read the status and the error code",[2419,2597,2598],{},"Every error the gateway writes has the same JSON body:",[2497,2600,2605],{"className":2601,"code":2602,"filename":2603,"language":2604,"meta":2503,"style":2503},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"error\": \"missing X-Revenexx-Tenant\",\n  \"code\": \"bad_request\",\n  \"message\": \"missing X-Revenexx-Tenant\"\n}\n","Error","json",[2423,2606,2607,2612,2636,2655,2673],{"__ignoreMap":2503},[2507,2608,2609],{"class":2509,"line":2510},[2507,2610,2611],{"class":2534},"{\n",[2507,2613,2614,2617,2621,2623,2626,2628,2631,2633],{"class":2509,"line":2528},[2507,2615,2616],{"class":2534},"  \"",[2507,2618,2620],{"class":2619},"spNyl","error",[2507,2622,2541],{"class":2534},[2507,2624,2625],{"class":2534},":",[2507,2627,2535],{"class":2534},[2507,2629,2630],{"class":2517},"missing X-Revenexx-Tenant",[2507,2632,2541],{"class":2534},[2507,2634,2635],{"class":2534},",\n",[2507,2637,2638,2640,2642,2644,2646,2648,2651,2653],{"class":2509,"line":2546},[2507,2639,2616],{"class":2534},[2507,2641,2423],{"class":2619},[2507,2643,2541],{"class":2534},[2507,2645,2625],{"class":2534},[2507,2647,2535],{"class":2534},[2507,2649,2650],{"class":2517},"bad_request",[2507,2652,2541],{"class":2534},[2507,2654,2635],{"class":2534},[2507,2656,2657,2659,2662,2664,2666,2668,2670],{"class":2509,"line":2560},[2507,2658,2616],{"class":2534},[2507,2660,2661],{"class":2619},"message",[2507,2663,2541],{"class":2534},[2507,2665,2625],{"class":2534},[2507,2667,2535],{"class":2534},[2507,2669,2630],{"class":2517},[2507,2671,2672],{"class":2534},"\"\n",[2507,2674,2676],{"class":2509,"line":2675},5,[2507,2677,2678],{"class":2534},"}\n",[2680,2681,2682,2689,2696,2703],"ul",{},[2683,2684,2685,2688],"li",{},[2439,2686,2687],{},"The status"," decides what your code does next: fix the request, fix the credential, wait, or retry.",[2683,2690,2691,2695],{},[2439,2692,2693],{},[2423,2694,2423],{}," is the machine-readable part. Branch on it, not on the text.",[2683,2697,2698,2702],{},[2439,2699,2700],{},[2423,2701,2620],{}," is the reason in words. Log it and quote it when you escalate, but don't match on its wording.",[2683,2704,2705,2709,2710,2712],{},[2439,2706,2707],{},[2423,2708,2661],{}," repeats ",[2423,2711,2620],{}," for older clients. Don't build anything new on it.",[2419,2714,2715,2716,2718,2719,2721],{},"Apps are expected to answer with the same ",[2423,2717,2620],{}," and ",[2423,2720,2423],{}," fields, so the shape of the body does not tell you who wrote it. The headers do.",[2479,2723,2725],{"id":2724},"_3-work-out-who-answered","3. Work out who answered",[2419,2727,2728,2731],{},[2423,2729,2730],{},"X-Capability-App"," names the installed App that served a capability route. The gateway sets it once it has handed the request to that App, so it is the header to look at first.",[2733,2734,2735,2751],"table",{},[2736,2737,2738],"thead",{},[2739,2740,2741,2745,2748],"tr",{},[2742,2743,2744],"th",{},"What you see",[2742,2746,2747],{},"Who answered",[2742,2749,2750],{},"Next",[2752,2753,2754,2775,2792,2812,2829,2849],"tbody",{},[2739,2755,2756,2766,2769],{},[2757,2758,2759,2762,2763],"td",{},[2423,2760,2761],{},"502",", ",[2423,2764,2765],{},"code: dispatch_failed",[2757,2767,2768],{},"The gateway. It could not get an answer from what serves the route: unreachable, or too slow.",[2757,2770,2771,2772,2774],{},"Step 4, the ",[2423,2773,2761],{}," row",[2739,2776,2777,2786,2789],{},[2757,2778,2779,2780,2783,2784],{},"An error ",[2439,2781,2782],{},"with"," ",[2423,2785,2730],{},[2757,2787,2788],{},"The App named in that header. Its status and body reached you as it sent them.",[2757,2790,2791],{},"Step 5",[2739,2793,2794,2806,2809],{},[2757,2795,2796,2797,2783,2800,2802,2803,2805],{},"A JSON error ",[2439,2798,2799],{},"without",[2423,2801,2730],{},", whose ",[2423,2804,2620],{}," text is in the step 4 table",[2757,2807,2808],{},"The gateway, before anything behind it ran",[2757,2810,2811],{},"Step 4",[2739,2813,2814,2821,2824],{},[2757,2815,2796,2816,2783,2818,2820],{},[2439,2817,2799],{},[2423,2819,2730],{}," on a platform service route, such as storage or search",[2757,2822,2823],{},"That platform service",[2757,2825,2826,2827],{},"Its reference page, for example ",[2431,2828,678],{"href":679},[2739,2830,2831,2840,2846],{},[2757,2832,2833,2836,2837],{},[2423,2834,2835],{},"404"," with the plain text ",[2423,2838,2839],{},"404 page not found",[2757,2841,2842,2843,2845],{},"The gateway: the path is not under ",[2423,2844,2452],{}," at all",[2757,2847,2848],{},"Fix the path",[2739,2850,2851,2854,2857],{},[2757,2852,2853],{},"Any other body that is not JSON, such as an HTML page",[2757,2855,2856],{},"Most likely the edge firewall in front of the gateway",[2757,2858,2859,2718,2862],{},[2431,2860,2861],{"href":673},"WAF",[2431,2863,2864],{"href":649},"DDoS",[2419,2866,2867,2868,2871,2872,2591],{},"If the response also carries ",[2423,2869,2870],{},"X-Capability-Degraded: true",", the App that normally serves the route failed and a fallback implementation answered instead. See ",[2431,2873,2875],{"href":2874},"\u002Fdocs\u002Fservices\u002Fapi-usage#response-headers-worth-knowing","Response headers worth knowing",[2419,2877,2878],{},"This split saves the most time. A refusal from the step 4 table is almost always fixed in your request, not in the App's code. The exception is a contract error caused by a schema that is stricter than it should be, which the App's author has to fix. An error the App wrote is never fixed by changing your credential.",[2479,2880,2882],{"id":2881},"_4-match-a-gateway-error-to-its-cause","4. Match a gateway error to its cause",[2419,2884,2885,2886,2591],{},"The gateway writes these itself, with the reasons you will see in ",[2423,2887,2620],{},[2733,2889,2890,2909],{},[2736,2891,2892],{},[2739,2893,2894,2897,2901,2906],{},[2742,2895,2896],{},"Status",[2742,2898,2899],{},[2423,2900,2423],{},[2742,2902,2903,2905],{},[2423,2904,2620],{}," says",[2742,2907,2908],{},"What it means, and what to do",[2752,2910,2911,2929,2951,2971,2989,3013,3031,3056,3080,3104,3132,3157],{},[2739,2912,2913,2918,2922,2926],{},[2757,2914,2915],{},[2423,2916,2917],{},"400",[2757,2919,2920],{},[2423,2921,2650],{},[2757,2923,2924],{},[2423,2925,2630],{},[2757,2927,2928],{},"The tenant header is missing or blank. It is checked before the credential, so you get this even with no key.",[2739,2930,2931,2935,2939,2944],{},[2757,2932,2933],{},[2423,2934,2917],{},[2757,2936,2937],{},[2423,2938,2650],{},[2757,2940,2941],{},[2423,2942,2943],{},"request body does not match contract: …",[2757,2945,2946,2947,2950],{},"The body failed the route's request schema before anything behind the gateway saw it. The text after the colon names the fields. A ",[2423,2948,2949],{},"POST"," with no body is checked too and fails, so send a JSON object with the required fields.",[2739,2952,2953,2958,2963,2968],{},[2757,2954,2955],{},[2423,2956,2957],{},"401",[2757,2959,2960],{},[2423,2961,2962],{},"not_authenticated",[2757,2964,2965],{},[2423,2966,2967],{},"invalid api key",[2757,2969,2970],{},"The key you sent is unknown: a typo, a deleted key, or a key from another environment.",[2739,2972,2973,2977,2981,2986],{},[2757,2974,2975],{},[2423,2976,2957],{},[2757,2978,2979],{},[2423,2980,2962],{},[2757,2982,2983],{},[2423,2984,2985],{},"not authenticated",[2757,2987,2988],{},"No credential arrived, or the Bearer token is not valid.",[2739,2990,2991,2996,3001,3006],{},[2757,2992,2993],{},[2423,2994,2995],{},"403",[2757,2997,2998],{},[2423,2999,3000],{},"forbidden",[2757,3002,3003],{},[2423,3004,3005],{},"api key not valid for this tenant",[2757,3007,3008,3009,3012],{},"The key is real but belongs to another tenant. ",[2439,3010,3011],{},"A misspelt tenant slug gives this same answer",", so check the slug before you check the key.",[2739,3014,3015,3019,3023,3028],{},[2757,3016,3017],{},[2423,3018,2995],{},[2757,3020,3021],{},[2423,3022,3000],{},[2757,3024,3025],{},[2423,3026,3027],{},"not a member of this tenant",[2757,3029,3030],{},"A valid user token for someone who has no access to this tenant.",[2739,3032,3033,3037,3041,3051],{},[2757,3034,3035],{},[2423,3036,2995],{},[2757,3038,3039],{},[2423,3040,3000],{},[2757,3042,3043,3046,3047,3050],{},[2423,3044,3045],{},"api key scope does not permit this capability",", or ",[2423,3048,3049],{},"api key missing scope: …"," on a platform service route",[2757,3052,3053,3054,2591],{},"The key works, but its scopes don't cover this route. Use a key that has the scope, or create one in Cockpit that does. See ",[2431,3055,556],{"href":557},[2739,3057,3058,3062,3067,3072],{},[2757,3059,3060],{},[2423,3061,2835],{},[2757,3063,3064],{},[2423,3065,3066],{},"not_found",[2757,3068,3069],{},[2423,3070,3071],{},"no capability matches this route",[2757,3073,3074,3075,3079],{},"Nothing on this tenant serves that path: either the path is wrong, or the App that provides it is not installed on this tenant (",[2431,3076,3078],{"href":3077},"\u002Fdocs\u002Fgetting-started\u002Fprerequisites#check-and-install-an-app","check and install an app",").",[2739,3081,3082,3087,3092,3097],{},[2757,3083,3084],{},[2423,3085,3086],{},"405",[2757,3088,3089],{},[2423,3090,3091],{},"method_not_allowed",[2757,3093,3094],{},[2423,3095,3096],{},"this route does not accept …; allowed: …",[2757,3098,3099,3100,3103],{},"The path exists, but not for this method. The ",[2423,3101,3102],{},"Allow"," header lists the ones it takes.",[2739,3105,3106,3111,3115,3120],{},[2757,3107,3108],{},[2423,3109,3110],{},"429",[2757,3112,3113],{},[2423,3114,2620],{},[2757,3116,3117],{},[2423,3118,3119],{},"rate limit exceeded",[2757,3121,3122,3123,3125,3126,3129,3130,2591],{},"The tenant's shared request budget is spent. ",[2423,3124,2620],{}," is the generic code, not a typo. Wait for ",[2423,3127,3128],{},"Retry-After",", then back off. See ",[2431,3131,531],{"href":532},[2739,3133,3134,3138,3143,3151],{},[2757,3135,3136],{},[2423,3137,2761],{},[2757,3139,3140],{},[2423,3141,3142],{},"dispatch_failed",[2757,3144,3145,3046,3148],{},[2423,3146,3147],{},"capability dispatch failed",[2423,3149,3150],{},"… upstream unreachable",[2757,3152,3153,3154,2591],{},"The gateway could not get an answer from what serves the route. A timeout ends here too: the gateway does not send ",[2423,3155,3156],{},"504",[2739,3158,3159,3164,3169,3172],{},[2757,3160,3161],{},[2423,3162,3163],{},"503",[2757,3165,3166],{},[2423,3167,3168],{},"unavailable",[2757,3170,3171],{},"varies",[2757,3173,3174,3175,3178],{},"Something the route depends on is not available. Check ",[2431,3176,2476],{"href":2473,"rel":3177},[2475],", then retry later.",[2419,3180,3181,3184,3185,3187,3188,3191],{},[2439,3182,3183],{},"If you sent both an API key and a Bearer token",", the key wins and the token is ignored, so a bad key fails with ",[2423,3186,2967],{}," even when the token is fine. Send one credential, as ",[2431,3189,507],{"href":3190},"\u002Fdocs\u002Fservices\u002Fapi-usage#request-headers"," says.",[3193,3194,3196],"h3",{"id":3195},"before-you-retry-a-failed-write","Before you retry a failed write",[2419,3198,3199,3200,3202,3203,2762,3205,2762,3208,3211,3212,3215,3216,2591],{},"A ",[2423,3201,2761],{}," on a ",[2423,3204,2949],{},[2423,3206,3207],{},"PUT",[2423,3209,3210],{},"PATCH"," or ",[2423,3213,3214],{},"DELETE"," does not prove that nothing happened. The App may have received the request and applied it before the gateway gave up waiting. The gateway resends a write only when it knows the first attempt never arrived, or when the route has a fallback implementation, which then receives the same request. So don't retry a write blindly. Re-read the resource to see whether it landed, or design the write so that repeating it is harmless. See ",[2431,3217,519],{"href":520},[2479,3219,3221],{"id":3220},"_5-read-an-error-from-the-app","5. Read an error from the App",[2419,3223,3224,3225,3227,3228,3230,3231,2591],{},"When ",[2423,3226,2730],{}," is on the response, the status and body are the App's own, passed through as it sent them. The one exception: if the App sent an error with an empty or non-JSON body, the gateway wraps it, keeps the App's status and sets ",[2423,3229,2423],{}," to ",[2423,3232,3233],{},"upstream_no_body",[2419,3235,3236,3237,3211,3240,3243,3244,3246,3247,3249,3250,3252],{},"The gateway itself never writes ",[2423,3238,3239],{},"409",[2423,3241,3242],{},"422",". With ",[2423,3245,2730],{}," on the response, they are the App saying that the request conflicts with existing data (",[2423,3248,3239],{},") or is well formed but breaks one of its rules (",[2423,3251,3242],{},"). What each of the App's codes means is part of that route's contract:",[2680,3254,3255,3274],{},[2683,3256,3257,3260,3261,3265,3266,3269,3270,3273],{},[2439,3258,3259],{},"To read the contract",", open the route in the ",[2431,3262,3264],{"href":3263},"\u002Fapi","API Explorer",". Each operation lists the responses it can return. An App can also publish its own ",[2431,3267,3268],{"href":1016},"OpenAPI document",". ",[2431,3271,3272],{"href":998},"App errors"," describes how Apps shape theirs.",[2683,3275,3276,2762,3279,3281],{},[2439,3277,3278],{},"To ask about it",[2423,3280,2730],{}," names the App. If it is one of yours, go to step 6. If not, include the name when you escalate in step 7.",[2479,3283,3285],{"id":3284},"_6-follow-the-request-into-your-own-code","6. Follow the request into your own code",[2419,3287,3288],{},"If the App or the Theme that answered is yours, the next place to look is where your code runs.",[2680,3290,3291,3308],{},[2683,3292,3293,3296,3297,3300,3301,3304,3305,3307],{},[2439,3294,3295],{},"An App."," Find the invocation in App Studio's Executions. ",[2439,3298,3299],{},"An invocation that is not there never ran",", which sends you back to step 4. ",[2431,3302,2433],{"href":3303},"\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Foperating#whose-failure-is-it"," has the status-code ownership table for an App, and ",[2431,3306,1182],{"href":1183}," covers exporting spans to your own collector.",[2683,3309,3310,3313,3314,3317,3318,3320,3321,2591],{},[2439,3311,3312],{},"A Theme's server route."," The site's request logs record each server-rendered request with its status and duration, plus your ",[2423,3315,3316],{},"console.log"," output. See ",[2431,3319,2042],{"href":2043},". A failed build is a different log. See ",[2431,3322,2024],{"href":2025},[2479,3324,3326],{"id":3325},"_7-escalate-with-what-support-needs","7. Escalate with what support needs",[2419,3328,3329,3330,3333,3334,3339],{},"If ",[2431,3331,2476],{"href":2473,"rel":3332},[2475]," shows nothing, open a request at ",[2431,3335,3338],{"href":3336,"rel":3337},"https:\u002F\u002Fsupport.revenexx.com",[2475],"support.revenexx.com"," with:",[2680,3341,3342,3348,3353,3356,3359],{},[2683,3343,3344,3345,3347],{},"the ",[2423,3346,2585],{}," you sent, and the one on the response if there was one",[2683,3349,3350,3351],{},"the tenant slug from ",[2423,3352,2464],{},[2683,3354,3355],{},"the method, the path and the time in UTC",[2683,3357,3358],{},"the status and the full body, copied rather than paraphrased",[2683,3360,3344,3361,3363],{},[2423,3362,2730],{}," value, or the fact that there was none",[2419,3365,3366,3367,3370,3371,3374],{},"The last item tells support straight away whether to look at the gateway or at an App. If you run the App, ",[2431,3368,2433],{"href":3369},"\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Foperating#what-to-hand-over-when-you-escalate"," adds the App-side details to include. Never paste the API key or a user token. See ",[2431,3372,3373],{"href":46},"Get help"," for what happens next.",[2479,3376,3378],{"id":3377},"where-to-go-next","Where to go next",[2680,3380,3381,3388,3395],{},[2683,3382,3383,3387],{},[2439,3384,3385],{},[2431,3386,513],{"href":514},": the error shape and the statuses, as a reference.",[2683,3389,3390,3394],{},[2439,3391,3392],{},[2431,3393,519],{"href":520},": which failed calls are safe to send again.",[2683,3396,3397,3401],{},[2439,3398,3399],{},[2431,3400,311],{"href":312},": the rest of what you settle before and after launch.",[3403,3404,3405],"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 .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}",{"title":2503,"searchDepth":2528,"depth":2528,"links":3407},[3408,3409,3410,3411,3414,3415,3416,3417],{"id":2481,"depth":2528,"text":2482},{"id":2594,"depth":2528,"text":2595},{"id":2724,"depth":2528,"text":2725},{"id":2881,"depth":2528,"text":2882,"children":3412},[3413],{"id":3195,"depth":2546,"text":3196},{"id":3220,"depth":2528,"text":3221},{"id":3284,"depth":2528,"text":3285},{"id":3325,"depth":2528,"text":3326},{"id":3377,"depth":2528,"text":3378},"A call to the API failed. Reproduce it with the full response, work out whether the gateway refused it or the app behind the route answered, match the error to its cause, and escalate with what support needs.","md",null,{},{"icon":329},{"title":324,"description":3418},{"loc":325},"-I5GnbFrGyKg_tNmS5oFtYoi4LGGWoU9Y7buHvvF23w",1792233080842]