Unique identifier for this evaluation. Echo it back as a line item property (e.g. __as_offer_id) when a shopper adds a recommended product, so the resulting order attributes back to this specific evaluation in AfterSell reporting. Present on successful evaluations; absent on error responses that short-circuit before evaluation.
{"docsConfig":{"theme":"maple","$schema":"https://mintlify.com/docs.json","name":"Aftersell \u0026 Upcart Docs","colors":{"primary":"#C20075","light":"#C20075","dark":"#C20075"},"logo":{"light":"https://mintcdn.com/aftersell/SnQwk0JGiG2BpIZt/images/logos/aftersell-logo-black.svg?fit=max\u0026auto=format\u0026n=SnQwk0JGiG2BpIZt\u0026q=85\u0026s=3a4b16f98056fa407d2af5a4f86b7fd8","dark":"https://mintcdn.com/aftersell/SnQwk0JGiG2BpIZt/images/logos/aftersell-logo-white.svg?fit=max\u0026auto=format\u0026n=SnQwk0JGiG2BpIZt\u0026q=85\u0026s=d21a9be0c73e17a2155dd3eb12722d76","href":"https://docs.aftersell.com"},"favicon":{"light":"https://mintcdn.com/aftersell/SnQwk0JGiG2BpIZt/images/logos/aftersell-favicon.svg?fit=max\u0026auto=format\u0026n=SnQwk0JGiG2BpIZt\u0026q=85\u0026s=af8a1fbfca7c9ced3fdae00424ba2dd0","dark":"https://mintcdn.com/aftersell/SnQwk0JGiG2BpIZt/images/logos/aftersell-favicon.svg?fit=max\u0026auto=format\u0026n=SnQwk0JGiG2BpIZt\u0026q=85\u0026s=af8a1fbfca7c9ced3fdae00424ba2dd0"},"navbar":{"links":[{"icon":"home","href":"https://www.aftersell.com","label":"Aftersell Website"},{"icon":"home","href":"https://www.aftersell.com/cart","label":"Upcart Website"}]},"seo":{"metatags":{"canonical":"https://docs.aftersell.com"}},"fonts":{"heading":{"family":"Archivo","weight":600},"body":{"family":"Archivo","weight":400}},"styling":{"eyebrows":"breadcrumbs","codeblocks":{"theme":{"light":"snazzy-light","dark":"github-dark"}},"latex":true},"contextual":{"options":["assistant","chatgpt","claude","view"],"display":"header"},"navigation":{"languages":[{"language":"en","href":"aftersell/welcome_to_aftersell"},{"language":"fr","href":"fr/aftersell/welcome_to_aftersell"},{"language":"es","href":"es/aftersell/welcome_to_aftersell"},{"language":"zh","href":"zh/aftersell/welcome_to_aftersell"},{"language":"ja","href":"ja/aftersell/welcome_to_aftersell"},{"language":"de","href":"de/aftersell/welcome_to_aftersell"},{"language":"ru","href":"ru/aftersell/welcome_to_aftersell"},{"language":"it","href":"it/aftersell/welcome_to_aftersell"},{"language":"nl","href":"nl/aftersell/welcome_to_aftersell"},{"language":"pt","href":"pt/aftersell/welcome_to_aftersell"},{"language":"pl","href":"pl/aftersell/welcome_to_aftersell"},{"language":"ko","href":"ko/aftersell/welcome_to_aftersell"},{"language":"da","href":"da/aftersell/welcome_to_aftersell"},{"language":"ar","href":"ar/aftersell/welcome_to_aftersell"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"aftersell","hasAudioNarration":false,"actualSubdomain":"aftersell","customDomains":["docs.aftersell.com"],"gitSource":{"type":"github","owner":"rokt","repo":"aftersell-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aebbb3984614e84de1190ea","clientVersion":"0.0.4088","searchFilterCounts":[{"language":"en","tag":"Guides","count":267},{"language":"ar","tag":"الأدلة","count":267},{"language":"da","tag":"Vejledninger","count":267},{"language":"de","tag":"Anleitungen","count":267},{"language":"es","tag":"Guías","count":267},{"language":"fr","tag":"Guides","count":267},{"language":"it","tag":"Guide","count":267},{"language":"ja","tag":"ガイド","count":267},{"language":"ko","tag":"가이드","count":267},{"language":"nl","tag":"Handleidingen","count":267},{"language":"pl","tag":"Przewodniki","count":267},{"language":"pt","tag":"Guias","count":267},{"language":"ru","tag":"Руководства","count":267},{"language":"zh","tag":"指南","count":267},{"language":"en","tag":"Aftersell","count":202},{"language":"ar","tag":"Aftersell","count":202},{"language":"da","tag":"Aftersell","count":202},{"language":"de","tag":"Aftersell","count":202},{"language":"es","tag":"Aftersell","count":202},{"language":"fr","tag":"Aftersell","count":202},{"language":"it","tag":"Aftersell","count":202},{"language":"ja","tag":"Aftersell","count":202},{"language":"ko","tag":"Aftersell","count":202},{"language":"nl","tag":"Aftersell","count":202},{"language":"pl","tag":"Aftersell","count":202},{"language":"pt","tag":"Aftersell","count":202},{"language":"ru","tag":"Aftersell","count":202},{"language":"zh","tag":"Aftersell","count":202},{"language":"en","tag":"Upcart","count":133},{"language":"ar","tag":"Upcart","count":133},{"language":"da","tag":"Upcart","count":133},{"language":"de","tag":"Upcart","count":133},{"language":"es","tag":"Upcart","count":133},{"language":"fr","tag":"Upcart","count":133},{"language":"it","tag":"Upcart","count":133},{"language":"ja","tag":"Upcart","count":133},{"language":"ko","tag":"Upcart","count":133},{"language":"nl","tag":"Upcart","count":133},{"language":"pl","tag":"Upcart","count":133},{"language":"pt","tag":"Upcart","count":133},{"language":"ru","tag":"Upcart","count":133},{"language":"zh","tag":"Upcart","count":133},{"language":"en","tag":"Reference","count":68},{"language":"ar","tag":"المرجع","count":68},{"language":"da","tag":"Reference","count":68},{"language":"de","tag":"Referenz","count":68},{"language":"es","tag":"Referencia","count":68},{"language":"fr","tag":"Référence","count":68},{"language":"it","tag":"Riferimento","count":68},{"language":"ja","tag":"リファレンス","count":68},{"language":"ko","tag":"참조","count":68},{"language":"nl","tag":"Referentie","count":68},{"language":"pl","tag":"Dokumentacja","count":68},{"language":"pt","tag":"Referência","count":68},{"language":"ru","tag":"Справочник","count":68},{"language":"zh","tag":"参考","count":68},{"language":"en","tag":"Aftersell Cart","count":48},{"language":"ar","tag":"سلة Aftersell","count":48},{"language":"da","tag":"Aftersell-kurv","count":48},{"language":"de","tag":"Aftersell-Warenkorb","count":48},{"language":"es","tag":"Carrito de Aftersell","count":48},{"language":"fr","tag":"Panier Aftersell","count":48},{"language":"it","tag":"Carrello Aftersell","count":48},{"language":"ja","tag":"Aftersell カート","count":48},{"language":"ko","tag":"Aftersell 장바구니","count":48},{"language":"nl","tag":"Aftersell-winkelwagen","count":48},{"language":"pl","tag":"Koszyk Aftersell","count":48},{"language":"pt","tag":"Carrinho Aftersell","count":48},{"language":"ru","tag":"Корзина Aftersell","count":48},{"language":"zh","tag":"Aftersell 购物车","count":48},{"language":"en","tag":"Post-Purchase Upsells","count":45},{"language":"ar","tag":"عروض البيع الإضافي بعد الشراء","count":45},{"language":"da","tag":"Mersalg efter køb","count":45},{"language":"de","tag":"Post-Purchase-Upsells","count":45},{"language":"es","tag":"Ventas adicionales poscompra","count":45},{"language":"fr","tag":"Ventes incitatives post-achat","count":45},{"language":"it","tag":"Upsell post-acquisto","count":45},{"language":"ja","tag":"購入後アップセル","count":45},{"language":"ko","tag":"구매 후 업셀","count":45},{"language":"nl","tag":"Post-purchase upsells","count":45},{"language":"pl","tag":"Upselle po zakupie","count":45},{"language":"pt","tag":"Upsells pós-compra","count":45},{"language":"ru","tag":"Апселлы после покупки","count":45},{"language":"zh","tag":"购后追加销售","count":45},{"language":"en","tag":"Troubleshooting","count":33},{"language":"ar","tag":"استكشاف الأخطاء وإصلاحها","count":33},{"language":"da","tag":"Fejlfinding","count":33},{"language":"de","tag":"Fehlerbehebung","count":33},{"language":"es","tag":"Solución de problemas","count":33},{"language":"fr","tag":"Dépannage","count":33},{"language":"it","tag":"Risoluzione dei problemi","count":33},{"language":"ja","tag":"トラブルシューティング","count":33},{"language":"ko","tag":"문제 해결","count":33},{"language":"nl","tag":"Probleemoplossing","count":33},{"language":"pl","tag":"Rozwiązywanie problemów","count":33},{"language":"pt","tag":"Solução de problemas","count":33},{"language":"ru","tag":"Устранение неполадок","count":33},{"language":"zh","tag":"故障排除","count":33},{"language":"en","tag":"Cart Modules","count":22},{"language":"ar","tag":"وحدات السلة","count":22},{"language":"da","tag":"Kurvmoduler","count":22},{"language":"de","tag":"Warenkorb-Module","count":22},{"language":"es","tag":"Módulos del carrito","count":22},{"language":"fr","tag":"Modules de panier","count":22},{"language":"it","tag":"Moduli del carrello","count":22},{"language":"ja","tag":"カートモジュール","count":22},{"language":"ko","tag":"장바구니 모듈","count":22},{"language":"nl","tag":"Winkelwagenmodules","count":22},{"language":"pl","tag":"Moduły koszyka","count":22},{"language":"pt","tag":"Módulos do carrinho","count":22},{"language":"ru","tag":"Модули корзины","count":22},{"language":"zh","tag":"购物车模块","count":22},{"language":"en","tag":"Setup \u0026 Configuration","count":21},{"language":"ar","tag":"الإعداد والتهيئة","count":21},{"language":"da","tag":"Opsætning og konfiguration","count":21},{"language":"de","tag":"Einrichtung \u0026 Konfiguration","count":21},{"language":"es","tag":"Instalación y configuración","count":21},{"language":"fr","tag":"Installation et configuration","count":21},{"language":"it","tag":"Installazione e configurazione","count":21},{"language":"ja","tag":"セットアップと設定","count":21},{"language":"ko","tag":"설정 및 구성","count":21},{"language":"nl","tag":"Installatie en configuratie","count":21},{"language":"pl","tag":"Instalacja i konfiguracja","count":21},{"language":"pt","tag":"Instalação e configuração","count":21},{"language":"ru","tag":"Установка и настройка","count":21},{"language":"zh","tag":"设置与配置","count":21},{"language":"en","tag":"Cart blocks","count":18},{"language":"ar","tag":"كتل السلة","count":18},{"language":"da","tag":"Kurvblokke","count":18},{"language":"de","tag":"Warenkorb-Blöcke","count":18},{"language":"es","tag":"Bloques del carrito","count":18},{"language":"fr","tag":"Blocs de panier","count":18},{"language":"it","tag":"Blocchi del carrello","count":18},{"language":"ja","tag":"カートブロック","count":18},{"language":"ko","tag":"장바구니 블록","count":18},{"language":"nl","tag":"Winkelwagenblokken","count":18},{"language":"pl","tag":"Bloki koszyka","count":18},{"language":"pt","tag":"Blocos do carrinho","count":18},{"language":"ru","tag":"Блоки корзины","count":18},{"language":"zh","tag":"购物车区块","count":18}],"searchSettings":{"maxResults":10,"isFiltersEnabled":true}},"assistantConfig":{"enableStarterQuestions":false,"deflection":{"enabled":true,"email":"support@aftersell.app"}},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[],"page":{"pagePath":"ru/aftersell/strategies_api_reference_evaluate_strategy","slug":"/ru/aftersell/strategies_api_reference_evaluate_strategy","pageMetadata":{"title":"Оценка стратегии","keywords":["оценка стратегии","API стратегий","API рекомендаций товаров","эндпоинт evaluate","справочник API","X-Strategy-Api-Key","таргетинг товаров","движок рекомендаций"],"openapi":"api/strategies.json POST /api/public/strategy/evaluate","description":"Evaluate a strategy against provided context to return the desired experience.","href":"/ru/aftersell/strategies_api_reference_evaluate_strategy"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Evaluate a strategy against provided context to return the desired experience.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"codeStyling":{"theme":{"light":"snazzy-light","dark":"github-dark"}},"config":{},"pageMetadata":{"title":"Оценка стратегии","keywords":["оценка стратегии","API стратегий","API рекомендаций товаров","эндпоинт evaluate","справочник API","X-Strategy-Api-Key","таргетинг товаров","движок рекомендаций"],"openapi":"api/strategies.json POST /api/public/strategy/evaluate","description":"Evaluate a strategy against provided context to return the desired experience.","href":"/ru/aftersell/strategies_api_reference_evaluate_strategy"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"evaluateStrategy","summary":"Evaluate Strategy","description":"Evaluate a strategy against provided context to return the desired experience.","requestBody":"5458009f-6cc3-45b9-b09a-1ec8c58b7278","responses":{"200":"5fef4c10-c06f-43f6-a921-7ccef8670c03","400":"d45f6ff8-e104-4b47-b628-60bbdc700397","401":"7d1c7d05-fc7a-4b1e-a735-3b6b0b99043c","403":"6575e198-4891-4be3-84ad-f7d8b1c39404","500":"79f72ae5-5a6d-4d86-a26a-7a3310280b67"},"method":"post","type":"path","servers":["506d1b41-1bb2-4e9a-bd72-80f5a3848ba8"],"security":["d46a218a-89ed-4008-ab54-b94b5a7b5a91"],"path":"/api/public/strategy/evaluate","baseUrlOptions":["https://start.aftersell.app"],"title":"Evaluate Strategy","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["shopDomain","strategyId","context"],"properties":{"shopDomain":{"type":"string","description":"Your store's permanent domain","isRequired":true,"uniqueKey":"shopDomain","typeLabel":"string"},"strategyId":{"type":"string","description":"The strategy ID to evaluate (a single 24-char hex MongoDB ObjectId)","isRequired":true,"uniqueKey":"strategyId","typeLabel":"string"},"context":{"type":"object","properties":{"products":{"type":"array","items":{"type":"object","required":["productId"],"properties":{"productId":{"type":"string","description":"Shopify GID format: `gid://shopify/Product/{id}`","isRequired":true,"uniqueKey":"context.products.items.[INDEX].productId","typeLabel":"string"},"variantId":{"type":"string","description":"Shopify GID format: `gid://shopify/ProductVariant/{id}`","uniqueKey":"context.products.items.[INDEX].variantId","typeLabel":"string"},"quantity":{"type":"number","description":"Item quantity (non-negative integer)","minimum":0,"uniqueKey":"context.products.items.[INDEX].quantity","typeLabel":"number"},"price":{"type":"number","description":"Unit price in dollars (non-negative)","minimum":0,"uniqueKey":"context.products.items.[INDEX].price","typeLabel":"number"},"handle":{"type":"string","description":"Product handle/slug","uniqueKey":"context.products.items.[INDEX].handle","typeLabel":"string"},"title":{"type":"string","description":"Product title","uniqueKey":"context.products.items.[INDEX].title","typeLabel":"string"},"vendor":{"type":"string","description":"Product vendor name","uniqueKey":"context.products.items.[INDEX].vendor","typeLabel":"string"},"productType":{"type":"string","description":"Product type","uniqueKey":"context.products.items.[INDEX].productType","typeLabel":"string"},"tags":{"type":"array","items":{"type":"string","uniqueKey":"context.products.items.[INDEX].tags.items.[INDEX]","typeLabel":"string"},"description":"Product tags","uniqueKey":"context.products.items.[INDEX].tags","typeLabel":"string[]"},"collections":{"type":"array","items":{"type":"string","uniqueKey":"context.products.items.[INDEX].collections.items.[INDEX]","typeLabel":"string"},"description":"Collection GIDs the product belongs to","uniqueKey":"context.products.items.[INDEX].collections","typeLabel":"string[]"},"sellingPlan":{"type":"string","enum":["subscription","one-time"],"description":"Selling plan type","uniqueKey":"context.products.items.[INDEX].sellingPlan","typeLabel":"enum\u003cstring>"},"metafields":{"type":"array","items":{"type":"object","required":["namespace","key","value"],"properties":{"namespace":{"type":"string","description":"Metafield namespace","isRequired":true,"uniqueKey":"context.products.items.[INDEX].metafields.items.[INDEX].namespace","typeLabel":"string"},"key":{"type":"string","description":"Metafield key","isRequired":true,"uniqueKey":"context.products.items.[INDEX].metafields.items.[INDEX].key","typeLabel":"string"},"value":{"type":"string","description":"Metafield value","isRequired":true,"uniqueKey":"context.products.items.[INDEX].metafields.items.[INDEX].value","typeLabel":"string"}},"uniqueKey":"context.products.items.[INDEX].metafields.items.[INDEX]","typeLabel":"object"},"description":"Product metafields for predicate matching. Used for evaluation only — never returned in the response.","uniqueKey":"context.products.items.[INDEX].metafields","typeLabel":"object[]"}},"uniqueKey":"context.products.items.[INDEX]","typeLabel":"object"},"description":"Products to evaluate the strategy against. Optional — omit or pass `[]` to evaluate context-only rules (e.g. cart, customer, session, datetime predicates) such as a curated collection for an empty cart. Product-scoped predicates fall through to `false` when no products are supplied.","uniqueKey":"context.products","typeLabel":"object[]"},"cartToken":{"type":"string","description":"Shopify cart token. Either `cartToken` or `checkoutToken` must be provided.","uniqueKey":"context.cartToken","typeLabel":"string"},"checkoutToken":{"type":"string","description":"Shopify checkout token. Either `cartToken` or `checkoutToken` must be provided.","uniqueKey":"context.checkoutToken","typeLabel":"string"},"sessionId":{"type":"string","description":"Optional session identifier for tracking and tracing","uniqueKey":"context.sessionId","typeLabel":"string"},"cart":{"type":"object","properties":{"subtotal":{"type":"number","description":"Cart subtotal in store-currency major units (e.g. dollars), consistent with product `price`. The value is compared verbatim against `cart_subtotal` rule thresholds — no unit conversion is applied — so send the same units you author your rules in.","minimum":0,"uniqueKey":"context.cart.subtotal","typeLabel":"number"},"itemCount":{"type":"number","description":"Total item quantity across all lines","minimum":0,"uniqueKey":"context.cart.itemCount","typeLabel":"number"},"lineCount":{"type":"number","description":"Number of distinct line items","minimum":0,"uniqueKey":"context.cart.lineCount","typeLabel":"number"},"attributes":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"context.cart.attributes.additionalProperties","typeLabel":"string"},"description":"Cart attributes as a key-value map","uniqueKey":"context.cart.attributes","typeLabel":"object"},"notes":{"type":"string","description":"Cart note","uniqueKey":"context.cart.notes","typeLabel":"string"}},"uniqueKey":"context.cart","typeLabel":"object"},"customer":{"type":"object","properties":{"customerId":{"type":"string","description":"Shopify Customer GID","uniqueKey":"context.customer.customerId","typeLabel":"string"},"tags":{"type":"array","items":{"type":"string","uniqueKey":"context.customer.tags.items.[INDEX]","typeLabel":"string"},"description":"Customer tags","uniqueKey":"context.customer.tags","typeLabel":"string[]"},"countryCode":{"type":"string","description":"Customer billing country code","uniqueKey":"context.customer.countryCode","typeLabel":"string"},"provinceCode":{"type":"string","description":"Customer billing province code","uniqueKey":"context.customer.provinceCode","typeLabel":"string"},"locale":{"type":"string","description":"Customer locale","uniqueKey":"context.customer.locale","typeLabel":"string"},"orderCount":{"type":"number","description":"Number of orders placed","minimum":0,"uniqueKey":"context.customer.orderCount","typeLabel":"number"},"totalSpent":{"type":"number","description":"Lifetime spend in store currency","minimum":0,"uniqueKey":"context.customer.totalSpent","typeLabel":"number"},"acceptsMarketing":{"type":"boolean","description":"Whether the customer accepts marketing","uniqueKey":"context.customer.acceptsMarketing","typeLabel":"boolean"}},"uniqueKey":"context.customer","typeLabel":"object"},"session":{"type":"object","properties":{"landingUrl":{"type":"string","description":"Raw landing URL (e.g. window.location.href). Matched by the `landing_url` predicate via case-insensitive substring/equality - use this to target a specific campaign or channel by matching a parameter embedded in the URL.","uniqueKey":"context.session.landingUrl","typeLabel":"string"},"currencyCode":{"type":"string","description":"Store currency code","uniqueKey":"context.session.currencyCode","typeLabel":"string"},"shippingCountryCode":{"type":"string","description":"Shipping destination country code","uniqueKey":"context.session.shippingCountryCode","typeLabel":"string"},"shippingProvinceCode":{"type":"string","description":"Shipping destination province code","uniqueKey":"context.session.shippingProvinceCode","typeLabel":"string"},"shippingMethod":{"type":"string","description":"Selected shipping method name","uniqueKey":"context.session.shippingMethod","typeLabel":"string"}},"uniqueKey":"context.session","typeLabel":"object"},"visitorId":{"type":"string","maxLength":64,"description":"Optional viewer key used to resolve the shopper's recently-viewed history. This is not a Hermes session id, and it does not satisfy the `cartToken` / `checkoutToken` requirement. Fails open — an invalid value is ignored rather than rejected.","uniqueKey":"context.visitorId","typeLabel":"string"},"localization":{"type":"object","description":"Buyer localization, used to select Shopify-computed contextual prices on multi-currency stores. Every field is optional and fails open: a malformed value is ignored rather than rejected, and pricing falls back to the shop currency.","properties":{"country":{"type":"string","description":"Buyer's country as an ISO 3166-1 alpha-2 code. Validated against Shopify's CountryCode enum and used for Admin API contextual pricing. Case-insensitive.","example":"AU","uniqueKey":"context.localization.country","typeLabel":"string"},"currency":{"type":"string","description":"Buyer's presentment currency as an ISO 4217 three-letter code. Case-insensitive. Used as a targeting input only: it fills `context.session.currencyCode`, the value the `store_currency_code` rule predicate matches against, and only when the caller has not already supplied one. It does not set the `currencyCode` returned on recommended products — that follows Shopify contextual pricing, which is selected by `localization.country`, and otherwise falls back to the shop's own currency. Unlike `country`, this value is only checked for being three letters; an unrecognised code is accepted and simply matches no rule.","example":"AUD","uniqueKey":"context.localization.currency","typeLabel":"string"},"language":{"type":"string","maxLength":35,"description":"Buyer's language tag, e.g. `en` or `en-AU`. Reserved for future translation support.","example":"en-AU","uniqueKey":"context.localization.language","typeLabel":"string"}},"uniqueKey":"context.localization","typeLabel":"object"}},"isRequired":true,"uniqueKey":"context","typeLabel":"object"},"surface":{"type":"string","enum":["checkout","post_purchase","thank_you","custom","cart","pdp"],"description":"Optional surface the evaluation is running on. Recorded for tracing and reporting.","uniqueKey":"surface","typeLabel":"enum\u003cstring>"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"shopDomain":"\u003cstring>","strategyId":"\u003cstring>","context":{"products":[{"productId":"\u003cstring>","variantId":"\u003cstring>","quantity":1,"price":1,"handle":"\u003cstring>","title":"\u003cstring>","vendor":"\u003cstring>","productType":"\u003cstring>","tags":["\u003cstring>"],"collections":["\u003cstring>"],"metafields":[{"namespace":"\u003cstring>","key":"\u003cstring>","value":"\u003cstring>"}]}],"cartToken":"\u003cstring>","checkoutToken":"\u003cstring>","sessionId":"\u003cstring>","cart":{"subtotal":1,"itemCount":1,"lineCount":1,"attributes":{},"notes":"\u003cstring>"},"customer":{"customerId":"\u003cstring>","tags":["\u003cstring>"],"countryCode":"\u003cstring>","provinceCode":"\u003cstring>","locale":"\u003cstring>","orderCount":1,"totalSpent":1,"acceptsMarketing":true},"session":{"landingUrl":"\u003cstring>","currencyCode":"\u003cstring>","shippingCountryCode":"\u003cstring>","shippingProvinceCode":"\u003cstring>","shippingMethod":"\u003cstring>"},"visitorId":"\u003cstring>","localization":{"country":"AU","currency":"AUD","language":"en-AU"}}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"5fef4c10-c06f-43f6-a921-7ccef8670c03":{"description":"Evaluation successful","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the evaluation succeeded","uniqueKey":"success","typeLabel":"boolean"},"products":{"type":"array","items":{"type":"object","properties":{"productId":{"type":"string","description":"Shopify Product GID","uniqueKey":"products.items.[INDEX].productId","typeLabel":"string"},"handle":{"type":"string","description":"Product handle/slug","uniqueKey":"products.items.[INDEX].handle","typeLabel":"string"},"title":{"type":"string","description":"Product title","uniqueKey":"products.items.[INDEX].title","typeLabel":"string"},"vendor":{"type":"string","description":"Vendor name","uniqueKey":"products.items.[INDEX].vendor","typeLabel":"string"},"productType":{"type":"string","description":"Product type","uniqueKey":"products.items.[INDEX].productType","typeLabel":"string"},"price":{"type":"string","description":"Lowest variant price as a dollar-amount string","uniqueKey":"products.items.[INDEX].price","typeLabel":"string"},"compareAtPrice":{"oneOf":[{"type":"string","description":"Compare-at price, or null if not set","uniqueKey":"products.items.[INDEX].compareAtPrice.oneOf.0","typeLabel":"string"},{"type":"null","description":"Compare-at price, or null if not set","uniqueKey":"products.items.[INDEX].compareAtPrice.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].compareAtPrice","typeLabel":"string | null"},"currencyCode":{"type":"string","description":"ISO 4217 currency of the product-level `price` and `compareAtPrice` rollup: the buyer's market currency when contextual pricing was resolved (see `context.localization`), otherwise the shop currency. May be absent, in which case fall back to your own presentment currency.","uniqueKey":"products.items.[INDEX].currencyCode","typeLabel":"string"},"availableForSale":{"type":"boolean","description":"Whether the product is available for purchase","uniqueKey":"products.items.[INDEX].availableForSale","typeLabel":"boolean"},"description":{"type":"string","description":"Product description","uniqueKey":"products.items.[INDEX].description","typeLabel":"string"},"url":{"type":"string","description":"Relative product URL","uniqueKey":"products.items.[INDEX].url","typeLabel":"string"},"tags":{"type":"array","items":{"type":"string","uniqueKey":"products.items.[INDEX].tags.items.[INDEX]","typeLabel":"string"},"uniqueKey":"products.items.[INDEX].tags","typeLabel":"string[]"},"collectionIds":{"type":"array","items":{"type":"string","uniqueKey":"products.items.[INDEX].collectionIds.items.[INDEX]","typeLabel":"string"},"uniqueKey":"products.items.[INDEX].collectionIds","typeLabel":"string[]"},"images":{"type":"array","items":{"type":"object","properties":{"src":{"type":"string","description":"Image URL","uniqueKey":"products.items.[INDEX].images.items.[INDEX].src","typeLabel":"string"},"altText":{"type":"string","description":"Image alt text (may be absent)","uniqueKey":"products.items.[INDEX].images.items.[INDEX].altText","typeLabel":"string"},"position":{"type":"number","description":"Image sort position","uniqueKey":"products.items.[INDEX].images.items.[INDEX].position","typeLabel":"number"}},"uniqueKey":"products.items.[INDEX].images.items.[INDEX]","typeLabel":"object"},"uniqueKey":"products.items.[INDEX].images","typeLabel":"object[]"},"variants":{"type":"array","items":{"type":"object","properties":{"variantId":{"type":"string","description":"Shopify ProductVariant GID","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].variantId","typeLabel":"string"},"title":{"type":"string","description":"Variant title","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].title","typeLabel":"string"},"price":{"type":"string","description":"Variant price as a dollar-amount string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].price","typeLabel":"string"},"compareAtPrice":{"oneOf":[{"type":"string","description":"Variant compare-at price, or null","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice.oneOf.0","typeLabel":"string"},{"type":"null","description":"Variant compare-at price, or null","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice","typeLabel":"string | null"},"currencyCode":{"type":"string","description":"ISO 4217 currency of `price` and `compareAtPrice`: the buyer's market currency when contextual pricing was resolved (see `context.localization`), otherwise the shop currency. May be absent, in which case fall back to your own presentment currency.","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].currencyCode","typeLabel":"string"},"availableForSale":{"type":"boolean","description":"Whether this variant is available","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].availableForSale","typeLabel":"boolean"},"sku":{"type":"string","description":"Variant SKU (may be absent)","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].sku","typeLabel":"string"},"image":{"type":"object","properties":{"src":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].image.src","typeLabel":"string"}},"description":"Variant-specific image, used to swap the card image on variant select. Absent when the variant has no distinct image — fall back to the product image.","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].image","typeLabel":"object"},"selectedOptions":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX].name","typeLabel":"string"},"value":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX].value","typeLabel":"string"}},"uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX]","typeLabel":"object"},"description":"Array of option name/value pairs (may be absent)","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions","typeLabel":"object[]"}},"uniqueKey":"products.items.[INDEX].variants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"products.items.[INDEX].variants","typeLabel":"object[]"}},"uniqueKey":"products.items.[INDEX]","typeLabel":"object"},"description":"Fully enriched recommended products","uniqueKey":"products","typeLabel":"object[]"},"evaluationId":{"type":"string","description":"Unique identifier for this evaluation. Echo it back as a line item property (e.g. `__as_offer_id`) when a shopper adds a recommended product, so the resulting order attributes back to this specific evaluation in AfterSell reporting. Present on successful evaluations; absent on error responses that short-circuit before evaluation.","uniqueKey":"evaluationId","typeLabel":"string"},"resolution":{"type":"object","properties":{"strategyId":{"oneOf":[{"type":"string","description":"The strategy that produced the result. `null` on any error response, and on a successful evaluation where no strategy matched the requested ID for this shop; otherwise echoes the requested `strategyId`.","uniqueKey":"resolution.strategyId.oneOf.0","typeLabel":"string"},{"type":"null","description":"The strategy that produced the result. `null` on any error response, and on a successful evaluation where no strategy matched the requested ID for this shop; otherwise echoes the requested `strategyId`.","uniqueKey":"resolution.strategyId.oneOf.1","typeLabel":"null"}],"uniqueKey":"resolution.strategyId","typeLabel":"string | null"},"matchedRuleIds":{"type":"array","items":{"type":"string","uniqueKey":"resolution.matchedRuleIds.items.[INDEX]","typeLabel":"string"},"description":"IDs of rules that matched","uniqueKey":"resolution.matchedRuleIds","typeLabel":"string[]"},"selectionMethod":{"type":"string","description":"Always `rules_engine`","uniqueKey":"resolution.selectionMethod","typeLabel":"string"},"fallbackUsed":{"type":"boolean","description":"Whether fallback logic was used","uniqueKey":"resolution.fallbackUsed","typeLabel":"boolean"}},"uniqueKey":"resolution","typeLabel":"object"},"meta":{"type":"object","properties":{"servedFromCache":{"type":"boolean","description":"Whether product data was served from cache","uniqueKey":"meta.servedFromCache","typeLabel":"boolean"},"processingTimeMs":{"type":"number","description":"Server-side processing time in milliseconds","uniqueKey":"meta.processingTimeMs","typeLabel":"number"},"data":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"meta.data.additionalProperties","typeLabel":"string"},"description":"Key-value pairs emitted by matched rules with `key_value` outputs. Values are always strings. Always present; may be an empty object. Keys from the first matching rule win.","uniqueKey":"meta.data","typeLabel":"object"},"explanation":{"type":"string","description":"Optional debug explanation (may be absent)","uniqueKey":"meta.explanation","typeLabel":"string"}},"uniqueKey":"meta","typeLabel":"object"},"errors":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","description":"Error code","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error description","uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"Present only when errors occur","uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":true,"products":[{"productId":"\u003cstring>","handle":"\u003cstring>","title":"\u003cstring>","vendor":"\u003cstring>","productType":"\u003cstring>","price":"\u003cstring>","compareAtPrice":"\u003cstring>","currencyCode":"\u003cstring>","availableForSale":true,"description":"\u003cstring>","url":"\u003cstring>","tags":["\u003cstring>"],"collectionIds":["\u003cstring>"],"images":[{"src":"\u003cstring>","altText":"\u003cstring>","position":123}],"variants":[{"variantId":"\u003cstring>","title":"\u003cstring>","price":"\u003cstring>","compareAtPrice":"\u003cstring>","currencyCode":"\u003cstring>","availableForSale":true,"sku":"\u003cstring>","image":{"src":"\u003cstring>"},"selectedOptions":[{"name":"\u003cstring>","value":"\u003cstring>"}]}]}],"evaluationId":"\u003cstring>","resolution":{"strategyId":"\u003cstring>","matchedRuleIds":["\u003cstring>"],"selectionMethod":"\u003cstring>","fallbackUsed":true},"meta":{"servedFromCache":true,"processingTimeMs":123,"data":{},"explanation":"\u003cstring>"},"errors":[{"code":"\u003cstring>","message":"\u003cstring>"}]}}},"exampleType":"generated"}},"exampleType":"generated"},"d45f6ff8-e104-4b47-b628-60bbdc700397":{"description":"Validation error — missing required fields, invalid ObjectId format, or neither `cartToken` nor `checkoutToken` provided","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the evaluation succeeded","uniqueKey":"success","typeLabel":"boolean"},"products":{"type":"array","items":{"type":"object","properties":{"productId":{"type":"string","description":"Shopify Product GID","uniqueKey":"products.items.[INDEX].productId","typeLabel":"string"},"handle":{"type":"string","description":"Product handle/slug","uniqueKey":"products.items.[INDEX].handle","typeLabel":"string"},"title":{"type":"string","description":"Product title","uniqueKey":"products.items.[INDEX].title","typeLabel":"string"},"vendor":{"type":"string","description":"Vendor name","uniqueKey":"products.items.[INDEX].vendor","typeLabel":"string"},"productType":{"type":"string","description":"Product type","uniqueKey":"products.items.[INDEX].productType","typeLabel":"string"},"price":{"type":"string","description":"Lowest variant price as a dollar-amount string","uniqueKey":"products.items.[INDEX].price","typeLabel":"string"},"compareAtPrice":{"oneOf":[{"type":"string","description":"Compare-at price, or null if not set","uniqueKey":"products.items.[INDEX].compareAtPrice.oneOf.0","typeLabel":"string"},{"type":"null","description":"Compare-at price, or null if not set","uniqueKey":"products.items.[INDEX].compareAtPrice.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].compareAtPrice","typeLabel":"string | null"},"currencyCode":{"type":"string","description":"ISO 4217 currency of the product-level `price` and `compareAtPrice` rollup: the buyer's market currency when contextual pricing was resolved (see `context.localization`), otherwise the shop currency. May be absent, in which case fall back to your own presentment currency.","uniqueKey":"products.items.[INDEX].currencyCode","typeLabel":"string"},"availableForSale":{"type":"boolean","description":"Whether the product is available for purchase","uniqueKey":"products.items.[INDEX].availableForSale","typeLabel":"boolean"},"description":{"type":"string","description":"Product description","uniqueKey":"products.items.[INDEX].description","typeLabel":"string"},"url":{"type":"string","description":"Relative product URL","uniqueKey":"products.items.[INDEX].url","typeLabel":"string"},"tags":{"type":"array","items":{"type":"string","uniqueKey":"products.items.[INDEX].tags.items.[INDEX]","typeLabel":"string"},"uniqueKey":"products.items.[INDEX].tags","typeLabel":"string[]"},"collectionIds":{"type":"array","items":{"type":"string","uniqueKey":"products.items.[INDEX].collectionIds.items.[INDEX]","typeLabel":"string"},"uniqueKey":"products.items.[INDEX].collectionIds","typeLabel":"string[]"},"images":{"type":"array","items":{"type":"object","properties":{"src":{"type":"string","description":"Image URL","uniqueKey":"products.items.[INDEX].images.items.[INDEX].src","typeLabel":"string"},"altText":{"type":"string","description":"Image alt text (may be absent)","uniqueKey":"products.items.[INDEX].images.items.[INDEX].altText","typeLabel":"string"},"position":{"type":"number","description":"Image sort position","uniqueKey":"products.items.[INDEX].images.items.[INDEX].position","typeLabel":"number"}},"uniqueKey":"products.items.[INDEX].images.items.[INDEX]","typeLabel":"object"},"uniqueKey":"products.items.[INDEX].images","typeLabel":"object[]"},"variants":{"type":"array","items":{"type":"object","properties":{"variantId":{"type":"string","description":"Shopify ProductVariant GID","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].variantId","typeLabel":"string"},"title":{"type":"string","description":"Variant title","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].title","typeLabel":"string"},"price":{"type":"string","description":"Variant price as a dollar-amount string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].price","typeLabel":"string"},"compareAtPrice":{"oneOf":[{"type":"string","description":"Variant compare-at price, or null","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice.oneOf.0","typeLabel":"string"},{"type":"null","description":"Variant compare-at price, or null","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice","typeLabel":"string | null"},"currencyCode":{"type":"string","description":"ISO 4217 currency of `price` and `compareAtPrice`: the buyer's market currency when contextual pricing was resolved (see `context.localization`), otherwise the shop currency. May be absent, in which case fall back to your own presentment currency.","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].currencyCode","typeLabel":"string"},"availableForSale":{"type":"boolean","description":"Whether this variant is available","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].availableForSale","typeLabel":"boolean"},"sku":{"type":"string","description":"Variant SKU (may be absent)","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].sku","typeLabel":"string"},"image":{"type":"object","properties":{"src":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].image.src","typeLabel":"string"}},"description":"Variant-specific image, used to swap the card image on variant select. Absent when the variant has no distinct image — fall back to the product image.","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].image","typeLabel":"object"},"selectedOptions":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX].name","typeLabel":"string"},"value":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX].value","typeLabel":"string"}},"uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX]","typeLabel":"object"},"description":"Array of option name/value pairs (may be absent)","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions","typeLabel":"object[]"}},"uniqueKey":"products.items.[INDEX].variants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"products.items.[INDEX].variants","typeLabel":"object[]"}},"uniqueKey":"products.items.[INDEX]","typeLabel":"object"},"description":"Fully enriched recommended products","uniqueKey":"products","typeLabel":"object[]"},"evaluationId":{"type":"string","description":"Unique identifier for this evaluation. Echo it back as a line item property (e.g. `__as_offer_id`) when a shopper adds a recommended product, so the resulting order attributes back to this specific evaluation in AfterSell reporting. Present on successful evaluations; absent on error responses that short-circuit before evaluation.","uniqueKey":"evaluationId","typeLabel":"string"},"resolution":{"type":"object","properties":{"strategyId":{"oneOf":[{"type":"string","description":"The strategy that produced the result. `null` on any error response, and on a successful evaluation where no strategy matched the requested ID for this shop; otherwise echoes the requested `strategyId`.","uniqueKey":"resolution.strategyId.oneOf.0","typeLabel":"string"},{"type":"null","description":"The strategy that produced the result. `null` on any error response, and on a successful evaluation where no strategy matched the requested ID for this shop; otherwise echoes the requested `strategyId`.","uniqueKey":"resolution.strategyId.oneOf.1","typeLabel":"null"}],"uniqueKey":"resolution.strategyId","typeLabel":"string | null"},"matchedRuleIds":{"type":"array","items":{"type":"string","uniqueKey":"resolution.matchedRuleIds.items.[INDEX]","typeLabel":"string"},"description":"IDs of rules that matched","uniqueKey":"resolution.matchedRuleIds","typeLabel":"string[]"},"selectionMethod":{"type":"string","description":"Always `rules_engine`","uniqueKey":"resolution.selectionMethod","typeLabel":"string"},"fallbackUsed":{"type":"boolean","description":"Whether fallback logic was used","uniqueKey":"resolution.fallbackUsed","typeLabel":"boolean"}},"uniqueKey":"resolution","typeLabel":"object"},"meta":{"type":"object","properties":{"servedFromCache":{"type":"boolean","description":"Whether product data was served from cache","uniqueKey":"meta.servedFromCache","typeLabel":"boolean"},"processingTimeMs":{"type":"number","description":"Server-side processing time in milliseconds","uniqueKey":"meta.processingTimeMs","typeLabel":"number"},"data":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"meta.data.additionalProperties","typeLabel":"string"},"description":"Key-value pairs emitted by matched rules with `key_value` outputs. Values are always strings. Always present; may be an empty object. Keys from the first matching rule win.","uniqueKey":"meta.data","typeLabel":"object"},"explanation":{"type":"string","description":"Optional debug explanation (may be absent)","uniqueKey":"meta.explanation","typeLabel":"string"}},"uniqueKey":"meta","typeLabel":"object"},"errors":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","description":"Error code","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error description","uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"Present only when errors occur","uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"VALIDATION_ERROR":{"title":"VALIDATION_ERROR","value":{"success":false,"products":[],"resolution":{"strategyId":null,"matchedRuleIds":[],"selectionMethod":"rules_engine","fallbackUsed":false},"meta":{"servedFromCache":false,"processingTimeMs":0,"data":{}},"errors":[{"code":"VALIDATION_ERROR","message":"Validation failed"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"7d1c7d05-fc7a-4b1e-a735-3b6b0b99043c":{"description":"Authentication error — missing or invalid API key, key not configured for shop, or unrecognized shop domain. No further detail is returned in the response body.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the evaluation succeeded","uniqueKey":"success","typeLabel":"boolean"},"products":{"type":"array","items":{"type":"object","properties":{"productId":{"type":"string","description":"Shopify Product GID","uniqueKey":"products.items.[INDEX].productId","typeLabel":"string"},"handle":{"type":"string","description":"Product handle/slug","uniqueKey":"products.items.[INDEX].handle","typeLabel":"string"},"title":{"type":"string","description":"Product title","uniqueKey":"products.items.[INDEX].title","typeLabel":"string"},"vendor":{"type":"string","description":"Vendor name","uniqueKey":"products.items.[INDEX].vendor","typeLabel":"string"},"productType":{"type":"string","description":"Product type","uniqueKey":"products.items.[INDEX].productType","typeLabel":"string"},"price":{"type":"string","description":"Lowest variant price as a dollar-amount string","uniqueKey":"products.items.[INDEX].price","typeLabel":"string"},"compareAtPrice":{"oneOf":[{"type":"string","description":"Compare-at price, or null if not set","uniqueKey":"products.items.[INDEX].compareAtPrice.oneOf.0","typeLabel":"string"},{"type":"null","description":"Compare-at price, or null if not set","uniqueKey":"products.items.[INDEX].compareAtPrice.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].compareAtPrice","typeLabel":"string | null"},"currencyCode":{"type":"string","description":"ISO 4217 currency of the product-level `price` and `compareAtPrice` rollup: the buyer's market currency when contextual pricing was resolved (see `context.localization`), otherwise the shop currency. May be absent, in which case fall back to your own presentment currency.","uniqueKey":"products.items.[INDEX].currencyCode","typeLabel":"string"},"availableForSale":{"type":"boolean","description":"Whether the product is available for purchase","uniqueKey":"products.items.[INDEX].availableForSale","typeLabel":"boolean"},"description":{"type":"string","description":"Product description","uniqueKey":"products.items.[INDEX].description","typeLabel":"string"},"url":{"type":"string","description":"Relative product URL","uniqueKey":"products.items.[INDEX].url","typeLabel":"string"},"tags":{"type":"array","items":{"type":"string","uniqueKey":"products.items.[INDEX].tags.items.[INDEX]","typeLabel":"string"},"uniqueKey":"products.items.[INDEX].tags","typeLabel":"string[]"},"collectionIds":{"type":"array","items":{"type":"string","uniqueKey":"products.items.[INDEX].collectionIds.items.[INDEX]","typeLabel":"string"},"uniqueKey":"products.items.[INDEX].collectionIds","typeLabel":"string[]"},"images":{"type":"array","items":{"type":"object","properties":{"src":{"type":"string","description":"Image URL","uniqueKey":"products.items.[INDEX].images.items.[INDEX].src","typeLabel":"string"},"altText":{"type":"string","description":"Image alt text (may be absent)","uniqueKey":"products.items.[INDEX].images.items.[INDEX].altText","typeLabel":"string"},"position":{"type":"number","description":"Image sort position","uniqueKey":"products.items.[INDEX].images.items.[INDEX].position","typeLabel":"number"}},"uniqueKey":"products.items.[INDEX].images.items.[INDEX]","typeLabel":"object"},"uniqueKey":"products.items.[INDEX].images","typeLabel":"object[]"},"variants":{"type":"array","items":{"type":"object","properties":{"variantId":{"type":"string","description":"Shopify ProductVariant GID","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].variantId","typeLabel":"string"},"title":{"type":"string","description":"Variant title","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].title","typeLabel":"string"},"price":{"type":"string","description":"Variant price as a dollar-amount string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].price","typeLabel":"string"},"compareAtPrice":{"oneOf":[{"type":"string","description":"Variant compare-at price, or null","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice.oneOf.0","typeLabel":"string"},{"type":"null","description":"Variant compare-at price, or null","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice","typeLabel":"string | null"},"currencyCode":{"type":"string","description":"ISO 4217 currency of `price` and `compareAtPrice`: the buyer's market currency when contextual pricing was resolved (see `context.localization`), otherwise the shop currency. May be absent, in which case fall back to your own presentment currency.","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].currencyCode","typeLabel":"string"},"availableForSale":{"type":"boolean","description":"Whether this variant is available","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].availableForSale","typeLabel":"boolean"},"sku":{"type":"string","description":"Variant SKU (may be absent)","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].sku","typeLabel":"string"},"image":{"type":"object","properties":{"src":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].image.src","typeLabel":"string"}},"description":"Variant-specific image, used to swap the card image on variant select. Absent when the variant has no distinct image — fall back to the product image.","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].image","typeLabel":"object"},"selectedOptions":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX].name","typeLabel":"string"},"value":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX].value","typeLabel":"string"}},"uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX]","typeLabel":"object"},"description":"Array of option name/value pairs (may be absent)","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions","typeLabel":"object[]"}},"uniqueKey":"products.items.[INDEX].variants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"products.items.[INDEX].variants","typeLabel":"object[]"}},"uniqueKey":"products.items.[INDEX]","typeLabel":"object"},"description":"Fully enriched recommended products","uniqueKey":"products","typeLabel":"object[]"},"evaluationId":{"type":"string","description":"Unique identifier for this evaluation. Echo it back as a line item property (e.g. `__as_offer_id`) when a shopper adds a recommended product, so the resulting order attributes back to this specific evaluation in AfterSell reporting. Present on successful evaluations; absent on error responses that short-circuit before evaluation.","uniqueKey":"evaluationId","typeLabel":"string"},"resolution":{"type":"object","properties":{"strategyId":{"oneOf":[{"type":"string","description":"The strategy that produced the result. `null` on any error response, and on a successful evaluation where no strategy matched the requested ID for this shop; otherwise echoes the requested `strategyId`.","uniqueKey":"resolution.strategyId.oneOf.0","typeLabel":"string"},{"type":"null","description":"The strategy that produced the result. `null` on any error response, and on a successful evaluation where no strategy matched the requested ID for this shop; otherwise echoes the requested `strategyId`.","uniqueKey":"resolution.strategyId.oneOf.1","typeLabel":"null"}],"uniqueKey":"resolution.strategyId","typeLabel":"string | null"},"matchedRuleIds":{"type":"array","items":{"type":"string","uniqueKey":"resolution.matchedRuleIds.items.[INDEX]","typeLabel":"string"},"description":"IDs of rules that matched","uniqueKey":"resolution.matchedRuleIds","typeLabel":"string[]"},"selectionMethod":{"type":"string","description":"Always `rules_engine`","uniqueKey":"resolution.selectionMethod","typeLabel":"string"},"fallbackUsed":{"type":"boolean","description":"Whether fallback logic was used","uniqueKey":"resolution.fallbackUsed","typeLabel":"boolean"}},"uniqueKey":"resolution","typeLabel":"object"},"meta":{"type":"object","properties":{"servedFromCache":{"type":"boolean","description":"Whether product data was served from cache","uniqueKey":"meta.servedFromCache","typeLabel":"boolean"},"processingTimeMs":{"type":"number","description":"Server-side processing time in milliseconds","uniqueKey":"meta.processingTimeMs","typeLabel":"number"},"data":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"meta.data.additionalProperties","typeLabel":"string"},"description":"Key-value pairs emitted by matched rules with `key_value` outputs. Values are always strings. Always present; may be an empty object. Keys from the first matching rule win.","uniqueKey":"meta.data","typeLabel":"object"},"explanation":{"type":"string","description":"Optional debug explanation (may be absent)","uniqueKey":"meta.explanation","typeLabel":"string"}},"uniqueKey":"meta","typeLabel":"object"},"errors":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","description":"Error code","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error description","uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"Present only when errors occur","uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"AUTH_ERROR":{"title":"AUTH_ERROR","value":{"success":false,"products":[],"resolution":{"strategyId":null,"matchedRuleIds":[],"selectionMethod":"rules_engine","fallbackUsed":false},"meta":{"servedFromCache":false,"processingTimeMs":0,"data":{}},"errors":[{"code":"AUTH_ERROR","message":"Unauthorized"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"6575e198-4891-4be3-84ad-f7d8b1c39404":{"description":"Authorization error — Strategy is not enabled for this shop.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the evaluation succeeded","uniqueKey":"success","typeLabel":"boolean"},"products":{"type":"array","items":{"type":"object","properties":{"productId":{"type":"string","description":"Shopify Product GID","uniqueKey":"products.items.[INDEX].productId","typeLabel":"string"},"handle":{"type":"string","description":"Product handle/slug","uniqueKey":"products.items.[INDEX].handle","typeLabel":"string"},"title":{"type":"string","description":"Product title","uniqueKey":"products.items.[INDEX].title","typeLabel":"string"},"vendor":{"type":"string","description":"Vendor name","uniqueKey":"products.items.[INDEX].vendor","typeLabel":"string"},"productType":{"type":"string","description":"Product type","uniqueKey":"products.items.[INDEX].productType","typeLabel":"string"},"price":{"type":"string","description":"Lowest variant price as a dollar-amount string","uniqueKey":"products.items.[INDEX].price","typeLabel":"string"},"compareAtPrice":{"oneOf":[{"type":"string","description":"Compare-at price, or null if not set","uniqueKey":"products.items.[INDEX].compareAtPrice.oneOf.0","typeLabel":"string"},{"type":"null","description":"Compare-at price, or null if not set","uniqueKey":"products.items.[INDEX].compareAtPrice.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].compareAtPrice","typeLabel":"string | null"},"currencyCode":{"type":"string","description":"ISO 4217 currency of the product-level `price` and `compareAtPrice` rollup: the buyer's market currency when contextual pricing was resolved (see `context.localization`), otherwise the shop currency. May be absent, in which case fall back to your own presentment currency.","uniqueKey":"products.items.[INDEX].currencyCode","typeLabel":"string"},"availableForSale":{"type":"boolean","description":"Whether the product is available for purchase","uniqueKey":"products.items.[INDEX].availableForSale","typeLabel":"boolean"},"description":{"type":"string","description":"Product description","uniqueKey":"products.items.[INDEX].description","typeLabel":"string"},"url":{"type":"string","description":"Relative product URL","uniqueKey":"products.items.[INDEX].url","typeLabel":"string"},"tags":{"type":"array","items":{"type":"string","uniqueKey":"products.items.[INDEX].tags.items.[INDEX]","typeLabel":"string"},"uniqueKey":"products.items.[INDEX].tags","typeLabel":"string[]"},"collectionIds":{"type":"array","items":{"type":"string","uniqueKey":"products.items.[INDEX].collectionIds.items.[INDEX]","typeLabel":"string"},"uniqueKey":"products.items.[INDEX].collectionIds","typeLabel":"string[]"},"images":{"type":"array","items":{"type":"object","properties":{"src":{"type":"string","description":"Image URL","uniqueKey":"products.items.[INDEX].images.items.[INDEX].src","typeLabel":"string"},"altText":{"type":"string","description":"Image alt text (may be absent)","uniqueKey":"products.items.[INDEX].images.items.[INDEX].altText","typeLabel":"string"},"position":{"type":"number","description":"Image sort position","uniqueKey":"products.items.[INDEX].images.items.[INDEX].position","typeLabel":"number"}},"uniqueKey":"products.items.[INDEX].images.items.[INDEX]","typeLabel":"object"},"uniqueKey":"products.items.[INDEX].images","typeLabel":"object[]"},"variants":{"type":"array","items":{"type":"object","properties":{"variantId":{"type":"string","description":"Shopify ProductVariant GID","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].variantId","typeLabel":"string"},"title":{"type":"string","description":"Variant title","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].title","typeLabel":"string"},"price":{"type":"string","description":"Variant price as a dollar-amount string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].price","typeLabel":"string"},"compareAtPrice":{"oneOf":[{"type":"string","description":"Variant compare-at price, or null","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice.oneOf.0","typeLabel":"string"},{"type":"null","description":"Variant compare-at price, or null","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice","typeLabel":"string | null"},"currencyCode":{"type":"string","description":"ISO 4217 currency of `price` and `compareAtPrice`: the buyer's market currency when contextual pricing was resolved (see `context.localization`), otherwise the shop currency. May be absent, in which case fall back to your own presentment currency.","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].currencyCode","typeLabel":"string"},"availableForSale":{"type":"boolean","description":"Whether this variant is available","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].availableForSale","typeLabel":"boolean"},"sku":{"type":"string","description":"Variant SKU (may be absent)","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].sku","typeLabel":"string"},"image":{"type":"object","properties":{"src":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].image.src","typeLabel":"string"}},"description":"Variant-specific image, used to swap the card image on variant select. Absent when the variant has no distinct image — fall back to the product image.","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].image","typeLabel":"object"},"selectedOptions":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX].name","typeLabel":"string"},"value":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX].value","typeLabel":"string"}},"uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX]","typeLabel":"object"},"description":"Array of option name/value pairs (may be absent)","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions","typeLabel":"object[]"}},"uniqueKey":"products.items.[INDEX].variants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"products.items.[INDEX].variants","typeLabel":"object[]"}},"uniqueKey":"products.items.[INDEX]","typeLabel":"object"},"description":"Fully enriched recommended products","uniqueKey":"products","typeLabel":"object[]"},"evaluationId":{"type":"string","description":"Unique identifier for this evaluation. Echo it back as a line item property (e.g. `__as_offer_id`) when a shopper adds a recommended product, so the resulting order attributes back to this specific evaluation in AfterSell reporting. Present on successful evaluations; absent on error responses that short-circuit before evaluation.","uniqueKey":"evaluationId","typeLabel":"string"},"resolution":{"type":"object","properties":{"strategyId":{"oneOf":[{"type":"string","description":"The strategy that produced the result. `null` on any error response, and on a successful evaluation where no strategy matched the requested ID for this shop; otherwise echoes the requested `strategyId`.","uniqueKey":"resolution.strategyId.oneOf.0","typeLabel":"string"},{"type":"null","description":"The strategy that produced the result. `null` on any error response, and on a successful evaluation where no strategy matched the requested ID for this shop; otherwise echoes the requested `strategyId`.","uniqueKey":"resolution.strategyId.oneOf.1","typeLabel":"null"}],"uniqueKey":"resolution.strategyId","typeLabel":"string | null"},"matchedRuleIds":{"type":"array","items":{"type":"string","uniqueKey":"resolution.matchedRuleIds.items.[INDEX]","typeLabel":"string"},"description":"IDs of rules that matched","uniqueKey":"resolution.matchedRuleIds","typeLabel":"string[]"},"selectionMethod":{"type":"string","description":"Always `rules_engine`","uniqueKey":"resolution.selectionMethod","typeLabel":"string"},"fallbackUsed":{"type":"boolean","description":"Whether fallback logic was used","uniqueKey":"resolution.fallbackUsed","typeLabel":"boolean"}},"uniqueKey":"resolution","typeLabel":"object"},"meta":{"type":"object","properties":{"servedFromCache":{"type":"boolean","description":"Whether product data was served from cache","uniqueKey":"meta.servedFromCache","typeLabel":"boolean"},"processingTimeMs":{"type":"number","description":"Server-side processing time in milliseconds","uniqueKey":"meta.processingTimeMs","typeLabel":"number"},"data":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"meta.data.additionalProperties","typeLabel":"string"},"description":"Key-value pairs emitted by matched rules with `key_value` outputs. Values are always strings. Always present; may be an empty object. Keys from the first matching rule win.","uniqueKey":"meta.data","typeLabel":"object"},"explanation":{"type":"string","description":"Optional debug explanation (may be absent)","uniqueKey":"meta.explanation","typeLabel":"string"}},"uniqueKey":"meta","typeLabel":"object"},"errors":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","description":"Error code","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error description","uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"Present only when errors occur","uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"FORBIDDEN":{"title":"FORBIDDEN","value":{"success":false,"products":[],"resolution":{"strategyId":null,"matchedRuleIds":[],"selectionMethod":"rules_engine","fallbackUsed":false},"meta":{"servedFromCache":false,"processingTimeMs":0,"data":{}},"errors":[{"code":"FORBIDDEN","message":"Strategy is not enabled for this shop"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"79f72ae5-5a6d-4d86-a26a-7a3310280b67":{"description":"Server error — shop configuration issue or unexpected internal error","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","description":"Whether the evaluation succeeded","uniqueKey":"success","typeLabel":"boolean"},"products":{"type":"array","items":{"type":"object","properties":{"productId":{"type":"string","description":"Shopify Product GID","uniqueKey":"products.items.[INDEX].productId","typeLabel":"string"},"handle":{"type":"string","description":"Product handle/slug","uniqueKey":"products.items.[INDEX].handle","typeLabel":"string"},"title":{"type":"string","description":"Product title","uniqueKey":"products.items.[INDEX].title","typeLabel":"string"},"vendor":{"type":"string","description":"Vendor name","uniqueKey":"products.items.[INDEX].vendor","typeLabel":"string"},"productType":{"type":"string","description":"Product type","uniqueKey":"products.items.[INDEX].productType","typeLabel":"string"},"price":{"type":"string","description":"Lowest variant price as a dollar-amount string","uniqueKey":"products.items.[INDEX].price","typeLabel":"string"},"compareAtPrice":{"oneOf":[{"type":"string","description":"Compare-at price, or null if not set","uniqueKey":"products.items.[INDEX].compareAtPrice.oneOf.0","typeLabel":"string"},{"type":"null","description":"Compare-at price, or null if not set","uniqueKey":"products.items.[INDEX].compareAtPrice.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].compareAtPrice","typeLabel":"string | null"},"currencyCode":{"type":"string","description":"ISO 4217 currency of the product-level `price` and `compareAtPrice` rollup: the buyer's market currency when contextual pricing was resolved (see `context.localization`), otherwise the shop currency. May be absent, in which case fall back to your own presentment currency.","uniqueKey":"products.items.[INDEX].currencyCode","typeLabel":"string"},"availableForSale":{"type":"boolean","description":"Whether the product is available for purchase","uniqueKey":"products.items.[INDEX].availableForSale","typeLabel":"boolean"},"description":{"type":"string","description":"Product description","uniqueKey":"products.items.[INDEX].description","typeLabel":"string"},"url":{"type":"string","description":"Relative product URL","uniqueKey":"products.items.[INDEX].url","typeLabel":"string"},"tags":{"type":"array","items":{"type":"string","uniqueKey":"products.items.[INDEX].tags.items.[INDEX]","typeLabel":"string"},"uniqueKey":"products.items.[INDEX].tags","typeLabel":"string[]"},"collectionIds":{"type":"array","items":{"type":"string","uniqueKey":"products.items.[INDEX].collectionIds.items.[INDEX]","typeLabel":"string"},"uniqueKey":"products.items.[INDEX].collectionIds","typeLabel":"string[]"},"images":{"type":"array","items":{"type":"object","properties":{"src":{"type":"string","description":"Image URL","uniqueKey":"products.items.[INDEX].images.items.[INDEX].src","typeLabel":"string"},"altText":{"type":"string","description":"Image alt text (may be absent)","uniqueKey":"products.items.[INDEX].images.items.[INDEX].altText","typeLabel":"string"},"position":{"type":"number","description":"Image sort position","uniqueKey":"products.items.[INDEX].images.items.[INDEX].position","typeLabel":"number"}},"uniqueKey":"products.items.[INDEX].images.items.[INDEX]","typeLabel":"object"},"uniqueKey":"products.items.[INDEX].images","typeLabel":"object[]"},"variants":{"type":"array","items":{"type":"object","properties":{"variantId":{"type":"string","description":"Shopify ProductVariant GID","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].variantId","typeLabel":"string"},"title":{"type":"string","description":"Variant title","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].title","typeLabel":"string"},"price":{"type":"string","description":"Variant price as a dollar-amount string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].price","typeLabel":"string"},"compareAtPrice":{"oneOf":[{"type":"string","description":"Variant compare-at price, or null","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice.oneOf.0","typeLabel":"string"},{"type":"null","description":"Variant compare-at price, or null","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].variants.items.[INDEX].compareAtPrice","typeLabel":"string | null"},"currencyCode":{"type":"string","description":"ISO 4217 currency of `price` and `compareAtPrice`: the buyer's market currency when contextual pricing was resolved (see `context.localization`), otherwise the shop currency. May be absent, in which case fall back to your own presentment currency.","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].currencyCode","typeLabel":"string"},"availableForSale":{"type":"boolean","description":"Whether this variant is available","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].availableForSale","typeLabel":"boolean"},"sku":{"type":"string","description":"Variant SKU (may be absent)","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].sku","typeLabel":"string"},"image":{"type":"object","properties":{"src":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].image.src","typeLabel":"string"}},"description":"Variant-specific image, used to swap the card image on variant select. Absent when the variant has no distinct image — fall back to the product image.","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].image","typeLabel":"object"},"selectedOptions":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX].name","typeLabel":"string"},"value":{"type":"string","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX].value","typeLabel":"string"}},"uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions.items.[INDEX]","typeLabel":"object"},"description":"Array of option name/value pairs (may be absent)","uniqueKey":"products.items.[INDEX].variants.items.[INDEX].selectedOptions","typeLabel":"object[]"}},"uniqueKey":"products.items.[INDEX].variants.items.[INDEX]","typeLabel":"object"},"uniqueKey":"products.items.[INDEX].variants","typeLabel":"object[]"}},"uniqueKey":"products.items.[INDEX]","typeLabel":"object"},"description":"Fully enriched recommended products","uniqueKey":"products","typeLabel":"object[]"},"evaluationId":{"type":"string","description":"Unique identifier for this evaluation. Echo it back as a line item property (e.g. `__as_offer_id`) when a shopper adds a recommended product, so the resulting order attributes back to this specific evaluation in AfterSell reporting. Present on successful evaluations; absent on error responses that short-circuit before evaluation.","uniqueKey":"evaluationId","typeLabel":"string"},"resolution":{"type":"object","properties":{"strategyId":{"oneOf":[{"type":"string","description":"The strategy that produced the result. `null` on any error response, and on a successful evaluation where no strategy matched the requested ID for this shop; otherwise echoes the requested `strategyId`.","uniqueKey":"resolution.strategyId.oneOf.0","typeLabel":"string"},{"type":"null","description":"The strategy that produced the result. `null` on any error response, and on a successful evaluation where no strategy matched the requested ID for this shop; otherwise echoes the requested `strategyId`.","uniqueKey":"resolution.strategyId.oneOf.1","typeLabel":"null"}],"uniqueKey":"resolution.strategyId","typeLabel":"string | null"},"matchedRuleIds":{"type":"array","items":{"type":"string","uniqueKey":"resolution.matchedRuleIds.items.[INDEX]","typeLabel":"string"},"description":"IDs of rules that matched","uniqueKey":"resolution.matchedRuleIds","typeLabel":"string[]"},"selectionMethod":{"type":"string","description":"Always `rules_engine`","uniqueKey":"resolution.selectionMethod","typeLabel":"string"},"fallbackUsed":{"type":"boolean","description":"Whether fallback logic was used","uniqueKey":"resolution.fallbackUsed","typeLabel":"boolean"}},"uniqueKey":"resolution","typeLabel":"object"},"meta":{"type":"object","properties":{"servedFromCache":{"type":"boolean","description":"Whether product data was served from cache","uniqueKey":"meta.servedFromCache","typeLabel":"boolean"},"processingTimeMs":{"type":"number","description":"Server-side processing time in milliseconds","uniqueKey":"meta.processingTimeMs","typeLabel":"number"},"data":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"meta.data.additionalProperties","typeLabel":"string"},"description":"Key-value pairs emitted by matched rules with `key_value` outputs. Values are always strings. Always present; may be an empty object. Keys from the first matching rule win.","uniqueKey":"meta.data","typeLabel":"object"},"explanation":{"type":"string","description":"Optional debug explanation (may be absent)","uniqueKey":"meta.explanation","typeLabel":"string"}},"uniqueKey":"meta","typeLabel":"object"},"errors":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string","description":"Error code","uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error description","uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"Present only when errors occur","uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"CONFIG_ERROR":{"title":"CONFIG_ERROR","value":{"success":false,"products":[],"resolution":{"strategyId":null,"matchedRuleIds":[],"selectionMethod":"rules_engine","fallbackUsed":false},"meta":{"servedFromCache":false,"processingTimeMs":0,"data":{}},"errors":[{"code":"CONFIG_ERROR","message":"Shop configuration error"}]}},"INTERNAL_ERROR":{"title":"INTERNAL_ERROR","value":{"success":false,"products":[],"resolution":{"strategyId":null,"matchedRuleIds":[],"selectionMethod":"rules_engine","fallbackUsed":false},"meta":{"servedFromCache":false,"processingTimeMs":0,"data":{}},"errors":[{"code":"INTERNAL_ERROR","message":"Failed to evaluate strategy rules"}]}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"d46a218a-89ed-4008-ab54-b94b5a7b5a91":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"X-Strategy-Api-Key","scopes":[]}}},"servers":{"506d1b41-1bb2-4e9a-bd72-80f5a3848ba8":{"url":"https://start.aftersell.app"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"X-Strategy-Api-Key","scopes":[]},"schema":{"title":"X-Strategy-Api-Key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"X-Strategy-Api-Key"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"api/strategies.json"},"subdomain":"aftersell","siteName":"Aftersell \u0026 Upcart Docs","title":"Оценка стратегии - Aftersell \u0026 Upcart Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/aftersell/strategies_api_reference_evaluate_strategy","matchLevel":1},"fr":{"href":"/fr/aftersell/strategies_api_reference_evaluate_strategy","matchLevel":1},"es":{"href":"/es/aftersell/strategies_api_reference_evaluate_strategy","matchLevel":1},"zh":{"href":"/zh/aftersell/strategies_api_reference_evaluate_strategy","matchLevel":1},"ja":{"href":"/ja/aftersell/strategies_api_reference_evaluate_strategy","matchLevel":1},"de":{"href":"/de/aftersell/strategies_api_reference_evaluate_strategy","matchLevel":1},"ru":{"href":"/ru/aftersell/strategies_api_reference_evaluate_strategy","matchLevel":0},"it":{"href":"/it/aftersell/strategies_api_reference_evaluate_strategy","matchLevel":1},"nl":{"href":"/nl/aftersell/strategies_api_reference_evaluate_strategy","matchLevel":1},"pt":{"href":"/pt/aftersell/strategies_api_reference_evaluate_strategy","matchLevel":1},"pl":{"href":"/pl/aftersell/strategies_api_reference_evaluate_strategy","matchLevel":1},"ko":{"href":"/ko/aftersell/strategies_api_reference_evaluate_strategy","matchLevel":1},"da":{"href":"/da/aftersell/strategies_api_reference_evaluate_strategy","matchLevel":1},"ar":{"href":"/ar/aftersell/strategies_api_reference_evaluate_strategy","matchLevel":1}}},"lastModified":"2026-09-09T00:55:24.375Z","originalFileLocation":"ru/aftersell/strategies_api_reference_evaluate_strategy.mdx","locale":"ru"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Evaluate a strategy against provided context to return the desired experience.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Aftersell \u0026amp; Upcart Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/aftersell/rvHYnLcZxWDiuuKI/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/aftersell/rvHYnLcZxWDiuuKI/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/aftersell/rvHYnLcZxWDiuuKI/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/aftersell/rvHYnLcZxWDiuuKI/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/aftersell/rvHYnLcZxWDiuuKI/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/aftersell/rvHYnLcZxWDiuuKI/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/aftersell/rvHYnLcZxWDiuuKI/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/aftersell/rvHYnLcZxWDiuuKI/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/aftersell/rvHYnLcZxWDiuuKI/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Оценка стратегии - Aftersell \u0026amp; Upcart Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Evaluate a strategy against provided context to return the desired experience.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Aftersell \u0026amp; Upcart Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.aftersell.com/ru/aftersell/strategies_api_reference_evaluate_strategy\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://aftersell.mintlify.site/_mintlify/api/og/v2?division=%D0%A1%D1%82%D1%80%D0%B0%D1%82%D0%B5%D0%B3%D0%B8%D0%B8\u0026amp;title=%D0%9E%D1%86%D0%B5%D0%BD%D0%BA%D0%B0+%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%B5%D0%B3%D0%B8%D0%B8\u0026amp;description=Evaluate+a+strategy+against+provided+context+to+return+the+desired+experience.\u0026amp;theme=4eda7b6db4afb63ff7f9239d\u0026amp;signature=3b751c5d29f769a19a0660cfc9447d7be54e0f1f18c801193795af7b62bac22d\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Оценка стратегии - Aftersell \u0026amp; Upcart Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Evaluate a strategy against provided context to return the desired experience.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://aftersell.mintlify.site/_mintlify/api/og/v2?division=%D0%A1%D1%82%D1%80%D0%B0%D1%82%D0%B5%D0%B3%D0%B8%D0%B8\u0026amp;title=%D0%9E%D1%86%D0%B5%D0%BD%D0%BA%D0%B0+%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%B5%D0%B3%D0%B8%D0%B8\u0026amp;description=Evaluate+a+strategy+against+provided+context+to+return+the+desired+experience.\u0026amp;theme=4eda7b6db4afb63ff7f9239d\u0026amp;signature=3b751c5d29f769a19a0660cfc9447d7be54e0f1f18c801193795af7b62bac22d\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/aftersell/rvHYnLcZxWDiuuKI/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Aftersell \u0026amp; Upcart Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#C20075\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.aftersell.com/ru/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/ru/aftersell/strategies_api_reference_evaluate_strategy.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ru\" href=\"https://docs.aftersell.com/ru/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.aftersell.com/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://docs.aftersell.com/fr/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://docs.aftersell.com/es/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh\" href=\"https://docs.aftersell.com/zh/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja\" href=\"https://docs.aftersell.com/ja/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"de\" href=\"https://docs.aftersell.com/de/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"it\" href=\"https://docs.aftersell.com/it/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"nl\" href=\"https://docs.aftersell.com/nl/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt\" href=\"https://docs.aftersell.com/pt/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pl\" href=\"https://docs.aftersell.com/pl/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://docs.aftersell.com/ko/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"da\" href=\"https://docs.aftersell.com/da/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ar\" href=\"https://docs.aftersell.com/ar/aftersell/strategies_api_reference_evaluate_strategy\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.aftersell.com/aftersell/strategies_api_reference_evaluate_strategy\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.aftersell.com/#organization\",\"name\":\"Aftersell \u0026 Upcart Docs\",\"url\":\"https://docs.aftersell.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/aftersell/SnQwk0JGiG2BpIZt/images/logos/aftersell-logo-black.svg?fit=max\u0026auto=format\u0026n=SnQwk0JGiG2BpIZt\u0026q=85\u0026s=3a4b16f98056fa407d2af5a4f86b7fd8\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.aftersell.com#website\",\"name\":\"Aftersell \u0026 Upcart Docs\",\"url\":\"https://docs.aftersell.com\",\"publisher\":{\"@id\":\"https://docs.aftersell.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.aftersell.com/ru/aftersell/strategies_api_reference_evaluate_strategy#webpage\",\"url\":\"https://docs.aftersell.com/ru/aftersell/strategies_api_reference_evaluate_strategy\",\"name\":\"Оценка стратегии\",\"description\":\"Evaluate a strategy against provided context to return the desired experience.\",\"dateModified\":\"2026-09-09T00:55:24.375Z\",\"isPartOf\":{\"@id\":\"https://docs.aftersell.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.aftersell.com/ru/aftersell/strategies_api_reference_evaluate_strategy#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.aftersell.com/ru/aftersell/strategies_api_reference_evaluate_strategy#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Стратегии\",\"item\":\"https://docs.aftersell.com/ru/aftersell/strategies_rules_reference\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Оценка стратегии\",\"item\":\"https://docs.aftersell.com/ru/aftersell/strategies_api_reference_evaluate_strategy\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.aftersell.com/ru/aftersell/strategies_api_reference_evaluate_strategy#apireference\",\"headline\":\"Оценка стратегии\",\"name\":\"Оценка стратегии\",\"description\":\"Evaluate a strategy against provided context to return the desired experience.\",\"url\":\"https://docs.aftersell.com/ru/aftersell/strategies_api_reference_evaluate_strategy\",\"mainEntityOfPage\":{\"@id\":\"https://docs.aftersell.com/ru/aftersell/strategies_api_reference_evaluate_strategy#webpage\"},\"dateModified\":\"2026-09-09T00:55:24.375Z\",\"keywords\":\"оценка стратегии, API стратегий, API рекомендаций товаров, эндпоинт evaluate, справочник API, X-Strategy-Api-Key, таргетинг товаров, движок рекомендаций\",\"publisher\":{\"@id\":\"https://docs.aftersell.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.aftersell.com#website\"}}]}\u003c/script>","siteName":"Aftersell \u0026 Upcart Docs","nav":{"global":null,"languages":[{"language":"en","pages":[{"title":"en","href":"/aftersell/strategies_api_reference_evaluate_strategy"}]},{"language":"fr","pages":[{"title":"fr","href":"/fr/aftersell/strategies_api_reference_evaluate_strategy"}]},{"language":"es","pages":[{"title":"es","href":"/es/aftersell/strategies_api_reference_evaluate_strategy"}]},{"language":"zh","pages":[{"title":"zh","href":"/zh/aftersell/strategies_api_reference_evaluate_strategy"}]},{"language":"ja","pages":[{"title":"ja","href":"/ja/aftersell/strategies_api_reference_evaluate_strategy"}]},{"language":"de","pages":[{"title":"de","href":"/de/aftersell/strategies_api_reference_evaluate_strategy"}]},{"language":"ru","products":[{"product":"Aftersell","icon":"bolt","dropdowns":[{"dropdown":"Руководства","icon":"book","groups":[{"group":"Начало работы","expanded":false,"pages":[{"title":"Добро пожаловать в Aftersell","href":"/ru/aftersell/welcome_to_aftersell"},{"title":"Установка Aftersell","href":"/ru/aftersell/installing_aftersell"},{"title":"Краткое руководство по началу работы с Aftersell","href":"/ru/aftersell/quickstart_guide_to_aftersell"},{"title":"Послепродажные апселлы против апселлов на странице благодарности","sidebarTitle":"Post-Purchase против Thank You Page","href":"/ru/aftersell/one_click_upsells_vs_thank_you_page_upsells"},{"title":"Что такое Upcart?","href":"/ru/aftersell/what_is_upcart"}]},{"group":"Главная страница","expanded":false,"pages":[{"title":"Обзор главной страницы","href":"/ru/aftersell/home/overview"},{"title":"Панель аналитики","href":"/ru/aftersell/home/analytics-bar"},{"title":"Руководство по настройке","href":"/ru/aftersell/home/setup-guide"},{"title":"Быстрые действия","href":"/ru/aftersell/home/quick-actions"},{"title":"Сравнение с конкурентами (PPU)","href":"/ru/aftersell/home/peer-benchmarks"},{"title":"Статус app-блоков","href":"/ru/aftersell/home/app-block-status"},{"title":"Требует внимания","href":"/ru/aftersell/home/needs-attention"},{"title":"Помощь и объявления","href":"/ru/aftersell/home/help-and-announcements"}]},{"group":"Лучшие практики","expanded":false,"pages":[{"title":"Лучшие практики после покупки","href":"/ru/aftersell/best_practices"},{"title":"Стратегии после покупки по отраслям","href":"/ru/aftersell/post_purchase_strategies_by_industry"},{"title":"Лучшие практики для чекаута","href":"/ru/aftersell/checkout_best_practices"}]},{"group":"Апселлы после покупки","expanded":false,"pages":[{"group":"Обзор","expanded":false,"pages":[{"title":"Обзор предложений после покупки","href":"/ru/aftersell/post_purchase_overview"},{"title":"Типы предложений после покупки","sidebarTitle":"Типы предложений","href":"/ru/aftersell/post-purchase-offer-types"},{"title":"Умная воронка","href":"/ru/aftersell/smart_funnel"}]},{"group":"Установка и настройка","expanded":false,"pages":[{"title":"Как настроить послепродажные триггеры","href":"/ru/aftersell/how_to_configure_post_purchase_triggers"},{"title":"Настройка параметров пост-покупочных предложений","href":"/ru/aftersell/configuring_post_purchase_offer_settings"},{"title":"Как создать многошаговый послепродажный апселл","href":"/ru/aftersell/how_to_create_a_multi_step_post_purchase_upsell"},{"title":"Апселлы с заменой","href":"/ru/aftersell/replacement_upsells"},{"group":"Обновления подписок","expanded":false,"pages":[{"title":"Обновления подписок","sidebarTitle":"Обзор","href":"/ru/aftersell/subscription-upgrades"},{"title":"Настройка обновлений подписок","sidebarTitle":"Настройка и конфигурация","href":"/ru/aftersell/subscription-upgrades-setup"},{"title":"Добавление позиции в существующую подписку","sidebarTitle":"Добавление позиции в подписку","href":"/ru/aftersell/subscription-upgrades-add-item"},{"title":"Тестирование обновлений подписок","sidebarTitle":"Тестирование","href":"/ru/aftersell/subscription-upgrades-testing"}]},{"title":"Подписки в post-purchase предложениях","href":"/ru/aftersell/subscriptions_in_post_purchase_offers"},{"title":"Подписочные upsell-предложения в заказах, уже содержащих подписку","sidebarTitle":"Upsell для существующих подписчиков","href":"/ru/aftersell/subscription-upsell-existing-subscribers"},{"title":"Как использовать UTM-ссылки, ведущие напрямую на оформление заказа","href":"/ru/aftersell/how_to_use_direct_to_checkout_utm_links"},{"title":"Перевод post-purchase воронок","href":"/ru/aftersell/translating_post_purchase_funnels"},{"title":"Понимание вариантов, отсутствующих на складе","href":"/ru/aftersell/understanding_out_of_stock_variants"},{"title":"Quantity upsells","href":"/ru/aftersell/quantity-upsells"},{"title":"Build a Box","href":"/ru/aftersell/build-a-box"}]},{"group":"Брендинг и дизайн","expanded":false,"pages":[{"title":"Настройки брендинга страницы после покупки","href":"/ru/aftersell/post_purchase_branding_settings"},{"title":"Изменение цветов кнопки после покупки (CTA)","href":"/ru/aftersell/changing_post_purchase_button_colours_cta"},{"title":"Индикаторы прогресса и бейджи товаров","href":"/ru/aftersell/progress_bars_product_badges"},{"title":"Настройка отображения скидок в Aftersell","href":"/ru/aftersell/customizing_discount_displays"}]},{"group":"Тестирование и оптимизация","expanded":false,"pages":[{"title":"Тестирование / предпросмотр вашего post-purchase предложения","href":"/ru/aftersell/testing_post_purchase_offers"},{"title":"A/B-тестирование после покупки","href":"/ru/aftersell/post_purchase_a_b_testing"},{"title":"Мультивариантное тестирование после покупки","href":"/ru/aftersell/multivariate_testing"}]},{"group":"Платежи и выполнение заказов","expanded":false,"pages":[{"title":"Способы оплаты","href":"/ru/aftersell/payment_methods"},{"title":"Ручной захват платежей","href":"/ru/aftersell/manual-payment-capture"},{"title":"Захват платежей при обнаружении мошенничества","href":"/ru/aftersell/fraud-detection-payment-capture"},{"title":"Автоматические платежи PayPal","href":"/ru/aftersell/paypal_automatic_payments"},{"title":"Частично оплаченные заказы","href":"/ru/aftersell/partially_paid_orders"},{"title":"Налоги","href":"/ru/aftersell/taxes"},{"title":"Фулфилмент","href":"/ru/aftersell/fulfillment"},{"title":"Как настроить локации исполнения для послепродажных апселлов","href":"/ru/aftersell/how_to_configure_fulfillment_locations_for_1_click_upsells"},{"title":"Возможные обходные решения проблем с процессом выполнения заказов","href":"/ru/aftersell/potential_workarounds_for_fulfillment_flow_issues"},{"title":"Почему товары из post-purchase доставляются отдельно?","href":"/ru/aftersell/why_are_post_purchase_items_being_shipped_separately"},{"title":"Как послепродажные апселлы влияют на исполнение заказов?","href":"/ru/aftersell/how_do_post_purchase_upsells_affect_my_fulfillment"}]}]},{"group":"Корзина Aftersell","pages":[{"title":"Обзор Aftersell Cart","href":"/ru/aftersell/cart/overview"},{"group":"Управление корзинами","pages":[{"title":"Как работают корзины?","href":"/ru/aftersell/cart/how-carts-work"},{"title":"Корзины как файлы","href":"/ru/aftersell/cart/carts-as-files"},{"title":"Создание корзин","href":"/ru/aftersell/cart/creating-carts"},{"title":"Предпросмотр корзин","href":"/ru/aftersell/cart/previewing-carts"},{"title":"Управление несколькими корзинами","href":"/ru/aftersell/cart/having-multiple-carts"},{"title":"Импорт и экспорт корзин","href":"/ru/aftersell/cart/import-export"}]},{"group":"Настройка корзины","pages":[{"title":"Настройки дизайна","href":"/ru/aftersell/cart/design-settings"},{"title":"Настройки корзины","href":"/ru/aftersell/cart/cart-settings"},{"title":"Пользовательский CSS","href":"/ru/aftersell/cart/custom-css"},{"title":"Пользовательские скрипты","href":"/ru/aftersell/cart/custom-scripts"}]},{"group":"Блоки корзины","pages":[{"title":"Как работают блоки?","href":"/ru/aftersell/cart/blocks-overview"},{"title":"Блок Header","href":"/ru/aftersell/cart/header-block"},{"title":"Блок баннера","href":"/ru/aftersell/cart/banner-block"},{"title":"Блок Image","href":"/ru/aftersell/cart/image-block"},{"title":"Блок товаров корзины","href":"/ru/aftersell/cart/cart-items-block"},{"title":"Блок Subscription upgrade","href":"/ru/aftersell/cart/subscription-upgrade-block"},{"title":"Блок Product add-on","href":"/ru/aftersell/cart/product-add-on-block"},{"title":"Блок Upsells","href":"/ru/aftersell/cart/upsells-block"},{"title":"Блок Rewards","href":"/ru/aftersell/cart/rewards-block"},{"title":"Блок кода скидки","href":"/ru/aftersell/cart/discount-code-block"},{"title":"Блок Notes","href":"/ru/aftersell/cart/notes-block"},{"title":"Блок Shipping protection","href":"/ru/aftersell/cart/shipping-protection-block"},{"title":"Блок Express payments","href":"/ru/aftersell/cart/express-payments-block"},{"title":"Блок Summary","href":"/ru/aftersell/cart/summary-block"},{"title":"Блок кнопки оформления заказа","href":"/ru/aftersell/cart/checkout-button-block"},{"title":"Блок Empty cart","href":"/ru/aftersell/cart/empty-cart-block"},{"title":"Пользовательские шаблоны","href":"/ru/aftersell/cart/custom-templates"},{"title":"Блоки пользовательского кода","href":"/ru/aftersell/cart/custom-code-blocks"}]},{"group":"Тесты корзины","pages":[{"title":"Как работают тесты?","href":"/ru/aftersell/cart/tests-overview"},{"title":"Аналитика тестов","href":"/ru/aftersell/cart/test-analytics"},{"title":"A/B-тест Aftersell Cart против другого приложения корзины","href":"/ru/aftersell/cart/ab-test-against-another-cart"}]},{"group":"Аналитика","pages":[{"title":"Аналитика корзины","href":"/ru/aftersell/cart/analytics"}]},{"group":"SDK корзины","pages":[{"title":"Обзор","href":"/ru/aftersell/cart/sdk-overview"},{"title":"Перехват добавления в корзину","href":"/ru/aftersell/cart/add-to-cart-interception"},{"title":"Конфигурация","href":"/ru/aftersell/cart/sdk-configure"},{"title":"События","href":"/ru/aftersell/cart/sdk-events"},{"title":"Действия","href":"/ru/aftersell/cart/sdk-actions"},{"title":"Хуки","href":"/ru/aftersell/cart/sdk-hooks"},{"title":"Объект корзины","href":"/ru/aftersell/cart/sdk-cart-object"},{"group":"Сценарии использования","pages":[{"title":"Типичные сценарии использования","href":"/ru/aftersell/cart/sdk-use-cases"},{"title":"Отслеживание добавления в корзину в стороннем инструменте","href":"/ru/aftersell/cart/sdk-use-case-analytics"},{"title":"Автодобавление бесплатного подарка при достижении порога","href":"/ru/aftersell/cart/sdk-use-case-free-gift"},{"title":"Скрытие и переименование строк корзины","href":"/ru/aftersell/cart/sdk-use-case-hide-lines"},{"title":"Отображение данных метаполей на строках корзины","href":"/ru/aftersell/cart/sdk-use-case-metafields"},{"title":"Открытие панели из конструктора страниц","href":"/ru/aftersell/cart/sdk-use-case-page-builder"},{"title":"Требование принятия условий перед оформлением заказа","href":"/ru/aftersell/cart/sdk-use-case-terms-checkbox"},{"title":"Группировка строк бандла из другого приложения","href":"/ru/aftersell/cart/sdk-use-case-bundles"}]}]}]},{"group":"Апселлы на странице оформления заказа (Shopify Plus)","expanded":false,"pages":[{"group":"Обзор","expanded":false,"pages":[{"title":"Обзор дашборда Checkout","href":"/ru/aftersell/checkout-dashboard-overview"},{"title":"Страницы против отдельных виджетов","href":"/ru/aftersell/pages-vs-standalone-widgets"}]},{"group":"Настройка и виджеты","expanded":false,"pages":[{"title":"Добавление виджета checkout в ваш Shopify checkout","href":"/ru/aftersell/adding_a_checkout_widget_to_your_shopify_checkout"},{"title":"Создание вашего первого виджета для страницы оформления заказа","href":"/ru/aftersell/creating_your_first_checkout_widget"},{"title":"Как настроить виджеты checkout","href":"/ru/aftersell/how_to_configure_checkout_widgets"},{"title":"Апселлы порога суммы","href":"/ru/aftersell/spend_threshold_upsells"},{"title":"Показ виджетов чекаута в Shop Pay","href":"/ru/aftersell/show_checkout_widgets_in_shop_pay"},{"title":"Управление скидками на оформлении заказа","href":"/ru/aftersell/managing_checkout_discounts"}]},{"group":"Брендинг и триггеры","expanded":false,"pages":[{"title":"Кастомизации чекаута","href":"/ru/aftersell/checkout_customizations"},{"title":"Переводы чекаута","href":"/ru/aftersell/checkout_translations"}]},{"group":"Тестирование","expanded":false,"pages":[{"title":"A/B-тестирование на чекауте","href":"/ru/aftersell/checkout_a_b_testing"}]}]},{"group":"Страница благодарности","expanded":false,"pages":[{"title":"Как настроить виджеты страницы благодарности","href":"/ru/aftersell/how_can_i_set_up_and_customize_thank_you_page_upsells_in_aftersell"},{"title":"Виджет FAQ (страница благодарности)","sidebarTitle":"Виджет FAQ","href":"/ru/aftersell/faq-widget-thank-you-page"},{"title":"Виджет изображения (страница благодарности)","sidebarTitle":"Виджет изображения","href":"/ru/aftersell/image-widget-thank-you-page"},{"title":"Виджет рекомендаций товаров","sidebarTitle":"Рекомендации товаров","href":"/ru/aftersell/product-recommendation-widget-thank-you-page"},{"title":"Виджет отзывов ","sidebarTitle":"Виджет отзывов","href":"/ru/aftersell/testimonials-widget-thank-you-page"},{"title":"Виджет текста (страница благодарности)","sidebarTitle":"Виджет текста","href":"/ru/aftersell/text-widget-thank-you-page"}]},{"group":"Апселлы на странице товара","expanded":false,"pages":[{"title":"Апселлы на странице товара","href":"/ru/aftersell/product_page_upsells"}]},{"group":"Rokt Thanks","expanded":false,"pages":[{"group":"Обзор","expanded":false,"pages":[{"title":"Что такое Rokt Thanks?","href":"/ru/aftersell/what_is_rokt_thanks"},{"title":"Программа Earn \u0026 Save","href":"/ru/aftersell/earn-save"}]},{"group":"Установка и настройка","expanded":false,"pages":[{"title":"Активация и настройка Rokt Thanks","href":"/ru/aftersell/activating_and_configuring_rokt_thanks"},{"title":"Настройки Rokt Thanks","href":"/ru/aftersell/rokt_thanks_settings"},{"title":"Выплаты Rokt Thanks","href":"/ru/aftersell/rokt_thanks_payouts"},{"title":"Loyalty Loop в Rokt Thanks","href":"/ru/aftersell/rokt_thanks_loyalty_loop"},{"title":"Пользовательская интеграция Web SDK для Rokt Thanks","href":"/ru/aftersell/custom_web_sdk_integration_for_rokt_thanks"},{"title":"Как установить Rokt Thanks в Tapcart","href":"/ru/aftersell/how_to_install_rokt_thanks_on_tapcart"}]},{"group":"Эффективность и часто задаваемые вопросы","expanded":false,"pages":[{"title":"Отслеживание эффективности Rokt Thanks","href":"/ru/aftersell/tracking_rokt_thanks_performance"},{"title":"Могу ли я размещать рекламу через Rokt Thanks и продвигать свой бизнес на других сайтах?","href":"/ru/aftersell/can_i_advertise_with_rokt_thanks_and_promote_my_business_on_other_sites"},{"title":"Почему Rokt Thanks не отображается на моей странице подтверждения?","href":"/ru/aftersell/why_is_rokt_thanks_not_showing_on_my_confirmation_page"}]}]},{"group":"Стратегии","expanded":false,"pages":[{"title":"Обзор стратегий","sidebarTitle":"Обзор","href":"/ru/aftersell/strategies_overview"},{"title":"Создание стратегий","href":"/ru/aftersell/strategies_building_in_app"},{"group":"Внедрение стратегий","expanded":false,"pages":[{"title":"Post-purchase-апселлы","href":"/ru/aftersell/implementing_strategies_post_purchase_upsells"},{"title":"Апселлы на странице благодарности","href":"/ru/aftersell/implementing_strategies_thank_you_page_upsells"},{"title":"Апселлы на странице оформления заказа","href":"/ru/aftersell/implementing_strategies_checkout_upsells"},{"title":"Апселлы Upcart","href":"/ru/aftersell/implementing_strategies_upcart_upsells"}]}]},{"group":"Аналитика и отслеживание","expanded":false,"pages":[{"title":"Аналитика после покупки","href":"/ru/aftersell/analytics_in_aftersell"},{"title":"Аналитика после покупки","href":"/ru/aftersell/ppu_insights"},{"title":"Аналитика чекаута","href":"/ru/aftersell/checkout_analytics"},{"title":"Отслеживание конверсий (веб-пиксели)","href":"/ru/aftersell/conversion_tracking_web_pixels"},{"title":"Настройка веб-пикселей Shopify","href":"/ru/aftersell/configuring_shopify_web_pixels"},{"title":"Руководство по онбордингу DTC ads | активация веб-пикселя","href":"/ru/aftersell/dtc_ads_onboarding_guide_web_pixel_activation"},{"group":"Отчёты","expanded":false,"pages":[{"title":"Обзор отчетов","sidebarTitle":"Обзор","href":"/ru/aftersell/reports_overview"},{"title":"Управление отчетами","sidebarTitle":"Дашборды","href":"/ru/aftersell/reports_dashboards"},{"title":"Управление виджетами","sidebarTitle":"Виджеты","href":"/ru/aftersell/reports_widgets"},{"title":"Explorer","href":"/ru/aftersell/reports_explorer"}]}]},{"group":"Интеграции","expanded":false,"pages":[{"group":"Рекомендации товаров","pages":[{"title":"Интеграция Aftersell и Constructor","sidebarTitle":"Constructor","href":"/ru/aftersell/aftersell_constructor_integration"},{"title":"Интеграция Aftersell и Nosto","sidebarTitle":"Nosto","href":"/ru/aftersell/aftersell_nosto_integration"}]},{"group":"Подписки","pages":[{"title":"Интеграция Aftersell и Skio","sidebarTitle":"Skio","href":"/ru/aftersell/aftersell_skio_integration"},{"title":"Интеграция Aftersell и Stay AI","sidebarTitle":"Stay AI","href":"/ru/aftersell/aftersell_stayai_integration"}]},{"group":"Отзывы","pages":[{"title":"Интеграция отзывов Aftersell и Judge.me","sidebarTitle":"Отзывы Judge.me","href":"/ru/aftersell/judgeme_reviews_integration"},{"title":"Интеграция отзывов Aftersell и Klaviyo","sidebarTitle":"Отзывы Klaviyo","href":"/ru/aftersell/klaviyo_reviews_integration"},{"title":"Интеграция отзывов Aftersell и Okendo","sidebarTitle":"Отзывы Okendo","href":"/ru/aftersell/okendo_reviews_integration"},{"title":"Интеграция Aftersell и Yotpo Reviews","sidebarTitle":"Yotpo Reviews","href":"/ru/aftersell/aftersell_yotpo_reviews_integration"}]},{"group":"Лояльность и вознаграждения","pages":[{"title":"Интеграция Aftersell и Inveterate","sidebarTitle":"Inveterate","href":"/ru/aftersell/aftersell_inveterate_integration"},{"title":"Интеграция Aftersell и Rivo","sidebarTitle":"Rivo Loyalty \u0026 Rewards","href":"/ru/aftersell/aftersell_rivo_integration"}]}]},{"group":"Aftersell MCP","pages":[{"title":"Подключите ваш AI-клиент через Aftersell MCP","sidebarTitle":"Подключение AI-клиента","href":"/ru/aftersell/mcp-connect-self"}]},{"group":"Оплата и аккаунт","expanded":false,"pages":[{"title":"Оплата и тарифы Aftersell","href":"/ru/aftersell/aftersell_billing_pricing"},{"title":"Как отменить подписку Aftersell?","href":"/ru/aftersell/how_do_i_cancel_my_aftersell_subscription"},{"title":"Данные и конфиденциальность","href":"/ru/aftersell/customer_data_and_privacy"},{"title":"Партнерская программа","href":"/ru/aftersell/affiliate_program"},{"title":"Есть ли у Aftersell API для разработчиков?","href":"/ru/aftersell/does_aftersell_have_a_developer_api"}]},{"group":"Устранение неполадок","expanded":false,"pages":[{"group":"После покупки","expanded":false,"pages":[{"title":"Почему моё post-purchase предложение не отображается?","href":"/ru/aftersell/why_isnt_my_1_click_offer_displaying"},{"title":"Автоматические апселлы не работают","href":"/ru/aftersell/automatic_upsells_not_working"},{"title":"Влияет ли мультивалютное оформление заказа на Aftersell?","href":"/ru/aftersell/does_multi_currency_checkout_impact_aftersell"}]},{"group":"Оформление заказа","expanded":false,"pages":[{"title":"Почему я не вижу вкладку Checkout?","href":"/ru/aftersell/why_cant_i_see_the_checkout_tab"},{"title":"Почему мой checkout-апселл не отображается?","href":"/ru/aftersell/why_isnt_my_checkout_upsell_displaying"},{"title":"Цена до скидки не отображается для апселлов на чекауте (Shopify Plus)","href":"/ru/aftersell/compare_at_price_not_reflecting_for_checkout_upsells_shopify_plus"}]},{"group":"Страница благодарности","expanded":false,"pages":[{"title":"Устранение неполадок на странице Thank you","href":"/ru/aftersell/widget_not_displaying_on_the_thank_you_page"}]},{"group":"Общее","expanded":false,"pages":[{"title":"Обзор браузера заказов","href":"/ru/aftersell/order_browser_overview"},{"title":"Устранение неполадок в браузере заказов","href":"/ru/aftersell/order-browser-troubleshooting"},{"title":"Создание неопубликованной автоматической коллекции","href":"/ru/aftersell/creating_an_unpublished_automated_collection"}]}]},{"group":"Aftersell Staging","icon":"plane-landing-gear","hidden":true,"pages":[{"title":"Главная страница staging","href":"/ru/aftersell/staging-home"},{"title":"Собственное предложение Rokt Thanks","href":"/ru/aftersell/rokt-thanks-first-party-offer"},{"title":"Настройки email-уведомлений","href":"/ru/aftersell/email-notification-settings"},{"title":"Апселлы на странице товара V2","href":"/ru/aftersell/pdp-upsells-v2"},{"group":"Aftersell MCP","pages":[{"title":"Управление доступом соавторов","href":"/ru/aftersell/mcp-collaborator-access"}]},{"title":"Розыгрыши после покупки","href":"/ru/aftersell/post_purchase_sweepstakes"}]}]},{"dropdown":"Справочник","icon":"code","groups":[{"group":"Стратегии","pages":[{"title":"Справочник по правилам стратегий","sidebarTitle":"Справочник по правилам","href":"/ru/aftersell/strategies_rules_reference"},{"title":"Пользовательская интеграция","description":"Вызывайте Strategies API напрямую для создания пользовательских решений на витрине — карусели на страницах товаров, кастомные апселлы в корзине и любые другие места, недоступные нативным поверхностям Aftersell.","href":"/ru/aftersell/implementing_strategies_custom_integration"},{"title":"Оценка стратегии","openapi":"api/strategies.json POST /api/public/strategy/evaluate","href":"/ru/aftersell/strategies_api_reference_evaluate_strategy"},{"title":"Токены безопасности API таргетинга товаров","description":"Генерация и управление токенами безопасности для аутентификации API-запросов к стратегиям таргетинга товаров","href":"/ru/aftersell/strategies_api_tokens"}]},{"group":"Апселлы после покупки","pages":[{"title":"Ограничения post-purchase API Shopify","href":"/ru/aftersell/shopify_post_purchase_api_limitations"},{"title":"Триггеры после покупки","href":"/ru/aftersell/post_purchase_triggers"},{"title":"Понимание условной логики post-purchase триггеров","href":"/ru/aftersell/understanding_conditional_logic_for_post_purchase_triggers"},{"title":"Виджеты после покупки","href":"/ru/aftersell/post_purchase_widgets"},{"title":"Справочник настроек post-purchase предложений","href":"/ru/aftersell/post_purchase_offer_settings_reference"},{"title":"Справочник по апселлу подписок","href":"/ru/aftersell/subscriptions_in_post_purchase_offers_reference"},{"title":"Справочник Smart Funnel","href":"/ru/aftersell/smart_funnel_reference"},{"title":"Справочник по апселлам с заменой","tag":"BETA","href":"/ru/aftersell/replacement_upsells_reference"},{"title":"Настройки фулфилмента и платежей","href":"/ru/aftersell/fulfillments-and-payments-setting"}]},{"group":"Обновления подписок","pages":[{"title":"Справочник по конфигурации обновлений подписок","sidebarTitle":"Справочник по конфигурации","href":"/ru/aftersell/subscription-upgrades-configuration-reference"},{"title":"Ограничения и важные примечания апгрейдов подписок","sidebarTitle":"Ограничения и важные примечания","href":"/ru/aftersell/subscription-upgrades-limitations"},{"title":"Фулфилмент апгрейдов подписок и маппинг 3PL","sidebarTitle":"Фулфилмент и маппинг 3PL","href":"/ru/aftersell/subscription-upgrades-fulfillment"},{"title":"Интеграции апгрейдов подписок","sidebarTitle":"Что такое интеграции?","href":"/ru/aftersell/subscription-upgrades-integrations"},{"title":"Обновления подписок с Recharge","sidebarTitle":"Recharge","href":"/ru/aftersell/subscription-upgrades-recharge"},{"title":"Обновления подписок со Skio","sidebarTitle":"Skio","href":"/ru/aftersell/subscription-upgrades-skio"},{"title":"Обновления подписок с Loop","sidebarTitle":"Loop","href":"/ru/aftersell/subscription-upgrades-loop"},{"title":"Обновления подписок со Stay AI","sidebarTitle":"Stay AI","href":"/ru/aftersell/subscription-upgrades-stay"},{"title":"Устранение неполадок обновлений подписок","sidebarTitle":"Устранение неполадок","href":"/ru/aftersell/subscription-upgrades-troubleshooting"}]},{"group":"Апселлы на странице оформления заказа","pages":[{"title":"Типы виджетов чекаута","href":"/ru/aftersell/checkout_widget_types"},{"title":"Триггеры чекаута","href":"/ru/aftersell/checkout_triggers"},{"title":"Настройки брендинга чекаута","href":"/ru/aftersell/checkout_branding_settings"},{"title":"Ограничения кастомизации чекаута","href":"/ru/aftersell/checkout_customization_limitations"}]},{"group":"Страница благодарности","pages":[{"title":"Обзор","href":"/ru/aftersell/thank_you_page_extensions_overview"}]},{"group":"Аналитика","pages":[{"title":"Справочник метрик аналитики после покупки","href":"/ru/aftersell/analytics_metrics_reference"},{"title":"Справочник AftersellQL (AQL)","href":"/ru/aftersell/aql_reference"},{"title":"Справочник метрик аналитики Checkout","href":"/ru/aftersell/checkout_analytics_metrics_reference"},{"title":"Справочник Order Browser","href":"/ru/aftersell/order_browser_reference"}]}]}]},{"product":"Upcart","icon":"shopping-cart","pages":[{"title":"Upcart","href":"/ru/upcart/welcome_to_upcart"}]}]},{"language":"it","pages":[{"title":"it","href":"/it/aftersell/strategies_api_reference_evaluate_strategy"}]},{"language":"nl","pages":[{"title":"nl","href":"/nl/aftersell/strategies_api_reference_evaluate_strategy"}]},{"language":"pt","pages":[{"title":"pt","href":"/pt/aftersell/strategies_api_reference_evaluate_strategy"}]},{"language":"pl","pages":[{"title":"pl","href":"/pl/aftersell/strategies_api_reference_evaluate_strategy"}]},{"language":"ko","pages":[{"title":"ko","href":"/ko/aftersell/strategies_api_reference_evaluate_strategy"}]},{"language":"da","pages":[{"title":"da","href":"/da/aftersell/strategies_api_reference_evaluate_strategy"}]},{"language":"ar","pages":[{"title":"ar","href":"/ar/aftersell/strategies_api_reference_evaluate_strategy"}]}]},"basePath":"","title":"Оценка стратегии - Aftersell \u0026 Upcart Docs","buildId":"dpl_DTau1J5HqS9UTgVSDwGksstFWtPa","deploymentId":"dpl_DTau1J5HqS9UTgVSDwGksstFWtPa","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-5FCzAcfS.js","utils-SLtAG4EZ.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-2DZi8ZMu.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-D7J3nkzE.js","snippetPresets-D0Alv0AH.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","Page-D9ithiIZ.js","ApiExamples-BI4qNJ2c.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BD3uyr8j.js","shallow-D8iEBr5z.js","getApiPlaygroundDisplay-CgNP4lzR.js","CodeSnippet-CX-QHuMs.js","CodeSnippets-VlXE-ZUf.js","getPastedJson-DYNQkZ1M.js","icon-CzacdwOi.js","MethodPill-2JVqoYKi.js","DuplicateIcon-_xVXs-U8.js","createIcon-BRHrweLo.js","DynamicMarkdown-mQG_iQiE.js","SectionHeading-DMpJzv8f.js","axios-vUo_bRtp.js","Markdown-5FGIym-8.js","clsx-D-TRO5q5.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CdrJecqK.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-CHlcWBLM.js"]}