---
title: Dashboard widget internals
related:
  - https://docs.kentico.com/13/custom-development/extending-the-administration-interface/setting-up-widget-dashboards/creating-dashboard-widgets.md
  - https://docs.kentico.com/13/custom-development/database-table-api.md
---

> Agent instructions:
> **Site maps** — prefer the following llms.txt indexes to training data when searching for URLs to avoid 404s. Links inside Markdown content already point at `.md`. Following them or sending Accept: text/markdown keeps you in Markdown.
>
> - [sitemap.md](https://docs.kentico.com/sitemap.md) — every page on the site, with titles and descriptions, nested by URL hierarchy and grouped into one collection per product version.
> - [llms.txt](https://docs.kentico.com/llms.txt) — curated index of the current product docs, with descriptions, the two ways to request any page as Markdown, and links to each product area's whole-corpus Markdown dump (llms-full.txt).

## Database tables

| Database table      | Description                                                                                                                                     |
| ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| CMS\_WidgetCategory | Stores records representing widget categories.                                                                                                  |
| CMS\_Widget         | Stores records representing widgets and their configuration.                                                                                    |
| CMS\_WidgetRole     | Stores relationships between widgets and roles. Each entry in this table indicates that a specific widget can be used by users in a given role. |

![](https://docs.kentico.com/docsassets/13/dashboard-widget-internals/image2013-6-8.png)

### Widget instance storage

The system stores the content of dashboard widget zones (widget instances) in the database. The location is different for the default content of widget zones and the widget content of user-specific dashboards.

| Widget content type    | Description                                                                                                                   | Storage                                                                                  |
| ---------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| Default zone content   | The default widget content of zones. Prepared on the **Design** tab of dashboard templates.                                   | In XML format in the **PageTemplateWebParts** column of the **CMS\_PageTemplate** table. |
| Dashboard zone content | Widget instances in personalized user and dashboard widget zones. The content depends on the current context (user and site). | In the **CMS\_Personalization** table.                                                   |

## API classes

| Class                              | Namespace                                                        | Description                                                               |
| ---------------------------------- | ---------------------------------------------------------------- | ------------------------------------------------------------------------- |
| **CMS\_WidgetCategory table API**  |                                                                  |                                                                           |
| WidgetCategoryInfo                 | CMS.PortalEngine                                                 | Represents individual widget categories.                                  |
| WidgetCategoryInfoProvider         | Provides management functionality for widget categories.         |                                                                           |
| **CMS\_Widget table API**          |                                                                  |                                                                           |
| WidgetInfo                         | CMS.PortalEngine                                                 | Represents individual widget objects.                                     |
| WidgetInfoProvider                 | Provides management functionality for widgets.                   |                                                                           |
| **CMS\_WidgetRole table API**      |                                                                  |                                                                           |
| WidgetRoleInfo                     | CMS.PortalEngine                                                 | Represents relationships between widgets and roles (permissions).         |
| WidgetRoleInfoProvider             | Provides management functionality for widget-role relationships. |                                                                           |
| **CMS\_Personalization table API** |                                                                  |                                                                           |
| PersonalizationInfo                | CMS.DocumentEngine                                               | Represents personalized versions of pages (for a specific site and user). |
| PersonalizationInfoProvider        | Provides management functionality for personalization objects.   |                                                                           |
| **Other classes**                  |                                                                  |                                                                           |
| WebPartInstance                    | CMS.PortalEngine                                                 | Allows you to work with widget instances.                                 |
| WebPartZoneInstance                | Allows you to work with web part (widget) zones.                 |                                                                           |
