Run (or re-run) inference for an existing open CATALOG_ITEM session, from the item facts the catalog-item consumer snapshotted at event time. Catalog upload opens sessions WITHOUT inference (deferred spend); call this when the merchant opens the questionnaire page. Hash-guarded: when inference already ran for the item's current content, the session is returned untouched β no LLM spend, previously inferred answers undisturbed. Other container types keep using complianceQuestionnaireInfer (no snapshot exists for them). input.languageCode: the session is opened by a background consumer (item.catalog-item.events.changed) with no request context to seed a locale from, so this is the first point a merchant's actual language is known β pass it to render question/answer/option text accordingly. Falls back to Accept-Language, then English, same as complianceQuestionnaireInfer.
Mutation.
questionnaireSessionInfer
Run (or re-run) inference for an existing open CATALOG_ITEM session, from the item facts the catalog-item consumer snapshotted at event time. Catalog upload opens sessions WITHOUT inference (deferred spend); call this when the merchant opens the questionnaire page. Hash-guarded: when inference already ran for the item's current content, the session is returned untouched β no LLM spend, previously inferred answers undisturbed. Other container types keep using complianceQuestionnaireInfer (no snapshot exists for them). input.languageCode: the session is opened by a background consumer (item.catalog-item.events.changed) with no request context to seed a locale from, so this is the first point a merchant's actual language is known β pass it to render question/answer/option text accordingly. Falls back to Accept-Language, then English, same as complianceQuestionnaireInfer.
Arguments
input
QuestionnaireSessionInferInput!
Required
Returns:
ComplianceQuestionnaireInferResult!
type Mutation { questionnaireSessionInfer(input: QuestionnaireSessionInferInput!): ComplianceQuestionnaireInferResult! }