cromanion_surfaces
Choose where the agent may speak and what those places look like: which layout surfaces are enabled, whether the exit modal is allowed, custom CSS, and per-surface HTML. Markup and CSS are re-checked against an allowlist on every visitor — anything that could run, or fetch a remote resource, is silently removed, so compare what comes back with what you sent. Needs the surfaces permission.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| siteId | No | Which site this call is about. Only needed when your credential covers more than one — cromanion_grants lists them and says whether it is required. Omitting it with several is refused rather than guessed at. | |
| enabled | No | Surfaces the agent may use: inline_hint, card, sticky_bar, bottom_sheet, inline_block, cta_tooltip. | |
| customCss | No | CSS applied inside the intervention's shadow root. An empty string clears it. | |
| templates | No | Per-surface HTML, keyed by surface. Use {{message}}, {{cta_label}} and {{cta_url}} as placeholders. | |
| allowModal | No | Allow the page-blocking exit modal. Off by default. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ok | Yes | ||
| note | No | ||
| changed | Yes | ||
| enabled | No | Surfaces now in use. | |
| customCss | No | The CSS as STORED — compare with what you sent to see what the allowlist removed. | |
| templates | No | Per-surface, what was kept and what was stripped from your markup. | |
| allowModal | No |