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":""},"chroma":{"liveDeploymentHistoryId":"6ae95e0a27cd724990da17c3","collectionId":"2c65c0ff-ed92-4317-a115-1f0054596553","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae95e0a27cd724990da17c3"},"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":"6ae95e0a27cd724990da17c3","clientVersion":"0.0.4054","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":"vite-origin","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":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[],"page":{"pagePath":"fr/aftersell/strategies_api_reference_evaluate_strategy","slug":"/fr/aftersell/strategies_api_reference_evaluate_strategy","pageMetadata":{"title":"Évaluer une stratégie","keywords":["évaluer une stratégie","API de stratégie","API de recommandations de produits","endpoint evaluate","référence API","X-Strategy-Api-Key","ciblage de produits","moteur de recommandation"],"openapi":"api/strategies.json POST /api/public/strategy/evaluate","description":"Evaluate a strategy against provided context to return the desired experience.","href":"/fr/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":"Évaluer une stratégie","keywords":["évaluer une stratégie","API de stratégie","API de recommandations de produits","endpoint evaluate","référence API","X-Strategy-Api-Key","ciblage de produits","moteur de recommandation"],"openapi":"api/strategies.json POST /api/public/strategy/evaluate","description":"Evaluate a strategy against provided context to return the desired experience.","href":"/fr/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":"Évaluer une stratégie - 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":0},"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":1},"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-04T21:39:09.038Z","originalFileLocation":"fr/aftersell/strategies_api_reference_evaluate_strategy.mdx","locale":"fr"},"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=\"Évaluer une stratégie - 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/fr/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.app/_mintlify/api/og/v2?division=Strat%C3%A9gies\u0026amp;title=%C3%89valuer+une+strat%C3%A9gie\u0026amp;description=Evaluate+a+strategy+against+provided+context+to+return+the+desired+experience.\u0026amp;theme=4eda7b6db4afb63ff7f9239d\u0026amp;signature=858ae5506a8c98260a3c1336aeb39a0c947e319ef8cf0c1b392ab834f71c4b24\">\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=\"Évaluer une stratégie - 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.app/_mintlify/api/og/v2?division=Strat%C3%A9gies\u0026amp;title=%C3%89valuer+une+strat%C3%A9gie\u0026amp;description=Evaluate+a+strategy+against+provided+context+to+return+the+desired+experience.\u0026amp;theme=4eda7b6db4afb63ff7f9239d\u0026amp;signature=858ae5506a8c98260a3c1336aeb39a0c947e319ef8cf0c1b392ab834f71c4b24\">\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/fr/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=\"/fr/aftersell/strategies_api_reference_evaluate_strategy.md\">\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=\"en\" href=\"https://docs.aftersell.com/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=\"ru\" href=\"https://docs.aftersell.com/ru/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/fr/aftersell/strategies_api_reference_evaluate_strategy#webpage\",\"url\":\"https://docs.aftersell.com/fr/aftersell/strategies_api_reference_evaluate_strategy\",\"name\":\"Évaluer une stratégie\",\"description\":\"Evaluate a strategy against provided context to return the desired experience.\",\"dateModified\":\"2026-09-04T21:39:09.038Z\",\"isPartOf\":{\"@id\":\"https://docs.aftersell.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.aftersell.com/fr/aftersell/strategies_api_reference_evaluate_strategy#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.aftersell.com/fr/aftersell/strategies_api_reference_evaluate_strategy#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Stratégies\",\"item\":\"https://docs.aftersell.com/fr/aftersell/strategies_rules_reference\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Évaluer une stratégie\",\"item\":\"https://docs.aftersell.com/fr/aftersell/strategies_api_reference_evaluate_strategy\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.aftersell.com/fr/aftersell/strategies_api_reference_evaluate_strategy#apireference\",\"headline\":\"Évaluer une stratégie\",\"name\":\"Évaluer une stratégie\",\"description\":\"Evaluate a strategy against provided context to return the desired experience.\",\"url\":\"https://docs.aftersell.com/fr/aftersell/strategies_api_reference_evaluate_strategy\",\"mainEntityOfPage\":{\"@id\":\"https://docs.aftersell.com/fr/aftersell/strategies_api_reference_evaluate_strategy#webpage\"},\"dateModified\":\"2026-09-04T21:39:09.038Z\",\"keywords\":\"évaluer une stratégie, API de stratégie, API de recommandations de produits, endpoint evaluate, référence API, X-Strategy-Api-Key, ciblage de produits, moteur de recommandation\",\"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","products":[{"product":"Aftersell","icon":"bolt","dropdowns":[{"dropdown":"Guides","icon":"book","groups":[{"group":"Prise en main","expanded":false,"pages":[{"title":"Bienvenue chez Aftersell","href":"/fr/aftersell/welcome_to_aftersell"},{"title":"Installer Aftersell","href":"/fr/aftersell/installing_aftersell"},{"title":"Guide de démarrage rapide d'Aftersell","href":"/fr/aftersell/quickstart_guide_to_aftersell"},{"title":"Upsells post-achat vs upsells de page de remerciement","sidebarTitle":"Post-achat vs page de remerciement","href":"/fr/aftersell/one_click_upsells_vs_thank_you_page_upsells"},{"title":"Qu'est-ce qu'Upcart ?","href":"/fr/aftersell/what_is_upcart"}]},{"group":"Page d'accueil","expanded":false,"pages":[{"title":"Aperçu de la page d'accueil","href":"/fr/aftersell/home/overview"},{"title":"Barre d'analyses","href":"/fr/aftersell/home/analytics-bar"},{"title":"Guide de configuration","href":"/fr/aftersell/home/setup-guide"},{"title":"Actions rapides","href":"/fr/aftersell/home/quick-actions"},{"title":"Benchmarks entre pairs (PPU)","href":"/fr/aftersell/home/peer-benchmarks"},{"title":"Statut des blocs d'application","href":"/fr/aftersell/home/app-block-status"},{"title":"Nécessite votre attention","href":"/fr/aftersell/home/needs-attention"},{"title":"Aide et annonces","href":"/fr/aftersell/home/help-and-announcements"}]},{"group":"Bonnes pratiques","expanded":false,"pages":[{"title":"Bonnes pratiques post-achat","href":"/fr/aftersell/best_practices"},{"title":"Stratégies post-achat par secteur","href":"/fr/aftersell/post_purchase_strategies_by_industry"},{"title":"Bonnes pratiques du checkout","href":"/fr/aftersell/checkout_best_practices"}]},{"group":"Ventes incitatives post-achat","expanded":false,"pages":[{"group":"Aperçu","expanded":false,"pages":[{"title":"Vue d'ensemble du post-achat","href":"/fr/aftersell/post_purchase_overview"},{"title":"Types d'offres post-achat","sidebarTitle":"Types d'offres","href":"/fr/aftersell/post-purchase-offer-types"},{"title":"Smart funnel","href":"/fr/aftersell/smart_funnel"}]},{"group":"Installation et configuration","expanded":false,"pages":[{"title":"Comment configurer les déclencheurs post-achat","href":"/fr/aftersell/how_to_configure_post_purchase_triggers"},{"title":"Configurer les paramètres des offres post-achat","href":"/fr/aftersell/configuring_post_purchase_offer_settings"},{"title":"Comment créer un upsell post-achat multi-étapes","href":"/fr/aftersell/how_to_create_a_multi_step_post_purchase_upsell"},{"title":"Upsells de remplacement","href":"/fr/aftersell/replacement_upsells"},{"group":"Mises à niveau d'abonnement","expanded":false,"pages":[{"title":"Mises à niveau d'abonnement","sidebarTitle":"Aperçu","href":"/fr/aftersell/subscription-upgrades"},{"title":"Configurer les montées en gamme d'abonnement","sidebarTitle":"Configuration et paramétrage","href":"/fr/aftersell/subscription-upgrades-setup"},{"title":"Ajouter un article à un abonnement existant","sidebarTitle":"Ajouter un article à un abonnement","href":"/fr/aftersell/subscription-upgrades-add-item"},{"title":"Tester les montées en gamme d'abonnement","sidebarTitle":"Tests","href":"/fr/aftersell/subscription-upgrades-testing"}]},{"title":"Les abonnements dans les offres post-achat","href":"/fr/aftersell/subscriptions_in_post_purchase_offers"},{"title":"Upsells d'abonnement sur les commandes contenant déjà un abonnement","sidebarTitle":"Upsell auprès des abonnés existants","href":"/fr/aftersell/subscription-upsell-existing-subscribers"},{"title":"Comment utiliser les liens UTM direct-to-checkout","href":"/fr/aftersell/how_to_use_direct_to_checkout_utm_links"},{"title":"Traduire les funnels post-achat","href":"/fr/aftersell/translating_post_purchase_funnels"},{"title":"Comprendre les variantes en rupture de stock","href":"/fr/aftersell/understanding_out_of_stock_variants"},{"title":"Upsells de quantité","href":"/fr/aftersell/quantity-upsells"},{"title":"Build a Box","href":"/fr/aftersell/build-a-box"}]},{"group":"Image de marque et design","expanded":false,"pages":[{"title":"Paramètres de branding post-achat","href":"/fr/aftersell/post_purchase_branding_settings"},{"title":"Modifier les couleurs du bouton post-achat (CTA)","href":"/fr/aftersell/changing_post_purchase_button_colours_cta"},{"title":"Barres de progression et badges de produits","href":"/fr/aftersell/progress_bars_product_badges"},{"title":"Personnaliser l'affichage des remises dans Aftersell","href":"/fr/aftersell/customizing_discount_displays"}]},{"group":"Tests et optimisation","expanded":false,"pages":[{"title":"Tester / prévisualiser votre offre post-achat","href":"/fr/aftersell/testing_post_purchase_offers"},{"title":"Tests A/B post-achat","href":"/fr/aftersell/post_purchase_a_b_testing"},{"title":"Tests multivariés post-achat","href":"/fr/aftersell/multivariate_testing"}]},{"group":"Paiements et traitement des commandes","expanded":false,"pages":[{"title":"Moyens de paiement","href":"/fr/aftersell/payment_methods"},{"title":"Capture de paiement manuelle","href":"/fr/aftersell/manual-payment-capture"},{"title":"Capture de paiement avec détection de fraude","href":"/fr/aftersell/fraud-detection-payment-capture"},{"title":"Paiements automatiques PayPal","href":"/fr/aftersell/paypal_automatic_payments"},{"title":"Commandes partiellement payées","href":"/fr/aftersell/partially_paid_orders"},{"title":"Taxes","href":"/fr/aftersell/taxes"},{"title":"Traitement des commandes","href":"/fr/aftersell/fulfillment"},{"title":"Comment configurer les emplacements de traitement pour les upsells post-achat","href":"/fr/aftersell/how_to_configure_fulfillment_locations_for_1_click_upsells"},{"title":"Contournements des problèmes de flux de traitement","href":"/fr/aftersell/potential_workarounds_for_fulfillment_flow_issues"},{"title":"Pourquoi les articles post-achat sont-ils expédiés séparément ?","href":"/fr/aftersell/why_are_post_purchase_items_being_shipped_separately"},{"title":"Upsells post-achat et traitement des commandes","href":"/fr/aftersell/how_do_post_purchase_upsells_affect_my_fulfillment"}]}]},{"group":"Panier Aftersell","pages":[{"title":"Aperçu du panier Aftersell","href":"/fr/aftersell/cart/overview"},{"group":"Gestion des paniers","pages":[{"title":"Comment fonctionnent les paniers ?","href":"/fr/aftersell/cart/how-carts-work"},{"title":"Les paniers sont des fichiers","href":"/fr/aftersell/cart/carts-as-files"},{"title":"Créer des paniers","href":"/fr/aftersell/cart/creating-carts"},{"title":"Prévisualiser les paniers","href":"/fr/aftersell/cart/previewing-carts"},{"title":"Gérer plusieurs paniers","href":"/fr/aftersell/cart/having-multiple-carts"},{"title":"Importer et exporter des paniers","href":"/fr/aftersell/cart/import-export"}]},{"group":"Personnalisation de votre panier","pages":[{"title":"Paramètres de design","href":"/fr/aftersell/cart/design-settings"},{"title":"Paramètres du panier","href":"/fr/aftersell/cart/cart-settings"},{"title":"CSS personnalisé","href":"/fr/aftersell/cart/custom-css"},{"title":"Scripts personnalisés","href":"/fr/aftersell/cart/custom-scripts"}]},{"group":"Blocs de panier","pages":[{"title":"Comment fonctionnent les blocs ?","href":"/fr/aftersell/cart/blocks-overview"},{"title":"Bloc Header","href":"/fr/aftersell/cart/header-block"},{"title":"Bloc Banner","href":"/fr/aftersell/cart/banner-block"},{"title":"Bloc Image","href":"/fr/aftersell/cart/image-block"},{"title":"Bloc Cart items","href":"/fr/aftersell/cart/cart-items-block"},{"title":"Bloc de passage à l'abonnement","href":"/fr/aftersell/cart/subscription-upgrade-block"},{"title":"Bloc Product add-on","href":"/fr/aftersell/cart/product-add-on-block"},{"title":"Bloc d'upsells","href":"/fr/aftersell/cart/upsells-block"},{"title":"Bloc Rewards","href":"/fr/aftersell/cart/rewards-block"},{"title":"Bloc Discount code","href":"/fr/aftersell/cart/discount-code-block"},{"title":"Bloc Notes","href":"/fr/aftersell/cart/notes-block"},{"title":"Bloc de protection d'expédition","href":"/fr/aftersell/cart/shipping-protection-block"},{"title":"Bloc Express payments","href":"/fr/aftersell/cart/express-payments-block"},{"title":"Bloc de récapitulatif","href":"/fr/aftersell/cart/summary-block"},{"title":"Bloc Checkout button","href":"/fr/aftersell/cart/checkout-button-block"},{"title":"Bloc Empty cart","href":"/fr/aftersell/cart/empty-cart-block"},{"title":"Modèles personnalisés","href":"/fr/aftersell/cart/custom-templates"},{"title":"Blocs Custom code","href":"/fr/aftersell/cart/custom-code-blocks"}]},{"group":"Tests de panier","pages":[{"title":"Comment fonctionnent les tests ?","href":"/fr/aftersell/cart/tests-overview"},{"title":"Analytique des tests","href":"/fr/aftersell/cart/test-analytics"},{"title":"Test A/B d'Aftersell Cart face à une autre application","href":"/fr/aftersell/cart/ab-test-against-another-cart"}]},{"group":"Analyses","pages":[{"title":"Analyses du panier","href":"/fr/aftersell/cart/analytics"}]},{"group":"SDK du panier","pages":[{"title":"Aperçu","href":"/fr/aftersell/cart/sdk-overview"},{"title":"Interception de l'ajout au panier","href":"/fr/aftersell/cart/add-to-cart-interception"},{"title":"Configure","href":"/fr/aftersell/cart/sdk-configure"},{"title":"Événements","href":"/fr/aftersell/cart/sdk-events"},{"title":"Actions","href":"/fr/aftersell/cart/sdk-actions"},{"title":"Hooks","href":"/fr/aftersell/cart/sdk-hooks"},{"title":"Objet cart","href":"/fr/aftersell/cart/sdk-cart-object"},{"group":"Cas d'usage","pages":[{"title":"Cas d'usage courants","href":"/fr/aftersell/cart/sdk-use-cases"},{"title":"Suivre l'ajout au panier dans un outil tiers","href":"/fr/aftersell/cart/sdk-use-case-analytics"},{"title":"Ajouter automatiquement un cadeau gratuit à un seuil","href":"/fr/aftersell/cart/sdk-use-case-free-gift"},{"title":"Masquer et renommer les lignes du panier","href":"/fr/aftersell/cart/sdk-use-case-hide-lines"},{"title":"Afficher les données de metafields sur les lignes du panier","href":"/fr/aftersell/cart/sdk-use-case-metafields"},{"title":"Ouvrir le tiroir depuis un constructeur de pages","href":"/fr/aftersell/cart/sdk-use-case-page-builder"},{"title":"Exiger l'acceptation des conditions avant le paiement","href":"/fr/aftersell/cart/sdk-use-case-terms-checkbox"},{"title":"Regrouper les lignes de bundle d'une autre application","href":"/fr/aftersell/cart/sdk-use-case-bundles"}]}]}]},{"group":"Ventes incitatives au paiement (Shopify Plus)","expanded":false,"pages":[{"group":"Aperçu","expanded":false,"pages":[{"title":"Vue d'ensemble du tableau de bord Checkout","href":"/fr/aftersell/checkout-dashboard-overview"},{"title":"Pages vs widgets autonomes","href":"/fr/aftersell/pages-vs-standalone-widgets"}]},{"group":"Configuration et widgets","expanded":false,"pages":[{"title":"Ajouter un widget de paiement à votre checkout Shopify","href":"/fr/aftersell/adding_a_checkout_widget_to_your_shopify_checkout"},{"title":"Créer votre premier widget de checkout","href":"/fr/aftersell/creating_your_first_checkout_widget"},{"title":"Comment configurer les widgets de checkout","href":"/fr/aftersell/how_to_configure_checkout_widgets"},{"title":"Upsells à seuil de dépense","href":"/fr/aftersell/spend_threshold_upsells"},{"title":"Afficher les widgets de checkout dans Shop Pay","href":"/fr/aftersell/show_checkout_widgets_in_shop_pay"},{"title":"Gérer les remises de checkout","href":"/fr/aftersell/managing_checkout_discounts"}]},{"group":"Image de marque et déclencheurs","expanded":false,"pages":[{"title":"Personnalisations du checkout","href":"/fr/aftersell/checkout_customizations"},{"title":"Traductions du checkout","href":"/fr/aftersell/checkout_translations"}]},{"group":"Tests","expanded":false,"pages":[{"title":"Tests A/B au checkout","href":"/fr/aftersell/checkout_a_b_testing"}]}]},{"group":"Page de remerciement","expanded":false,"pages":[{"title":"Comment configurer les widgets de la page thank-you","href":"/fr/aftersell/how_can_i_set_up_and_customize_thank_you_page_upsells_in_aftersell"},{"title":"Widget FAQ (page Thank You)","sidebarTitle":"Widget FAQ","href":"/fr/aftersell/faq-widget-thank-you-page"},{"title":"Widget Image (page Thank You)","sidebarTitle":"Widget Image","href":"/fr/aftersell/image-widget-thank-you-page"},{"title":"Widget Recommandation de produits","sidebarTitle":"Recommandation de produits","href":"/fr/aftersell/product-recommendation-widget-thank-you-page"},{"title":"Widget Témoignages ","sidebarTitle":"Widget Témoignages","href":"/fr/aftersell/testimonials-widget-thank-you-page"},{"title":"Widget Texte (page Thank You)","sidebarTitle":"Widget Texte","href":"/fr/aftersell/text-widget-thank-you-page"}]},{"group":"Ventes incitatives sur la page produit","expanded":false,"pages":[{"title":"Upsells de page produit","href":"/fr/aftersell/product_page_upsells"}]},{"group":"Rokt Thanks","expanded":false,"pages":[{"group":"Aperçu","expanded":false,"pages":[{"title":"Qu'est-ce que Rokt Thanks ?","href":"/fr/aftersell/what_is_rokt_thanks"},{"title":"Programme Earn \u0026 Save","href":"/fr/aftersell/earn-save"}]},{"group":"Installation et configuration","expanded":false,"pages":[{"title":"Activation et configuration de Rokt Thanks","href":"/fr/aftersell/activating_and_configuring_rokt_thanks"},{"title":"Paramètres Rokt Thanks","href":"/fr/aftersell/rokt_thanks_settings"},{"title":"Paiements Rokt Thanks","href":"/fr/aftersell/rokt_thanks_payouts"},{"title":"Loyalty loop Rokt Thanks","href":"/fr/aftersell/rokt_thanks_loyalty_loop"},{"title":"Intégration personnalisée du SDK web pour Rokt Thanks","href":"/fr/aftersell/custom_web_sdk_integration_for_rokt_thanks"},{"title":"Comment installer Rokt Thanks sur Tapcart","href":"/fr/aftersell/how_to_install_rokt_thanks_on_tapcart"}]},{"group":"Performance et FAQ","expanded":false,"pages":[{"title":"Suivre les performances de Rokt Thanks","href":"/fr/aftersell/tracking_rokt_thanks_performance"},{"title":"Puis-je faire de la publicité avec Rokt Thanks et promouvoir mon entreprise sur d'autres sites ?","href":"/fr/aftersell/can_i_advertise_with_rokt_thanks_and_promote_my_business_on_other_sites"},{"title":"Pourquoi Rokt Thanks ne s'affiche-t-il pas sur ma page de confirmation ?","href":"/fr/aftersell/why_is_rokt_thanks_not_showing_on_my_confirmation_page"}]}]},{"group":"Stratégies","expanded":false,"pages":[{"title":"Aperçu des Stratégies","sidebarTitle":"Aperçu","href":"/fr/aftersell/strategies_overview"},{"title":"Créer des stratégies","href":"/fr/aftersell/strategies_building_in_app"},{"group":"Mise en œuvre des stratégies","expanded":false,"pages":[{"title":"Upsells post-achat","href":"/fr/aftersell/implementing_strategies_post_purchase_upsells"},{"title":"Upsells de page de remerciement","href":"/fr/aftersell/implementing_strategies_thank_you_page_upsells"},{"title":"Upsells au checkout","href":"/fr/aftersell/implementing_strategies_checkout_upsells"},{"title":"Upsells Upcart","href":"/fr/aftersell/implementing_strategies_upcart_upsells"}]}]},{"group":"Analyses et suivi","expanded":false,"pages":[{"title":"Analyses post-achat","href":"/fr/aftersell/analytics_in_aftersell"},{"title":"Insights post-achat","href":"/fr/aftersell/ppu_insights"},{"title":"Analytique du checkout","href":"/fr/aftersell/checkout_analytics"},{"title":"Suivi des conversions (web pixels)","href":"/fr/aftersell/conversion_tracking_web_pixels"},{"title":"Configurer les web pixels Shopify","href":"/fr/aftersell/configuring_shopify_web_pixels"},{"title":"Guide d'intégration DTC ads | activation du pixel web","href":"/fr/aftersell/dtc_ads_onboarding_guide_web_pixel_activation"},{"group":"Rapports","expanded":false,"pages":[{"title":"Aperçu des rapports","sidebarTitle":"Aperçu","href":"/fr/aftersell/reports_overview"},{"title":"Gérer les rapports","sidebarTitle":"Tableaux de bord","href":"/fr/aftersell/reports_dashboards"},{"title":"Gérer les widgets","sidebarTitle":"Widgets","href":"/fr/aftersell/reports_widgets"},{"title":"Explorer","href":"/fr/aftersell/reports_explorer"}]}]},{"group":"Intégrations","expanded":false,"pages":[{"group":"Recommandations de produits","pages":[{"title":"Intégration Aftersell \u0026 Constructor","sidebarTitle":"Constructor","href":"/fr/aftersell/aftersell_constructor_integration"},{"title":"Intégration Aftersell \u0026 Nosto","sidebarTitle":"Nosto","href":"/fr/aftersell/aftersell_nosto_integration"}]},{"group":"Abonnements","pages":[{"title":"Intégration Aftersell \u0026 Skio","sidebarTitle":"Skio","href":"/fr/aftersell/aftersell_skio_integration"},{"title":"Intégration Aftersell \u0026 Stay AI","sidebarTitle":"Stay AI","href":"/fr/aftersell/aftersell_stayai_integration"}]},{"group":"Avis","pages":[{"title":"Intégration des avis Aftersell \u0026 Judge.me","sidebarTitle":"Avis Judge.me","href":"/fr/aftersell/judgeme_reviews_integration"},{"title":"Intégration des avis Aftersell \u0026 Klaviyo","sidebarTitle":"Avis Klaviyo","href":"/fr/aftersell/klaviyo_reviews_integration"},{"title":"Intégration des avis Aftersell \u0026 Okendo","sidebarTitle":"Avis Okendo","href":"/fr/aftersell/okendo_reviews_integration"},{"title":"Intégration Aftersell \u0026 Yotpo Reviews","sidebarTitle":"Yotpo Reviews","href":"/fr/aftersell/aftersell_yotpo_reviews_integration"}]},{"group":"Fidélité et récompenses","pages":[{"title":"Intégration Aftersell \u0026 Inveterate","sidebarTitle":"Inveterate","href":"/fr/aftersell/aftersell_inveterate_integration"},{"title":"Intégration Aftersell \u0026 Rivo","sidebarTitle":"Rivo Loyalty \u0026 Rewards","href":"/fr/aftersell/aftersell_rivo_integration"}]}]},{"group":"Aftersell MCP","pages":[{"title":"Connecter votre client IA avec Aftersell MCP","sidebarTitle":"Connecter votre client IA","href":"/fr/aftersell/mcp-connect-self"}]},{"group":"Facturation et compte","expanded":false,"pages":[{"title":"Facturation et tarification d'Aftersell","href":"/fr/aftersell/aftersell_billing_pricing"},{"title":"Comment annuler mon abonnement Aftersell ?","href":"/fr/aftersell/how_do_i_cancel_my_aftersell_subscription"},{"title":"Données et confidentialité","href":"/fr/aftersell/customer_data_and_privacy"},{"title":"Programme d'affiliation","href":"/fr/aftersell/affiliate_program"},{"title":"Aftersell dispose-t-il d'une API développeur ?","href":"/fr/aftersell/does_aftersell_have_a_developer_api"}]},{"group":"Dépannage","expanded":false,"pages":[{"group":"Post-achat","expanded":false,"pages":[{"title":"Pourquoi mon offre post-achat ne s'affiche-t-elle pas ?","href":"/fr/aftersell/why_isnt_my_1_click_offer_displaying"},{"title":"Les upsells automatiques ne fonctionnent pas","href":"/fr/aftersell/automatic_upsells_not_working"},{"title":"Le checkout multidevise a-t-il un impact sur Aftersell ?","href":"/fr/aftersell/does_multi_currency_checkout_impact_aftersell"}]},{"group":"Paiement","expanded":false,"pages":[{"title":"Pourquoi ne puis-je pas voir l'onglet checkout ?","href":"/fr/aftersell/why_cant_i_see_the_checkout_tab"},{"title":"Pourquoi mon upsell au checkout ne s'affiche-t-il pas ?","href":"/fr/aftersell/why_isnt_my_checkout_upsell_displaying"},{"title":"Prix comparé non pris en compte pour les upsells de checkout (Shopify Plus)","href":"/fr/aftersell/compare_at_price_not_reflecting_for_checkout_upsells_shopify_plus"}]},{"group":"Page de remerciement","expanded":false,"pages":[{"title":"Dépannage de la page de remerciement","href":"/fr/aftersell/widget_not_displaying_on_the_thank_you_page"}]},{"group":"Général","expanded":false,"pages":[{"title":"Aperçu de l'Order Browser","href":"/fr/aftersell/order_browser_overview"},{"title":"Dépannage de l'Order Browser","href":"/fr/aftersell/order-browser-troubleshooting"},{"title":"Créer une collection automatisée non publiée","href":"/fr/aftersell/creating_an_unpublished_automated_collection"}]}]},{"group":"Aftersell Staging","icon":"plane-landing-gear","hidden":true,"pages":[{"title":"Accueil de staging","href":"/fr/aftersell/staging-home"},{"title":"Offre first-party Rokt Thanks","href":"/fr/aftersell/rokt-thanks-first-party-offer"},{"title":"Paramètres des notifications par e-mail","href":"/fr/aftersell/email-notification-settings"},{"title":"Upsells de page produit V2","href":"/fr/aftersell/pdp-upsells-v2"},{"group":"Aftersell MCP","pages":[{"title":"Gérer l'accès des collaborateurs","href":"/fr/aftersell/mcp-collaborator-access"}]},{"title":"Jeu-concours post-achat","href":"/fr/aftersell/post_purchase_sweepstakes"}]}]},{"dropdown":"Référence","icon":"code","groups":[{"group":"Stratégies","pages":[{"title":"Référence des règles de Stratégie","sidebarTitle":"Référence des règles","href":"/fr/aftersell/strategies_rules_reference"},{"title":"Intégration personnalisée","description":"Appelez directement l'API Strategies pour alimenter des expériences de boutique personnalisées - carrousels PDP, upsells de panier personnalisés, et partout où les surfaces natives d'Aftersell n'arrivent pas.","href":"/fr/aftersell/implementing_strategies_custom_integration"},{"title":"Évaluer une stratégie","openapi":"api/strategies.json POST /api/public/strategy/evaluate","href":"/fr/aftersell/strategies_api_reference_evaluate_strategy"},{"title":"Jetons de sécurité de l'API de ciblage de produits","description":"Générez et gérez des jetons de sécurité pour authentifier les requêtes API destinées aux stratégies de ciblage de produits","href":"/fr/aftersell/strategies_api_tokens"}]},{"group":"Ventes incitatives post-achat","pages":[{"title":"Limitations de l'API post-achat de Shopify","href":"/fr/aftersell/shopify_post_purchase_api_limitations"},{"title":"Déclencheurs post-achat","href":"/fr/aftersell/post_purchase_triggers"},{"title":"Comprendre la logique conditionnelle des déclencheurs post-achat","href":"/fr/aftersell/understanding_conditional_logic_for_post_purchase_triggers"},{"title":"Widgets post-achat","href":"/fr/aftersell/post_purchase_widgets"},{"title":"Référence des paramètres d'offre post-achat","href":"/fr/aftersell/post_purchase_offer_settings_reference"},{"title":"Référence de l'upsell d'abonnement","href":"/fr/aftersell/subscriptions_in_post_purchase_offers_reference"},{"title":"Référence Smart funnel","href":"/fr/aftersell/smart_funnel_reference"},{"title":"Référence des Replacement upsells","tag":"BETA","href":"/fr/aftersell/replacement_upsells_reference"},{"title":"Paramètres de traitement et de paiement","href":"/fr/aftersell/fulfillments-and-payments-setting"}]},{"group":"Mises à niveau d'abonnement","pages":[{"title":"Référence de configuration des montées en gamme d'abonnement","sidebarTitle":"Référence de configuration","href":"/fr/aftersell/subscription-upgrades-configuration-reference"},{"title":"Limitations des montées en gamme d'abonnement","sidebarTitle":"Limitations et remarques importantes","href":"/fr/aftersell/subscription-upgrades-limitations"},{"title":"Fulfillment des montées en gamme d'abonnement et mapping 3PL","sidebarTitle":"Fulfillment et mapping 3PL","href":"/fr/aftersell/subscription-upgrades-fulfillment"},{"title":"Intégrations des montées en gamme d'abonnement","sidebarTitle":"Que sont les intégrations ?","href":"/fr/aftersell/subscription-upgrades-integrations"},{"title":"Montées en gamme d'abonnement avec Recharge","sidebarTitle":"Recharge","href":"/fr/aftersell/subscription-upgrades-recharge"},{"title":"Montées en gamme d'abonnement avec Skio","sidebarTitle":"Skio","href":"/fr/aftersell/subscription-upgrades-skio"},{"title":"Montées en gamme d'abonnement avec Loop","sidebarTitle":"Loop","href":"/fr/aftersell/subscription-upgrades-loop"},{"title":"Montées en gamme d'abonnement avec Stay AI","sidebarTitle":"Stay AI","href":"/fr/aftersell/subscription-upgrades-stay"},{"title":"Dépannage des mises à niveau d'abonnement","sidebarTitle":"Dépannage","href":"/fr/aftersell/subscription-upgrades-troubleshooting"}]},{"group":"Ventes incitatives au paiement","pages":[{"title":"Types de widgets de checkout","href":"/fr/aftersell/checkout_widget_types"},{"title":"Déclencheurs de checkout","href":"/fr/aftersell/checkout_triggers"},{"title":"Paramètres de personnalisation du checkout","href":"/fr/aftersell/checkout_branding_settings"},{"title":"Limitations de la personnalisation du checkout","href":"/fr/aftersell/checkout_customization_limitations"}]},{"group":"Page de remerciement","pages":[{"title":"Aperçu","href":"/fr/aftersell/thank_you_page_extensions_overview"}]},{"group":"Analyses","pages":[{"title":"Référence des métriques d'analytics post-achat","href":"/fr/aftersell/analytics_metrics_reference"},{"title":"Référence AftersellQL (AQL)","href":"/fr/aftersell/aql_reference"},{"title":"Référence des métriques d'analytics du checkout","href":"/fr/aftersell/checkout_analytics_metrics_reference"},{"title":"Référence de l'Order Browser","href":"/fr/aftersell/order_browser_reference"}]}]}]},{"product":"Upcart","icon":"shopping-cart","pages":[{"title":"Upcart","href":"/fr/upcart/welcome_to_upcart"}]}]},{"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","pages":[{"title":"ru","href":"/ru/aftersell/strategies_api_reference_evaluate_strategy"}]},{"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":"Évaluer une stratégie - Aftersell \u0026 Upcart Docs","buildId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","deploymentId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-C8RPHPxo.js","utils-0BK-9q6z.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DfjzsUJT.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B4v9psJ4.js","snippetPresets-CpTQv-Ez.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-Buji1S4J.js","ApiExamples-BNP-Fvr0.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BSgu6h1D.js","shallow-Biv1i9Gs.js","getApiPlaygroundDisplay-BoGOXhtF.js","CodeSnippet-DvQoT18_.js","CodeSnippets-Dnpa15xT.js","getPastedJson-xAIyhUFE.js","icon-S6FBih11.js","MethodPill-SaYeUZyk.js","DuplicateIcon-Cs-p3v2Q.js","createIcon-DjCFEoHq.js","DynamicMarkdown-BcnBltEQ.js","SectionHeading-BUBl0eEF.js","axios-vUo_bRtp.js","Markdown-h4cOoD8d.js","clsx-B2v50t8t.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-DJnKvr0g.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BHrrjR1K.js"]}