Widget appearance
By the end of this page you'll have the MimicBot widget matching your brand — right color, right logo, right corner of the screen.
Before you start
- A bot you've already created (see Create your first bot).
- An API token with write access to that bot.
The four appearance fields
These fields live under widgetConfig on the bot record. The widget fetches them from /v1/public/bots/{publicId}/config at load time and re-reads on every full page load.
| Field | Type | Default | Description |
|---|---|---|---|
primaryColor | string (hex, ^#[0-9a-fA-F]{6}$) | #2563EB | Launcher background, header, and outgoing message bubble color. |
logoUrl | string (URL) or null | null | Square logo displayed in the widget header. Falls back to initials. |
position | 'bottom-right' | 'bottom-left' | bottom-right | Which screen corner the launcher sits in. |
poweredByEnabled | boolean | true | Shows the "Powered by MimicBot" footer. Disable on paid plans. |
Picking a good primary color
- Use a hex string with the
#prefix and exactly six characters (#1F6FEB, not#1f6orrgb(...)). - Pick a color with enough contrast against white — the widget header uses white text on this background.
- Match your site's primary CTA color so the launcher feels native rather than bolted on.
Setting appearance on bot creation
Widget appearance is seeded when you create the bot. Pass a widgetConfig object alongside name and clientUrl:
curl -X POST https://api.mimicbot.app/api/bots \
-H "Authorization: Bearer $MIMICBOT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Acme Support Bot",
"clientUrl": "https://acme.example",
"widgetConfig": {
"primaryColor": "#1F6FEB",
"logoUrl": "https://acme.example/logo.png",
"position": "bottom-right",
"poweredByEnabled": true
}
}'
Any field you omit falls back to the default from the table above.
Updating appearance later
The dashboard is the supported path for editing an existing bot's widget appearance. A dedicated PATCH surface for widgetConfig is on the roadmap — for now, update these four fields in Settings → Appearance and the change propagates to every embedded widget on the next page load.