Pick any of the eleven for your site — see them all
Put an AI companion on your website with one line of code. Embedding requires a Business license: $19/month per site, fully white-label, activated for your domain.
data-license.ATLAS is the one built for this. A face of falling data rather than a character — composed, unhurried, and at home on a company's own website. He answers the question asked and prefers concrete numbers to strategy language, which is the behaviour you want in front of your customers.
He is the default in the snippet below. Every other entity still works — a game studio may well want CLUTCH and a pet brand Mochi — but if you are putting a chat on a business site and have no reason to pick another, pick this one. Meet ATLAS.
Pair him with data-face="off" for a plain chat panel under
your own name, or leave the face on — he is the one character that does not read as
a cartoon on a professional site.
A chat that answers questions is useful. A chat that tells you who was asking pays for itself. Add one attribute and your entity will ask for a name, email or phone number when the conversation gives it a reason to — then send the details straight to wherever you work.
data-capture="name,email,phone"
Then paste an incoming webhook on the activation page and you are done. Within seconds of someone leaving their details you get:
New lead from acme-dental.com Name: Dana Whitfield Email: dana@example.com Phone: 555 0142 Wants: a quote for Invisalign Page: https://acme-dental.com/pricing
Where it can go. Slack, Discord and Microsoft Teams directly. Through Zapier, Make or IFTTT it reaches effectively anything else — your CRM, a Google Sheet, Gmail, an SMS, a calendar booking. One step in Zapier and the lead is in HubSpot or Salesforce.
Why the webhook lives in your account, not in your page. A webhook URL is a password in disguise: anyone holding it can post into your channel. Put it in the embed tag and it would sit in your page source for the whole internet to read. So it is stored with your subscription, and only our server ever sees it. Your page sends the lead; it never knows the destination. We only deliver to the six services above — an allowlist, which is also what stops this becoming an open relay for someone else's spam.
Nothing is captured unless you ask for it: no data-capture,
no questions. The entity asks once, never as an opener, and never again if the visitor
declines.
One line. A chat bubble appears in the corner and opens a panel with your entity. Without an active license activated for your domain, the embed doesn't appear — the reason is logged to your browser console.
<script src="https://entitiesai.io/embed.js" data-license="YOUR-LICENSE-KEY" data-entity="atlas" data-position="bottom-right" data-name="Sparky" data-color="#FF6B9D" data-prompt="You are Sparky, our cheerful sales assistant. Keep answers short and warm." data-capture="name,email,phone"></script>
data-licenseLicense key — required
From your purchase confirmation, activated for this domain.data-entityWhich entity
mochi, nova, bit, eva, eva2, catz, zeta, kodi, clutch, or nyx. Default: mochi.data-positionCorner
bottom-right, bottom-left, top-right, top-left.data-nameDisplay name
Rename the entity — "Sparky", "AskBot", whatever fits your brand.data-colorBubble color
Any CSS color. Match your brand palette.data-promptPersonality
Custom system prompt. Change the tone, add product knowledge, restrict topics.data-faceNo character
Set to off for a plain chat panel: no animated face, no
mood meters, and the conversation fills the space instead. The entity keeps
its personality and its name — it just has no portrait. The bubble becomes a
plain speech icon.data-iconYour own bubble
An https image URL — your logo, say — in place of the entity's
face on the corner bubble. Works with or without data-face.data-captureLead capture
Any of name, email, phone, comma
separated. The entity asks for them in conversation and the details are delivered
to the webhook set on your activation page.
Omit it and nothing is ever asked. More.data-openStart open
Set to 1 and the chat is already open when the page loads,
instead of a bubble. Desktop only — on a phone the panel is nearly the whole
screen, so it stays a bubble there. If a visitor closes it, it stays closed for
the rest of their session.Voice — ask us to switch it onYour entity can speak
Your embedded entity can read its replies aloud in one of
13 ChatGPT voices, spoken with the same OpenAI key the chat already
uses. Visitors still need nothing.
data- attribute on purpose. Speech costs
roughly three times what a text reply does, so it is set on your subscription
rather than in your page — nobody can turn it on for your account by editing
your HTML, and no one can turn it on for you but you.
Pick one on the activation page. Leave it off and the
embed uses the visitor's own browser voice, which costs nothing.
No app to install. Shopify lets you put your own code in your theme, and the embed is one line — so it works on a Shopify store today, exactly as it does anywhere else.
theme.liquid and paste the snippet just before the closing
</body> tag.<script src="https://entitiesai.io/embed.js" data-license="YOUR-LICENSE-KEY" data-entity="atlas" data-name="Acme Support" data-face="off"></script>
Activate your licence for your real domain — acme.com, not
acme-store.myshopify.com. A licence activated for your live domain covers
www and every subdomain of it, but your .myshopify.com preview
address is a different site, so the bubble will not appear there. That catches people out:
check the storefront your customers actually visit.
Two other things worth knowing. A theme edit belongs to that theme — switch or reinstall a theme and you paste the line again. And Shopify does not allow custom code on checkout pages, so the chat appears everywhere except checkout, which is where you want it anyway.
Most stores want data-face="off" and their own
data-name, for a plain support panel under their own brand — but the animated
faces are there if you would rather have one. All the options.
Prefer the entity inline on a page instead of a floating bubble? Use an iframe with your license key in the address. It only loads on the domain your license is activated for — anywhere else it shows a "not available" notice instead of the chat.
<iframe src="https://entitiesai.io/entities/mochi.html?embed=1&license=YOUR-LICENSE-KEY" width="400" height="640" frameborder="0"></iframe>