See the platform work before you sign in.
Every block on this page is the interface a customer uses. Ask the chatbot a question, index a document, open the widget, route a lead, run a sync. None of it is a screenshot.
Answers from your material, with the passage they came from.
Hybrid retrieval fuses keyword and vector search, the answer streams, and every citation is filtered down to the chunks the answer actually used. Ask one of these.
Two rules are locked on
The model answers only from the retrieved material, and a credential is removed from the chunks before they reach it rather than being forbidden in the prompt.
See guardrailsFour steps between a file and an answer.
Pick a source and run it. Extraction handles PDF, DOCX, XLSX, PPTX, HTML, Markdown and JSON; chunks are hash-diffed, so an unchanged passage is never embedded twice.
A document is refused if the bytes in storage do not match the row that describes them, and the failure is what makes the next sync heal it.
One 29 KB script, five surfaces, your colours.
Preact inside a shadow root, so nothing on the host page can reach it and nothing it does can restyle the page. Change the surface and the accent below.
Allowed domains
Wildcards supported. An origin that is not on the list is refused before the model is called.
Page context
The widget sends the page it is on and updates it on SPA navigation, so the answer knows where the visitor is.
Speaks first, once
A proactive message can open the conversation one time per visit. Your own icon replaces the mark.
The form is the conversation. Each answer is saved as it arrives.
The model does not hold the answers in its head and write them at the end. Every reply writes its field immediately and returns what is still outstanding, so a visitor who leaves halfway still leaves a record.
Twenty field types, each with its own options list, edited on a page of their own rather than in a dialog. The same validation runs in the widget and on the server.
A captured lead lands in the tool your team already opens.
Both ends of the mapping are editable: the questions the chosen widget's form actually asks on one side, the destination's own fields on the other. Pick a destination.
Verified live against 22 spaces and 4,959 lists. A dropdown value is sent as its option id, never as a string.
Send sample lead invents a lead and runs it through the same mapping a real one uses. Failures are retried and can be resent from the dispatch log.
What was asked, what answered it, and what nothing answered.
Rollups run nightly, and the retention window purges what is past it. Pick a range.
Four ways in, five ways out.
Sources feed the knowledge base; destinations receive what the conversation produced. Click one to see exactly what moves.
- Realtime on publish, plus a resumable bulk sync with a retry queue.
- The plugin injects the widget, so no theme file is edited.
- Plan usage and an event log live on the plugin's own settings screen.
Downloadable from Integrations on Pro and Business.
Work that runs without anybody opening the app.
Two chains do most of it: a schedule that keeps the knowledge current, and a route that carries a captured lead out. Both record every run.
A run that gets stuck cannot silence the next one: the sync log shows source, connection, trigger, duration and every counter, and a manual sync is always available.
Ten percent of every payment, for as long as they keep paying.
The link is a twelve-character code on an address that never says affiliate, referral, promotion or discount. It reads like any other link to the product, which is the point.
app.welcomeai.dev/billing/c/8fk29dl4mq7vRotating the code does not break what you earned
A referral points at the link row, not at the string, so a link you publish and later rotate keeps paying on the workspaces it already brought in.
The access you can be given
A workspace can hand a referrer the referral role: admin's day-to-day work, minus billing, minus renaming the workspace, and minus the API key that would read the whole workspace from outside it.
If it is not a connector yet, it is a POST.
Send content into a knowledge base from your own systems. Each document is matched by the id you send, so posting the same one twice updates it instead of duplicating it. Every key is scoped to what it may touch and capped by a daily budget, so a runaway script cannot spend the month.
curl -X POST https://app.welcomeai.dev/api/v1/ingest \
-H "Authorization: Bearer wai_live_********" \
-H "Content-Type: application/json" \
-d '{
"kb_id": "kb_7f2a",
"external_id": "faq-refunds",
"title": "Refund policy",
"content": "Refunds are issued within 14 days of the payment."
}'- Five outgoing events, in a signed envelope carrying t= and v1=.
- Six retries over about 36 hours, then auto-disabled after 20 consecutive failures.
- A revoked key stops verifying by construction: revoking takes the hash with it.
One account rule, and two things it cannot switch off.
Settings used to be copied into every knowledge base and every form. Now the account holds the rule, and a base or a form replaces it wholesale rather than merging with it.
The account rule. Everything inherits this unless it declares its own.
Answer only from the material
Locked onWhen nothing retrieved answers the question, the assistant says so.
Never repeat a credential
Locked onEnforced by removing it from the retrieved chunks rather than by asking the model not to.
Real matches on this corpus score between 0.33 and 0.58. The default was once 0.78, which meant the vector half of hybrid retrieval never returned anything and the product was doing keyword search while paying for embeddings.
Twenty-four jobs, and the part of the product that does each one.
Each one has a page of its own saying what to feed it, what changes, and which integrations belong with it.
Upload your documents and WelcomeAI indexes them in about a minute.
Fourteen days, no card. Starter is $75 a month for 3,000 answers; Pro $199 for 8,000; Business $499 for 20,000.