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;
}| Property | Type | Required | Description |
|---|---|---|---|
apiKey | string | Yes | Your API key from Settings → API. Starts with mst_. |
baseUrl | string | Yes | The Maestrio API URL. Trailing slashes are stripped automatically. |
projectId | string | Yes | The project ID to send feedback to. Found in project settings. |
widget | WidgetConfig | No | Customize the feedback widget’s appearance and behavior. |
WidgetConfig
Controls the widget’s position, theme, and labels.
interface WidgetConfig {
position?: WidgetPosition;
theme?: WidgetTheme;
labels?: WidgetLabels;
}| Property | Type | Default | Description |
|---|---|---|---|
position | WidgetPosition | "right-center-vertical" | Where the trigger button appears. See Positions. |
theme | WidgetTheme | Default theme | Colors and border radius. See Themes. |
labels | WidgetLabels | English defaults | UI text strings. See Labels. |
WidgetPosition
type WidgetPosition = "right-center-horizontal" | "right-center-vertical";| Value | Description |
|---|---|
"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;
}| Property | Type | Description |
|---|---|---|
primaryColor | CSS color | Button and accent color |
primaryForeground | CSS color | Text color on primary-colored elements |
backgroundColor | CSS color | Widget panel background |
textColor | CSS color | Main text color in the widget |
borderRadius | CSS length | Corner 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;
}| Property | Type | Default | Description |
|---|---|---|---|
autoShow | boolean | false | Automatically show the widget after identify() is called. |