DuDiBa Docs
Everything you need to install, configure, and get the most out of DuDiBa — your AI-powered support chat widget trained on your own content.
DuDiBa is an AI-powered support chat widget that you embed on your website. You feed it your documentation, help articles, or any URLs, and it instantly learns to answer your customers' questions 24/7 — without any human involvement for routine queries. When the AI is unsure or a customer needs more help, it escalates to a human agent via email, Slack, or live chat.
Visit dudiba.com/signup and register with your email. No credit card is required to start on the free plan. After signing up, you will land on your dashboard where an onboarding checklist guides you through the four setup steps.
Navigate to Dashboard → Knowledge Base and click Add Source. You can provide:
Once submitted, DuDiBa splits the content into chunks, generates vector embeddings, and stores them for semantic search. This usually completes within a minute. You can monitor progress in the Sync Jobs panel on the same page.
Go to Dashboard → Settings and copy your Workspace ID or the full embed snippet. Paste it before the closing </body> tag on every page where you want the widget to appear:
<script src="https://dudiba.com/embed.js" data-workspace-id="YOUR_WORKSPACE_ID" ></script>
The widget loads asynchronously and does not affect your page performance. All appearance options (color, theme, launcher style, welcome message) are fetched from your dashboard settings automatically — no need to re-deploy after changing them.
From the Settings page click Try demo to open a live preview of your widget on the DuDiBa homepage. You can also append ?workspace_id=YOUR_ID&open=1 to any URL where you have installed the embed script to open the widget automatically.
You can add as many sources as your plan allows. Each source is a URL or a PDF document. DuDiBa stores the original content alongside the vector index so it can detect changes on re-sync.
DuDiBa retrains automatically on a schedule. You can also trigger a manual retrain at any time from the Knowledge Base page by clicking Retrain now. The Sync Jobs panel shows:
Delta Sync compares a fingerprint of each source against the previously indexed version. If the content has not changed, it skips re-embedding that source entirely. This saves time and costs — especially useful for large documentation sets that change infrequently.
The Version Timeline shows the last 20 events per source, including when content was created, replaced, skipped, deleted, or reverted. This gives you a full audit trail of every change to your knowledge base.
All appearance settings live in Dashboard → Settings → General. You can configure:
Starter prompts are suggested questions displayed to visitors before they type anything. Add up to six prompts (one per line) in the Settings form. They help guide users towards the most common questions and improve engagement.
The embed script supports additional data attributes for advanced control. All attributes are optional — the widget fetches its config from your dashboard if they are omitted.
<script src="https://dudiba.com/embed.js" data-workspace-id="YOUR_WORKSPACE_ID" data-theme="light" data-launcher-style="button" data-hide-launcher-on-open="0" data-primary-color="#4f46e5" data-welcome-message="Hi! How can I help?" ></script>
For security, DuDiBa only responds to widget requests from domains you have whitelisted. In Settings → Behavior, add every domain where you have embedded the widget (e.g. https://yoursite.com). Separate multiple domains with commas. The widget will silently fail to load on unlisted origins.
Go to Dashboard → Conversations to see a paginated list (25 per page) of all chat sessions. Click any row to open the full message thread. Each conversation shows:
Use the Export button on the Conversations page to download your conversation data:
Dashboard → Top Questions shows the 30 most frequently asked questions across your widget, ranked by occurrence. Use this to identify knowledge gaps — if a common question is being answered poorly, add or improve the relevant source in your knowledge base.
When the AI determines it cannot confidently answer a question — or when an escalation trigger fires — DuDiBa creates a handoff. The visitor is informed that a human will follow up, and your team receives a notification via the configured channel (email or Slack). You can track all handoffs in Dashboard → Handoffs.
Escalations can be fired by any combination of the following signals:
Configure your timezone, active days of the week, and start/end times in Settings → Escalation. You can also add holiday overrides as individual dates in YYYY-MM-DD format (one per line). On holidays, escalations will fall back to the email channel.
Enable Live Chat in Settings → Behavior to allow your team to take over conversations in real time. Agents access their queue at Dashboard → Live Chat. Key settings:
In Settings → Escalation, configure where handoff notifications are sent:
DuDiBa offers four standard tiers plus Enterprise:
All paid plans are available on monthly or annual billing. Annual billing saves up to 25% versus monthly. Visit the Pricing page for current prices in USD and INR.
Each plan includes a monthly message allowance. The Dashboard overview displays a usage bar showing messages consumed vs. your plan limit for the current billing cycle. States:
Startups, non-profits, and educational institutions can request a discount from the Billing page using the Request a discount form. Our team reviews requests and applies credits manually within a few business days.
Workspace Admins can invite teammates at Dashboard → Settings → Team. Enter the email address and select a role, then click Invite. The invitee will receive an email with a sign-up link that pre-joins them to your workspace.
The Headless API lets you query DuDiBa's AI without embedding the visual widget — useful for integrating AI responses into your own UI, chatbots, or backend workflows. Enable it in Settings → Webhooks & Developer and generate an API key.
Send a POST request to:
POST https://dudiba.com/api/headless/query
Authorization: Bearer YOUR_API_KEY
{
"message": "How do I reset my password?",
"conversationId": "optional-session-id"
}The response streams the AI reply and includes cited sources. You can pass an optional conversationId to maintain conversation context across multiple turns.
DuDiBa can push events to your systems in real time. Configure a webhook endpoint URL in Settings → Webhooks & Developer. Currently supported events:
chat.escalated — fired when a conversation is escalated to a human. Payload includes conversation ID, messages, and escalation reason.lead.captured — fired when a visitor submits their contact details via the widget.All webhook payloads are signed with HMAC-SHA256 using your webhook signing secret. Verify the signature on your server before processing the event:
// Node.js example
const crypto = require("crypto");
const signature = req.headers["x-dudiba-signature"];
const computed = crypto
.createHmac("sha256", process.env.WEBHOOK_SECRET)
.update(JSON.stringify(req.body))
.digest("hex");
if (signature !== computed) {
return res.status(401).send("Invalid signature");
}Failed deliveries are retried up to the configured maximum (1–10 retries). Exhausted retries are moved to a dead-letter queue visible in your settings.
Configure conversation retention in Settings → Retention (Admin only):
Settings → Audit Logs (Admin only) shows a chronological log of all changes made to your workspace: settings updates, team membership changes, billing events, and knowledge base modifications. Each entry records the acting user, timestamp, and a description of the change.
</body> tag and that the data-workspace-id attribute matches your Workspace ID exactly.dudiba.com in your CSP rules.Can I use DuDiBa on multiple websites?
Yes. You can add multiple allowed origins to a single workspace and use the same embed script on all of them. Alternatively, create separate workspaces for each site for independent knowledge bases and analytics.
Does DuDiBa work with React, Vue, or other frameworks?
Yes. The embed script is plain JavaScript and works with any website or web app framework. Simply include the script tag in your HTML and the widget initialises itself automatically.
How long does retraining take?
Retraining typically completes within 1–3 minutes for most knowledge bases. Very large documentation sets with hundreds of pages may take longer. Monitor progress in the Sync Jobs panel.
Is visitor data stored?
By default, conversation messages are stored in your workspace so you can review them in the dashboard. You can enable zero-retention mode in Settings to process all conversations in memory without any database storage.
Can I remove the 'Powered by Dudiba' branding?
Yes. The remove branding feature is available on Scale and Enterprise plans. Upgrade your plan from the Billing page to enable it.
What languages does DuDiBa support?
DuDiBa can respond in the same language the visitor writes in. If your knowledge base is in English but a visitor writes in French, the AI will answer in French using the indexed English content as context. Multilingual support is enabled by default.
How do I cancel my subscription?
For Stripe subscriptions, click 'Manage subscription' on the Billing page to access the Stripe customer portal where you can cancel. For Razorpay, contact support. Cancellation takes effect at the end of your current billing period.
Can I export my knowledge base?
You can view and delete individual sources from the Knowledge Base page. Full knowledge base export is available on request for Enterprise customers.
What happens if I delete a source?
Deleting a source removes it from the active sources list and marks it in the version timeline. On the next retrain, its chunks are excluded from search results. Existing conversations that referenced that source are not affected.
Browse the FAQs, check the changelog for recent updates, or start your free trial to explore DuDiBa hands-on.