[{"data":1,"prerenderedAt":5337},["ShallowReactive",2],{"navigation_docs":3,"-docs-guides-integrations-run-a-nightly-price-and-stock-sync":3376},[4,82,509,570,819,2290],{"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,102,172,284,291,366,420,447],{"title":83,"path":84,"stem":85},{"title":89,"path":90,"stem":91,"children":92,"icon":94},"Extend Analytics Studio","\u002Fdocs\u002Fguides\u002Fanalytics","docs\u002Fguides\u002Fanalytics\u002Findex",[93,95],{"title":89,"path":90,"stem":91,"icon":94},"i-lucide-chart-column",{"title":96,"path":97,"stem":98,"children":99,"icon":101},"Deploy and release a Cube","\u002Fdocs\u002Fguides\u002Fanalytics\u002Fdeploy-a-cube","docs\u002Fguides\u002Fanalytics\u002Fdeploy-a-cube\u002Findex",[100],{"title":96,"path":97,"stem":98,"icon":101},"i-lucide-box",{"title":103,"path":104,"stem":105,"children":106,"icon":108},"Build an App","\u002Fdocs\u002Fguides\u002Fapps","docs\u002Fguides\u002Fapps\u002Findex",[107,109,116,123,130,137,144,151,158,165],{"title":103,"path":104,"stem":105,"icon":108},"i-lucide-layout-grid",{"title":110,"path":111,"stem":112,"children":113,"icon":115},"Give your App a Cockpit screen","\u002Fdocs\u002Fguides\u002Fapps\u002Fadd-a-cockpit-screen","docs\u002Fguides\u002Fapps\u002Fadd-a-cockpit-screen\u002Findex",[114],{"title":110,"path":111,"stem":112,"icon":115},"i-lucide-layout-dashboard",{"title":117,"path":118,"stem":119,"children":120,"icon":122},"Add a data model","\u002Fdocs\u002Fguides\u002Fapps\u002Fadd-a-data-model","docs\u002Fguides\u002Fapps\u002Fadd-a-data-model\u002Findex",[121],{"title":117,"path":118,"stem":119,"icon":122},"i-lucide-database",{"title":124,"path":125,"stem":126,"children":127,"icon":129},"Build your first App","\u002Fdocs\u002Fguides\u002Fapps\u002Fbuild-your-first-app","docs\u002Fguides\u002Fapps\u002Fbuild-your-first-app\u002Findex",[128],{"title":124,"path":125,"stem":126,"icon":129},"i-lucide-hammer",{"title":131,"path":132,"stem":133,"children":134,"icon":136},"Deploy and verify an App","\u002Fdocs\u002Fguides\u002Fapps\u002Fdeploy-with-the-cli","docs\u002Fguides\u002Fapps\u002Fdeploy-with-the-cli\u002Findex",[135],{"title":131,"path":132,"stem":133,"icon":136},"i-lucide-square-terminal",{"title":138,"path":139,"stem":140,"children":141,"icon":143},"Publish a business event from your App","\u002Fdocs\u002Fguides\u002Fapps\u002Fpublish-a-business-event","docs\u002Fguides\u002Fapps\u002Fpublish-a-business-event\u002Findex",[142],{"title":138,"path":139,"stem":140,"icon":143},"i-lucide-megaphone",{"title":145,"path":146,"stem":147,"children":148,"icon":150},"Publish on the Marketplace","\u002Fdocs\u002Fguides\u002Fapps\u002Fpublish-on-the-marketplace","docs\u002Fguides\u002Fapps\u002Fpublish-on-the-marketplace\u002Findex",[149],{"title":145,"path":146,"stem":147,"icon":150},"i-lucide-store",{"title":152,"path":153,"stem":154,"children":155,"icon":157},"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",[156],{"title":152,"path":153,"stem":154,"icon":157},"i-lucide-timer",{"title":159,"path":160,"stem":161,"children":162,"icon":164},"Ship a breaking change to an App","\u002Fdocs\u002Fguides\u002Fapps\u002Fship-a-breaking-change","docs\u002Fguides\u002Fapps\u002Fship-a-breaking-change\u002Findex",[163],{"title":159,"path":160,"stem":161,"icon":164},"i-lucide-split",{"title":166,"path":167,"stem":168,"children":169,"icon":171},"Ship a schema change","\u002Fdocs\u002Fguides\u002Fapps\u002Fship-a-schema-change","docs\u002Fguides\u002Fapps\u002Fship-a-schema-change\u002Findex",[170],{"title":166,"path":167,"stem":168,"icon":171},"i-lucide-git-branch",{"title":173,"path":174,"stem":175,"children":176,"icon":178},"Set up selling","\u002Fdocs\u002Fguides\u002Fcommerce","docs\u002Fguides\u002Fcommerce\u002Findex",[177,179,186,193,200,207,214,221,228,235,242,249,256,263,270,277],{"title":173,"path":174,"stem":175,"icon":178},"i-lucide-shopping-cart",{"title":180,"path":181,"stem":182,"children":183,"icon":185},"Set up B2B pricing","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fb2b-pricing","docs\u002Fguides\u002Fcommerce\u002Fb2b-pricing\u002Findex",[184],{"title":180,"path":181,"stem":182,"icon":185},"i-lucide-circle-dollar-sign",{"title":187,"path":188,"stem":189,"children":190,"icon":192},"Give buyer staff the right permissions","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fbuyer-permissions","docs\u002Fguides\u002Fcommerce\u002Fbuyer-permissions\u002Findex",[191],{"title":187,"path":188,"stem":189,"icon":192},"i-lucide-user-cog",{"title":194,"path":195,"stem":196,"children":197,"icon":199},"Correct, hold or cancel an order after it is placed","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fchange-hold-or-cancel-an-order","docs\u002Fguides\u002Fcommerce\u002Fchange-hold-or-cancel-an-order\u002Findex",[198],{"title":194,"path":195,"stem":196,"icon":199},"i-lucide-pencil-line",{"title":201,"path":202,"stem":203,"children":204,"icon":206},"Confirm invoice payments","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fconfirm-invoice-payments","docs\u002Fguides\u002Fcommerce\u002Fconfirm-invoice-payments\u002Findex",[205],{"title":201,"path":202,"stem":203,"icon":206},"i-lucide-receipt",{"title":208,"path":209,"stem":210,"children":211,"icon":213},"Load a sample shop into a test tenant","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fload-sample-data","docs\u002Fguides\u002Fcommerce\u002Fload-sample-data\u002Findex",[212],{"title":208,"path":209,"stem":210,"icon":213},"i-lucide-package-open",{"title":215,"path":216,"stem":217,"children":218,"icon":220},"Model a catalog with attributes, families and variants","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fmodel-a-catalog","docs\u002Fguides\u002Fcommerce\u002Fmodel-a-catalog\u002Findex",[219],{"title":215,"path":216,"stem":217,"icon":220},"i-lucide-boxes",{"title":222,"path":223,"stem":224,"children":225,"icon":227},"Order and quote numbers","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fnumber-ranges","docs\u002Fguides\u002Fcommerce\u002Fnumber-ranges\u002Findex",[226],{"title":222,"path":223,"stem":224,"icon":227},"i-lucide-hash",{"title":229,"path":230,"stem":231,"children":232,"icon":234},"Manage product images and documents","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fproduct-media","docs\u002Fguides\u002Fcommerce\u002Fproduct-media\u002Findex",[233],{"title":229,"path":230,"stem":231,"icon":234},"i-lucide-image",{"title":236,"path":237,"stem":238,"children":239,"icon":241},"Run promotions and voucher codes","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fpromotions-and-vouchers","docs\u002Fguides\u002Fcommerce\u002Fpromotions-and-vouchers\u002Findex",[240],{"title":236,"path":237,"stem":238,"icon":241},"i-lucide-ticket-percent",{"title":243,"path":244,"stem":245,"children":246,"icon":248},"Set up purchase approvals","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fpurchase-approvals","docs\u002Fguides\u002Fcommerce\u002Fpurchase-approvals\u002Findex",[247],{"title":243,"path":244,"stem":245,"icon":248},"i-lucide-stamp",{"title":250,"path":251,"stem":252,"children":253,"icon":255},"Turn an accepted quote into an order","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fquotes-to-orders","docs\u002Fguides\u002Fcommerce\u002Fquotes-to-orders\u002Findex",[254],{"title":250,"path":251,"stem":252,"icon":255},"i-lucide-handshake",{"title":257,"path":258,"stem":259,"children":260,"icon":262},"Build categories from rules","\u002Fdocs\u002Fguides\u002Fcommerce\u002Frule-based-categories","docs\u002Fguides\u002Fcommerce\u002Frule-based-categories\u002Findex",[261],{"title":257,"path":258,"stem":259,"icon":262},"i-lucide-list-filter",{"title":264,"path":265,"stem":266,"children":267,"icon":269},"Ship, cancel and return an order","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fship-cancel-and-return","docs\u002Fguides\u002Fcommerce\u002Fship-cancel-and-return\u002Findex",[268],{"title":264,"path":265,"stem":266,"icon":269},"i-lucide-package-check",{"title":271,"path":272,"stem":273,"children":274,"icon":276},"Set up shipping rates and tax","\u002Fdocs\u002Fguides\u002Fcommerce\u002Fshipping-rates","docs\u002Fguides\u002Fcommerce\u002Fshipping-rates\u002Findex",[275],{"title":271,"path":272,"stem":273,"icon":276},"i-lucide-truck",{"title":278,"path":279,"stem":280,"children":281,"icon":283},"Connect a payment provider and take a test payment","\u002Fdocs\u002Fguides\u002Fcommerce\u002Ftest-payments","docs\u002Fguides\u002Fcommerce\u002Ftest-payments\u002Findex",[282],{"title":278,"path":279,"stem":280,"icon":283},"i-lucide-credit-card",{"title":285,"path":286,"stem":287,"children":288,"icon":290},"Start from an example","\u002Fdocs\u002Fguides\u002Fexamples","docs\u002Fguides\u002Fexamples\u002Findex",[289],{"title":285,"path":286,"stem":287,"icon":290},"i-lucide-folder-code",{"title":292,"path":293,"stem":294,"children":295,"icon":297},"Connect a system","\u002Fdocs\u002Fguides\u002Fintegrations","docs\u002Fguides\u002Fintegrations\u002Findex",[296,298,304,311,318,325,331,338,345,352,359],{"title":292,"path":293,"stem":294,"icon":297},"i-lucide-plug",{"title":299,"path":300,"stem":301,"children":302,"icon":29},"Connect a procurement system by punchout","\u002Fdocs\u002Fguides\u002Fintegrations\u002Fconnect-by-punchout","docs\u002Fguides\u002Fintegrations\u002Fconnect-by-punchout\u002Findex",[303],{"title":299,"path":300,"stem":301,"icon":29},{"title":305,"path":306,"stem":307,"children":308,"icon":310},"Deploy and release a node package","\u002Fdocs\u002Fguides\u002Fintegrations\u002Fdeploy-a-node-package","docs\u002Fguides\u002Fintegrations\u002Fdeploy-a-node-package\u002Findex",[309],{"title":305,"path":306,"stem":307,"icon":310},"i-lucide-package",{"title":312,"path":313,"stem":314,"children":315,"icon":317},"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",[316],{"title":312,"path":313,"stem":314,"icon":317},"i-lucide-arrow-left-right",{"title":319,"path":320,"stem":321,"children":322,"icon":324},"Import a BMECAT catalog","\u002Fdocs\u002Fguides\u002Fintegrations\u002Fimport-a-bmecat-catalog","docs\u002Fguides\u002Fintegrations\u002Fimport-a-bmecat-catalog\u002Findex",[323],{"title":319,"path":320,"stem":321,"icon":324},"i-lucide-package-plus",{"title":326,"path":327,"stem":328,"children":329,"icon":50},"Keep an Integration Studio workflow running","\u002Fdocs\u002Fguides\u002Fintegrations\u002Fkeep-a-workflow-running","docs\u002Fguides\u002Fintegrations\u002Fkeep-a-workflow-running\u002Findex",[330],{"title":326,"path":327,"stem":328,"icon":50},{"title":332,"path":333,"stem":334,"children":335,"icon":337},"Receive platform events at your own endpoint","\u002Fdocs\u002Fguides\u002Fintegrations\u002Freceive-platform-events","docs\u002Fguides\u002Fintegrations\u002Freceive-platform-events\u002Findex",[336],{"title":332,"path":333,"stem":334,"icon":337},"i-lucide-webhook",{"title":339,"path":340,"stem":341,"children":342,"icon":344},"Recover abandoned carts with a workflow","\u002Fdocs\u002Fguides\u002Fintegrations\u002Frecover-abandoned-carts","docs\u002Fguides\u002Fintegrations\u002Frecover-abandoned-carts\u002Findex",[343],{"title":339,"path":340,"stem":341,"icon":344},"i-lucide-mail-check",{"title":346,"path":347,"stem":348,"children":349,"icon":351},"Run a nightly price and stock sync from a supplier file","\u002Fdocs\u002Fguides\u002Fintegrations\u002Frun-a-nightly-price-and-stock-sync","docs\u002Fguides\u002Fintegrations\u002Frun-a-nightly-price-and-stock-sync\u002Findex",[350],{"title":346,"path":347,"stem":348,"icon":351},"i-lucide-calendar-clock",{"title":353,"path":354,"stem":355,"children":356,"icon":358},"Send a nightly order export to a partner's SFTP","\u002Fdocs\u002Fguides\u002Fintegrations\u002Fsend-a-nightly-order-export-to-sftp","docs\u002Fguides\u002Fintegrations\u002Fsend-a-nightly-order-export-to-sftp\u002Findex",[357],{"title":353,"path":354,"stem":355,"icon":358},"i-lucide-folder-up",{"title":360,"path":361,"stem":362,"children":363,"icon":365},"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",[364],{"title":360,"path":361,"stem":362,"icon":365},"i-lucide-bell-ring",{"title":367,"path":368,"stem":369,"children":370,"icon":372},"Operate & go live","\u002Fdocs\u002Fguides\u002Foperate","docs\u002Fguides\u002Foperate\u002Findex",[371,373,379,386,393,400,407,413],{"title":367,"path":368,"stem":369,"icon":372},"i-lucide-activity",{"title":374,"path":375,"stem":376,"children":377,"icon":81},"Answer a customer's security questionnaire","\u002Fdocs\u002Fguides\u002Foperate\u002Fanswer-a-security-questionnaire","docs\u002Fguides\u002Foperate\u002Fanswer-a-security-questionnaire\u002Findex",[378],{"title":374,"path":375,"stem":376,"icon":81},{"title":380,"path":381,"stem":382,"children":383,"icon":385},"Debug a failed request","\u002Fdocs\u002Fguides\u002Foperate\u002Fdebug-a-failed-request","docs\u002Fguides\u002Foperate\u002Fdebug-a-failed-request\u002Findex",[384],{"title":380,"path":381,"stem":382,"icon":385},"i-lucide-bug",{"title":387,"path":388,"stem":389,"children":390,"icon":392},"Go live with a project","\u002Fdocs\u002Fguides\u002Foperate\u002Fgo-live-checklist","docs\u002Fguides\u002Foperate\u002Fgo-live-checklist\u002Findex",[391],{"title":387,"path":388,"stem":389,"icon":392},"i-lucide-list-checks",{"title":394,"path":395,"stem":396,"children":397,"icon":399},"Migrate from an existing shop","\u002Fdocs\u002Fguides\u002Foperate\u002Fmigrate-from-an-existing-shop","docs\u002Fguides\u002Foperate\u002Fmigrate-from-an-existing-shop\u002Findex",[398],{"title":394,"path":395,"stem":396,"icon":399},"i-lucide-route",{"title":401,"path":402,"stem":403,"children":404,"icon":406},"Size a launch","\u002Fdocs\u002Fguides\u002Foperate\u002Fplan-for-limits","docs\u002Fguides\u002Foperate\u002Fplan-for-limits\u002Findex",[405],{"title":401,"path":402,"stem":403,"icon":406},"i-lucide-gauge",{"title":408,"path":409,"stem":410,"children":411,"icon":392},"Script a bulk change","\u002Fdocs\u002Fguides\u002Foperate\u002Fscript-a-bulk-change","docs\u002Fguides\u002Foperate\u002Fscript-a-bulk-change\u002Findex",[412],{"title":408,"path":409,"stem":410,"icon":392},{"title":414,"path":415,"stem":416,"children":417,"icon":419},"Stay current","\u002Fdocs\u002Fguides\u002Foperate\u002Fstay-current","docs\u002Fguides\u002Foperate\u002Fstay-current\u002Findex",[418],{"title":414,"path":415,"stem":416,"icon":419},"i-lucide-refresh-cw",{"title":421,"path":422,"stem":423,"children":424,"icon":426},"Plan before you build","\u002Fdocs\u002Fguides\u002Fplan","docs\u002Fguides\u002Fplan\u002Findex",[425,427,434,441],{"title":421,"path":422,"stem":423,"icon":426},"i-lucide-map",{"title":428,"path":429,"stem":430,"children":431,"icon":433},"Choose a system of record","\u002Fdocs\u002Fguides\u002Fplan\u002Fchoose-a-system-of-record","docs\u002Fguides\u002Fplan\u002Fchoose-a-system-of-record\u002Findex",[432],{"title":428,"path":429,"stem":430,"icon":433},"i-lucide-network",{"title":435,"path":436,"stem":437,"children":438,"icon":440},"Choose an event surface","\u002Fdocs\u002Fguides\u002Fplan\u002Fchoose-an-event-surface","docs\u002Fguides\u002Fplan\u002Fchoose-an-event-surface\u002Findex",[439],{"title":435,"path":436,"stem":437,"icon":440},"i-lucide-signpost",{"title":442,"path":443,"stem":444,"children":445,"icon":399},"Choose where the logic goes","\u002Fdocs\u002Fguides\u002Fplan\u002Fchoose-where-the-logic-goes","docs\u002Fguides\u002Fplan\u002Fchoose-where-the-logic-goes\u002Findex",[446],{"title":442,"path":443,"stem":444,"icon":399},{"title":448,"path":449,"stem":450,"children":451,"icon":453},"Build a storefront","\u002Fdocs\u002Fguides\u002Fstorefronts","docs\u002Fguides\u002Fstorefronts\u002Findex",[452,454,461,468,475,482,489,495,502],{"title":448,"path":449,"stem":450,"icon":453},"i-lucide-paintbrush",{"title":455,"path":456,"stem":457,"children":458,"icon":460},"Brand a Theme with design tokens","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Fbrand-with-tokens","docs\u002Fguides\u002Fstorefronts\u002Fbrand-with-tokens\u002Findex",[459],{"title":455,"path":456,"stem":457,"icon":460},"i-lucide-palette",{"title":462,"path":463,"stem":464,"children":465,"icon":467},"Build a block","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Fbuild-a-block","docs\u002Fguides\u002Fstorefronts\u002Fbuild-a-block\u002Findex",[466],{"title":462,"path":463,"stem":464,"icon":467},"i-lucide-blocks",{"title":469,"path":470,"stem":471,"children":472,"icon":474},"Build a signed-in buyer account area","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Fbuild-a-buyer-account-area","docs\u002Fguides\u002Fstorefronts\u002Fbuild-a-buyer-account-area\u002Findex",[473],{"title":469,"path":470,"stem":471,"icon":474},"i-lucide-user-round",{"title":476,"path":477,"stem":478,"children":479,"icon":481},"Build your first Theme","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Fbuild-your-first-theme","docs\u002Fguides\u002Fstorefronts\u002Fbuild-your-first-theme\u002Findex",[480],{"title":476,"path":477,"stem":478,"icon":481},"i-lucide-layout-template",{"title":483,"path":484,"stem":485,"children":486,"icon":488},"Connect your own frontend","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Fconnect-a-frontend","docs\u002Fguides\u002Fstorefronts\u002Fconnect-a-frontend\u002Findex",[487],{"title":483,"path":484,"stem":485,"icon":488},"i-lucide-plug-zap",{"title":490,"path":491,"stem":492,"children":493,"icon":419},"Refresh price caches when a price list changes","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Frefresh-price-caches","docs\u002Fguides\u002Fstorefronts\u002Frefresh-price-caches\u002Findex",[494],{"title":490,"path":491,"stem":492,"icon":419},{"title":496,"path":497,"stem":498,"children":499,"icon":501},"Reorder and quick order","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Freorder-and-quick-order","docs\u002Fguides\u002Fstorefronts\u002Freorder-and-quick-order\u002Findex",[500],{"title":496,"path":497,"stem":498,"icon":501},"i-lucide-repeat",{"title":503,"path":504,"stem":505,"children":506,"icon":508},"Sign a buyer in from your server","\u002Fdocs\u002Fguides\u002Fstorefronts\u002Fsign-a-buyer-in","docs\u002Fguides\u002Fstorefronts\u002Fsign-a-buyer-in\u002Findex",[507],{"title":503,"path":504,"stem":505,"icon":508},"i-lucide-log-in",{"title":510,"path":511,"stem":512,"children":513},"SDKs","\u002Fdocs\u002Fsdks","docs\u002Fsdks\u002Findex",[514,515,521,528,534,540,546,552,558,564],{"title":510,"path":511,"stem":512},{"title":516,"path":517,"stem":518,"children":519},"App SDK","\u002Fdocs\u002Fsdks\u002Fapp-sdk","docs\u002Fsdks\u002Fapp-sdk\u002Findex",[520],{"title":516,"path":517,"stem":518},{"title":522,"path":523,"stem":524,"children":525,"icon":527},"Aria SDK","\u002Fdocs\u002Fsdks\u002Faria","docs\u002Fsdks\u002Faria\u002Findex",[526],{"title":522,"path":523,"stem":524,"icon":527},"i-lucide-bot",{"title":529,"path":530,"stem":531,"children":532},"CLI","\u002Fdocs\u002Fsdks\u002Fcli","docs\u002Fsdks\u002Fcli\u002Findex",[533],{"title":529,"path":530,"stem":531},{"title":535,"path":536,"stem":537,"children":538},"Design systems","\u002Fdocs\u002Fsdks\u002Fdesign-systems","docs\u002Fsdks\u002Fdesign-systems\u002Findex",[539],{"title":535,"path":536,"stem":537},{"title":541,"path":542,"stem":543,"children":544},"Integration Node SDK","\u002Fdocs\u002Fsdks\u002Fintegration-nodes","docs\u002Fsdks\u002Fintegration-nodes\u002Findex",[545],{"title":541,"path":542,"stem":543},{"title":547,"path":548,"stem":549,"children":550},"Node SDK","\u002Fdocs\u002Fsdks\u002Fnode","docs\u002Fsdks\u002Fnode\u002Findex",[551],{"title":547,"path":548,"stem":549},{"title":553,"path":554,"stem":555,"children":556},"PHP SDK","\u002Fdocs\u002Fsdks\u002Fphp","docs\u002Fsdks\u002Fphp\u002Findex",[557],{"title":553,"path":554,"stem":555},{"title":559,"path":560,"stem":561,"children":562,"icon":171},"Versioning","\u002Fdocs\u002Fsdks\u002Fversioning","docs\u002Fsdks\u002Fversioning\u002Findex",[563],{"title":559,"path":560,"stem":561,"icon":171},{"title":565,"path":566,"stem":567,"children":568},"Web \u002F JavaScript SDK","\u002Fdocs\u002Fsdks\u002Fweb","docs\u002Fsdks\u002Fweb\u002Findex",[569],{"title":565,"path":566,"stem":567},{"title":571,"path":572,"stem":573,"children":574},"Services","\u002Fdocs\u002Fservices","docs\u002Fservices\u002Findex",[575,576,618,625,655,661,685,692,699,753,801],{"title":571,"path":572,"stem":573},{"title":577,"path":578,"stem":579,"children":580},"API usage","\u002Fdocs\u002Fservices\u002Fapi-usage","docs\u002Fservices\u002Fapi-usage\u002Findex",[581,582,588,594,600,606,612],{"title":577,"path":578,"stem":579},{"title":583,"path":584,"stem":585,"children":586},"Errors","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Ferrors","docs\u002Fservices\u002Fapi-usage\u002Ferrors\u002Findex",[587],{"title":583,"path":584,"stem":585},{"title":589,"path":590,"stem":591,"children":592},"Retries & idempotency","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Fidempotency","docs\u002Fservices\u002Fapi-usage\u002Fidempotency\u002Findex",[593],{"title":589,"path":590,"stem":591},{"title":595,"path":596,"stem":597,"children":598},"Pagination & filtering","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Fpagination","docs\u002Fservices\u002Fapi-usage\u002Fpagination\u002Findex",[599],{"title":595,"path":596,"stem":597},{"title":601,"path":602,"stem":603,"children":604},"Rate limits","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Frate-limits","docs\u002Fservices\u002Fapi-usage\u002Frate-limits\u002Findex",[605],{"title":601,"path":602,"stem":603},{"title":607,"path":608,"stem":609,"children":610},"Trash","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Ftrash","docs\u002Fservices\u002Fapi-usage\u002Ftrash\u002Findex",[611],{"title":607,"path":608,"stem":609},{"title":613,"path":614,"stem":615,"children":616},"Versioning & stability","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Fversioning","docs\u002Fservices\u002Fapi-usage\u002Fversioning\u002Findex",[617],{"title":613,"path":614,"stem":615},{"title":619,"path":620,"stem":621,"children":622,"icon":624},"Record history","\u002Fdocs\u002Fservices\u002Faudit","docs\u002Fservices\u002Faudit\u002Findex",[623],{"title":619,"path":620,"stem":621,"icon":624},"i-lucide-history",{"title":626,"path":627,"stem":628,"children":629},"Authentication","\u002Fdocs\u002Fservices\u002Fauth","docs\u002Fservices\u002Fauth\u002Findex",[630,631,637,643,649],{"title":626,"path":627,"stem":628},{"title":632,"path":633,"stem":634,"children":635},"API keys","\u002Fdocs\u002Fservices\u002Fauth\u002Fapi-keys","docs\u002Fservices\u002Fauth\u002Fapi-keys\u002Findex",[636],{"title":632,"path":633,"stem":634},{"title":638,"path":639,"stem":640,"children":641},"Multi-factor authentication","\u002Fdocs\u002Fservices\u002Fauth\u002Fmfa","docs\u002Fservices\u002Fauth\u002Fmfa\u002Findex",[642],{"title":638,"path":639,"stem":640},{"title":644,"path":645,"stem":646,"children":647},"Social sign-in","\u002Fdocs\u002Fservices\u002Fauth\u002Foauth2","docs\u002Fservices\u002Fauth\u002Foauth2\u002Findex",[648],{"title":644,"path":645,"stem":646},{"title":650,"path":651,"stem":652,"children":653},"Sessions","\u002Fdocs\u002Fservices\u002Fauth\u002Fsessions","docs\u002Fservices\u002Fauth\u002Fsessions\u002Findex",[654],{"title":650,"path":651,"stem":652},{"title":656,"path":657,"stem":658,"children":659,"icon":234},"Avatars","\u002Fdocs\u002Fservices\u002Favatars","docs\u002Fservices\u002Favatars\u002Findex",[660],{"title":656,"path":657,"stem":658,"icon":234},{"title":662,"path":663,"stem":664,"children":665},"Events","\u002Fdocs\u002Fservices\u002Fevents","docs\u002Fservices\u002Fevents\u002Findex",[666,667,673,679],{"title":662,"path":663,"stem":664},{"title":668,"path":669,"stem":670,"children":671},"Consuming events","\u002Fdocs\u002Fservices\u002Fevents\u002Fconsuming-events","docs\u002Fservices\u002Fevents\u002Fconsuming-events\u002Findex",[672],{"title":668,"path":669,"stem":670},{"title":674,"path":675,"stem":676,"children":677},"Event catalog","\u002Fdocs\u002Fservices\u002Fevents\u002Fevent-catalog","docs\u002Fservices\u002Fevents\u002Fevent-catalog\u002Findex",[678],{"title":674,"path":675,"stem":676},{"title":680,"path":681,"stem":682,"children":683},"Event types","\u002Fdocs\u002Fservices\u002Fevents\u002Fevent-types","docs\u002Fservices\u002Fevents\u002Fevent-types\u002Findex",[684],{"title":680,"path":681,"stem":682},{"title":686,"path":687,"stem":688,"children":689,"icon":691},"Locale","\u002Fdocs\u002Fservices\u002Flocale","docs\u002Fservices\u002Flocale\u002Findex",[690],{"title":686,"path":687,"stem":688,"icon":691},"i-lucide-globe",{"title":693,"path":694,"stem":695,"children":696,"icon":698},"Messaging","\u002Fdocs\u002Fservices\u002Fmessaging","docs\u002Fservices\u002Fmessaging\u002Findex",[697],{"title":693,"path":694,"stem":695,"icon":698},"i-lucide-mail",{"title":700,"path":701,"stem":702,"children":703},"Network","\u002Fdocs\u002Fservices\u002Fnetwork","docs\u002Fservices\u002Fnetwork\u002Findex",[704,705,711,717,723,729,735,741,747],{"title":700,"path":701,"stem":702},{"title":706,"path":707,"stem":708,"children":709},"Caching","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fcaching","docs\u002Fservices\u002Fnetwork\u002Fcaching\u002Findex",[710],{"title":706,"path":707,"stem":708},{"title":712,"path":713,"stem":714,"children":715},"Content delivery (CDN)","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fcdn","docs\u002Fservices\u002Fnetwork\u002Fcdn\u002Findex",[716],{"title":712,"path":713,"stem":714},{"title":718,"path":719,"stem":720,"children":721},"Compression","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fcompression","docs\u002Fservices\u002Fnetwork\u002Fcompression\u002Findex",[722],{"title":718,"path":719,"stem":720},{"title":724,"path":725,"stem":726,"children":727},"DDoS mitigation","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fddos","docs\u002Fservices\u002Fnetwork\u002Fddos\u002Findex",[728],{"title":724,"path":725,"stem":726},{"title":730,"path":731,"stem":732,"children":733},"Edge network","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fedges","docs\u002Fservices\u002Fnetwork\u002Fedges\u002Findex",[734],{"title":730,"path":731,"stem":732},{"title":736,"path":737,"stem":738,"children":739},"Endpoints","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fendpoints","docs\u002Fservices\u002Fnetwork\u002Fendpoints\u002Findex",[740],{"title":736,"path":737,"stem":738},{"title":742,"path":743,"stem":744,"children":745},"Transport Layer Security (TLS)","\u002Fdocs\u002Fservices\u002Fnetwork\u002Ftls","docs\u002Fservices\u002Fnetwork\u002Ftls\u002Findex",[746],{"title":742,"path":743,"stem":744},{"title":748,"path":749,"stem":750,"children":751},"Web application firewall (WAF)","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fwaf","docs\u002Fservices\u002Fnetwork\u002Fwaf\u002Findex",[752],{"title":748,"path":749,"stem":750},{"title":754,"path":755,"stem":756,"children":757},"Storage","\u002Fdocs\u002Fservices\u002Fstorage","docs\u002Fservices\u002Fstorage\u002Findex",[758,759,765,771,777,783,789,795],{"title":754,"path":755,"stem":756},{"title":760,"path":761,"stem":762,"children":763},"Folders","\u002Fdocs\u002Fservices\u002Fstorage\u002Fbuckets","docs\u002Fservices\u002Fstorage\u002Fbuckets\u002Findex",[764],{"title":760,"path":761,"stem":762},{"title":766,"path":767,"stem":768,"children":769},"Signed URLs and access","\u002Fdocs\u002Fservices\u002Fstorage\u002Ffile-tokens","docs\u002Fservices\u002Fstorage\u002Ffile-tokens\u002Findex",[770],{"title":766,"path":767,"stem":768},{"title":772,"path":773,"stem":774,"children":775},"Serve and transform images","\u002Fdocs\u002Fservices\u002Fstorage\u002Fimages","docs\u002Fservices\u002Fstorage\u002Fimages\u002Findex",[776],{"title":772,"path":773,"stem":774},{"title":778,"path":779,"stem":780,"children":781},"3D assets","\u002Fdocs\u002Fservices\u002Fstorage\u002Fmodel-viewer","docs\u002Fservices\u002Fstorage\u002Fmodel-viewer\u002Findex",[782],{"title":778,"path":779,"stem":780},{"title":784,"path":785,"stem":786,"children":787},"Access control and visibility","\u002Fdocs\u002Fservices\u002Fstorage\u002Fpermissions","docs\u002Fservices\u002Fstorage\u002Fpermissions\u002Findex",[788],{"title":784,"path":785,"stem":786},{"title":790,"path":791,"stem":792,"children":793},"Quick start","\u002Fdocs\u002Fservices\u002Fstorage\u002Fquick-start","docs\u002Fservices\u002Fstorage\u002Fquick-start\u002Findex",[794],{"title":790,"path":791,"stem":792},{"title":796,"path":797,"stem":798,"children":799},"Upload and manage files","\u002Fdocs\u002Fservices\u002Fstorage\u002Fupload-download","docs\u002Fservices\u002Fstorage\u002Fupload-download\u002Findex",[800],{"title":796,"path":797,"stem":798},{"title":802,"path":803,"stem":804,"children":805},"Webhooks","\u002Fdocs\u002Fservices\u002Fwebhooks","docs\u002Fservices\u002Fwebhooks\u002Findex",[806,807,813],{"title":802,"path":803,"stem":804},{"title":808,"path":809,"stem":810,"children":811},"Delivery","\u002Fdocs\u002Fservices\u002Fwebhooks\u002Fdelivery","docs\u002Fservices\u002Fwebhooks\u002Fdelivery\u002Findex",[812],{"title":808,"path":809,"stem":810},{"title":814,"path":815,"stem":816,"children":817},"Security","\u002Fdocs\u002Fservices\u002Fwebhooks\u002Fsecurity","docs\u002Fservices\u002Fwebhooks\u002Fsecurity\u002Findex",[818],{"title":814,"path":815,"stem":816},{"title":820,"path":821,"stem":822,"children":823},"Studios","\u002Fdocs\u002Fstudios","docs\u002Fstudios\u002Findex",[824,825,831,995,1346,1738,1920],{"title":820,"path":821,"stem":822},{"title":826,"path":827,"stem":828,"children":829},"AI Studio","\u002Fdocs\u002Fstudios\u002Fai","docs\u002Fstudios\u002Fai\u002Findex",[830],{"title":826,"path":827,"stem":828},{"title":832,"path":833,"stem":834,"children":835,"icon":94},"Analytics Studio","\u002Fdocs\u002Fstudios\u002Fanalytics","docs\u002Fstudios\u002Fanalytics\u002Findex",[836,837,880,917,923,941,971],{"title":832,"path":833,"stem":834,"icon":94},{"title":838,"path":839,"stem":840,"children":841,"icon":843},"Make your app's data analyzable","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Findex",[842,844,850,856,862,868,874],{"title":838,"path":839,"stem":840,"icon":843},"i-lucide-table-2",{"title":845,"path":846,"stem":847,"children":848},"Column locators","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fcolumn-locators","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fcolumn-locators\u002Findex",[849],{"title":845,"path":846,"stem":847},{"title":851,"path":852,"stem":853,"children":854},"Declaring a view","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fdeclaring-a-view","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fdeclaring-a-view\u002Findex",[855],{"title":851,"path":852,"stem":853},{"title":857,"path":858,"stem":859,"children":860},"Example","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fexample","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fexample\u002Findex",[861],{"title":857,"path":858,"stem":859},{"title":863,"path":864,"stem":865,"children":866},"Semantic roles","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fsemantic-roles","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fsemantic-roles\u002Findex",[867],{"title":863,"path":864,"stem":865},{"title":869,"path":870,"stem":871,"children":872},"Tenant isolation","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Ftenant-isolation","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Ftenant-isolation\u002Findex",[873],{"title":869,"path":870,"stem":871},{"title":875,"path":876,"stem":877,"children":878},"The contract","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fthe-contract","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fthe-contract\u002Findex",[879],{"title":875,"path":876,"stem":877},{"title":881,"path":882,"stem":883,"children":884,"icon":886},"Stream commerce activity","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Findex",[885,887,893,899,905,911],{"title":881,"path":882,"stem":883,"icon":886},"i-lucide-radio",{"title":888,"path":889,"stem":890,"children":891},"Delivery guarantees","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fdelivery-guarantees","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fdelivery-guarantees\u002Findex",[892],{"title":888,"path":889,"stem":890},{"title":894,"path":895,"stem":896,"children":897},"Event types for reporting","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fevent-types-for-reporting","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fevent-types-for-reporting\u002Findex",[898],{"title":894,"path":895,"stem":896},{"title":900,"path":901,"stem":902,"children":903},"Register an endpoint","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fregister-an-endpoint","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fregister-an-endpoint\u002Findex",[904],{"title":900,"path":901,"stem":902},{"title":906,"path":907,"stem":908,"children":909},"The event stream","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fthe-event-stream","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fthe-event-stream\u002Findex",[910],{"title":906,"path":907,"stem":908},{"title":912,"path":913,"stem":914,"children":915},"Verify a delivery","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fverify-a-delivery","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fverify-a-delivery\u002Findex",[916],{"title":912,"path":913,"stem":914},{"title":918,"path":919,"stem":920,"children":921,"icon":29},"Getting data out","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fgetting-data-out","docs\u002Fstudios\u002Fanalytics\u002Fgetting-data-out\u002Findex",[922],{"title":918,"path":919,"stem":920,"icon":29},{"title":924,"path":925,"stem":926,"children":927,"icon":392},"Limits and what's next","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Flimits","docs\u002Fstudios\u002Fanalytics\u002Flimits\u002Findex",[928,929,935],{"title":924,"path":925,"stem":926,"icon":392},{"title":930,"path":931,"stem":932,"children":933},"Designing for what's coming","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Flimits\u002Fdesigning-for-whats-coming","docs\u002Fstudios\u002Fanalytics\u002Flimits\u002Fdesigning-for-whats-coming\u002Findex",[934],{"title":930,"path":931,"stem":932},{"title":936,"path":937,"stem":938,"children":939},"What does not exist yet","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Flimits\u002Fwhat-does-not-exist-yet","docs\u002Fstudios\u002Fanalytics\u002Flimits\u002Fwhat-does-not-exist-yet\u002Findex",[940],{"title":936,"path":937,"stem":938},{"title":942,"path":943,"stem":944,"children":945,"icon":122},"Build your own reporting store","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Findex",[946,947,953,959,965],{"title":942,"path":943,"stem":944,"icon":122},{"title":948,"path":949,"stem":950,"children":951},"Backfill","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fbackfill","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fbackfill\u002Findex",[952],{"title":948,"path":949,"stem":950},{"title":954,"path":955,"stem":956,"children":957},"Incremental sync","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fincremental-sync","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fincremental-sync\u002Findex",[958],{"title":954,"path":955,"stem":956},{"title":960,"path":961,"stem":962,"children":963},"Modelling","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fmodelling","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fmodelling\u002Findex",[964],{"title":960,"path":961,"stem":962},{"title":966,"path":967,"stem":968,"children":969},"Pull versus push","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fpull-vs-push","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fpull-vs-push\u002Findex",[970],{"title":966,"path":967,"stem":968},{"title":972,"path":973,"stem":974,"children":975,"icon":94},"What the tenant sees","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees","docs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Findex",[976,977,983,989],{"title":972,"path":973,"stem":974,"icon":94},{"title":978,"path":979,"stem":980,"children":981},"Cohorts","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fcohorts","docs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fcohorts\u002Findex",[982],{"title":978,"path":979,"stem":980},{"title":984,"path":985,"stem":986,"children":987},"Datasets and charts","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fdatasets-and-charts","docs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fdatasets-and-charts\u002Findex",[988],{"title":984,"path":985,"stem":986},{"title":990,"path":991,"stem":992,"children":993},"Studio overview","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fstudio-overview","docs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fstudio-overview\u002Findex",[994],{"title":990,"path":991,"stem":992},{"title":996,"path":997,"stem":998,"children":999},"App Studio","\u002Fdocs\u002Fstudios\u002Fapps","docs\u002Fstudios\u002Fapps\u002Findex",[1000,1001,1037,1107,1178,1196,1262],{"title":996,"path":997,"stem":998},{"title":1002,"path":1003,"stem":1004,"children":1005,"icon":115},"Admin UI","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Findex",[1006,1007,1013,1019,1025,1031],{"title":1002,"path":1003,"stem":1004,"icon":115},{"title":1008,"path":1009,"stem":1010,"children":1011},"How the Cockpit renders","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fhow-cockpit-renders","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fhow-cockpit-renders\u002Findex",[1012],{"title":1008,"path":1009,"stem":1010},{"title":1014,"path":1015,"stem":1016,"children":1017},"Preview locally","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fpreview-locally","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fpreview-locally\u002Findex",[1018],{"title":1014,"path":1015,"stem":1016},{"title":1020,"path":1021,"stem":1022,"children":1023},"Reading settings","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Freading-settings","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Freading-settings\u002Findex",[1024],{"title":1020,"path":1021,"stem":1022},{"title":1026,"path":1027,"stem":1028,"children":1029},"Settings","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fsettings","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fsettings\u002Findex",[1030],{"title":1026,"path":1027,"stem":1028},{"title":1032,"path":1033,"stem":1034,"children":1035},"Vocabularies","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fvocabularies","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fvocabularies\u002Findex",[1036],{"title":1032,"path":1033,"stem":1034},{"title":1038,"path":1039,"stem":1040,"children":1041,"icon":399},"Your app's API","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi","docs\u002Fstudios\u002Fapps\u002Fapi\u002Findex",[1042,1043,1048,1054,1060,1066,1072,1077,1083,1089,1095,1101],{"title":1038,"path":1039,"stem":1040,"icon":399},{"title":706,"path":1044,"stem":1045,"children":1046},"\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcaching","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcaching\u002Findex",[1047],{"title":706,"path":1044,"stem":1045},{"title":1049,"path":1050,"stem":1051,"children":1052},"Calling another app","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcalling-another-app","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcalling-another-app\u002Findex",[1053],{"title":1049,"path":1050,"stem":1051},{"title":1055,"path":1056,"stem":1057,"children":1058},"Capabilities","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcapabilities","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcapabilities\u002Findex",[1059],{"title":1055,"path":1056,"stem":1057},{"title":1061,"path":1062,"stem":1063,"children":1064},"Capability reference","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcapability-reference","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcapability-reference\u002Findex",[1065],{"title":1061,"path":1062,"stem":1063},{"title":1067,"path":1068,"stem":1069,"children":1070},"CRUD","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcrud","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcrud\u002Findex",[1071],{"title":1067,"path":1068,"stem":1069},{"title":583,"path":1073,"stem":1074,"children":1075},"\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Ferrors","docs\u002Fstudios\u002Fapps\u002Fapi\u002Ferrors\u002Findex",[1076],{"title":583,"path":1073,"stem":1074},{"title":1078,"path":1079,"stem":1080,"children":1081},"Overriding a capability","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Foverriding-a-capability","docs\u002Fstudios\u002Fapps\u002Fapi\u002Foverriding-a-capability\u002Findex",[1082],{"title":1078,"path":1079,"stem":1080},{"title":1084,"path":1085,"stem":1086,"children":1087},"Pagination and filtering","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fpagination-and-filtering","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fpagination-and-filtering\u002Findex",[1088],{"title":1084,"path":1085,"stem":1086},{"title":1090,"path":1091,"stem":1092,"children":1093},"Published OpenAPI","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fpublished-openapi","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fpublished-openapi\u002Findex",[1094],{"title":1090,"path":1091,"stem":1092},{"title":1096,"path":1097,"stem":1098,"children":1099},"The router","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Frouter","docs\u002Fstudios\u002Fapps\u002Fapi\u002Frouter\u002Findex",[1100],{"title":1096,"path":1097,"stem":1098},{"title":1102,"path":1103,"stem":1104,"children":1105},"Tags","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Ftags","docs\u002Fstudios\u002Fapps\u002Fapi\u002Ftags\u002Findex",[1106],{"title":1102,"path":1103,"stem":1104},{"title":1108,"path":1109,"stem":1110,"children":1111,"icon":122},"Data model","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Findex",[1112,1113,1119,1125,1131,1137,1143,1149,1155,1161,1167,1172],{"title":1108,"path":1109,"stem":1110,"icon":122},{"title":1114,"path":1115,"stem":1116,"children":1117},"Adapters","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fadapters","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fadapters\u002Findex",[1118],{"title":1114,"path":1115,"stem":1116},{"title":1120,"path":1121,"stem":1122,"children":1123},"Column types","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fcolumn-types","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fcolumn-types\u002Findex",[1124],{"title":1120,"path":1121,"stem":1122},{"title":1126,"path":1127,"stem":1128,"children":1129},"Cross-app lookups","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fcross-app-lookups","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fcross-app-lookups\u002Findex",[1130],{"title":1126,"path":1127,"stem":1128},{"title":1132,"path":1133,"stem":1134,"children":1135},"Migrations","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fmigrations","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fmigrations\u002Findex",[1136],{"title":1132,"path":1133,"stem":1134},{"title":1138,"path":1139,"stem":1140,"children":1141},"Projections","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fprojections","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fprojections\u002Findex",[1142],{"title":1138,"path":1139,"stem":1140},{"title":1144,"path":1145,"stem":1146,"children":1147},"Relationships","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Frelationships","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Frelationships\u002Findex",[1148],{"title":1144,"path":1145,"stem":1146},{"title":1150,"path":1151,"stem":1152,"children":1153},"Schema reference","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fschema-reference","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fschema-reference\u002Findex",[1154],{"title":1150,"path":1151,"stem":1152},{"title":1156,"path":1157,"stem":1158,"children":1159},"Scoping","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fscoping","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fscoping\u002Findex",[1160],{"title":1156,"path":1157,"stem":1158},{"title":1162,"path":1163,"stem":1164,"children":1165},"search.json reference","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fsearch-json","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fsearch-json\u002Findex",[1166],{"title":1162,"path":1163,"stem":1164},{"title":869,"path":1168,"stem":1169,"children":1170},"\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Ftenant-isolation","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Ftenant-isolation\u002Findex",[1171],{"title":869,"path":1168,"stem":1169},{"title":1173,"path":1174,"stem":1175,"children":1176},"The typed client","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Ftyped-client","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Ftyped-client\u002Findex",[1177],{"title":1173,"path":1174,"stem":1175},{"title":1179,"path":1180,"stem":1181,"children":1182},"Getting started","\u002Fdocs\u002Fstudios\u002Fapps\u002Fgetting-started","docs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Findex",[1183,1184,1190],{"title":1179,"path":1180,"stem":1181},{"title":1185,"path":1186,"stem":1187,"children":1188},"App model","\u002Fdocs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Fapp-model","docs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Fapp-model\u002Findex",[1189],{"title":1185,"path":1186,"stem":1187},{"title":1191,"path":1192,"stem":1193,"children":1194},"App isolation","\u002Fdocs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Fisolation","docs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Fisolation\u002Findex",[1195],{"title":1191,"path":1192,"stem":1193},{"title":1197,"path":1198,"stem":1199,"children":1200,"icon":220},"Platform services","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Findex",[1201,1202,1208,1214,1220,1226,1232,1238,1244,1250,1256],{"title":1197,"path":1198,"stem":1199,"icon":220},{"title":1203,"path":1204,"stem":1205,"children":1206},"Entity access","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fentity-access","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fentity-access\u002Findex",[1207],{"title":1203,"path":1204,"stem":1205},{"title":1209,"path":1210,"stem":1211,"children":1212},"Events you emit","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fevents-you-emit","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fevents-you-emit\u002Findex",[1213],{"title":1209,"path":1210,"stem":1211},{"title":1215,"path":1216,"stem":1217,"children":1218},"Events you receive","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fevents-you-receive","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fevents-you-receive\u002Findex",[1219],{"title":1215,"path":1216,"stem":1217},{"title":1221,"path":1222,"stem":1223,"children":1224},"Not yet proven","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fnot-yet-proven","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fnot-yet-proven\u002Findex",[1225],{"title":1221,"path":1222,"stem":1223},{"title":1227,"path":1228,"stem":1229,"children":1230},"Outbound HTTP","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Foutbound-http","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Foutbound-http\u002Findex",[1231],{"title":1227,"path":1228,"stem":1229},{"title":1233,"path":1234,"stem":1235,"children":1236},"Permissions","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fpermissions","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fpermissions\u002Findex",[1237],{"title":1233,"path":1234,"stem":1235},{"title":1239,"path":1240,"stem":1241,"children":1242},"Person permissions","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fperson-permissions","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fperson-permissions\u002Findex",[1243],{"title":1239,"path":1240,"stem":1241},{"title":1245,"path":1246,"stem":1247,"children":1248},"Scheduled work","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fscheduled-work","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fscheduled-work\u002Findex",[1249],{"title":1245,"path":1246,"stem":1247},{"title":1251,"path":1252,"stem":1253,"children":1254},"Tenant identity","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Ftenant-identity","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Ftenant-identity\u002Findex",[1255],{"title":1251,"path":1252,"stem":1253},{"title":1257,"path":1258,"stem":1259,"children":1260},"Tracing","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Ftracing","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Ftracing\u002Findex",[1261],{"title":1257,"path":1258,"stem":1259},{"title":1263,"path":1264,"stem":1265,"children":1266,"icon":1268},"Ship and operate","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Findex",[1267,1269,1275,1281,1287,1293,1299,1305,1311,1317,1323,1329,1335,1341],{"title":1263,"path":1264,"stem":1265,"icon":1268},"i-lucide-rocket",{"title":1270,"path":1271,"stem":1272,"children":1273},"Billing","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fbilling","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fbilling\u002Findex",[1274],{"title":1270,"path":1271,"stem":1272},{"title":1276,"path":1277,"stem":1278,"children":1279},"Consent","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fconsent","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fconsent\u002Findex",[1280],{"title":1276,"path":1277,"stem":1278},{"title":1282,"path":1283,"stem":1284,"children":1285},"Dependencies","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fdependencies","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fdependencies\u002Findex",[1286],{"title":1282,"path":1283,"stem":1284},{"title":1288,"path":1289,"stem":1290,"children":1291},"Deploying","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fdeploying","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fdeploying\u002Findex",[1292],{"title":1288,"path":1289,"stem":1290},{"title":1294,"path":1295,"stem":1296,"children":1297},"Manifest reference","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fmanifest-reference","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fmanifest-reference\u002Findex",[1298],{"title":1294,"path":1295,"stem":1296},{"title":1300,"path":1301,"stem":1302,"children":1303},"Operating","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Foperating","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Foperating\u002Findex",[1304],{"title":1300,"path":1301,"stem":1302},{"title":1306,"path":1307,"stem":1308,"children":1309},"Pairing a frontend","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fpairing-a-frontend","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fpairing-a-frontend\u002Findex",[1310],{"title":1306,"path":1307,"stem":1308},{"title":1312,"path":1313,"stem":1314,"children":1315},"Private or Marketplace","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fprivate-vs-marketplace","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fprivate-vs-marketplace\u002Findex",[1316],{"title":1312,"path":1313,"stem":1314},{"title":1318,"path":1319,"stem":1320,"children":1321},"Publish and install","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fpublish-and-install","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fpublish-and-install\u002Findex",[1322],{"title":1318,"path":1319,"stem":1320},{"title":1324,"path":1325,"stem":1326,"children":1327},"Testing","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Ftesting","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Ftesting\u002Findex",[1328],{"title":1324,"path":1325,"stem":1326},{"title":1330,"path":1331,"stem":1332,"children":1333},"Validate","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fvalidate","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fvalidate\u002Findex",[1334],{"title":1330,"path":1331,"stem":1332},{"title":1336,"path":1337,"stem":1338,"children":1339},"Verifying live","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fverifying-live","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fverifying-live\u002Findex",[1340],{"title":1336,"path":1337,"stem":1338},{"title":559,"path":1342,"stem":1343,"children":1344},"\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fversioning","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fversioning\u002Findex",[1345],{"title":559,"path":1342,"stem":1343},{"title":1347,"path":1348,"stem":1349,"children":1350,"icon":1352},"Commerce Studio","\u002Fdocs\u002Fstudios\u002Fcommerce","docs\u002Fstudios\u002Fcommerce\u002Findex",[1351,1353,1431,1490,1539,1544,1598,1657,1711],{"title":1347,"path":1348,"stem":1349,"icon":1352},"i-lucide-shopping-bag",{"title":1354,"path":1355,"stem":1356,"children":1357,"icon":1359},"Build an app","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Findex",[1358,1360,1366,1372,1378,1384,1390,1396,1402,1408,1414,1420,1425],{"title":1354,"path":1355,"stem":1356,"icon":1359},"i-lucide-puzzle",{"title":1361,"path":1362,"stem":1363,"children":1364},"Actions and writes","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Factions-and-writes","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Factions-and-writes\u002Findex",[1365],{"title":1361,"path":1362,"stem":1363},{"title":1367,"path":1368,"stem":1369,"children":1370},"Apps API","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fapps-api","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fapps-api\u002Findex",[1371],{"title":1367,"path":1368,"stem":1369},{"title":1373,"path":1374,"stem":1375,"children":1376},"cockpit.json reference","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fcockpit-json-reference","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fcockpit-json-reference\u002Findex",[1377],{"title":1373,"path":1374,"stem":1375},{"title":1379,"path":1380,"stem":1381,"children":1382},"Detail views","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fdetail-views","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fdetail-views\u002Findex",[1383],{"title":1379,"path":1380,"stem":1381},{"title":1385,"path":1386,"stem":1387,"children":1388},"Forms","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fforms","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fforms\u002Findex",[1389],{"title":1385,"path":1386,"stem":1387},{"title":1391,"path":1392,"stem":1393,"children":1394},"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",[1395],{"title":1391,"path":1392,"stem":1393},{"title":1397,"path":1398,"stem":1399,"children":1400},"How it renders","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fhow-it-renders","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fhow-it-renders\u002Findex",[1401],{"title":1397,"path":1398,"stem":1399},{"title":1403,"path":1404,"stem":1405,"children":1406},"List views","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Flist-views","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Flist-views\u002Findex",[1407],{"title":1403,"path":1404,"stem":1405},{"title":1409,"path":1410,"stem":1411,"children":1412},"Navigation","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fnavigation","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fnavigation\u002Findex",[1413],{"title":1409,"path":1410,"stem":1411},{"title":1415,"path":1416,"stem":1417,"children":1418},"Permissions and scope","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fpermissions-and-scope","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fpermissions-and-scope\u002Findex",[1419],{"title":1415,"path":1416,"stem":1417},{"title":1014,"path":1421,"stem":1422,"children":1423},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fpreview-locally","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fpreview-locally\u002Findex",[1424],{"title":1014,"path":1421,"stem":1422},{"title":1426,"path":1427,"stem":1428,"children":1429},"Widgets","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fwidgets","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fwidgets\u002Findex",[1430],{"title":1426,"path":1427,"stem":1428},{"title":1432,"path":1433,"stem":1434,"children":1435,"icon":310},"Catalog","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Findex",[1436,1437,1443,1449,1455,1461,1466,1472,1478,1484],{"title":1432,"path":1433,"stem":1434,"icon":310},{"title":1438,"path":1439,"stem":1440,"children":1441},"Assets","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fassets","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fassets\u002Findex",[1442],{"title":1438,"path":1439,"stem":1440},{"title":1444,"path":1445,"stem":1446,"children":1447},"Associations","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fassociations","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fassociations\u002Findex",[1448],{"title":1444,"path":1445,"stem":1446},{"title":1450,"path":1451,"stem":1452,"children":1453},"Categories","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fcategories","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fcategories\u002Findex",[1454],{"title":1450,"path":1451,"stem":1452},{"title":1456,"path":1457,"stem":1458,"children":1459},"Completeness","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fcompleteness","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fcompleteness\u002Findex",[1460],{"title":1456,"path":1457,"stem":1458},{"title":1108,"path":1462,"stem":1463,"children":1464},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fdata-model","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fdata-model\u002Findex",[1465],{"title":1108,"path":1462,"stem":1463},{"title":1467,"path":1468,"stem":1469,"children":1470},"Import and export","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fimport-and-export","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fimport-and-export\u002Findex",[1471],{"title":1467,"path":1468,"stem":1469},{"title":1473,"path":1474,"stem":1475,"children":1476},"Languages and locale codes","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Flanguages-and-locale-codes","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Flanguages-and-locale-codes\u002Findex",[1477],{"title":1473,"path":1474,"stem":1475},{"title":1479,"path":1480,"stem":1481,"children":1482},"Products","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fproducts","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fproducts\u002Findex",[1483],{"title":1479,"path":1480,"stem":1481},{"title":1485,"path":1486,"stem":1487,"children":1488},"References","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Freferences","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Freferences\u002Findex",[1489],{"title":1485,"path":1486,"stem":1487},{"title":1491,"path":1492,"stem":1493,"children":1494,"icon":1496},"Customers","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Findex",[1495,1497,1503,1509,1515,1521,1527,1533],{"title":1491,"path":1492,"stem":1493,"icon":1496},"i-lucide-building-2",{"title":1498,"path":1499,"stem":1500,"children":1501},"Contacts","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fcontacts","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fcontacts\u002Findex",[1502],{"title":1498,"path":1499,"stem":1500},{"title":1504,"path":1505,"stem":1506,"children":1507},"Organizations","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Forganizations","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Forganizations\u002Findex",[1508],{"title":1504,"path":1505,"stem":1506},{"title":1510,"path":1511,"stem":1512,"children":1513},"Roles and permissions","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Froles-and-permissions","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Froles-and-permissions\u002Findex",[1514],{"title":1510,"path":1511,"stem":1512},{"title":1516,"path":1517,"stem":1518,"children":1519},"Sales reps","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fsales-reps","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fsales-reps\u002Findex",[1520],{"title":1516,"path":1517,"stem":1518},{"title":1522,"path":1523,"stem":1524,"children":1525},"Segments","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fsegments","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fsegments\u002Findex",[1526],{"title":1522,"path":1523,"stem":1524},{"title":1528,"path":1529,"stem":1530,"children":1531},"Storefront accounts","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fstorefront-accounts","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fstorefront-accounts\u002Findex",[1532],{"title":1528,"path":1529,"stem":1530},{"title":1534,"path":1535,"stem":1536,"children":1537},"Value lists","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fvalue-lists","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fvalue-lists\u002Findex",[1538],{"title":1534,"path":1535,"stem":1536},{"title":1179,"path":1540,"stem":1541,"children":1542,"icon":1268},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fgetting-started","docs\u002Fstudios\u002Fcommerce\u002Fgetting-started\u002Findex",[1543],{"title":1179,"path":1540,"stem":1541,"icon":1268},{"title":1545,"path":1546,"stem":1547,"children":1548,"icon":143},"Marketing","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarketing","docs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Findex",[1549,1550,1556,1562,1568,1574,1580,1586,1592],{"title":1545,"path":1546,"stem":1547,"icon":143},{"title":1551,"path":1552,"stem":1553,"children":1554},"Ads","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Fads","docs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Fads\u002Findex",[1555],{"title":1551,"path":1552,"stem":1553},{"title":1557,"path":1558,"stem":1559,"children":1560},"Audiences","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Faudiences","docs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Faudiences\u002Findex",[1561],{"title":1557,"path":1558,"stem":1559},{"title":1563,"path":1564,"stem":1565,"children":1566},"Campaigns","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Fcampaigns","docs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Fcampaigns\u002Findex",[1567],{"title":1563,"path":1564,"stem":1565},{"title":1569,"path":1570,"stem":1571,"children":1572},"Journeys","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Fjourneys","docs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Fjourneys\u002Findex",[1573],{"title":1569,"path":1570,"stem":1571},{"title":1575,"path":1576,"stem":1577,"children":1578},"Loyalty","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Floyalty","docs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Floyalty\u002Findex",[1579],{"title":1575,"path":1576,"stem":1577},{"title":1581,"path":1582,"stem":1583,"children":1584},"Mailings","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Fmailings","docs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Fmailings\u002Findex",[1585],{"title":1581,"path":1582,"stem":1583},{"title":1587,"path":1588,"stem":1589,"children":1590,"icon":344},"Marketing consents","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Fmarketing-consents","docs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Fmarketing-consents\u002Findex",[1591],{"title":1587,"path":1588,"stem":1589,"icon":344},{"title":1593,"path":1594,"stem":1595,"children":1596},"Reviews","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Freviews","docs\u002Fstudios\u002Fcommerce\u002Fmarketing\u002Freviews\u002Findex",[1597],{"title":1593,"path":1594,"stem":1595},{"title":1599,"path":1600,"stem":1601,"children":1602,"icon":691},"Markets and pricing","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Findex",[1603,1604,1610,1616,1622,1628,1634,1640,1646,1651],{"title":1599,"path":1600,"stem":1601,"icon":691},{"title":1605,"path":1606,"stem":1607,"children":1608},"Carriers and tracking","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fcarriers-and-tracking","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fcarriers-and-tracking\u002Findex",[1609],{"title":1605,"path":1606,"stem":1607},{"title":1611,"path":1612,"stem":1613,"children":1614},"Channels","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fchannels","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fchannels\u002Findex",[1615],{"title":1611,"path":1612,"stem":1613},{"title":1617,"path":1618,"stem":1619,"children":1620},"Markets","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fmarkets","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fmarkets\u002Findex",[1621],{"title":1617,"path":1618,"stem":1619},{"title":1623,"path":1624,"stem":1625,"children":1626},"Payment lifecycle","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fpayment-lifecycle","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fpayment-lifecycle\u002Findex",[1627],{"title":1623,"path":1624,"stem":1625},{"title":1629,"path":1630,"stem":1631,"children":1632},"Payment methods","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fpayment-methods","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fpayment-methods\u002Findex",[1633],{"title":1629,"path":1630,"stem":1631},{"title":1635,"path":1636,"stem":1637,"children":1638},"Price lists","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fprice-lists","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fprice-lists\u002Findex",[1639],{"title":1635,"path":1636,"stem":1637},{"title":1641,"path":1642,"stem":1643,"children":1644},"Promotions","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fpromotions","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fpromotions\u002Findex",[1645],{"title":1641,"path":1642,"stem":1643},{"title":1026,"path":1647,"stem":1648,"children":1649},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fsettings","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fsettings\u002Findex",[1650],{"title":1026,"path":1647,"stem":1648},{"title":1652,"path":1653,"stem":1654,"children":1655},"Shipping rates","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fshipping-rates","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fshipping-rates\u002Findex",[1656],{"title":1652,"path":1653,"stem":1654},{"title":1658,"path":1659,"stem":1660,"children":1661,"icon":1663},"Orders","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Findex",[1662,1664,1670,1676,1682,1688,1694,1699,1705],{"title":1658,"path":1659,"stem":1660,"icon":1663},"i-lucide-receipt-text",{"title":1665,"path":1666,"stem":1667,"children":1668},"Carts","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Fcarts","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Fcarts\u002Findex",[1669],{"title":1665,"path":1666,"stem":1667},{"title":1671,"path":1672,"stem":1673,"children":1674},"Documents","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Fdocuments","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Fdocuments\u002Findex",[1675],{"title":1671,"path":1672,"stem":1673},{"title":1677,"path":1678,"stem":1679,"children":1680},"Events and comments","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Fevents-and-comments","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Fevents-and-comments\u002Findex",[1681],{"title":1677,"path":1678,"stem":1679},{"title":1683,"path":1684,"stem":1685,"children":1686},"Number ranges","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Fnumber-ranges","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Fnumber-ranges\u002Findex",[1687],{"title":1683,"path":1684,"stem":1685},{"title":1689,"path":1690,"stem":1691,"children":1692},"Order lists","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Forder-lists","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Forder-lists\u002Findex",[1693],{"title":1689,"path":1690,"stem":1691},{"title":1658,"path":1695,"stem":1696,"children":1697},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Forders","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Forders\u002Findex",[1698],{"title":1658,"path":1695,"stem":1696},{"title":1700,"path":1701,"stem":1702,"children":1703},"Returns","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Freturns","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Freturns\u002Findex",[1704],{"title":1700,"path":1701,"stem":1702},{"title":1706,"path":1707,"stem":1708,"children":1709},"Stock","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Fstock","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Fstock\u002Findex",[1710],{"title":1706,"path":1707,"stem":1708},{"title":1712,"path":1713,"stem":1714,"children":1715,"icon":1717},"Procurement","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fprocurement","docs\u002Fstudios\u002Fcommerce\u002Fprocurement\u002Findex",[1716,1718,1725,1732],{"title":1712,"path":1713,"stem":1714,"icon":1717},"i-lucide-clipboard-check",{"title":1719,"path":1720,"stem":1721,"children":1722,"icon":1724},"Approvals","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fprocurement\u002Fapprovals","docs\u002Fstudios\u002Fcommerce\u002Fprocurement\u002Fapprovals\u002Findex",[1723],{"title":1719,"path":1720,"stem":1721,"icon":1724},"i-lucide-badge-check",{"title":1726,"path":1727,"stem":1728,"children":1729,"icon":1731},"Cost centers","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fprocurement\u002Fcost-centers","docs\u002Fstudios\u002Fcommerce\u002Fprocurement\u002Fcost-centers\u002Findex",[1730],{"title":1726,"path":1727,"stem":1728,"icon":1731},"i-lucide-wallet",{"title":1733,"path":1734,"stem":1735,"children":1736,"icon":29},"Punchout","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fprocurement\u002Fpunchout","docs\u002Fstudios\u002Fcommerce\u002Fprocurement\u002Fpunchout\u002Findex",[1737],{"title":1733,"path":1734,"stem":1735,"icon":29},{"title":1739,"path":1740,"stem":1741,"children":1742},"Integration Studio","\u002Fdocs\u002Fstudios\u002Fintegration-studio","docs\u002Fstudios\u002Fintegration-studio\u002Findex",[1743,1744,1781,1818,1848,1853,1883],{"title":1739,"path":1740,"stem":1741},{"title":1745,"path":1746,"stem":1747,"children":1748,"icon":1750},"Build the workflow","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Findex",[1749,1751,1757,1763,1769,1775],{"title":1745,"path":1746,"stem":1747,"icon":1750},"i-lucide-workflow",{"title":1752,"path":1753,"stem":1754,"children":1755},"Expressions","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fexpressions","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fexpressions\u002Findex",[1756],{"title":1752,"path":1753,"stem":1754},{"title":1758,"path":1759,"stem":1760,"children":1761},"Node catalog","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fnode-catalog","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fnode-catalog\u002Findex",[1762],{"title":1758,"path":1759,"stem":1760},{"title":1764,"path":1765,"stem":1766,"children":1767},"Node configuration","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fnode-configuration","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fnode-configuration\u002Findex",[1768],{"title":1764,"path":1765,"stem":1766},{"title":1770,"path":1771,"stem":1772,"children":1773},"Templates","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Ftemplates","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Ftemplates\u002Findex",[1774],{"title":1770,"path":1771,"stem":1772},{"title":1776,"path":1777,"stem":1778,"children":1779},"The workflow document","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fworkflow-model","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fworkflow-model\u002Findex",[1780],{"title":1776,"path":1777,"stem":1778},{"title":1782,"path":1783,"stem":1784,"children":1785,"icon":1787},"Connect the systems","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Findex",[1786,1788,1794,1800,1806,1812],{"title":1782,"path":1783,"stem":1784,"icon":1787},"i-lucide-key-round",{"title":1789,"path":1790,"stem":1791,"children":1792},"Credentials","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Fcredentials","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Fcredentials\u002Findex",[1793],{"title":1789,"path":1790,"stem":1791},{"title":1795,"path":1796,"stem":1797,"children":1798},"File transfer","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Ffiles","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Ffiles\u002Findex",[1799],{"title":1795,"path":1796,"stem":1797},{"title":1801,"path":1802,"stem":1803,"children":1804},"OAuth","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Foauth","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Foauth\u002Findex",[1805],{"title":1801,"path":1802,"stem":1803},{"title":1807,"path":1808,"stem":1809,"children":1810},"Reaching Revenue Cloud","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Freaching-revenue-cloud","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Freaching-revenue-cloud\u002Findex",[1811],{"title":1807,"path":1808,"stem":1809},{"title":1813,"path":1814,"stem":1815,"children":1816},"Secrets","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Fsecrets","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Fsecrets\u002Findex",[1817],{"title":1813,"path":1814,"stem":1815},{"title":1819,"path":1820,"stem":1821,"children":1822,"icon":310},"Extend the Studio","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Findex",[1823,1824,1830,1836,1842],{"title":1819,"path":1820,"stem":1821,"icon":310},{"title":1825,"path":1826,"stem":1827,"children":1828},"Custom nodes","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fcustom-nodes","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fcustom-nodes\u002Findex",[1829],{"title":1825,"path":1826,"stem":1827},{"title":1831,"path":1832,"stem":1833,"children":1834},"Dynamic behaviour","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fdynamic-behaviour","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fdynamic-behaviour\u002Findex",[1835],{"title":1831,"path":1832,"stem":1833},{"title":1837,"path":1838,"stem":1839,"children":1840},"Package manifest","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fpackage-manifest","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fpackage-manifest\u002Findex",[1841],{"title":1837,"path":1838,"stem":1839},{"title":1843,"path":1844,"stem":1845,"children":1846},"Registration","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fregistration","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fregistration\u002Findex",[1847],{"title":1843,"path":1844,"stem":1845},{"title":1179,"path":1849,"stem":1850,"children":1851,"icon":1268},"\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fgetting-started","docs\u002Fstudios\u002Fintegration-studio\u002Fgetting-started\u002Findex",[1852],{"title":1179,"path":1849,"stem":1850,"icon":1268},{"title":1854,"path":1855,"stem":1856,"children":1857,"icon":372},"Run, watch, recover","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Findex",[1858,1859,1865,1871,1877],{"title":1854,"path":1855,"stem":1856,"icon":372},{"title":1860,"path":1861,"stem":1862,"children":1863},"Missed runs","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Fdead-letters","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Fdead-letters\u002Findex",[1864],{"title":1860,"path":1861,"stem":1862},{"title":1866,"path":1867,"stem":1868,"children":1869},"Failure handling","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Ffailure-handling","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Ffailure-handling\u002Findex",[1870],{"title":1866,"path":1867,"stem":1868},{"title":1872,"path":1873,"stem":1874,"children":1875},"Revisions and audit","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Frevisions-and-audit","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Frevisions-and-audit\u002Findex",[1876],{"title":1872,"path":1873,"stem":1874},{"title":1878,"path":1879,"stem":1880,"children":1881},"Runs","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Fruns","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Fruns\u002Findex",[1882],{"title":1878,"path":1879,"stem":1880},{"title":1884,"path":1885,"stem":1886,"children":1887,"icon":1889},"Start the workflow","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Findex",[1888,1890,1896,1902,1908,1914],{"title":1884,"path":1885,"stem":1886,"icon":1889},"i-lucide-zap",{"title":1891,"path":1892,"stem":1893,"children":1894},"Event triggers","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fevent-triggers","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fevent-triggers\u002Findex",[1895],{"title":1891,"path":1892,"stem":1893},{"title":1897,"path":1898,"stem":1899,"children":1900},"Execution modes","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fexecution-modes","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fexecution-modes\u002Findex",[1901],{"title":1897,"path":1898,"stem":1899},{"title":1903,"path":1904,"stem":1905,"children":1906},"Schedule triggers","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fschedule-triggers","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fschedule-triggers\u002Findex",[1907],{"title":1903,"path":1904,"stem":1905},{"title":1909,"path":1910,"stem":1911,"children":1912},"Triggers","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Ftriggers","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Ftriggers\u002Findex",[1913],{"title":1909,"path":1910,"stem":1911},{"title":1915,"path":1916,"stem":1917,"children":1918},"Webhook triggers","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fwebhook-triggers","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fwebhook-triggers\u002Findex",[1919],{"title":1915,"path":1916,"stem":1917},{"title":1921,"path":1922,"stem":1923,"children":1924},"Experience Studio","\u002Fdocs\u002Fstudios\u002Fsites","docs\u002Fstudios\u002Fsites\u002Findex",[1925,1926,1980,2044,2170,2176,2218],{"title":1921,"path":1922,"stem":1923},{"title":1927,"path":1928,"stem":1929,"children":1930,"icon":481},"Compose pages","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Findex",[1931,1932,1938,1944,1950,1956,1962,1968,1974],{"title":1927,"path":1928,"stem":1929,"icon":481},{"title":1933,"path":1934,"stem":1935,"children":1936},"Block catalog","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fblock-catalog","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fblock-catalog\u002Findex",[1937],{"title":1933,"path":1934,"stem":1935},{"title":1939,"path":1940,"stem":1941,"children":1942},"Block options","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fblock-options","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fblock-options\u002Findex",[1943],{"title":1939,"path":1940,"stem":1941},{"title":1945,"path":1946,"stem":1947,"children":1948},"How a block works","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fhow-a-block-works","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fhow-a-block-works\u002Findex",[1949],{"title":1945,"path":1946,"stem":1947},{"title":1951,"path":1952,"stem":1953,"children":1954},"Inline editing","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Finline-editing","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Finline-editing\u002Findex",[1955],{"title":1951,"path":1952,"stem":1953},{"title":1957,"path":1958,"stem":1959,"children":1960},"Managing pages","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fmanaging-pages","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fmanaging-pages\u002Findex",[1961],{"title":1957,"path":1958,"stem":1959},{"title":1963,"path":1964,"stem":1965,"children":1966},"Reading published pages","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Freading-pages","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Freading-pages\u002Findex",[1967],{"title":1963,"path":1964,"stem":1965},{"title":1969,"path":1970,"stem":1971,"children":1972},"Registering blocks","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fregistering","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fregistering\u002Findex",[1973],{"title":1969,"path":1970,"stem":1971},{"title":1975,"path":1976,"stem":1977,"children":1978},"Shells and fields","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fshells-and-fields","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fshells-and-fields\u002Findex",[1979],{"title":1975,"path":1976,"stem":1977},{"title":1981,"path":1982,"stem":1983,"children":1984,"icon":297},"Connect data","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata","docs\u002Fstudios\u002Fsites\u002Fdata\u002Findex",[1985,1986,1991,1997,2003,2009,2014,2020,2026,2032,2038],{"title":1981,"path":1982,"stem":1983,"icon":297},{"title":626,"path":1987,"stem":1988,"children":1989},"\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fauthentication","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fauthentication\u002Findex",[1990],{"title":626,"path":1987,"stem":1988},{"title":1992,"path":1993,"stem":1994,"children":1995},"The BFF pattern","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fbff-pattern","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fbff-pattern\u002Findex",[1996],{"title":1992,"path":1993,"stem":1994},{"title":1998,"path":1999,"stem":2000,"children":2001},"Catalog, cart, checkout","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fcatalog-cart-checkout","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fcatalog-cart-checkout\u002Findex",[2002],{"title":1998,"path":1999,"stem":2000},{"title":2004,"path":2005,"stem":2006,"children":2007},"Consent manager","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fconsent-manager","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fconsent-manager\u002Findex",[2008],{"title":2004,"path":2005,"stem":2006},{"title":1385,"path":2010,"stem":2011,"children":2012},"\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fforms","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fforms\u002Findex",[2013],{"title":1385,"path":2010,"stem":2011},{"title":2015,"path":2016,"stem":2017,"children":2018},"Media and assets","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fmedia","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fmedia\u002Findex",[2019],{"title":2015,"path":2016,"stem":2017},{"title":2021,"path":2022,"stem":2023,"children":2024},"Multi-tenant themes","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fmulti-tenant-themes","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fmulti-tenant-themes\u002Findex",[2025],{"title":2021,"path":2022,"stem":2023},{"title":2027,"path":2028,"stem":2029,"children":2030},"Search collections","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fsearch-collections","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fsearch-collections\u002Findex",[2031],{"title":2027,"path":2028,"stem":2029},{"title":2033,"path":2034,"stem":2035,"children":2036},"Search","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fsearch","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fsearch\u002Findex",[2037],{"title":2033,"path":2034,"stem":2035},{"title":2039,"path":2040,"stem":2041,"children":2042},"Tag manager","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Ftag-manager","docs\u002Fstudios\u002Fsites\u002Fdata\u002Ftag-manager\u002Findex",[2043],{"title":2039,"path":2040,"stem":2041},{"title":2045,"path":2046,"stem":2047,"children":2048,"icon":1268},"Build and deploy","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Findex",[2049,2050,2056,2062,2068,2074,2080,2086,2164],{"title":2045,"path":2046,"stem":2047,"icon":1268},{"title":2051,"path":2052,"stem":2053,"children":2054},"Build configuration","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fbuild-configuration","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fbuild-configuration\u002Findex",[2055],{"title":2051,"path":2052,"stem":2053},{"title":2057,"path":2058,"stem":2059,"children":2060},"Compute specifications","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fcompute-specifications","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fcompute-specifications\u002Findex",[2061],{"title":2057,"path":2058,"stem":2059},{"title":2063,"path":2064,"stem":2065,"children":2066},"Environment variables","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fenvironment-variables","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fenvironment-variables\u002Findex",[2067],{"title":2063,"path":2064,"stem":2065},{"title":2069,"path":2070,"stem":2071,"children":2072},"From Git","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Ffrom-git","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Ffrom-git\u002Findex",[2073],{"title":2069,"path":2070,"stem":2071},{"title":2075,"path":2076,"stem":2077,"children":2078},"From the CLI","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Ffrom-the-cli","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Ffrom-the-cli\u002Findex",[2079],{"title":2075,"path":2076,"stem":2077},{"title":2081,"path":2082,"stem":2083,"children":2084},"Manually","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fmanually","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fmanually\u002Findex",[2085],{"title":2081,"path":2082,"stem":2083},{"title":2087,"path":2088,"stem":2089,"children":2090},"Quick-starts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Findex",[2091,2092,2098,2104,2110,2116,2122,2128,2134,2140,2146,2152,2158],{"title":2087,"path":2088,"stem":2089},{"title":2093,"path":2094,"stem":2095,"children":2096},"Deploy an Angular app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fangular","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fangular\u002Findex",[2097],{"title":2093,"path":2094,"stem":2095},{"title":2099,"path":2100,"stem":2101,"children":2102},"Deploy a Astro app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fastro","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fastro\u002Findex",[2103],{"title":2099,"path":2100,"stem":2101},{"title":2105,"path":2106,"stem":2107,"children":2108},"Deploy a Flutter Web app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fflutter","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fflutter\u002Findex",[2109],{"title":2105,"path":2106,"stem":2107},{"title":2111,"path":2112,"stem":2113,"children":2114},"Deploy a Next.js app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fnextjs","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fnextjs\u002Findex",[2115],{"title":2111,"path":2112,"stem":2113},{"title":2117,"path":2118,"stem":2119,"children":2120},"Deploy a Nuxt app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fnuxt","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fnuxt\u002Findex",[2121],{"title":2117,"path":2118,"stem":2119},{"title":2123,"path":2124,"stem":2125,"children":2126},"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",[2127],{"title":2123,"path":2124,"stem":2125},{"title":2129,"path":2130,"stem":2131,"children":2132},"Deploy a React app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Freact","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Freact\u002Findex",[2133],{"title":2129,"path":2130,"stem":2131},{"title":2135,"path":2136,"stem":2137,"children":2138},"Deploy a Remix app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fremix","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fremix\u002Findex",[2139],{"title":2135,"path":2136,"stem":2137},{"title":2141,"path":2142,"stem":2143,"children":2144},"Deploy a SvelteKit app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fsveltekit","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fsveltekit\u002Findex",[2145],{"title":2141,"path":2142,"stem":2143},{"title":2147,"path":2148,"stem":2149,"children":2150},"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",[2151],{"title":2147,"path":2148,"stem":2149},{"title":2153,"path":2154,"stem":2155,"children":2156},"Deploy a Vanilla JS app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fvanilla","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fvanilla\u002Findex",[2157],{"title":2153,"path":2154,"stem":2155},{"title":2159,"path":2160,"stem":2161,"children":2162},"Deploy a Vue.js app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fvue","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fvue\u002Findex",[2163],{"title":2159,"path":2160,"stem":2161},{"title":2165,"path":2166,"stem":2167,"children":2168},"Starting points","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fstarting-points","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fstarting-points\u002Findex",[2169],{"title":2165,"path":2166,"stem":2167},{"title":1179,"path":2171,"stem":2172,"children":2173,"icon":2175},"\u002Fdocs\u002Fstudios\u002Fsites\u002Fgetting-started","docs\u002Fstudios\u002Fsites\u002Fgetting-started\u002Findex",[2174],{"title":1179,"path":2171,"stem":2172,"icon":2175},"i-lucide-terminal",{"title":2177,"path":2178,"stem":2179,"children":2180,"icon":691},"Production","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Findex",[2181,2182,2188,2194,2200,2206,2212],{"title":2177,"path":2178,"stem":2179,"icon":691},{"title":2183,"path":2184,"stem":2185,"children":2186},"Deployments","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Fdeployments","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Fdeployments\u002Findex",[2187],{"title":2183,"path":2184,"stem":2185},{"title":2189,"path":2190,"stem":2191,"children":2192},"Domains","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Fdomains","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Fdomains\u002Findex",[2193],{"title":2189,"path":2190,"stem":2191},{"title":2195,"path":2196,"stem":2197,"children":2198},"Instant rollbacks","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Finstant-rollbacks","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Finstant-rollbacks\u002Findex",[2199],{"title":2195,"path":2196,"stem":2197},{"title":2201,"path":2202,"stem":2203,"children":2204},"Logs","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Flogs","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Flogs\u002Findex",[2205],{"title":2201,"path":2202,"stem":2203},{"title":2207,"path":2208,"stem":2209,"children":2210},"Previews","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Fpreviews","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Fpreviews\u002Findex",[2211],{"title":2207,"path":2208,"stem":2209},{"title":2213,"path":2214,"stem":2215,"children":2216},"Publishing a theme","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Fpublishing-a-theme","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Fpublishing-a-theme\u002Findex",[2217],{"title":2213,"path":2214,"stem":2215},{"title":2219,"path":2220,"stem":2221,"children":2222,"icon":460},"Build the theme","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Findex",[2223,2224,2230,2236,2242,2248,2254,2260,2266,2284],{"title":2219,"path":2220,"stem":2221,"icon":460},{"title":2225,"path":2226,"stem":2227,"children":2228},"Theme anatomy","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fanatomy","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Fanatomy\u002Findex",[2229],{"title":2225,"path":2226,"stem":2227},{"title":2231,"path":2232,"stem":2233,"children":2234},"Design tokens","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fdesign-tokens","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Fdesign-tokens\u002Findex",[2235],{"title":2231,"path":2232,"stem":2233},{"title":2237,"path":2238,"stem":2239,"children":2240},"Frameworks","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fframeworks","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Fframeworks\u002Findex",[2241],{"title":2237,"path":2238,"stem":2239},{"title":2243,"path":2244,"stem":2245,"children":2246},"The layer chain","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Flayer-chain","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Flayer-chain\u002Findex",[2247],{"title":2243,"path":2244,"stem":2245},{"title":2249,"path":2250,"stem":2251,"children":2252},"Local development","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Flocal-development","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Flocal-development\u002Findex",[2253],{"title":2249,"path":2250,"stem":2251},{"title":2255,"path":2256,"stem":2257,"children":2258},"Modules and plugins","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fmodules-and-plugins","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Fmodules-and-plugins\u002Findex",[2259],{"title":2255,"path":2256,"stem":2257},{"title":2261,"path":2262,"stem":2263,"children":2264},"Overriding","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Foverriding","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Foverriding\u002Findex",[2265],{"title":2261,"path":2262,"stem":2263},{"title":2267,"path":2268,"stem":2269,"children":2270},"Rendering","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Findex",[2271,2272,2278],{"title":2267,"path":2268,"stem":2269},{"title":2273,"path":2274,"stem":2275,"children":2276},"SSR","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Fssr","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Fssr\u002Findex",[2277],{"title":2273,"path":2274,"stem":2275},{"title":2279,"path":2280,"stem":2281,"children":2282},"Static","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Fstatic","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Fstatic\u002Findex",[2283],{"title":2279,"path":2280,"stem":2281},{"title":2285,"path":2286,"stem":2287,"children":2288},"Service modes","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fservice-modes","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Fservice-modes\u002Findex",[2289],{"title":2285,"path":2286,"stem":2287},{"title":2291,"path":2292,"stem":2293,"children":2294},"Tools","\u002Fdocs\u002Ftools","docs\u002Ftools\u002Findex",[2295,2296,2303,2309,3322],{"title":2291,"path":2292,"stem":2293},{"title":2297,"path":2298,"stem":2299,"children":2300,"icon":2302},"AI agents","\u002Fdocs\u002Ftools\u002Fai-agents","docs\u002Ftools\u002Fai-agents\u002Findex",[2301],{"title":2297,"path":2298,"stem":2299,"icon":2302},"i-lucide-shield-alert",{"title":2304,"path":2305,"stem":2306,"children":2307,"icon":527},"Aria API","\u002Fdocs\u002Ftools\u002Faria-api","docs\u002Ftools\u002Faria-api\u002Findex",[2308],{"title":2304,"path":2305,"stem":2306,"icon":527},{"title":2310,"path":2311,"stem":2312,"children":2313},"Command line","\u002Fdocs\u002Ftools\u002Fcommand-line","docs\u002Ftools\u002Fcommand-line\u002Findex",[2314,2315,2321,2326,2332,2338,2344,2350,2356,2362,3280,3286,3292,3298,3304,3310,3316],{"title":2310,"path":2311,"stem":2312},{"title":2316,"path":2317,"stem":2318,"children":2319},"Aliases","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Faliases","docs\u002Ftools\u002Fcommand-line\u002Faliases\u002Findex",[2320],{"title":2316,"path":2317,"stem":2318},{"title":626,"path":2322,"stem":2323,"children":2324},"\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fauthentication","docs\u002Ftools\u002Fcommand-line\u002Fauthentication\u002Findex",[2325],{"title":626,"path":2322,"stem":2323},{"title":2327,"path":2328,"stem":2329,"children":2330},"Commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fcommands","docs\u002Ftools\u002Fcommand-line\u002Fcommands\u002Findex",[2331],{"title":2327,"path":2328,"stem":2329},{"title":2333,"path":2334,"stem":2335,"children":2336},"Global commands reference","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fglobal-commands","docs\u002Ftools\u002Fcommand-line\u002Fglobal-commands\u002Findex",[2337],{"title":2333,"path":2334,"stem":2335},{"title":2339,"path":2340,"stem":2341,"children":2342},"Installation","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Finstallation","docs\u002Ftools\u002Fcommand-line\u002Finstallation\u002Findex",[2343],{"title":2339,"path":2340,"stem":2341},{"title":2345,"path":2346,"stem":2347,"children":2348},"Interactive use","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Finteractive","docs\u002Ftools\u002Fcommand-line\u002Finteractive\u002Findex",[2349],{"title":2345,"path":2346,"stem":2347},{"title":2351,"path":2352,"stem":2353,"children":2354},"Non-interactive use","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fnon-interactive","docs\u002Ftools\u002Fcommand-line\u002Fnon-interactive\u002Findex",[2355],{"title":2351,"path":2352,"stem":2353},{"title":2357,"path":2358,"stem":2359,"children":2360},"Project configuration","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fproject-configuration","docs\u002Ftools\u002Fcommand-line\u002Fproject-configuration\u002Findex",[2361],{"title":2357,"path":2358,"stem":2359},{"title":2363,"path":2364,"stem":2365,"children":2366},"Command reference","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Findex",[2367,2368,2374,2434,2440,2464,2470,2476,2536,2554,2560,2590,2596,2602,2650,2656,2674,2680,2686,2692,2716,2722,2788,2794,2854,2908,2932,2938,2944,2950,2956,2980,3004,3010,3016,3052,3082,3088,3124,3178,3202,3208,3214,3238,3244,3250,3256],{"title":2363,"path":2364,"stem":2365},{"title":2369,"path":2370,"stem":2371,"children":2372},"About commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fabout","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fabout\u002Findex",[2373],{"title":2369,"path":2370,"stem":2371},{"title":2375,"path":2376,"stem":2377,"children":2378},"Ads commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Findex",[2379,2380,2386,2392,2398,2404,2410,2416,2422,2428],{"title":2375,"path":2376,"stem":2377},{"title":2381,"path":2382,"stem":2383,"children":2384},"Ads: accounts commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Faccounts","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Faccounts\u002Findex",[2385],{"title":2381,"path":2382,"stem":2383},{"title":2387,"path":2388,"stem":2389,"children":2390},"Ads: conversions commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Fconversions","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Fconversions\u002Findex",[2391],{"title":2387,"path":2388,"stem":2389},{"title":2393,"path":2394,"stem":2395,"children":2396},"Ads: feeds commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Ffeeds","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Ffeeds\u002Findex",[2397],{"title":2393,"path":2394,"stem":2395},{"title":2399,"path":2400,"stem":2401,"children":2402},"Ads: jobs commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Fjobs","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Fjobs\u002Findex",[2403],{"title":2399,"path":2400,"stem":2401},{"title":2405,"path":2406,"stem":2407,"children":2408},"Ads: links commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Flinks","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Flinks\u002Findex",[2409],{"title":2405,"path":2406,"stem":2407},{"title":2411,"path":2412,"stem":2413,"children":2414},"Ads: rules commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Frules","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Frules\u002Findex",[2415],{"title":2411,"path":2412,"stem":2413},{"title":2417,"path":2418,"stem":2419,"children":2420},"Ads: spend commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Fspend","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Fspend\u002Findex",[2421],{"title":2417,"path":2418,"stem":2419},{"title":2423,"path":2424,"stem":2425,"children":2426},"Ads: syncs commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Fsyncs","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Fsyncs\u002Findex",[2427],{"title":2423,"path":2424,"stem":2425},{"title":2429,"path":2430,"stem":2431,"children":2432},"Ads: vocabularies commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Fvocabularies","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fads\u002Fvocabularies\u002Findex",[2433],{"title":2429,"path":2430,"stem":2431},{"title":2435,"path":2436,"stem":2437,"children":2438},"Apps commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fapps","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fapps\u002Findex",[2439],{"title":2435,"path":2436,"stem":2437},{"title":2441,"path":2442,"stem":2443,"children":2444},"Audiences commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Faudiences","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Faudiences\u002Findex",[2445,2446,2452,2458],{"title":2441,"path":2442,"stem":2443},{"title":2447,"path":2448,"stem":2449,"children":2450},"Audiences: audiences commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Faudiences\u002Faudiences","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Faudiences\u002Faudiences\u002Findex",[2451],{"title":2447,"path":2448,"stem":2449},{"title":2453,"path":2454,"stem":2455,"children":2456},"Audiences: members commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Faudiences\u002Fmembers","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Faudiences\u002Fmembers\u002Findex",[2457],{"title":2453,"path":2454,"stem":2455},{"title":2459,"path":2460,"stem":2461,"children":2462},"Audiences: rules commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Faudiences\u002Frules","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Faudiences\u002Frules\u002Findex",[2463],{"title":2459,"path":2460,"stem":2461},{"title":2465,"path":2466,"stem":2467,"children":2468},"Audit commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Faudit","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Faudit\u002Findex",[2469],{"title":2465,"path":2466,"stem":2467},{"title":2471,"path":2472,"stem":2473,"children":2474},"Avatars commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Favatars","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Favatars\u002Findex",[2475],{"title":2471,"path":2472,"stem":2473},{"title":2477,"path":2478,"stem":2479,"children":2480},"Campaigns commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Findex",[2481,2482,2488,2494,2500,2506,2512,2518,2524,2530],{"title":2477,"path":2478,"stem":2479},{"title":2483,"path":2484,"stem":2485,"children":2486},"Campaigns: assets commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Fassets","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Fassets\u002Findex",[2487],{"title":2483,"path":2484,"stem":2485},{"title":2489,"path":2490,"stem":2491,"children":2492},"Campaigns: attribution commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Fattribution","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Fattribution\u002Findex",[2493],{"title":2489,"path":2490,"stem":2491},{"title":2495,"path":2496,"stem":2497,"children":2498},"Campaigns: budgets commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Fbudgets","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Fbudgets\u002Findex",[2499],{"title":2495,"path":2496,"stem":2497},{"title":2501,"path":2502,"stem":2503,"children":2504},"Campaigns: calendar commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Fcalendar","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Fcalendar\u002Findex",[2505],{"title":2501,"path":2502,"stem":2503},{"title":2507,"path":2508,"stem":2509,"children":2510},"Campaigns: campaigns commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Fcampaigns","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Fcampaigns\u002Findex",[2511],{"title":2507,"path":2508,"stem":2509},{"title":2513,"path":2514,"stem":2515,"children":2516},"Campaigns: spend commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Fspend","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Fspend\u002Findex",[2517],{"title":2513,"path":2514,"stem":2515},{"title":2519,"path":2520,"stem":2521,"children":2522},"Campaigns: tasks commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Ftasks","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Ftasks\u002Findex",[2523],{"title":2519,"path":2520,"stem":2521},{"title":2525,"path":2526,"stem":2527,"children":2528},"Campaigns: touches commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Ftouches","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Ftouches\u002Findex",[2529],{"title":2525,"path":2526,"stem":2527},{"title":2531,"path":2532,"stem":2533,"children":2534},"Campaigns: vocabularies commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Fvocabularies","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcampaigns\u002Fvocabularies\u002Findex",[2535],{"title":2531,"path":2532,"stem":2533},{"title":2537,"path":2538,"stem":2539,"children":2540},"Carts commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcarts","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcarts\u002Findex",[2541,2542,2548],{"title":2537,"path":2538,"stem":2539},{"title":2543,"path":2544,"stem":2545,"children":2546},"Carts: import and export commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcarts\u002Fio","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcarts\u002Fio\u002Findex",[2547],{"title":2543,"path":2544,"stem":2545},{"title":2549,"path":2550,"stem":2551,"children":2552},"Carts: items commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcarts\u002Fitems","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcarts\u002Fitems\u002Findex",[2553],{"title":2549,"path":2550,"stem":2551},{"title":2555,"path":2556,"stem":2557,"children":2558},"Channels commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fchannels","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fchannels\u002Findex",[2559],{"title":2555,"path":2556,"stem":2557},{"title":2561,"path":2562,"stem":2563,"children":2564},"Consent manager commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fconsent-manager","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fconsent-manager\u002Findex",[2565,2566,2572,2578,2584],{"title":2561,"path":2562,"stem":2563},{"title":2567,"path":2568,"stem":2569,"children":2570},"Consent manager: delivery commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fconsent-manager\u002Fdelivery","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fconsent-manager\u002Fdelivery\u002Findex",[2571],{"title":2567,"path":2568,"stem":2569},{"title":2573,"path":2574,"stem":2575,"children":2576},"Consent manager: policy commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fconsent-manager\u002Fpolicy","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fconsent-manager\u002Fpolicy\u002Findex",[2577],{"title":2573,"path":2574,"stem":2575},{"title":2579,"path":2580,"stem":2581,"children":2582},"Consent manager: records commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fconsent-manager\u002Frecords","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fconsent-manager\u002Frecords\u002Findex",[2583],{"title":2579,"path":2580,"stem":2581},{"title":2585,"path":2586,"stem":2587,"children":2588},"Consent manager: registry commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fconsent-manager\u002Fregistry","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fconsent-manager\u002Fregistry\u002Findex",[2589],{"title":2585,"path":2586,"stem":2587},{"title":2591,"path":2592,"stem":2593,"children":2594},"Cost centers commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcost-centers","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcost-centers\u002Findex",[2595],{"title":2591,"path":2592,"stem":2593},{"title":2597,"path":2598,"stem":2599,"children":2600},"Create commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcreate","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcreate\u002Findex",[2601],{"title":2597,"path":2598,"stem":2599},{"title":2603,"path":2604,"stem":2605,"children":2606},"Customers commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Findex",[2607,2608,2614,2620,2626,2632,2638,2644],{"title":2603,"path":2604,"stem":2605},{"title":2609,"path":2610,"stem":2611,"children":2612},"Customers: contacts commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Fcontacts","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Fcontacts\u002Findex",[2613],{"title":2609,"path":2610,"stem":2611},{"title":2615,"path":2616,"stem":2617,"children":2618},"Customers: follow ups commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Ffollow-ups","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Ffollow-ups\u002Findex",[2619],{"title":2615,"path":2616,"stem":2617},{"title":2621,"path":2622,"stem":2623,"children":2624},"Customers: leads commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Fleads","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Fleads\u002Findex",[2625],{"title":2621,"path":2622,"stem":2623},{"title":2627,"path":2628,"stem":2629,"children":2630},"Customers: organizations commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Forganizations","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Forganizations\u002Findex",[2631],{"title":2627,"path":2628,"stem":2629},{"title":2633,"path":2634,"stem":2635,"children":2636},"Customers: roles commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Froles","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Froles\u002Findex",[2637],{"title":2633,"path":2634,"stem":2635},{"title":2639,"path":2640,"stem":2641,"children":2642},"Customers: segments commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Fsegments","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Fsegments\u002Findex",[2643],{"title":2639,"path":2640,"stem":2641},{"title":2645,"path":2646,"stem":2647,"children":2648},"Customers: value lists commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Fvalue-lists","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Fvalue-lists\u002Findex",[2649],{"title":2645,"path":2646,"stem":2647},{"title":2651,"path":2652,"stem":2653,"children":2654},"Deploy commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fdeploy","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fdeploy\u002Findex",[2655],{"title":2651,"path":2652,"stem":2653},{"title":2657,"path":2658,"stem":2659,"children":2660},"Documents commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fdocuments","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fdocuments\u002Findex",[2661,2662,2668],{"title":2657,"path":2658,"stem":2659},{"title":2663,"path":2664,"stem":2665,"children":2666},"Documents: kinds commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fdocuments\u002Fkinds","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fdocuments\u002Fkinds\u002Findex",[2667],{"title":2663,"path":2664,"stem":2665},{"title":2669,"path":2670,"stem":2671,"children":2672},"Documents: register commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fdocuments\u002Fregister","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fdocuments\u002Fregister\u002Findex",[2673],{"title":2669,"path":2670,"stem":2671},{"title":2675,"path":2676,"stem":2677,"children":2678},"Events commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fevents","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fevents\u002Findex",[2679],{"title":2675,"path":2676,"stem":2677},{"title":2681,"path":2682,"stem":2683,"children":2684},"Forms commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fforms","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fforms\u002Findex",[2685],{"title":2681,"path":2682,"stem":2683},{"title":2687,"path":2688,"stem":2689,"children":2690},"Health commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fhealth","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fhealth\u002Findex",[2691],{"title":2687,"path":2688,"stem":2689},{"title":2693,"path":2694,"stem":2695,"children":2696},"Inventories commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Finventories","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Finventories\u002Findex",[2697,2698,2704,2710],{"title":2693,"path":2694,"stem":2695},{"title":2699,"path":2700,"stem":2701,"children":2702},"Inventories: locations commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Finventories\u002Flocations","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Finventories\u002Flocations\u002Findex",[2703],{"title":2699,"path":2700,"stem":2701},{"title":2705,"path":2706,"stem":2707,"children":2708},"Inventories: reservations commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Finventories\u002Freservations","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Finventories\u002Freservations\u002Findex",[2709],{"title":2705,"path":2706,"stem":2707},{"title":2711,"path":2712,"stem":2713,"children":2714},"Inventories: stock commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Finventories\u002Fstock","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Finventories\u002Fstock\u002Findex",[2715],{"title":2711,"path":2712,"stem":2713},{"title":2717,"path":2718,"stem":2719,"children":2720},"Import and export commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fio","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fio\u002Findex",[2721],{"title":2717,"path":2718,"stem":2719},{"title":2723,"path":2724,"stem":2725,"children":2726},"Journeys commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Findex",[2727,2728,2734,2740,2746,2752,2758,2764,2770,2776,2782],{"title":2723,"path":2724,"stem":2725},{"title":2729,"path":2730,"stem":2731,"children":2732},"Journeys: enrollments commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fenrollments","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fenrollments\u002Findex",[2733],{"title":2729,"path":2730,"stem":2731},{"title":2735,"path":2736,"stem":2737,"children":2738},"Journeys: jobs commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fjobs","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fjobs\u002Findex",[2739],{"title":2735,"path":2736,"stem":2737},{"title":2741,"path":2742,"stem":2743,"children":2744},"Journeys: journeys commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fjourneys","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fjourneys\u002Findex",[2745],{"title":2741,"path":2742,"stem":2743},{"title":2747,"path":2748,"stem":2749,"children":2750},"Journeys: stats commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fstats","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fstats\u002Findex",[2751],{"title":2747,"path":2748,"stem":2749},{"title":2753,"path":2754,"stem":2755,"children":2756},"Journeys: steps commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fsteps","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fsteps\u002Findex",[2757],{"title":2753,"path":2754,"stem":2755},{"title":2759,"path":2760,"stem":2761,"children":2762},"Journeys: templates commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Ftemplates","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Ftemplates\u002Findex",[2763],{"title":2759,"path":2760,"stem":2761},{"title":2765,"path":2766,"stem":2767,"children":2768},"Journeys: timeline commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Ftimeline","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Ftimeline\u002Findex",[2769],{"title":2765,"path":2766,"stem":2767},{"title":2771,"path":2772,"stem":2773,"children":2774},"Journeys: versions commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fversions","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fversions\u002Findex",[2775],{"title":2771,"path":2772,"stem":2773},{"title":2777,"path":2778,"stem":2779,"children":2780},"Journeys: vocabularies commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fvocabularies","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fvocabularies\u002Findex",[2781],{"title":2777,"path":2778,"stem":2779},{"title":2783,"path":2784,"stem":2785,"children":2786},"Journeys: watches commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fwatches","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fjourneys\u002Fwatches\u002Findex",[2787],{"title":2783,"path":2784,"stem":2785},{"title":2789,"path":2790,"stem":2791,"children":2792},"Locale commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Flocale","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Flocale\u002Findex",[2793],{"title":2789,"path":2790,"stem":2791},{"title":2795,"path":2796,"stem":2797,"children":2798},"Loyalty commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Findex",[2799,2800,2806,2812,2818,2824,2830,2836,2842,2848],{"title":2795,"path":2796,"stem":2797},{"title":2801,"path":2802,"stem":2803,"children":2804},"Loyalty: bonus commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Fbonus","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Fbonus\u002Findex",[2805],{"title":2801,"path":2802,"stem":2803},{"title":2807,"path":2808,"stem":2809,"children":2810},"Loyalty: jobs commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Fjobs","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Fjobs\u002Findex",[2811],{"title":2807,"path":2808,"stem":2809},{"title":2813,"path":2814,"stem":2815,"children":2816},"Loyalty: memberships commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Fmemberships","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Fmemberships\u002Findex",[2817],{"title":2813,"path":2814,"stem":2815},{"title":2819,"path":2820,"stem":2821,"children":2822},"Loyalty: points commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Fpoints","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Fpoints\u002Findex",[2823],{"title":2819,"path":2820,"stem":2821},{"title":2825,"path":2826,"stem":2827,"children":2828},"Loyalty: programs commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Fprograms","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Fprograms\u002Findex",[2829],{"title":2825,"path":2826,"stem":2827},{"title":2831,"path":2832,"stem":2833,"children":2834},"Loyalty: referrals commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Freferrals","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Freferrals\u002Findex",[2835],{"title":2831,"path":2832,"stem":2833},{"title":2837,"path":2838,"stem":2839,"children":2840},"Loyalty: rewards commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Frewards","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Frewards\u002Findex",[2841],{"title":2837,"path":2838,"stem":2839},{"title":2843,"path":2844,"stem":2845,"children":2846},"Loyalty: tiers commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Ftiers","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Ftiers\u002Findex",[2847],{"title":2843,"path":2844,"stem":2845},{"title":2849,"path":2850,"stem":2851,"children":2852},"Loyalty: vocabularies commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Fvocabularies","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Floyalty\u002Fvocabularies\u002Findex",[2853],{"title":2849,"path":2850,"stem":2851},{"title":2855,"path":2856,"stem":2857,"children":2858},"Mailings commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Findex",[2859,2860,2866,2872,2878,2884,2890,2896,2902],{"title":2855,"path":2856,"stem":2857},{"title":2861,"path":2862,"stem":2863,"children":2864},"Mailings: analysis commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Fanalysis","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Fanalysis\u002Findex",[2865],{"title":2861,"path":2862,"stem":2863},{"title":2867,"path":2868,"stem":2869,"children":2870},"Mailings: blocks commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Fblocks","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Fblocks\u002Findex",[2871],{"title":2867,"path":2868,"stem":2869},{"title":2873,"path":2874,"stem":2875,"children":2876},"Mailings: health commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Fhealth","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Fhealth\u002Findex",[2877],{"title":2873,"path":2874,"stem":2875},{"title":2879,"path":2880,"stem":2881,"children":2882},"Mailings: mailings commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Fmailings","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Fmailings\u002Findex",[2883],{"title":2879,"path":2880,"stem":2881},{"title":2885,"path":2886,"stem":2887,"children":2888},"Mailings: recipients commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Frecipients","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Frecipients\u002Findex",[2889],{"title":2885,"path":2886,"stem":2887},{"title":2891,"path":2892,"stem":2893,"children":2894},"Mailings: send commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Fsend","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Fsend\u002Findex",[2895],{"title":2891,"path":2892,"stem":2893},{"title":2897,"path":2898,"stem":2899,"children":2900},"Mailings: variants commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Fvariants","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Fvariants\u002Findex",[2901],{"title":2897,"path":2898,"stem":2899},{"title":2903,"path":2904,"stem":2905,"children":2906},"Mailings: vocabularies commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Fvocabularies","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmailings\u002Fvocabularies\u002Findex",[2907],{"title":2903,"path":2904,"stem":2905},{"title":2909,"path":2910,"stem":2911,"children":2912},"Marketing consents commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmarketing-consents","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmarketing-consents\u002Findex",[2913,2914,2920,2926],{"title":2909,"path":2910,"stem":2911},{"title":2915,"path":2916,"stem":2917,"children":2918},"Marketing consents: evidence commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmarketing-consents\u002Fevidence","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmarketing-consents\u002Fevidence\u002Findex",[2919],{"title":2915,"path":2916,"stem":2917},{"title":2921,"path":2922,"stem":2923,"children":2924},"Marketing consents: subscriptions commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmarketing-consents\u002Fsubscriptions","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmarketing-consents\u002Fsubscriptions\u002Findex",[2925],{"title":2921,"path":2922,"stem":2923},{"title":2927,"path":2928,"stem":2929,"children":2930},"Marketing consents: types commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmarketing-consents\u002Ftypes","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmarketing-consents\u002Ftypes\u002Findex",[2931],{"title":2927,"path":2928,"stem":2929},{"title":2933,"path":2934,"stem":2935,"children":2936},"Markets commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmarkets","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmarkets\u002Findex",[2937],{"title":2933,"path":2934,"stem":2935},{"title":2939,"path":2940,"stem":2941,"children":2942},"Messaging commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmessaging","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmessaging\u002Findex",[2943],{"title":2939,"path":2940,"stem":2941},{"title":2945,"path":2946,"stem":2947,"children":2948},"Order lists commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Forderlists","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Forderlists\u002Findex",[2949],{"title":2945,"path":2946,"stem":2947},{"title":2951,"path":2952,"stem":2953,"children":2954},"Orders commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Forders","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Forders\u002Findex",[2955],{"title":2951,"path":2952,"stem":2953},{"title":2957,"path":2958,"stem":2959,"children":2960},"Pages commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpages","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpages\u002Findex",[2961,2962,2968,2974],{"title":2957,"path":2958,"stem":2959},{"title":2963,"path":2964,"stem":2965,"children":2966},"Pages: collaboration commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpages\u002Fcollaboration","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpages\u002Fcollaboration\u002Findex",[2967],{"title":2963,"path":2964,"stem":2965},{"title":2969,"path":2970,"stem":2971,"children":2972},"Pages: delivery commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpages\u002Fdelivery","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpages\u002Fdelivery\u002Findex",[2973],{"title":2969,"path":2970,"stem":2971},{"title":2975,"path":2976,"stem":2977,"children":2978},"Pages: editor commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpages\u002Feditor","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpages\u002Feditor\u002Findex",[2979],{"title":2975,"path":2976,"stem":2977},{"title":2981,"path":2982,"stem":2983,"children":2984},"Payments commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpayments","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpayments\u002Findex",[2985,2986,2992,2998],{"title":2981,"path":2982,"stem":2983},{"title":2987,"path":2988,"stem":2989,"children":2990},"Payments: ledger commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpayments\u002Fledger","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpayments\u002Fledger\u002Findex",[2991],{"title":2987,"path":2988,"stem":2989},{"title":2993,"path":2994,"stem":2995,"children":2996},"Payments: methods commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpayments\u002Fmethods","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpayments\u002Fmethods\u002Findex",[2997],{"title":2993,"path":2994,"stem":2995},{"title":2999,"path":3000,"stem":3001,"children":3002},"Payments: providers commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpayments\u002Fproviders","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpayments\u002Fproviders\u002Findex",[3003],{"title":2999,"path":3000,"stem":3001},{"title":3005,"path":3006,"stem":3007,"children":3008},"Prices commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fprices","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fprices\u002Findex",[3009],{"title":3005,"path":3006,"stem":3007},{"title":3011,"path":3012,"stem":3013,"children":3014},"Procurement commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fprocurement","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fprocurement\u002Findex",[3015],{"title":3011,"path":3012,"stem":3013},{"title":3017,"path":3018,"stem":3019,"children":3020},"Products commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts\u002Findex",[3021,3022,3028,3034,3040,3046],{"title":3017,"path":3018,"stem":3019},{"title":3023,"path":3024,"stem":3025,"children":3026},"Products: assets commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts\u002Fassets","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts\u002Fassets\u002Findex",[3027],{"title":3023,"path":3024,"stem":3025},{"title":3029,"path":3030,"stem":3031,"children":3032},"Products: categories commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts\u002Fcategories","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts\u002Fcategories\u002Findex",[3033],{"title":3029,"path":3030,"stem":3031},{"title":3035,"path":3036,"stem":3037,"children":3038},"Products: data model commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts\u002Fdata-model","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts\u002Fdata-model\u002Findex",[3039],{"title":3035,"path":3036,"stem":3037},{"title":3041,"path":3042,"stem":3043,"children":3044},"Products: manufacturers commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts\u002Fmanufacturers","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts\u002Fmanufacturers\u002Findex",[3045],{"title":3041,"path":3042,"stem":3043},{"title":3047,"path":3048,"stem":3049,"children":3050},"Products: references commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts\u002Freferences","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts\u002Freferences\u002Findex",[3051],{"title":3047,"path":3048,"stem":3049},{"title":3053,"path":3054,"stem":3055,"children":3056},"Promotions commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpromotions","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpromotions\u002Findex",[3057,3058,3064,3070,3076],{"title":3053,"path":3054,"stem":3055},{"title":3059,"path":3060,"stem":3061,"children":3062},"Promotions: evaluation commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpromotions\u002Fevaluation","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpromotions\u002Fevaluation\u002Findex",[3063],{"title":3059,"path":3060,"stem":3061},{"title":3065,"path":3066,"stem":3067,"children":3068},"Promotions: promotions commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpromotions\u002Fpromotions","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpromotions\u002Fpromotions\u002Findex",[3069],{"title":3065,"path":3066,"stem":3067},{"title":3071,"path":3072,"stem":3073,"children":3074},"Promotions: redemptions commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpromotions\u002Fredemptions","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpromotions\u002Fredemptions\u002Findex",[3075],{"title":3071,"path":3072,"stem":3073},{"title":3077,"path":3078,"stem":3079,"children":3080},"Promotions: vouchers commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpromotions\u002Fvouchers","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpromotions\u002Fvouchers\u002Findex",[3081],{"title":3077,"path":3078,"stem":3079},{"title":3083,"path":3084,"stem":3085,"children":3086},"Punchout commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpunchout","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpunchout\u002Findex",[3087],{"title":3083,"path":3084,"stem":3085},{"title":3089,"path":3090,"stem":3091,"children":3092},"Quotes commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fquotes","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fquotes\u002Findex",[3093,3094,3100,3106,3112,3118],{"title":3089,"path":3090,"stem":3091},{"title":3095,"path":3096,"stem":3097,"children":3098},"Quotes: acceptance commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fquotes\u002Facceptance","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fquotes\u002Facceptance\u002Findex",[3099],{"title":3095,"path":3096,"stem":3097},{"title":3101,"path":3102,"stem":3103,"children":3104},"Quotes: pricing commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fquotes\u002Fpricing","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fquotes\u002Fpricing\u002Findex",[3105],{"title":3101,"path":3102,"stem":3103},{"title":3107,"path":3108,"stem":3109,"children":3110},"Quotes: quotes commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fquotes\u002Fquotes","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fquotes\u002Fquotes\u002Findex",[3111],{"title":3107,"path":3108,"stem":3109},{"title":3113,"path":3114,"stem":3115,"children":3116},"Quotes: ranges commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fquotes\u002Franges","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fquotes\u002Franges\u002Findex",[3117],{"title":3113,"path":3114,"stem":3115},{"title":3119,"path":3120,"stem":3121,"children":3122},"Quotes: trail commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fquotes\u002Ftrail","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fquotes\u002Ftrail\u002Findex",[3123],{"title":3119,"path":3120,"stem":3121},{"title":3125,"path":3126,"stem":3127,"children":3128},"Reviews commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Findex",[3129,3130,3136,3142,3148,3154,3160,3166,3172],{"title":3125,"path":3126,"stem":3127},{"title":3131,"path":3132,"stem":3133,"children":3134},"Reviews: aggregates commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Faggregates","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Faggregates\u002Findex",[3135],{"title":3131,"path":3132,"stem":3133},{"title":3137,"path":3138,"stem":3139,"children":3140},"Reviews: jobs commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Fjobs","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Fjobs\u002Findex",[3141],{"title":3137,"path":3138,"stem":3139},{"title":3143,"path":3144,"stem":3145,"children":3146},"Reviews: moderation commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Fmoderation","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Fmoderation\u002Findex",[3147],{"title":3143,"path":3144,"stem":3145},{"title":3149,"path":3150,"stem":3151,"children":3152},"Reviews: privacy commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Fprivacy","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Fprivacy\u002Findex",[3153],{"title":3149,"path":3150,"stem":3151},{"title":3155,"path":3156,"stem":3157,"children":3158},"Reviews: products commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Fproducts","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Fproducts\u002Findex",[3159],{"title":3155,"path":3156,"stem":3157},{"title":3161,"path":3162,"stem":3163,"children":3164},"Reviews: requests commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Frequests","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Frequests\u002Findex",[3165],{"title":3161,"path":3162,"stem":3163},{"title":3167,"path":3168,"stem":3169,"children":3170},"Reviews: reviews commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Freviews","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Freviews\u002Findex",[3171],{"title":3167,"path":3168,"stem":3169},{"title":3173,"path":3174,"stem":3175,"children":3176},"Reviews: vocabularies commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Fvocabularies","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Freviews\u002Fvocabularies\u002Findex",[3177],{"title":3173,"path":3174,"stem":3175},{"title":3179,"path":3180,"stem":3181,"children":3182},"Sales reps commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsales-reps","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsales-reps\u002Findex",[3183,3184,3190,3196],{"title":3179,"path":3180,"stem":3181},{"title":3185,"path":3186,"stem":3187,"children":3188},"Sales reps: acting for commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsales-reps\u002Facting-for","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsales-reps\u002Facting-for\u002Findex",[3189],{"title":3185,"path":3186,"stem":3187},{"title":3191,"path":3192,"stem":3193,"children":3194},"Sales reps: coverage commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsales-reps\u002Fcoverage","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsales-reps\u002Fcoverage\u002Findex",[3195],{"title":3191,"path":3192,"stem":3193},{"title":3197,"path":3198,"stem":3199,"children":3200},"Sales reps: roster commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsales-reps\u002Froster","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsales-reps\u002Froster\u002Findex",[3201],{"title":3197,"path":3198,"stem":3199},{"title":3203,"path":3204,"stem":3205,"children":3206},"Search commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsearch","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsearch\u002Findex",[3207],{"title":3203,"path":3204,"stem":3205},{"title":3209,"path":3210,"stem":3211,"children":3212},"Settings commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsettings","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsettings\u002Findex",[3213],{"title":3209,"path":3210,"stem":3211},{"title":3215,"path":3216,"stem":3217,"children":3218},"Shipping commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fshipping","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fshipping\u002Findex",[3219,3220,3226,3232],{"title":3215,"path":3216,"stem":3217},{"title":3221,"path":3222,"stem":3223,"children":3224},"Shipping: carriers commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fshipping\u002Fcarriers","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fshipping\u002Fcarriers\u002Findex",[3225],{"title":3221,"path":3222,"stem":3223},{"title":3227,"path":3228,"stem":3229,"children":3230},"Shipping: methods commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fshipping\u002Fmethods","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fshipping\u002Fmethods\u002Findex",[3231],{"title":3227,"path":3228,"stem":3229},{"title":3233,"path":3234,"stem":3235,"children":3236},"Shipping: value lists commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fshipping\u002Fvalue-lists","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fshipping\u002Fvalue-lists\u002Findex",[3237],{"title":3233,"path":3234,"stem":3235},{"title":3239,"path":3240,"stem":3241,"children":3242},"Sites commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsites","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsites\u002Findex",[3243],{"title":3239,"path":3240,"stem":3241},{"title":3245,"path":3246,"stem":3247,"children":3248},"Skills commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fskills","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fskills\u002Findex",[3249],{"title":3245,"path":3246,"stem":3247},{"title":3251,"path":3252,"stem":3253,"children":3254},"Storage commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fstorage","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fstorage\u002Findex",[3255],{"title":3251,"path":3252,"stem":3253},{"title":3257,"path":3258,"stem":3259,"children":3260},"Tag manager commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Ftag-manager","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Ftag-manager\u002Findex",[3261,3262,3268,3274],{"title":3257,"path":3258,"stem":3259},{"title":3263,"path":3264,"stem":3265,"children":3266},"Tag manager: container commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Ftag-manager\u002Fcontainer","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Ftag-manager\u002Fcontainer\u002Findex",[3267],{"title":3263,"path":3264,"stem":3265},{"title":3269,"path":3270,"stem":3271,"children":3272},"Tag manager: delivery commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Ftag-manager\u002Fdelivery","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Ftag-manager\u002Fdelivery\u002Findex",[3273],{"title":3269,"path":3270,"stem":3271},{"title":3275,"path":3276,"stem":3277,"children":3278},"Tag manager: tags commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Ftag-manager\u002Ftags","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Ftag-manager\u002Ftags\u002Findex",[3279],{"title":3275,"path":3276,"stem":3277},{"title":3281,"path":3282,"stem":3283,"children":3284},"Interactive shell (REPL)","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Frepl","docs\u002Ftools\u002Fcommand-line\u002Frepl\u002Findex",[3285],{"title":3281,"path":3282,"stem":3283},{"title":3287,"path":3288,"stem":3289,"children":3290},"Scaffolding","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fscaffolding","docs\u002Ftools\u002Fcommand-line\u002Fscaffolding\u002Findex",[3291],{"title":3287,"path":3288,"stem":3289},{"title":3293,"path":3294,"stem":3295,"children":3296},"Scripting & output","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fscripting","docs\u002Ftools\u002Fcommand-line\u002Fscripting\u002Findex",[3297],{"title":3293,"path":3294,"stem":3295},{"title":3299,"path":3300,"stem":3301,"children":3302},"Skills","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fskills","docs\u002Ftools\u002Fcommand-line\u002Fskills\u002Findex",[3303],{"title":3299,"path":3300,"stem":3301},{"title":3305,"path":3306,"stem":3307,"children":3308},"Full-screen app (TUI)","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Ftui","docs\u002Ftools\u002Fcommand-line\u002Ftui\u002Findex",[3309],{"title":3305,"path":3306,"stem":3307},{"title":3311,"path":3312,"stem":3313,"children":3314},"Type generation","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Ftype-generation","docs\u002Ftools\u002Fcommand-line\u002Ftype-generation\u002Findex",[3315],{"title":3311,"path":3312,"stem":3313},{"title":3317,"path":3318,"stem":3319,"children":3320},"Background watchers","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fwatch","docs\u002Ftools\u002Fcommand-line\u002Fwatch\u002Findex",[3321],{"title":3317,"path":3318,"stem":3319},{"title":3323,"path":3324,"stem":3325,"children":3326},"Model Context Protocol","\u002Fdocs\u002Ftools\u002Fmcp","docs\u002Ftools\u002Fmcp\u002Findex",[3327,3328,3334,3340,3346,3352,3358,3364,3370],{"title":3323,"path":3324,"stem":3325},{"title":3329,"path":3330,"stem":3331,"children":3332},"revenexx docs MCP in Google Antigravity","\u002Fdocs\u002Ftools\u002Fmcp\u002Fantigravity","docs\u002Ftools\u002Fmcp\u002Fantigravity\u002Findex",[3333],{"title":3329,"path":3330,"stem":3331},{"title":3335,"path":3336,"stem":3337,"children":3338},"revenexx docs MCP in Claude Code","\u002Fdocs\u002Ftools\u002Fmcp\u002Fclaude-code","docs\u002Ftools\u002Fmcp\u002Fclaude-code\u002Findex",[3339],{"title":3335,"path":3336,"stem":3337},{"title":3341,"path":3342,"stem":3343,"children":3344},"revenexx docs MCP in Claude Desktop","\u002Fdocs\u002Ftools\u002Fmcp\u002Fclaude-desktop","docs\u002Ftools\u002Fmcp\u002Fclaude-desktop\u002Findex",[3345],{"title":3341,"path":3342,"stem":3343},{"title":3347,"path":3348,"stem":3349,"children":3350},"revenexx docs MCP in Cursor","\u002Fdocs\u002Ftools\u002Fmcp\u002Fcursor","docs\u002Ftools\u002Fmcp\u002Fcursor\u002Findex",[3351],{"title":3347,"path":3348,"stem":3349},{"title":3353,"path":3354,"stem":3355,"children":3356},"revenexx docs MCP in OpenCode","\u002Fdocs\u002Ftools\u002Fmcp\u002Fopencode","docs\u002Ftools\u002Fmcp\u002Fopencode\u002Findex",[3357],{"title":3353,"path":3354,"stem":3355},{"title":3359,"path":3360,"stem":3361,"children":3362},"revenexx docs MCP in VS Code","\u002Fdocs\u002Ftools\u002Fmcp\u002Fvscode","docs\u002Ftools\u002Fmcp\u002Fvscode\u002Findex",[3363],{"title":3359,"path":3360,"stem":3361},{"title":3365,"path":3366,"stem":3367,"children":3368},"revenexx docs MCP in Windsurf","\u002Fdocs\u002Ftools\u002Fmcp\u002Fwindsurf","docs\u002Ftools\u002Fmcp\u002Fwindsurf\u002Findex",[3369],{"title":3365,"path":3366,"stem":3367},{"title":3371,"path":3372,"stem":3373,"children":3374},"revenexx docs MCP in Zenflow","\u002Fdocs\u002Ftools\u002Fmcp\u002Fzenflow","docs\u002Ftools\u002Fmcp\u002Fzenflow\u002Findex",[3375],{"title":3371,"path":3372,"stem":3373},{"id":3377,"title":346,"body":3378,"description":5329,"extension":5330,"landing":5331,"links":5331,"meta":5332,"navigation":5333,"path":347,"seo":5334,"sitemap":5335,"stem":348,"__hash__":5336},"docs\u002Fdocs\u002Fguides\u002Fintegrations\u002Frun-a-nightly-price-and-stock-sync\u002Findex.md",{"type":3379,"value":3380,"toc":5315},"minimark",[3381,3389,3409,3413,3418,3429,3517,3539,3550,3604,3608,3613,3616,3654,3658,3661,3709,3712,3786,3803,3861,3868,3942,3946,3953,4045,4107,4114,4203,4206,4268,4277,4349,4356,4420,4426,4430,4437,4516,4519,4539,4546,4553,4571,4575,4578,4639,4649,4677,4687,4690,4694,4753,4772,4781,4785,4792,4872,4893,4907,4916,4920,4923,4984,4994,4997,5037,5043,5054,5061,5065,5068,5113,5117,5266,5270,5311],[3382,3383,3384,3385,3388],"p",{},"Every night a supplier drops one file with a price and a quantity per SKU. This guide builds the ",[3386,3387,1739],"a",{"href":1740}," workflow that picks it up, works out which lines changed since the last file, writes those prices to a price list and those quantities to stock, and archives the file. When the file arrives over SFTP, a second firing that starts while the first run is still going ends without writing. Step 7 says exactly where that guarantee stops.",[3382,3390,3391,3392,3396,3397,3401,3402,3405,3406,3408],{},"This is for integrators who feed prices and stock from a supplier or an ERP export. You need a tenant with the Pricing and Inventories ",[3386,3393,3395],{"href":3394},"\u002Fdocs\u002Fgetting-started\u002Fglossary#app-model","core apps"," and Integration Studio enabled, access to ",[3386,3398,3400],{"href":3399},"\u002Fdocs\u002Fgetting-started\u002Fprerequisites#cockpit-and-who-grants-access","Cockpit",", and an SFTP account the supplier writes to. The ",[3386,3403,3404],{"href":320},"BMECAT guide"," ends on the official import template; this one builds a workflow from nodes, because no shipped template is built for prices and stock. Recovering a failed night is ",[3386,3407,326],{"href":327},", and this guide links to it instead of repeating it.",[3410,3411,3412],"note",{},"Integration Studio is experimental and its schemas are drafts, so expect a workflow built today to need a migration later. Statements about what a node or the platform does not do were checked in November 2026 and can change (as of 2026-11). Where a node's exact output field is not documented, the guide says to read it off a test run.",[3414,3415,3417],"h2",{"id":3416},"before-you-start","Before you start",[3382,3419,3420,3421,3423,3424,3428],{},"Create one key in Cockpit under ",[3386,3422,632],{"href":633}," (see ",[3386,3425,3427],{"href":3426},"\u002Fdocs\u002Fgetting-started\u002Fprerequisites#create-an-api-key","create an API key",") with these scopes. They name single operations, not whole apps:",[3430,3431,3432,3445],"table",{},[3433,3434,3435],"thead",{},[3436,3437,3438,3442],"tr",{},[3439,3440,3441],"th",{},"Scope",[3439,3443,3444],{},"For",[3446,3447,3448,3460,3470,3480,3493,3503],"tbody",{},[3436,3449,3450,3457],{},[3451,3452,3453],"td",{},[3454,3455,3456],"code",{},"prices.lists.list",[3451,3458,3459],{},"Finding the price list's id, from your machine",[3436,3461,3462,3467],{},[3451,3463,3464],{},[3454,3465,3466],{},"inventories.locations.list",[3451,3468,3469],{},"Finding the location's id, from your machine",[3436,3471,3472,3477],{},[3451,3473,3474],{},[3454,3475,3476],{},"prices.entries.bulk",[3451,3478,3479],{},"Writing prices",[3436,3481,3482,3487],{},[3451,3483,3484],{},[3454,3485,3486],{},"inventories.stock.list",[3451,3488,3489,3490],{},"Reading a SKU's current ",[3454,3491,3492],{},"on_hand",[3436,3494,3495,3500],{},[3451,3496,3497],{},[3454,3498,3499],{},"inventories.adjust",[3451,3501,3502],{},"Writing stock",[3436,3504,3505,3514],{},[3451,3506,3507,3510,3511],{},[3454,3508,3509],{},"prices.entries.list",", ",[3454,3512,3513],{},"inventories.movements.list",[3451,3515,3516],{},"Checking the writes in step 8, from your machine",[3382,3518,3519,3520,3524,3525,3528,3529,3532,3533,3535,3536,3538],{},"The workflow itself needs two credentials under ",[3521,3522,3523],"strong",{},"Integration Studio → Credentials",": a ",[3521,3526,3527],{},"Revenexx API"," credential holding that key and your tenant slug, and an ",[3521,3530,3531],{},"SFTP"," credential for the supplier's server. See ",[3386,3534,1807],{"href":1808}," and ",[3386,3537,1795],{"href":1796},". The SFTP host has to be reachable from the public internet.",[3382,3540,3541,3544,3545,3549],{},[3454,3542,3543],{},"REVENEXX_TENANT"," is your ",[3386,3546,3548],{"href":3547},"\u002Fdocs\u002Fgetting-started\u002Fprerequisites#find-your-tenant-slug","tenant slug",":",[3551,3552,3558],"pre",{"className":3553,"code":3554,"filename":3555,"language":3556,"meta":3557,"style":3557},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export REVENEXX_TENANT=\"\u003CTENANT_SLUG>\"\nexport REVENEXX_API_KEY=\"rvxk_...\"\n","Environment","bash","",[3454,3559,3560,3587],{"__ignoreMap":3557},[3561,3562,3565,3569,3573,3577,3580,3584],"span",{"class":3563,"line":3564},"line",1,[3561,3566,3568],{"class":3567},"spNyl","export",[3561,3570,3572],{"class":3571},"sTEyZ"," REVENEXX_TENANT",[3561,3574,3576],{"class":3575},"sMK4o","=",[3561,3578,3579],{"class":3575},"\"",[3561,3581,3583],{"class":3582},"sfazB","\u003CTENANT_SLUG>",[3561,3585,3586],{"class":3575},"\"\n",[3561,3588,3590,3592,3595,3597,3599,3602],{"class":3563,"line":3589},2,[3561,3591,3568],{"class":3567},[3561,3593,3594],{"class":3571}," REVENEXX_API_KEY",[3561,3596,3576],{"class":3575},[3561,3598,3579],{"class":3575},[3561,3600,3601],{"class":3582},"rvxk_...",[3561,3603,3586],{"class":3575},[3414,3605,3607],{"id":3606},"how-one-night-runs","How one night runs",[3609,3610],"docs-diagram",{"alt":3611,"src":3612},"One night of the sync in Integration Studio. A schedule or a manual run starts the workflow. It claims the supplier file by moving it from the inbox to a processing folder. It diffs the file against the last archived one with Compare Datasets. It writes prices with one bulk upsert and stock with one signed adjustment per changed SKU. It moves the file to the archive folder. If a second run starts while the first is still going, its move finds no file in the inbox, and it ends at a No Operation node. If a write fails, the file stays in the processing folder and the failure is routed to an alert.","\u002Fimages\u002Fdocs\u002Fintegration-studio\u002Fnightly-sync-night.diagram.svg",[3382,3614,3615],{},"Two facts shape the design, and both come from the platform, not from this guide:",[3617,3618,3619,3648],"ul",{},[3620,3621,3622,3625,3626,3628,3629,3632,3633,3635,3636,3639,3640,3643,3644,3647],"li",{},[3521,3623,3624],{},"The Inventories API has no absolute stock write."," ",[3454,3627,3492],{}," is the running total of the movements ledger. A ",[3454,3630,3631],{},"PUT"," on a stock row drops ",[3454,3634,3492],{},", and a body carrying nothing else answers ",[3454,3637,3638],{},"422",". The only way to move it is a signed correction, ",[3454,3641,3642],{},"POST \u002Fv1\u002Finventories\u002Fadjust",", so the workflow has to work out ",[3454,3645,3646],{},"file quantity − current on_hand"," for each SKU.",[3620,3649,3650,3653],{},[3521,3651,3652],{},"Nothing stops two runs overlapping."," The scheduler starts a run for every firing and does not check for one still going (as of 2026-11). Step 7 puts the guard in the workflow.",[3414,3655,3657],{"id":3656},"_1-fix-the-file-the-list-and-the-location","1. Fix the file, the list and the location",[3382,3659,3660],{},"Agree four things with the supplier before you build, because each one is a node setting later:",[3617,3662,3663,3669,3685,3695],{},[3620,3664,3665,3668],{},[3521,3666,3667],{},"A key."," One column that names the SKU, the same value your products and stock rows carry. Prices and stock both match on it.",[3620,3670,3671,3674,3675,3510,3678,3535,3681,3684],{},[3521,3672,3673],{},"Columns."," This guide uses ",[3454,3676,3677],{},"sku",[3454,3679,3680],{},"price",[3454,3682,3683],{},"qty",", one row per SKU, one tier per row.",[3620,3686,3687,3690,3691,3694],{},[3521,3688,3689],{},"A file name that sorts by date",", such as ",[3454,3692,3693],{},"stock-2026-11-03.csv",". Step 4 finds the last file by sorting names.",[3620,3696,3697,3700,3701,3704,3705,3708],{},[3521,3698,3699],{},"A finished file."," Ask for a ",[3454,3702,3703],{},".ready"," marker or an atomic move into the inbox, as ",[3386,3706,1795],{"href":3707},"\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Ffiles#waiting-for-a-complete-file"," explains. A half-written file diffs as a catalog that lost half its lines.",[3382,3710,3711],{},"Then look up the price list and the location the feed writes to:",[3551,3713,3716],{"className":3553,"code":3714,"filename":3715,"language":3556,"meta":3557,"style":3557},"curl -s https:\u002F\u002Fapi.revenexx.com\u002Fv1\u002Fprices\u002Flists \\\n  -H \"X-Revenexx-Tenant: $REVENEXX_TENANT\" \\\n  -H \"X-Revenexx-Api-Key: $REVENEXX_API_KEY\" \\\n  | jq '[.items[] | {id, code, currency}]'\n","Find the price list",[3454,3717,3718,3733,3751,3768],{"__ignoreMap":3557},[3561,3719,3720,3724,3727,3730],{"class":3563,"line":3564},[3561,3721,3723],{"class":3722},"sBMFI","curl",[3561,3725,3726],{"class":3582}," -s",[3561,3728,3729],{"class":3582}," https:\u002F\u002Fapi.revenexx.com\u002Fv1\u002Fprices\u002Flists",[3561,3731,3732],{"class":3571}," \\\n",[3561,3734,3735,3738,3741,3744,3747,3749],{"class":3563,"line":3589},[3561,3736,3737],{"class":3582},"  -H",[3561,3739,3740],{"class":3575}," \"",[3561,3742,3743],{"class":3582},"X-Revenexx-Tenant: ",[3561,3745,3746],{"class":3571},"$REVENEXX_TENANT",[3561,3748,3579],{"class":3575},[3561,3750,3732],{"class":3571},[3561,3752,3754,3756,3758,3761,3764,3766],{"class":3563,"line":3753},3,[3561,3755,3737],{"class":3582},[3561,3757,3740],{"class":3575},[3561,3759,3760],{"class":3582},"X-Revenexx-Api-Key: ",[3561,3762,3763],{"class":3571},"$REVENEXX_API_KEY",[3561,3765,3579],{"class":3575},[3561,3767,3732],{"class":3571},[3561,3769,3771,3774,3777,3780,3783],{"class":3563,"line":3770},4,[3561,3772,3773],{"class":3575},"  |",[3561,3775,3776],{"class":3722}," jq",[3561,3778,3779],{"class":3575}," '",[3561,3781,3782],{"class":3582},"[.items[] | {id, code, currency}]",[3561,3784,3785],{"class":3575},"'\n",[3382,3787,3788,3789,3791,3792,3795,3796,3799,3800,3549],{},"Entries carry no currency and no tax basis: the amount is in the list's own currency and on its tax basis, so use a list whose currency is the supplier's. ",[3386,3790,180],{"href":181}," shows how to create one. For stock, every tenant starts with a location coded ",[3454,3793,3794],{},"main",". You need both its id and its code, because reading stock filters by ",[3454,3797,3798],{},"location_id"," and writing it names the ",[3454,3801,3802],{},"location_code",[3551,3804,3807],{"className":3553,"code":3805,"filename":3806,"language":3556,"meta":3557,"style":3557},"curl -s https:\u002F\u002Fapi.revenexx.com\u002Fv1\u002Finventories\u002Flocations \\\n  -H \"X-Revenexx-Tenant: $REVENEXX_TENANT\" \\\n  -H \"X-Revenexx-Api-Key: $REVENEXX_API_KEY\" \\\n  | jq '[.items[] | {id, code, name}]'\n","Find the location",[3454,3808,3809,3820,3834,3848],{"__ignoreMap":3557},[3561,3810,3811,3813,3815,3818],{"class":3563,"line":3564},[3561,3812,3723],{"class":3722},[3561,3814,3726],{"class":3582},[3561,3816,3817],{"class":3582}," https:\u002F\u002Fapi.revenexx.com\u002Fv1\u002Finventories\u002Flocations",[3561,3819,3732],{"class":3571},[3561,3821,3822,3824,3826,3828,3830,3832],{"class":3563,"line":3589},[3561,3823,3737],{"class":3582},[3561,3825,3740],{"class":3575},[3561,3827,3743],{"class":3582},[3561,3829,3746],{"class":3571},[3561,3831,3579],{"class":3575},[3561,3833,3732],{"class":3571},[3561,3835,3836,3838,3840,3842,3844,3846],{"class":3563,"line":3753},[3561,3837,3737],{"class":3582},[3561,3839,3740],{"class":3575},[3561,3841,3760],{"class":3582},[3561,3843,3763],{"class":3571},[3561,3845,3579],{"class":3575},[3561,3847,3732],{"class":3571},[3561,3849,3850,3852,3854,3856,3859],{"class":3563,"line":3770},[3561,3851,3773],{"class":3575},[3561,3853,3776],{"class":3722},[3561,3855,3779],{"class":3575},[3561,3857,3858],{"class":3582},"[.items[] | {id, code, name}]",[3561,3860,3785],{"class":3575},[3382,3862,3863,3864,3867],{},"In the workflow editor, open ",[3521,3865,3866],{},"Variables"," on the canvas toolbar and declare these, so no node carries a folder or an id of its own. An empty variable resolves to nothing without a warning, so give every one a value:",[3430,3869,3870,3879],{},[3433,3871,3872],{},[3436,3873,3874,3877],{},[3439,3875,3876],{},"Variable",[3439,3878,857],{},[3446,3880,3881,3905,3917,3927],{},[3436,3882,3883,3894],{},[3451,3884,3885,3510,3888,3510,3891],{},[3454,3886,3887],{},"inboxPath",[3454,3889,3890],{},"processingPath",[3454,3892,3893],{},"archivePath",[3451,3895,3896,3510,3899,3510,3902],{},[3454,3897,3898],{},"\u002Fin",[3454,3900,3901],{},"\u002Fin\u002Fprocessing",[3454,3903,3904],{},"\u002Fin\u002Farchive",[3436,3906,3907,3912],{},[3451,3908,3909],{},[3454,3910,3911],{},"filePattern",[3451,3913,3914],{},[3454,3915,3916],{},"stock-*.csv",[3436,3918,3919,3924],{},[3451,3920,3921],{},[3454,3922,3923],{},"priceListId",[3451,3925,3926],{},"the list's id",[3436,3928,3929,3937],{},[3451,3930,3931,3510,3934],{},[3454,3932,3933],{},"locationId",[3454,3935,3936],{},"locationCode",[3451,3938,3939,3940],{},"the location's id and ",[3454,3941,3794],{},[3414,3943,3945],{"id":3944},"_2-try-the-two-writes-by-hand","2. Try the two writes by hand",[3382,3947,3948,3949,3952],{},"Run each write once from your machine before you wire it into a node, so a refusal is read in a terminal and not in a run. Prices first. ",[3454,3950,3951],{},"entries\u002Fbulk"," upserts: a row that matches a tier the list already has updates it, and any other row creates one, so sending a line twice is an update, not a duplicate:",[3551,3954,3957],{"className":3553,"code":3955,"filename":3956,"language":3556,"meta":3557,"style":3557},"curl -s -X POST https:\u002F\u002Fapi.revenexx.com\u002Fv1\u002Fprices\u002Flists\u002F\u003CPRICE_LIST_ID>\u002Fentries\u002Fbulk \\\n  -H \"X-Revenexx-Tenant: $REVENEXX_TENANT\" \\\n  -H \"X-Revenexx-Api-Key: $REVENEXX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"entries\":[{\"sku\":\"ACME-4711-BLK\",\"quantity_min\":1,\"unit_price\":19.90,\"unit\":\"pcs\"}]}'\n","Write prices",[3454,3958,3959,3991,4005,4019,4032],{"__ignoreMap":3557},[3561,3960,3961,3963,3965,3968,3971,3974,3977,3980,3983,3986,3989],{"class":3563,"line":3564},[3561,3962,3723],{"class":3722},[3561,3964,3726],{"class":3582},[3561,3966,3967],{"class":3582}," -X",[3561,3969,3970],{"class":3582}," POST",[3561,3972,3973],{"class":3582}," https:\u002F\u002Fapi.revenexx.com\u002Fv1\u002Fprices\u002Flists\u002F",[3561,3975,3976],{"class":3575},"\u003C",[3561,3978,3979],{"class":3582},"PRICE_LIST_I",[3561,3981,3982],{"class":3571},"D",[3561,3984,3985],{"class":3575},">",[3561,3987,3988],{"class":3582},"\u002Fentries\u002Fbulk",[3561,3990,3732],{"class":3571},[3561,3992,3993,3995,3997,3999,4001,4003],{"class":3563,"line":3589},[3561,3994,3737],{"class":3582},[3561,3996,3740],{"class":3575},[3561,3998,3743],{"class":3582},[3561,4000,3746],{"class":3571},[3561,4002,3579],{"class":3575},[3561,4004,3732],{"class":3571},[3561,4006,4007,4009,4011,4013,4015,4017],{"class":3563,"line":3753},[3561,4008,3737],{"class":3582},[3561,4010,3740],{"class":3575},[3561,4012,3760],{"class":3582},[3561,4014,3763],{"class":3571},[3561,4016,3579],{"class":3575},[3561,4018,3732],{"class":3571},[3561,4020,4021,4023,4025,4028,4030],{"class":3563,"line":3770},[3561,4022,3737],{"class":3582},[3561,4024,3740],{"class":3575},[3561,4026,4027],{"class":3582},"Content-Type: application\u002Fjson",[3561,4029,3579],{"class":3575},[3561,4031,3732],{"class":3571},[3561,4033,4035,4038,4040,4043],{"class":3563,"line":4034},5,[3561,4036,4037],{"class":3582},"  -d",[3561,4039,3779],{"class":3575},[3561,4041,4042],{"class":3582},"{\"entries\":[{\"sku\":\"ACME-4711-BLK\",\"quantity_min\":1,\"unit_price\":19.90,\"unit\":\"pcs\"}]}",[3561,4044,3785],{"class":3575},[3551,4046,4051],{"className":4047,"code":4048,"filename":4049,"language":4050,"meta":3557,"style":3557},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{ \"created\": 1, \"updated\": 0, \"mode\": \"upsert\" }\n","Response","json",[3454,4052,4053],{"__ignoreMap":3557},[3561,4054,4055,4058,4060,4063,4065,4067,4071,4074,4076,4079,4081,4083,4086,4088,4090,4093,4095,4097,4099,4102,4104],{"class":3563,"line":3564},[3561,4056,4057],{"class":3575},"{",[3561,4059,3740],{"class":3575},[3561,4061,4062],{"class":3567},"created",[3561,4064,3579],{"class":3575},[3561,4066,3549],{"class":3575},[3561,4068,4070],{"class":4069},"sbssI"," 1",[3561,4072,4073],{"class":3575},",",[3561,4075,3740],{"class":3575},[3561,4077,4078],{"class":3567},"updated",[3561,4080,3579],{"class":3575},[3561,4082,3549],{"class":3575},[3561,4084,4085],{"class":4069}," 0",[3561,4087,4073],{"class":3575},[3561,4089,3740],{"class":3575},[3561,4091,4092],{"class":3567},"mode",[3561,4094,3579],{"class":3575},[3561,4096,3549],{"class":3575},[3561,4098,3740],{"class":3575},[3561,4100,4101],{"class":3582},"upsert",[3561,4103,3579],{"class":3575},[3561,4105,4106],{"class":3575}," }\n",[3382,4108,4109,4110,4113],{},"Send the same body again and the answer is ",[3454,4111,4112],{},"\"created\": 0, \"updated\": 1",". Six limits matter for a nightly file:",[3617,4115,4116,4126,4140,4149,4184,4193],{},[3620,4117,4118,4121,4122,4125],{},[3521,4119,4120],{},"At most 5000 entries per call."," A longer payload is refused with ",[3454,4123,4124],{},"400"," and nothing is written.",[3620,4127,4128,4131,4132,4135,4136,4139],{},[3521,4129,4130],{},"One tier once per payload."," The same SKU and ",[3454,4133,4134],{},"quantity_min"," twice is ",[3454,4137,4138],{},"400 duplicate_tier",".",[3620,4141,4142,4148],{},[3521,4143,4144,4145,4147],{},"A tier matches on product id, SKU and ",[3454,4146,4134],{}," together."," An entry stored with both a product id and a SKU is not matched by a row that sends only the SKU, and the call inserts a second tier beside it. Send the same identity the list was loaded with, and for a list shared with other loads, read a few entries first.",[3620,4150,4151,4154,4155,3510,4158,3510,4161,3510,4164,3510,4167,3510,4170,3510,4173,3510,4176,4179,4180,4183],{},[3521,4152,4153],{},"An update replaces the whole tier."," The row you send becomes the stored tier, so any optional field it leaves out (",[3454,4156,4157],{},"unit",[3454,4159,4160],{},"price_quantity",[3454,4162,4163],{},"price_quantity_unit",[3454,4165,4166],{},"discount_percent",[3454,4168,4169],{},"description",[3454,4171,4172],{},"valid_from",[3454,4174,4175],{},"valid_until",[3454,4177,4178],{},"metadata",") is reset to empty. A tier loaded with ",[3454,4181,4182],{},"price_quantity: 100"," and then updated by a sync that sends only the price silently reads as per 1. Map every field the feed owns, or give the feed its own price list.",[3620,4185,4186,4189,4190,4192],{},[3521,4187,4188],{},"The upsert reads at most 10,000 existing entries of the list."," Past that, rows are not matched and are inserted again as duplicates. Keep a list under 10,000 entries, as ",[3386,4191,180],{"href":181}," says.",[3620,4194,4195,4198,4199,4202],{},[3521,4196,4197],{},"An unchanged row still counts as updated and still announces a price change."," One bulk call publishes one event for the list however many rows it carries, and counts an unchanged row as updated. So send only changed lines, which is what step 4 is for, and your ",[3386,4200,4201],{"href":491},"price caches"," are not told about prices that did not move.",[3382,4204,4205],{},"Now stock. Read the row, then book the difference. The current balance:",[3551,4207,4210],{"className":3553,"code":4208,"filename":4209,"language":3556,"meta":3557,"style":3557},"curl -s \"https:\u002F\u002Fapi.revenexx.com\u002Fv1\u002Finventories\u002Fstock?sku=ACME-4711-BLK&location_id=\u003CLOCATION_ID>\" \\\n  -H \"X-Revenexx-Tenant: $REVENEXX_TENANT\" \\\n  -H \"X-Revenexx-Api-Key: $REVENEXX_API_KEY\" \\\n  | jq '.items[] | {on_hand, reserved}'\n","Read the current balance",[3454,4211,4212,4227,4241,4255],{"__ignoreMap":3557},[3561,4213,4214,4216,4218,4220,4223,4225],{"class":3563,"line":3564},[3561,4215,3723],{"class":3722},[3561,4217,3726],{"class":3582},[3561,4219,3740],{"class":3575},[3561,4221,4222],{"class":3582},"https:\u002F\u002Fapi.revenexx.com\u002Fv1\u002Finventories\u002Fstock?sku=ACME-4711-BLK&location_id=\u003CLOCATION_ID>",[3561,4224,3579],{"class":3575},[3561,4226,3732],{"class":3571},[3561,4228,4229,4231,4233,4235,4237,4239],{"class":3563,"line":3589},[3561,4230,3737],{"class":3582},[3561,4232,3740],{"class":3575},[3561,4234,3743],{"class":3582},[3561,4236,3746],{"class":3571},[3561,4238,3579],{"class":3575},[3561,4240,3732],{"class":3571},[3561,4242,4243,4245,4247,4249,4251,4253],{"class":3563,"line":3753},[3561,4244,3737],{"class":3582},[3561,4246,3740],{"class":3575},[3561,4248,3760],{"class":3582},[3561,4250,3763],{"class":3571},[3561,4252,3579],{"class":3575},[3561,4254,3732],{"class":3571},[3561,4256,4257,4259,4261,4263,4266],{"class":3563,"line":3770},[3561,4258,3773],{"class":3575},[3561,4260,3776],{"class":3722},[3561,4262,3779],{"class":3575},[3561,4264,4265],{"class":3582},".items[] | {on_hand, reserved}",[3561,4267,3785],{"class":3575},[3382,4269,4270,4271,4273,4274,3549],{},"If the file says 120 and ",[3454,4272,3492],{}," is 100, the correction is ",[3454,4275,4276],{},"+20",[3551,4278,4281],{"className":3553,"code":4279,"filename":4280,"language":3556,"meta":3557,"style":3557},"curl -s -X POST https:\u002F\u002Fapi.revenexx.com\u002Fv1\u002Finventories\u002Fadjust \\\n  -H \"X-Revenexx-Tenant: $REVENEXX_TENANT\" \\\n  -H \"X-Revenexx-Api-Key: $REVENEXX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"location_code\":\"main\",\"reason\":\"Supplier file 2026-11-03\",\"items\":[{\"sku\":\"ACME-4711-BLK\",\"quantity\":20}]}'\n","Book the difference",[3454,4282,4283,4298,4312,4326,4338],{"__ignoreMap":3557},[3561,4284,4285,4287,4289,4291,4293,4296],{"class":3563,"line":3564},[3561,4286,3723],{"class":3722},[3561,4288,3726],{"class":3582},[3561,4290,3967],{"class":3582},[3561,4292,3970],{"class":3582},[3561,4294,4295],{"class":3582}," https:\u002F\u002Fapi.revenexx.com\u002Fv1\u002Finventories\u002Fadjust",[3561,4297,3732],{"class":3571},[3561,4299,4300,4302,4304,4306,4308,4310],{"class":3563,"line":3589},[3561,4301,3737],{"class":3582},[3561,4303,3740],{"class":3575},[3561,4305,3743],{"class":3582},[3561,4307,3746],{"class":3571},[3561,4309,3579],{"class":3575},[3561,4311,3732],{"class":3571},[3561,4313,4314,4316,4318,4320,4322,4324],{"class":3563,"line":3753},[3561,4315,3737],{"class":3582},[3561,4317,3740],{"class":3575},[3561,4319,3760],{"class":3582},[3561,4321,3763],{"class":3571},[3561,4323,3579],{"class":3575},[3561,4325,3732],{"class":3571},[3561,4327,4328,4330,4332,4334,4336],{"class":3563,"line":3770},[3561,4329,3737],{"class":3582},[3561,4331,3740],{"class":3575},[3561,4333,4027],{"class":3582},[3561,4335,3579],{"class":3575},[3561,4337,3732],{"class":3571},[3561,4339,4340,4342,4344,4347],{"class":3563,"line":4034},[3561,4341,4037],{"class":3582},[3561,4343,3779],{"class":3575},[3561,4345,4346],{"class":3582},"{\"location_code\":\"main\",\"reason\":\"Supplier file 2026-11-03\",\"items\":[{\"sku\":\"ACME-4711-BLK\",\"quantity\":20}]}",[3561,4348,3785],{"class":3575},[3382,4350,4351,4352,4355],{},"The answer's ",[3454,4353,4354],{},"stock"," array holds the row at its new balance. A SKU with no row yet gets one, born at zero, so a new article in the file needs only a positive correction. Know the refusals now:",[3617,4357,4358,4373,4385,4398,4407],{},[3620,4359,4360,4366,4367,4370,4371,4139],{},[3521,4361,4362,4365],{},[3454,4363,4364],{},"reason"," is owed by default"," (the ",[3454,4368,4369],{},"movement_reason_required"," setting asks for one on corrections). A call without it is ",[3454,4372,4124],{},[3620,4374,4375,4384],{},[3521,4376,4377,4378,4381,4382,4139],{},"A quantity of ",[3454,4379,4380],{},"0"," is ",[3454,4383,4124],{}," The workflow must not send a line whose difference is zero.",[3620,4386,4387,4393,4394,4397],{},[3521,4388,4389,4390,4392],{},"A correction below zero is ",[3454,4391,3638],{},", and so is one below what is reserved"," unless the tenant turned on ",[3454,4395,4396],{},"allow_negative_stock"," (off by default). Nothing is booked. A SKU the supplier set to 5 while 8 are promised to buyers fails here.",[3620,4399,4400,4403,4404,4139],{},[3521,4401,4402],{},"A call carries at most 200 items",", and the same SKU twice is ",[3454,4405,4406],{},"400 duplicate_item",[3620,4408,4409,4412,4413,4415,4416,4419],{},[3521,4410,4411],{},"A correction is not idempotent."," Sending ",[3454,4414,4276],{}," twice books ",[3454,4417,4418],{},"+40",". The safe unit is read, subtract, write, never \"write the same body again\".",[3382,4421,4422,4425],{},[3454,4423,4424],{},"POST \u002Fv1\u002Finventories\u002Freceive"," is the same shape for a delivery and has the same property: it adds, every time. Use it for goods that arrive, not for a balance you copy.",[3414,4427,4429],{"id":4428},"_3-build-the-fetch","3. Build the fetch",[3382,4431,4432,4433,4436],{},"Open ",[3521,4434,4435],{},"Integration Studio → Workflows → New"," and add the triggers and the first nodes:",[3430,4438,4439,4449],{},[3433,4440,4441],{},[3436,4442,4443,4446],{},[3439,4444,4445],{},"Node",[3439,4447,4448],{},"Setting",[3446,4450,4451,4465,4475,4491,4501],{},[3436,4452,4453,4459],{},[3451,4454,4455,4458],{},[3521,4456,4457],{},"Schedule"," trigger",[3451,4460,4461,4464],{},[3454,4462,4463],{},"30 4 * * *"," in the timezone the business runs in",[3436,4466,4467,4472],{},[3451,4468,4469,4458],{},[3521,4470,4471],{},"Manual",[3451,4473,4474],{},"none. It feeds the same node as the schedule",[3436,4476,4477,4482],{},[3451,4478,4479],{},[3521,4480,4481],{},"SFTP: List Directory",[3451,4483,4484,4487,4488],{},[3454,4485,4486],{},"${{ vars.inboxPath }}",", glob ",[3454,4489,4490],{},"${{ vars.filePattern }}",[3436,4492,4493,4498],{},[3451,4494,4495],{},[3521,4496,4497],{},"Array Tools",[3451,4499,4500],{},"count the listed files",[3436,4502,4503,4509],{},[3451,4504,4505,4508],{},[3521,4506,4507],{},"If condition",", twice",[3451,4510,4511,4512,4515],{},"zero files: the night ends quietly on that branch. More than one: ",[3521,4513,4514],{},"Stop and Error"," with a message naming the inbox. Exactly one: go on",[3382,4517,4518],{},"Two choices in the trigger deserve a minute:",[3617,4520,4521,4529],{},[3620,4522,4523,4526,4527,4139],{},[3521,4524,4525],{},"Keep the firing out of the clock-change hour."," A daily schedule fires twice, an hour apart, on the night the clocks go back, in the hour that repeats: 02:00 to 02:59 in the EU, 01:00 to 01:59 in the US. A time that does not exist on the night the clocks go forward still fires once. Pick a time outside that hour, such as 04:30, and the overlap you design for in step 7 stays a rare event instead of an annual one. See ",[3386,4528,1903],{"href":1904},[3620,4530,4531,4534,4535,4538],{},[3521,4532,4533],{},"The manual trigger is the test button."," A schedule does not fire when you save it; the first run is the next matching time. Press ",[3521,4536,4537],{},"Run"," in the editor header and you get a real run now, which writes real data, so point the first one at a test price list and a test location.",[3382,4540,4541,4542,4545],{},"The workflow insists on one file. Two waiting, for example after a night the platform missed (a missed firing is not replayed, and ",[3386,4543,4544],{"href":327},"the recovery guide"," covers catching one up), is a situation for a person: only the newest state matters for a price and stock file, but which one to drop is your call. Step 7 explains why the run stops instead of picking one.",[3382,4547,4548,4549,4552],{},"Everything the file nodes put on their output ports is shown on the node's ",[3521,4550,4551],{},"Output"," tab after a test run. Wire the next node's input from there, since the exact field names, such as the file name in the listing, are not listed in the node catalog.",[3382,4554,4555,4558,4559,4562,4563,4566,4567,4570],{},[3521,4556,4557],{},"Fetching over HTTP instead."," If the supplier publishes the file at a URL, replace the list and the claim in step 7 with an ",[3521,4560,4561],{},"HTTP Request"," or a ",[3521,4564,4565],{},"Download"," node on that URL, with a bearer credential if the supplier wants one. There is then no inbox to claim, so step 7's guard does not exist. Do not read the read-subtract-write of step 6 as a replacement: it is not atomic, so two overlapping runs can read the same balance and each book the same difference. Keep the interval longer than a run, and accept that an overlap double-books. You also have to store each fetched file yourself, with ",[3521,4568,4569],{},"SFTP: Upload File"," to a folder of your own, because step 4 diffs against the last one. This variant was not run for this guide.",[3414,4572,4574],{"id":4573},"_4-diff-the-file-against-the-last-one","4. Diff the file against the last one",[3382,4576,4577],{},"A nightly file repeats most of yesterday's lines. Diffing finds the ones that moved, so the price write is small and the stock loop touches only SKUs that changed on the supplier's side.",[4579,4580,4581,4594,4604],"ol",{},[3620,4582,4583,3625,4586,4589,4590,4593],{},[3521,4584,4585],{},"Parse today's file.",[3521,4587,4588],{},"SFTP: Download File"," returns base64; ",[3521,4591,4592],{},"Extract From File"," parses the CSV into an array of rows.",[3620,4595,4596,4599,4600,4603],{},[3521,4597,4598],{},"Parse the last archived file."," List ",[3454,4601,4602],{},"${{ vars.archivePath }}"," with no glob, so the seed file below is seen, sort by name descending, limit to 1, download and extract it the same way.",[3620,4605,4606,4609,4610,4613,4614,4617,4618,4621,4622,3535,4624,4621,4627,4629,4630,4632,4633,3535,4635,4632,4637,4139],{},[3521,4607,4608],{},"Add a Compare Datasets node per question."," Set ",[3454,4611,4612],{},"itemsA"," to the last file's rows and ",[3454,4615,4616],{},"itemsB"," to today's. For prices set ",[3454,4619,4620],{},"keyFields"," to ",[3454,4623,3677],{},[3454,4625,4626],{},"compareFields",[3454,4628,3680],{},". For stock use a second node with ",[3454,4631,4620],{}," set to ",[3454,4634,3677],{},[3454,4636,4626],{},[3454,4638,3683],{},[3382,4640,4641,4642,3535,4645,4648],{},"The node splits the rows into added, removed, changed and unchanged items. You write ",[3521,4643,4644],{},"added",[3521,4646,4647],{},"changed",". Three things to know:",[3617,4650,4651,4657,4665],{},[3620,4652,4653,4656],{},[3521,4654,4655],{},"Removed lines are not deleted anywhere."," A SKU that left the supplier's file keeps its last price and its balance. Whether it should disappear is a business decision, not something a diff can tell from one missing line.",[3620,4658,4659,4664],{},[3521,4660,4661,4663],{},[3454,4662,4620],{}," is required."," A compare without a key ends the run.",[3620,4666,4667,4670,4671,4673,4674,4676],{},[3521,4668,4669],{},"Read the item shape off a test run."," The catalog names the four groups but not the exact output field names or what a changed item carries, so open the node's ",[3521,4672,4551],{}," tab and check that ",[3454,4675,4647],{}," holds today's row before you map it.",[3382,4678,4679,4680,4683,4684,4686],{},"On the first night there is no archived file, so everything would count as added. Put an empty CSV with only the header row into the archive folder under a name that sorts first, such as ",[3454,4681,4682],{},"0000-seed.csv",", and the first real file is all added. If the supplier's book is longer than 5000 prices, load it once with the chunked calls from ",[3386,4685,180],{"href":181}," and copy that same file into the archive instead, so the first night diffs against it.",[3382,4688,4689],{},"This diff is against the last file, not against the platform. A price a merchant changed by hand in Cockpit stays until the supplier changes that line again. If the feed must win every night, skip the diff and send every line, and accept the event noise from step 2.",[3414,4691,4693],{"id":4692},"_5-write-the-prices","5. Write the prices",[3382,4695,4696,4697,4700,4701,4704,4705,4707,4708,3510,4710,4707,4713,3510,4715,4717,4718,3510,4721,4723,4724,4727,4728,4731,4732,4734,4735,4737,4738,4741,4742,4745,4746,4748,4749,4752],{},"After the price compare, map each added or changed row to the shape of one entry. A ",[3521,4698,4699],{},"JSON Transform"," or ",[3521,4702,4703],{},"Set Fields"," node does it: ",[3454,4706,3677],{}," from ",[3454,4709,3677],{},[3454,4711,4712],{},"unit_price",[3454,4714,3680],{},[3454,4716,4134],{}," fixed at ",[3454,4719,4720],{},"1",[3454,4722,4157],{}," as your list uses it, and every other field the tier already carries (step 2 says why). The call converts a text amount such as ",[3454,4725,4726],{},"19.90"," to a number, so the type is not the hazard. Two other things are. An ",[3521,4729,4730],{},"empty price cell is written as a price of 0",", so put an ",[3521,4733,4507],{}," before the write that drops rows with an empty ",[3454,4736,3680],{},". A ",[3521,4739,4740],{},"decimal comma"," such as ",[3454,4743,4744],{},"19,90"," is refused with ",[3454,4747,4124],{},", so agree a decimal point with the supplier. A night with no changed prices sends an empty ",[3454,4750,4751],{},"entries"," array, which the platform accepts: it writes nothing and announces nothing.",[3382,4754,4755,4756,4759,4760,4763,4764,4766,4767,3535,4769,4771],{},"Then add a ",[3521,4757,4758],{},"Generic API Call"," node on the Pricing app's bulk-upsert operation, the same call as step 2, with the price list from ",[3454,4761,4762],{},"${{ vars.priceListId }}"," and the mapped array as ",[3454,4765,4751],{},". Read ",[3454,4768,4062],{},[3454,4770,4078],{}," off its output: on a night with 40 price changes they add up to 40.",[3382,4773,4774,4775,4778,4779,4139],{},"The call takes at most 5000 entries and refuses a longer one whole. A nightly delta that large means the supplier re-priced the book, and a refusal that writes nothing is the safe way for that to fail, because the file stays in ",[3454,4776,4777],{},"processing\u002F"," for you to look at. Array Tools has no chunk operation, so a feed that regularly moves that many prices belongs in a script that sends the chunks itself, as in ",[3386,4780,408],{"href":409},[3414,4782,4784],{"id":4783},"_6-write-the-stock","6. Write the stock",[3382,4786,4787,4788,4791],{},"Stock goes one SKU at a time, because the difference needs the current balance. Wire an ",[3521,4789,4790],{},"Iterator"," to the added and changed stock rows and, inside the loop:",[4579,4793,4794,4813,4842,4849],{},[3620,4795,4796,4798,4799,4801,4802,4805,4806,4808,4809,4812],{},[3521,4797,4758],{},", the stock list, with ",[3454,4800,3677],{}," from the item and ",[3454,4803,4804],{},"${{ vars.locationId }}"," as ",[3454,4807,3798],{},". A SKU with no row comes back with an empty ",[3454,4810,4811],{},"items",", which means a balance of 0.",[3620,4814,4815,4818,4819,4822,4823,4825,4826,4828,4829,4832,4833,4835,4836,3535,4838,4841],{},[3521,4816,4817],{},"A node that subtracts."," The difference is ",[3454,4820,4821],{},"qty − on_hand",", and expressions do not compute, ",[3521,4824,4703],{}," only moves values and the catalog lists no code node (as of 2026-11). Write one small custom node, here called Stock delta, that takes the file's ",[3454,4827,3683],{}," and the balance and returns the signed ",[3454,4830,4831],{},"quantity",". A CSV delivers ",[3454,4834,3683],{}," as text, so the node must convert it to a number first. ",[3386,4837,1825],{"href":1826},[3386,4839,4840],{"href":1844},"registration"," cover building and installing it. This is the one piece of this workflow that is not a shipped node.",[3620,4843,4844,3510,4846,4848],{},[3521,4845,4507],{},[3454,4847,4831],{}," not equal to 0. A SKU already at the supplier's figure goes no further, which is what makes a rerun a no-op.",[3620,4850,4851,4853,4854,4707,4856,4859,4860,4862,4863,4866,4867,4869,4870,4139],{},[3521,4852,4758],{},", the adjust, with ",[3454,4855,3802],{},[3454,4857,4858],{},"${{ vars.locationCode }}",", a ",[3454,4861,4364],{}," that names the file, such as ",[3454,4864,4865],{},"Nightly supplier sync, run ${{ run.id }}",", and one item with the ",[3454,4868,3677],{}," and the ",[3454,4871,4831],{},[3382,4873,4874,4875,4877,4878,4881,4882,4885,4886,4621,4889,4892],{},"Open the adjust node's ",[3521,4876,1026],{}," tab, set ",[3521,4879,4880],{},"Max attempts"," under ",[3521,4883,4884],{},"Retry on failure"," to 1 and ",[3521,4887,4888],{},"On error",[3521,4890,4891],{},"Route to error output",". A node that fails is tried again by default, and a request that timed out may already have been booked, so a retry would book the same difference twice. With one attempt, the failure lands on the error port, where step 7 and the recovery guide's step on knowing it failed deal with it. The rerun you start after fixing the cause reads each balance again, so the difference it books is the real one.",[3382,4894,4895,4896,4899,4900,4902,4903,4139],{},"The loop writes one call per changed SKU, and the gateway allows 100 requests per second per tenant, shared with everything else the tenant does (",[3386,4897,4898],{"href":602},"rate limits","), which is ample for a few thousand changed lines a night. The adjust route takes up to 200 items per call in its ",[3454,4901,4811],{}," array, but only with an array you have already split, which Array Tools cannot do; use it from your own code if a night regularly moves tens of thousands of balances. For the loop's body and where its steps end, see the ",[3386,4904,4906],{"href":4905},"\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fnode-catalog#control-flow","node catalog",[3382,4908,4909,4910,4912,4913,4915],{},"A line can be refused with ",[3454,4911,3638],{}," when the new balance would fall under what buyers hold. With the error port wired as step 7 says, that line stops the night at that SKU: the SKUs before it are booked, the file stays in ",[3454,4914,4777],{},", and the alert names the SKU. That is deliberate, because writing off promised goods should be a person's call.",[3414,4917,4919],{"id":4918},"_7-claim-the-file-archive-it-and-survive-an-overlap","7. Claim the file, archive it and survive an overlap",[3382,4921,4922],{},"A scheduled workflow tolerates the same work twice only if you build that in. This is the guard, in four moves around the middle of the workflow:",[4579,4924,4925,4934,4961,4972],{},[3620,4926,4927,4930,4931,4933],{},[3521,4928,4929],{},"Take exactly one file."," After the listing in step 3, the workflow ends quietly on zero files and stops with ",[3521,4932,4514],{}," on more than one. The guard needs this: with an older file left in the inbox, an overlapping run would claim that older file next and write its old prices and quantities over the new ones. Two files waiting is a person's decision, so the run says so and writes nothing.",[3620,4935,4936,4939,4940,4707,4943,4621,4945,4948,4949,4951,4952,4621,4954,4956,4957,4960],{},[3521,4937,4938],{},"Claim the file."," Right after that, and before any parsing, add ",[3521,4941,4942],{},"SFTP: Move File",[3454,4944,4486],{},[3454,4946,4947],{},"${{ vars.processingPath }}",". Open its ",[3521,4950,1026],{}," tab and set ",[3521,4953,4888],{},[3521,4955,4891],{},", then wire the error port to a ",[3521,4958,4959],{},"No Operation"," node. A second run that starts after the first has moved the file lists an empty inbox and ends quietly at the zero-files branch of step 1. Only a second run that lists the file before the first has moved it reaches the claim, where its move fails and it ends at that No Operation node.",[3620,4962,4963,4966,4967,4621,4969,4971],{},[3521,4964,4965],{},"Archive at the end."," After the writes, move the file from ",[3454,4968,4777],{},[3454,4970,4602],{},", keeping the supplier's file name so step 4 can sort on it.",[3620,4973,4974,4977,4978,4980,4981,4983],{},[3521,4975,4976],{},"Leave the file where it is on a failure."," Route every other error port to the alert and ",[3521,4979,4514],{},", not to an archive move. The file stays in ",[3454,4982,4777],{}," and the inbox stays empty, so nothing is picked up twice. It is not rolled back: a failure in step 6 leaves the prices of step 5 written and some stock lines booked, and the archive still holds the older file.",[4985,4986,4987,4990,4991,4993],"warning",{},[3521,4988,4989],{},"An error port with nothing behind it fails the run."," Leaving the claim's error port unwired makes the losing run of an overlap red. Wire it to a step that ends the branch, as above. A branch that ends at ",[3521,4992,4507],{}," without a step is different: an unchosen decision branch ends quietly.",[3382,4995,4996],{},"What a run does when the previous one is still going at the next firing, with the supplier's file arriving over SFTP:",[3430,4998,4999,5009],{},[3433,5000,5001],{},[3436,5002,5003,5006],{},[3439,5004,5005],{},"The state",[3439,5007,5008],{},"What the second run does",[3446,5010,5011,5019,5029],{},[3436,5012,5013,5016],{},[3451,5014,5015],{},"The first run is still writing",[3451,5017,5018],{},"The inbox is empty or the claim fails, so the second run ends without writing",[3436,5020,5021,5026],{},[3451,5022,5023,5024],{},"The first run failed and left the file in ",[3454,5025,4777],{},[3451,5027,5028],{},"The second run finds an empty inbox. The next night's file is taken as usual, and the failed one waits for you. The alert tells you",[3436,5030,5031,5034],{},[3451,5032,5033],{},"Both runs list the file at the same instant",[3451,5035,5036],{},"One claim should win and the other should find no file. This relies on your SFTP server refusing a move whose source is gone. That is standard behaviour but was not verified for the move node, so test it in step 8",[3382,5038,5039,5042],{},[3521,5040,5041],{},"The guard is only as strong as the claim."," Fetching over HTTP has no claim, and the platform does not serialise runs, so there the guard does not exist.",[3382,5044,5045,5046,5048,5049,5051,5052,4139],{},"To recover a failed night, fix the cause and keep exactly one file in the inbox: move the failed file back from ",[3454,5047,4777],{},", press ",[3521,5050,4537],{},", and put the next night's file back afterwards. Stock is re-read, so the rerun books only what is still missing. Prices are not: the archive still holds the older file, so the rerun sends every changed price line again, and the list announces the change a second time. That is harmless for the data and noisy for a price cache. The rest of recovery, retry against resume and replay, is in ",[3386,5053,326],{"href":327},[3382,5055,5056,5057,5060],{},"A schedule can also skip a night: a platform that was down at 04:30 does not fire it late, and the spec promises no catch-up. The morning check in that guide is the answer. Keep the failure alert there as well: route the error ports to a ",[3521,5058,5059],{},"Send Email"," node as it describes.",[3414,5062,5064],{"id":5063},"_8-test-it-then-switch-it-on","8. Test it, then switch it on",[3382,5066,5067],{},"Use a test price list, a test location and a file of three SKUs: one price change, one stock increase, one new SKU.",[4579,5069,5070,5079,5094,5100,5106],{},[3620,5071,5072,5073,5075,5076,5078],{},"Press ",[3521,5074,4537],{},". Open the run and read each step's ",[3521,5077,4551],{},", including the compare node's groups.",[3620,5080,5081,5082,5085,5086,5089,5090,5093],{},"Check the writes on the platform, not only in the run. This needs the read scopes from the table at the top. Read the entry with ",[3454,5083,5084],{},"GET \u002Fv1\u002Fprices\u002Flists\u002F\u003CPRICE_LIST_ID>\u002Fentries?sku=\u003CSKU>",", and the movements with ",[3454,5087,5088],{},"GET \u002Fv1\u002Finventories\u002Fmovements?sku=\u003CSKU>",", which should show one ",[3454,5091,5092],{},"adjustment"," per changed SKU with your reason.",[3620,5095,5096,5097,5099],{},"Put a copy of the same file back in the inbox under a new name and press ",[3521,5098,4537],{}," again. The diff against the archive is empty, no movement is booked and the price call writes nothing. Using a new name keeps the test clear of one thing this guide did not verify, whether the archive move overwrites a file of the same name.",[3620,5101,5102,5103,5105],{},"With a fresh file in the inbox, press ",[3521,5104,4537],{}," twice in quick succession. One run should write, and the other should write nothing and finish green, at the zero-files branch or at the claim's No Operation node. If both write, your SFTP server did not refuse the second move, and the guard does not hold on it.",[3620,5107,5108,5109,5112],{},"Point the variables at the real list and location, activate the workflow and check ",[3521,5110,5111],{},"Integration Studio → Schedules",", which names why a schedule is not firing: paused, workflow inactive, or workflow not built.",[3414,5114,5116],{"id":5115},"troubleshooting","Troubleshooting",[3430,5118,5119,5129],{},[3433,5120,5121],{},[3436,5122,5123,5126],{},[3439,5124,5125],{},"Symptom",[3439,5127,5128],{},"Likely cause",[3446,5130,5131,5144,5154,5163,5173,5183,5198,5206,5214,5229,5237,5248,5258],{},[3436,5132,5133,5139],{},[3451,5134,5135,5136,5138],{},"The adjust answers ",[3454,5137,4124],{}," about a reason",[3451,5140,5141,5143],{},[3454,5142,4364],{}," is missing, and the tenant setting requires it",[3436,5145,5146,5151],{},[3451,5147,5135,5148,5150],{},[3454,5149,4124],{}," about a quantity",[3451,5152,5153],{},"The difference was 0. Check the If condition in step 6",[3436,5155,5156,5160],{},[3451,5157,5135,5158],{},[3454,5159,3638],{},[3451,5161,5162],{},"The new balance would fall below zero or, unless the tenant allows negative stock, below what is reserved. Nothing was booked",[3436,5164,5165,5170],{},[3451,5166,5167,5168],{},"The price call answers ",[3454,5169,4138],{},[3451,5171,5172],{},"Today's file names a SKU twice. Fix the feed, or dedupe with Array Tools before the compare",[3436,5174,5175,5180],{},[3451,5176,5167,5177,5179],{},[3454,5178,4124],{}," about too many entries",[3451,5181,5182],{},"The delta is over 5000 rows. Nothing was written",[3436,5184,5185,5192],{},[3451,5186,5167,5187,5189,5190],{},[3454,5188,4124],{}," about ",[3454,5191,4712],{},[3451,5193,5194,5195,5197],{},"A price with a decimal comma such as ",[3454,5196,4744],{},". Ask the supplier for a decimal point",[3436,5199,5200,5203],{},[3451,5201,5202],{},"A price shows as 0",[3451,5204,5205],{},"The file had an empty price cell. Filter empty prices out before the write (step 5)",[3436,5207,5208,5211],{},[3451,5209,5210],{},"The same tier now exists twice",[3451,5212,5213],{},"The list holds entries stored with a product id, and the upsert sends only the SKU (step 2)",[3436,5215,5216,5219],{},[3451,5217,5218],{},"Every night everything is \"changed\"",[3451,5220,5221,5222,5225,5226],{},"The key or compare fields name a column that is not in the file, or prices differ only in formatting, such as ",[3454,5223,5224],{},"12.5"," against ",[3454,5227,5228],{},"12.50",[3436,5230,5231,5234],{},[3451,5232,5233],{},"The run is red with \"more than one file\"",[3451,5235,5236],{},"Two files wait in the inbox. Step 7 explains why that stops the night",[3436,5238,5239,5242],{},[3451,5240,5241],{},"The run is green and nothing was written",[3451,5243,5244,5245,5247],{},"A second run took the file, or the inbox was empty. Open ",[3521,5246,1878],{}," and check the file's location",[3436,5249,5250,5255],{},[3451,5251,5252,5253],{},"The file sits in ",[3454,5254,4777],{},[3451,5256,5257],{},"A step failed after the claim. Fix it, then follow the recovery in step 7",[3436,5259,5260,5263],{},[3451,5261,5262],{},"A price a merchant set by hand was overwritten",[3451,5264,5265],{},"The supplier changed that line, so the diff wrote it. See step 4",[3414,5267,5269],{"id":5268},"where-to-go-next","Where to go next",[3617,5271,5272,5279,5286,5293,5300],{},[3620,5273,5274,5278],{},[3521,5275,5276],{},[3386,5277,326],{"href":327}," — read this before you activate the schedule: it is how you read a failed night, choose retry, resume or replay, and set up the morning check.",[3620,5280,5281,5285],{},[3521,5282,5283],{},[3386,5284,360],{"href":361}," — what the platform announces when a synced balance runs low, and how deliveries are booked.",[3620,5287,5288,5292],{},[3521,5289,5290],{},[3386,5291,180],{"href":181}," — price lists, tiers and the first load of a large book.",[3620,5294,5295,5299],{},[3521,5296,5297],{},[3386,5298,490],{"href":491}," — what your storefront hears after the price write.",[3620,5301,5302,3535,5306,5310],{},[3521,5303,5304],{},[3386,5305,1903],{"href":1904},[3521,5307,5308],{},[3386,5309,1795],{"href":1796}," — the trigger and the file nodes in full.",[5312,5313,5314],"style",{},"html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}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 pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":3557,"searchDepth":3589,"depth":3589,"links":5316},[5317,5318,5319,5320,5321,5322,5323,5324,5325,5326,5327,5328],{"id":3416,"depth":3589,"text":3417},{"id":3606,"depth":3589,"text":3607},{"id":3656,"depth":3589,"text":3657},{"id":3944,"depth":3589,"text":3945},{"id":4428,"depth":3589,"text":4429},{"id":4573,"depth":3589,"text":4574},{"id":4692,"depth":3589,"text":4693},{"id":4783,"depth":3589,"text":4784},{"id":4918,"depth":3589,"text":4919},{"id":5063,"depth":3589,"text":5064},{"id":5115,"depth":3589,"text":5116},{"id":5268,"depth":3589,"text":5269},"Pick up a supplier's price and stock file on a schedule, diff it against the last one with Compare Datasets, write prices with a bulk upsert and stock as signed adjustments, and make the run safe when two firings overlap.","md",null,{},{"icon":351},{"title":346,"description":5329},{"loc":347},"CVgzJxIe5H5aVx6gO_Y8A1n0ElkbyjLDWnYaTHD6oGE",1793802371286]