mascot field. It is made with the agent and deleted
with it, and there is one per agent.
A new agent starts with the default mascot, a green squircle with two dark
eyes. Change it whenever you like.
Change the look
A mascot is one shape and two eyes, described byspec. Send the whole spec
you want; numbers out of range are clamped, and the response shows the spec as
saved.
welcome_message in the same request sets what its speech bubble says before
a call. Without one it uses the agent’s opening_message.
Generate a look from a website
website_url, a description, or both. Send neither for a random look.
It answers at once with mascot.status: "building". Poll GET /v1/agents/{id}
until it is ready or failed, usually in under a minute. A failed build
keeps the look it had.
Only the look changes. The agent’s prompt never does, and its knowledge base
stays as it is unless you send "refresh_knowledge": true. See
Knowledge bases.
To make a whole agent from a website (name, prompt, opening line, language,
knowledge base and look), use POST /v1/agents/generate instead.
Share it
Two ways for other people to talk to your agent through its mascot. Both are off until you turn them on, and their calls are billed per second to your credit.calls:write as well as agents:write. The mascot then
has a public_id, like m_4fT9qLx2Bv8K. It is the id in the share link and in
the widget:
POST /v1/agents/{id}/mascot/rotate-public-id gives it a new public_id. The
old link and embed code stop working at once.
Caps
Public calls stay inside the numbers insharing:
Who can call
sharing.caller_info sets what a caller gives before a call through the share
link or the website widget. People calling from the Wixzel Voice app are
already signed in.
embed_origins.
Every web call also records:
- An approximate location: city, region and country, worked out from the caller’s IP address. The address itself is kept only as a hash.
- The browser, operating system and device type, from the browser’s User-Agent.
- The page the caller was on, for website widget calls.
- A random id the browser keeps, so one person’s calls group together.
caller field) and in
Callers.
Blocking callers
A blocked caller cannot call that agent again: not from its share link, its website widget, the app or by phone. They are told “You can’t call this assistant.” Their earlier calls stay as they were. In the console, open a call on the Calls page and choose Block on its Caller card. The agent’s Mascot tab lists who is blocked, with an Unblock button for each. With the API:"blocked": false to unblock. See Callers.
Draw it in your own app
The share link and the website widget are ready to use. To put the mascot in your own page or app instead, draw it from the agent’smascot.spec with one
of these:
Both use the same runtime as the share link, the widget and the Wixzel Voice
app, so the mascot looks and moves the same everywhere. Both can lip-sync it
to a realtime session: it listens while the user talks, thinks
while the agent prepares an answer, and moves its mouth in time with the
agent’s audio.

