Skip to main content
Use configure() only if you still depend on the legacy configuration structure.
configure() is deprecated in favor of configureApp() and setInteractionOptions(). It continues to work during the deprecation period. See the Migration Guide and Scheduled Deprecations.

Usage

const config = await api.configure({
  features: {
    interactionTitle: boolean,
    aiChat: boolean,
    documentFeedback: boolean,
    navigation: boolean,
    virtualMode: boolean,
    syncDocumentAction: boolean,
    templateEditor: boolean,
  },
  appearance: {
    primaryColor: string | null,
  },
  locale: {
    interfaceLanguage: string | null,
    dictationLanguage: string,
    overrides: Record<string, string>,
  },
});

Prerequisites

  • None

Input validation

  • appearance.primaryColor: Must be valid CSS color or null.
  • locale.interfaceLanguage: Must be a supported interface language or null.
  • locale.dictationLanguage: Must be a supported dictation language.
  • locale.overrides: Keys must match known override strings.
  • features.*: Must be boolean values.
  • network.websocketBaseUrl: Must be a valid URL if provided.

Possible errors

  • INVALID_PAYLOAD: Invalid color format, unsupported language code, or non-boolean feature flag.
  • INTERNAL_ERROR: Failed to apply configuration.

Returns

{
  features: {
    interactionTitle: boolean,
    aiChat: boolean,
    documentFeedback: boolean,
    navigation: boolean,
    virtualMode: boolean,
    syncDocumentAction: boolean,
    templateEditor: boolean,
  },
  appearance: {
    primaryColor: string | null,
  },
  locale: {
    interfaceLanguage: string | null,
    dictationLanguage: string,
    overrides: Record<string, string>,
  }
}

Defaults

  • features.interactionTitle: true
  • features.aiChat: true
  • features.documentFeedback: true
  • features.navigation: false
  • features.virtualMode: true
  • features.syncDocumentAction: false
  • features.templateEditor: true
  • appearance.primaryColor: null
  • locale.interfaceLanguage: null
  • locale.dictationLanguage: "en"
  • locale.overrides: {}