Umbraco package · v1.2 · Umbraco 10-13, 17+

The AI chatbot for Umbraco.One install. Managed from your dashboard.

DBestChatBot.Umbraco is a free NuGet package that puts an AI assistant on your Umbraco site. It answers visitors 24/7 from your own content, links them to the right page, captures leads and books appointments. Your developer installs it once; after that you choose which pages show which chatbot and what it learns from your site without touching code.

Free package · 20-chat free trial · listed on the Umbraco Marketplace and NuGet.

northside-learning.example/locations/downtown

# one time

dotnet add package DBestChatBot.Umbraco

# appsettings.json

"DBestChatBot": {

"SiteToken": "ums_..."

}

# deploy. done.

Do you have Saturday classes for 8 year olds near 60614?
Yes. Downtown runs Junior Drawing on Saturdays at 10:00 for ages 7 to 9, with 3 places left.See the Downtown schedule
Great, how do I sign up?
No template edits
Read-only

10-13, 17+

Umbraco versions

10 min

one-time install

0

template edits

Read-only

database access

Skills · Umbraco website

Northside Learning website

Connected · Umbraco 17 · last check-in 4 min ago

  • Whole siteMain assistant
  • /locations/downtownDowntown assistant
  • /locations/lakeviewLakeview assistant
  • /careersHiring assistant

Changes reach the site within 15 minutes.

Managed from your dashboard

Choose where each chatbot appears, without a redeploy.

Most chatbot plugins need a developer every time something changes. Here the package asks DBestChatBot what to do every 15 minutes, so you control it from the Skills tab: the whole site, or one chatbot per section.

  • Show a chatbot on the whole site or on any section by path
  • Give each branch, franchise, brand or language its own chatbot
  • Never shown inside the Umbraco backoffice
  • Turn the widget off for a section in one click

Knows your site

It reads your pages and the data you choose. Nothing else.

The package syncs your published page tree so the chatbot links visitors to real pages, never invented URLs. If your site keeps useful data in its own tables, such as class schedules, locations, opening hours or stock, you can tick the tables and columns to sync. It is read-only, every six hours by default.

  • Published page names, URLs and page types (three levels deep)
  • Your custom tables, only the columns you tick
  • Table and column names are shown to you first, with no data, so you choose
  • Umbraco system tables are never read

What the chatbot learns from this site

214 published pages · last sync 2 h ago

dbo.ClassSchedule (1,284 rows)

ClassName Location Zip StartTime PlacesLeft ParentEmail

ParentEmail is blocked inside the package and never leaves the site.

Safe on production sites

Built so your site keeps running.

Before every release we start a real Umbraco site with the package installed, on both SQLite and SQL Server, and check that it boots, serves pages and keeps working when our service is unreachable.

Background only

All network and database work runs in a background service, never in a page request.

Fails quietly

If DBestChatBot is down, your site serves every page as normal, just without the widget.

Personal data blocked

Email, phone, password and similar columns never leave your server. Binary data never does.

No tables, easy removal

Creates nothing in your database. Remove the package or set Enabled to false.

Everything an Umbraco site needs from a chatbot

The same platform WordPress, Shopify and nopCommerce sites use, connected natively to Umbraco.

Answers from your content

Trained on your pages and documents, and given your live page list so it links visitors to the exact page.

Per-section chatbots

Different chatbots for different parts of the site, and pages where it stays off: set by you, your editors in the backoffice, or the site owner.

Your own tables

Sync schedules, locations or stock from custom tables, read-only, with the columns you choose.

Lead capture

Collects name, email and phone naturally in the conversation and alerts your team instantly.

Appointments

Books meetings into your calendar with confirmation emails, inside the chat.

Human takeover

Your team can join any chat live from the web inbox or the Android and iPhone apps.

20 languages

Visitors chat in their own language; your team can translate any chat with one click.

Analytics

Views, chats, leads, topics and how the bot helped, with the chats behind every number.

Instant alerts

Email notifications for new leads and conversations with the full transcript.

Privacy built in

Signed requests, read-only access, personal-data columns blocked inside the package.

Package vs. pasting a chat script into your templates

DBestChatBot packageScript in a template
Change which pages show the chatFrom the dashboardEdit templates, redeploy
Different chatbots per sectionYes, by pathCustom template logic
Knows your real page URLsSynced automaticallyNo
Uses your own Umbraco dataRead-only, columns you chooseNo
Kept out of the backofficeAlwaysDepends on the template

How to add an AI chatbot to Umbraco

Four steps, about 10 minutes, done once. Hand steps 2 to 4 to whoever deploys your site.

  1. Step 1

    Create a site token

    In DBestChatBot open your chatbot, then Skills, Umbraco website, Connect an Umbraco site.

  2. Step 2

    Add the package

    Run dotnet add package DBestChatBot.Umbraco in your web project.

  3. Step 3

    Add the token

    Put "DBestChatBot": { "SiteToken": "ums_..." } in appsettings.json.

  4. Step 4

    Deploy

    The site checks in within minutes and the chatbot appears on the pages you chose.

Package Manager / .NET CLI

dotnet add package DBestChatBot.Umbraco

appsettings.json

"DBestChatBot": {
  "SiteToken": "ums_..."
}

Want us to do it? Our White Glove install covers it.

For Umbraco developers

What the package does inside your app

PackageDBestChatBot.Umbraco on NuGet: net6.0 build for Umbraco.Cms.Web.Common [10.0.0, 14.0.0), net10.0 build for [17.0.0, 20.0.0)
StartupAn IComposer registers options, a named HttpClient (60 s timeout), a TagHelperComponent and one hosted service. No I/O at boot
WidgetTagHelperComponent appends a deferred script before </body> on public Razor pages; skips /umbraco
BackgroundBackgroundService: config every 15 min, data sync every SyncIntervalHours (default 6), only on the Single or SchedulingPublisher server role
DataIScopeProvider, SELECT only, identifiers validated against INFORMATION_SCHEMA (or SQLite pragma), parameterised paging
ContentIContentService + IPublishedUrlProvider: published nodes, three levels, max 5,000
SecurityHMAC-SHA256 signed requests with a 5-minute window; built-in blocked column list plus your own BlockedColumns and AllowedTables
FootprintOne DLL. No database tables, migrations, backoffice extensions or third-party DLLs

Umbraco chatbot FAQ

What is the DBestChatBot Umbraco package?+

DBestChatBot.Umbraco is a free NuGet package that adds the DBestChatBot AI chatbot to an Umbraco website and keeps the chatbot informed about that site. It is listed on the Umbraco Marketplace and installs with one command: dotnet add package DBestChatBot.Umbraco.

Which Umbraco versions are supported?+

Umbraco 10, 11, 12 and 13 (on .NET 6, 7 or 8) and Umbraco 17 and newer (on .NET 10). One package covers both, and NuGet picks the right build for your site. Umbraco 14 to 16 are not supported yet. It works with both SQL Server (including Azure SQL) and SQLite databases, on Umbraco Cloud, Azure App Service or your own servers, and in load-balanced setups.

How do I add an AI chatbot to my Umbraco site?+

Create a free DBestChatBot account, open your chatbot, go to Skills, Umbraco website, and click Connect an Umbraco site to get a site token. Then run dotnet add package DBestChatBot.Umbraco, add the token to appsettings.json under DBestChatBot:SiteToken, and deploy. The chat widget appears within a few minutes. No template edits are needed.

Do I need to edit my Umbraco templates or views?+

No. The package adds one deferred script tag before the closing body tag of public pages automatically. It never adds the widget to the Umbraco backoffice.

Can I show different chatbots on different sections of my site?+

Yes. In the DBestChatBot dashboard you choose which pages show which chatbot by path, for example the whole site, or /locations/downtown and everything below it. A site with many branches, franchises or brands can give each section its own chatbot. Changes reach the site within 15 minutes without a redeploy.

Can I keep the chatbot off certain pages?+

Yes, in three ways. The site owner can list pages in appsettings.json (DBestChatBot:ExcludedPaths) that never show the chat, whatever the dashboard says. Editors can tick a true/false property called hideChatbot on any page in the Umbraco backoffice to hide the chat there and on every page below it. And the DBestChatBot dashboard can switch the chat off for pages inside a section, for example on for /locations/downtown but off for /locations/downtown/register.

What data does the package read from my Umbraco database?+

It is read-only and only runs SELECT queries. It reads your published page tree (page names, URLs and page types, three levels deep) so the chatbot can link visitors to the right page. It also reports your custom table and column names, without any data, so you can choose tables to sync, such as schedules, locations or stock. Only the columns you tick are read. Umbraco system tables are skipped.

Can it leak personal data such as emails or passwords?+

Columns whose names contain email, phone, mobile, password, hash, salt, token, secret, birth, card, IBAN and similar are blocked inside the package and never leave your server, even if they are selected in the dashboard. Binary columns are never sent. Site owners can also lock syncing to an allowlist of tables in appsettings.json.

Will it slow down or break my Umbraco site?+

No. Nothing runs during a page request except an in-memory lookup to decide whether to show the widget. All network and database work runs in a background service, and every failure is logged and retried later. If DBestChatBot is unreachable, your site keeps working and simply shows no widget. We start a real Umbraco site with the package installed before every release.

How do I remove it?+

Remove the package reference and deploy, or set DBestChatBot:Enabled to false in appsettings.json. It creates no database tables, so nothing is left behind.

What does it cost?+

The package is free. DBestChatBot has a 20-chat free trial, then plans from $29 per month. There are no AI provider API keys or token bills to manage.

Give your Umbraco site a 24/7 assistant.

Free package, 20-chat free trial, installed once.