setInteractionOptions() for interaction-level defaults such as mode, spoken language, template defaults, personal templates, standard templates, project templates, inline templates, and document actions.
When you set templates.defaultTemplate, it can provide a fallback template for
new sessions or force the first generated document to use a specific template.
Fallback templates are used only when the user does not already have their own
default template set.
Applies to Web Component, Window API, and PostMessage. Examples on this page
use the Web Component API shape.
setInteractionOptions() is a one-shot configuration for the embedded
instance. Set it before the user starts or opens an interaction.Usage
Prerequisites
- User must be authenticated.
Defaults and omitted values
setInteractionOptions() applies only the option slices you provide. When you omit an option, the embedded Assistant does not apply an override for that setting and keeps the current or product default behavior.
Inline templates are available only to the embedded instance that receives the payload. Use an id when another option, such as templates.defaultTemplate, needs to reference the inline template.
For personal template section fields, the default editor behavior is:
Use
visible: true to show a prompt field. Use editable: false to make a visible field read-only.
Input validation
mode.fallback: Must be either"in-person"or"virtual".mode.options: Must contain one or both of"in-person"and"virtual".spokenLanguage.fallback: Must be a valid language code when provided.spokenLanguage.options: Must be an array of valid language codes when provided. If you provide bothfallbackandoptions,fallbackshould be one of the listed options.templates.sources.personal.enabled: Must be a boolean when provided.templates.sources.personal.sectionFields: Optional object controlling field-level access in the guided template editor.headinganddescriptionaccept an optional{ editable?: boolean }object.miscPromptandoutputSchemaaccept an optional{ visible?: boolean; editable?: boolean }object.templates.sources.standard.enabled: Must be a boolean when provided.templates.sources.standard.include.regions: Must be an array of ISO 3166-1 alpha-3 template region codes when provided.templates.sources.standard.include.families: Must be an array of standard template family identifiers when provided.templates.sources.standard.exclude.regions: Must be an array of ISO 3166-1 alpha-3 template region codes when provided.templates.sources.standard.exclude.families: Must be an array of standard template family identifiers when provided.templates.sources.project.enabled: Must be a boolean when provided.templates.sources.project.include.ids: Must be an array of project template UUID strings when provided.templates.sources.project.exclude.ids: Must be an array of project template UUID strings when provided.templates.sources.inline.enabled: Must be a boolean when provided.templates.sources.inline.templates: Must be an array of inline template objects when provided. Inline template IDs only need to be unique within the currentsetInteractionOptions()payload and are required only when referenced by another option.templates.defaultTemplate.behaviour: Must be"fallback"or"force-first-document"when provided.templates.defaultTemplate.template.source: Must be"standard","project", or"inline"when provided.templates.defaultTemplate.template.id: Must be a valid template identifier for the selected source when provided. Standard templates use fully resolved identifiers such as"corti-soap-en"; inline templates use the local inline template ID.templates.defaultTemplate.allowUserSelection: Must be a boolean when provided. Set it tofalseto hide user controls for selecting and persisting a default template.documents.actions.sync: Must be a boolean when provided.documents.allowedLanguages: Must be an array of valid BCP 47 locale codes when provided. Region-less codes (e.g.,"en","da") are recommended; region variants (e.g.,"en-US") are supported if the region-less code does not provide your desired results.documents.maxGenerated: Must be a number or"unlimited"when provided.0is treated as unlimited.
Possible errors
UNAUTHORIZED: User not authenticated.INVALID_PAYLOAD: Invalid mode, language, template, or boolean value.INTERNAL_ERROR: Failed to apply interaction options.