idrequired
| string(uuid) | The unique identifier for the agent. |
namerequired
| string | The name of the agent. |
icon
| string | The icon of the agent. |
typesrequired
| string[] | The types of the agent. |
directionsrequired
| string[] | The directions of the agent. |
summaryrequired
| string | The summary of the agent. |
| object | The instructions of the agent. |
examplePrompts
| string[] | Example prompts to help users start conversations (max 5, each max 100 chars). |
organizationIdrequired
| string(uuid) | The organization identifier of the agent. |
authPublicClientIdrequired
| string(uuid) | The public client identifier of the agent. |
authPublicClientSecretrequired
| string | The public client secret of the agent. |
authPublicClientAllowedOriginsrequired
| string[] | The allowed origins of the agent. |
| object | Configuration for the chat widget appearance and behavior.(default: {"iconType":"smooai","iconUrl":"https://smoo.ai","requireName":true,"requireEmail":true,"requirePhone":false,"allowAnonymous":false,"colors":{"text":"#f8fafc","background":"#040d30","primary":"#00a6a6","primaryText":"#f8fafc","secondary":"#ff6b6c","chatBubbleInbound":"#06134b","chatBubbleInboundText":"#f8fafc","chatBubbleOutbound":"#00a6a6","chatBubbleOutboundText":"#f8fafc","border":"#0a1f7a"}}) |
| object | Configuration for the agent's personality and behavior traits.(default: {"preset":"bright","creativity":0.7}) |
template
| stringenum: [customer_support, developer_assistant, knowledge_expert, sales_outreach, internal_helpdesk, schedule_a_call, custom] | Template used to create this agent. |
visibility
| stringenum: [public, internal] | Where this agent is accessible (public widget or internal dashboard).(default: "public") |
role
| stringenum: [customer, smoo_builder] | customer (default, built by the org) or smoo_builder (auto-provisioned org admin assistant).(default: "customer") |
isBuiltinrequired
| boolean | True only for the built-in Smoo Builder agent. Cannot be deleted; role is locked. |
| object | Configuration for agent tools and integrations.(default: {"enabledTools":[]}) |
knowledgeSelection
| unknown | SMOODEV-775 — which org-scoped knowledge this agent can search. Default `all_org`; `selected` lets the agent subscribe to specific folders and/or documents. DB column is NOT NULL with a default, so reads always return a value; create can omit it to take the default. |
| object | Structured goal + steps for multi-turn conversation flow. Optional — freeform-prompt agents work without this. |
| object | SMOODEV-670 — opt-in CRM contact lookup for personalization. UX only, NEVER an auth signal (phone/email headers are spoofable).(default: {"enabled":false,"allowedFields":["firstName","lastName","jobTitle"]}) |
voiceProfileId
| string(uuid) | SMOODEV-799 — reference to a row in voice_profiles. NULL means use the system default voice (Aria — peppy). |
greeting
| string | SMOODEV-798 / SMOODEV-932 — channel-agnostic initial greeting seed. composeChannelGreeting rephrases this per channel (voice, chat, sms). NULL falls back to per-channel defaults. |
createdByrequired
| string(uuid) | The user identifier of the agent. |
createdAtrequired
| string(date) | The date and time the agent was created. |
updatedAtrequired
| string(date) | The date and time the agent was last updated. |