Skip to main content
Use this guide to move an existing Embedded API integration from the legacy configuration structure to the new split between app-level configuration and interaction options.
Due by 2026-11-29. configure() and configureSession() remain supported until then, but new integrations should move to configureApp() and setInteractionOptions() now. See Scheduled Deprecations for rollout timing.

Overview

The new configuration structure separates two responsibilities:
  • configureApp() is for app-level configuration such as UI settings, appearance, locale, and network settings. It is patchable and you may call it multiple times.
  • setInteractionOptions() is for interaction or session-level configuration such as mode, spoken language, template defaults, and document actions. Set it before the user starts or opens an interaction.
configure() and configureSession() keep working during the deprecation period. Use Scheduled Deprecations if you need rollout timing and compatibility details.

Reference

Mapping from configure()

The second column shows the request shape to use in the new method call, not a response path.
configureApp({ debug: true }) enables a debug panel for development. There is no legacy configure() equivalent for this setting, and you should not enable it in staging or production.

Mapping from configureSession()

Migration path

1

Move app-level settings to configureApp()

Move UI, appearance, locale, and network settings out of configure() and into configureApp().
2

Move interaction defaults to setInteractionOptions()

Move mode, spoken language, template defaults, document sync, and personal template availability out of configure() or configureSession() and into setInteractionOptions().

Before and after examples

App appearance and UI settings

Before
After

Development-only debug panel

Use debug when you need the embedded Assistant debug panel during local development or troubleshooting.
The debug panel is intended for development only. Keep debug disabled in staging and production.

Interface language, dictation language, and string overrides

Before
After

Default mode and virtual mode

Use mode.options to replace features.virtualMode and mode.fallback to replace defaultMode. When virtualMode is false, the key migration step is to remove "virtual" from mode.options.
Before
After
For the more interesting non-default case where virtual mode should not be available:
Before
After

Default spoken language

Before
After

Default template

This remains fallback behavior, just like before. Map defaultTemplateKey to a standard template source and pass the fully resolved template id. In the new API, pass the fully resolved template id. If the old configuration used defaultTemplateKey: "corti-soap" together with defaultOutputLanguage: "en", the new template.id should be "corti-soap-en".
Before
After
The old configuration resolved the selected template from the pair defaultTemplateKey plus defaultOutputLanguage. In the new API, you must pass the already resolved template id directly, for example corti-soap-en.

Document sync action

Before
After

Personal template editor and template management

Before
After

Timeline

  • Current: configure() and configureSession() still work during the deprecation period
  • Future: Legacy configuration support ends on 2026-11-29
  • Action required: Move to configureApp() and setInteractionOptions() before the deadline

Configuration Scenarios

See the same settings organized by implementation scenario instead of field mapping.

Scheduled Deprecations

Review timing, compatibility expectations, and rollout guidance.

API Reference

Review configureApp() and setInteractionOptions() alongside the legacy methods.