Skip to Content
SDK ReferenceConfiguration

Configuration

Full reference for all configuration options accepted by createMaestrio().

MaestrioConfig

The top-level configuration object.

interface MaestrioConfig { apiKey: string; baseUrl: string; projectId: string; widget?: WidgetConfig; }
PropertyTypeRequiredDescription
apiKeystringYesYour API key from Settings → API. Starts with mst_.
baseUrlstringYesThe Maestrio API URL. Trailing slashes are stripped automatically.
projectIdstringYesThe project ID to send feedback to. Found in project settings.
widgetWidgetConfigNoCustomize the feedback widget’s appearance and behavior.

WidgetConfig

Controls the widget’s position, theme, and labels.

interface WidgetConfig { position?: WidgetPosition; theme?: WidgetTheme; labels?: WidgetLabels; }
PropertyTypeDefaultDescription
positionWidgetPosition"right-center-vertical"Where the trigger button appears. See Positions.
themeWidgetThemeDefault themeColors and border radius. See Themes.
labelsWidgetLabelsEnglish defaultsUI text strings. See Labels.

WidgetPosition

type WidgetPosition = "right-center-horizontal" | "right-center-vertical";
ValueDescription
"right-center-vertical"Trigger button on the right edge, text rotated vertically. Default.
"right-center-horizontal"Trigger button on the right edge, text horizontal.

WidgetTheme

All properties are optional. Unset properties use the SDK’s default values.

interface WidgetTheme { primaryColor?: string; primaryForeground?: string; backgroundColor?: string; textColor?: string; borderRadius?: string; }
PropertyTypeDescription
primaryColorCSS colorButton and accent color
primaryForegroundCSS colorText color on primary-colored elements
backgroundColorCSS colorWidget panel background
textColorCSS colorMain text color in the widget
borderRadiusCSS lengthCorner radius for the widget panel and buttons

WidgetLabels

Override any or all of the widget’s UI text. All properties are optional.

interface WidgetLabels { triggerText?: string; headerText?: string; bugLabel?: string; bugDescription?: string; suggestionLabel?: string; suggestionDescription?: string; bugPlaceholder?: string; suggestionPlaceholder?: string; bugTextareaLabel?: string; suggestionTextareaLabel?: string; sendButton?: string; cancelButton?: string; }

See the full Labels reference for default values and examples.

UserProperties

Passed to identify() as the second argument.

interface UserProperties { name?: string; email?: string; avatar?: string; [key: string]: unknown; }

SystemProperties

Passed to identify() as the third argument.

interface SystemProperties { autoShow?: boolean; }
PropertyTypeDefaultDescription
autoShowbooleanfalseAutomatically show the widget after identify() is called.