AI agents: the content index is at /llms.txt. Every page is also available as Markdown — send the request header Accept: text/markdown, or append .md to the page URL.
Xperience Docs

Cookie consent

We use necessary cookies (opens in a new tab) to run our website and improve your experience while browsing. Additional cookies are only used with your consent. You may revoke your consent on the Cookies Policy (opens in a new tab) page or in your browser at any time.

Configure (opens in a new tab)
  • Documentation
    Administration interface basicsDevelopers and adminsBusiness usersChangelogGlossary
  • Guides
    Welcome to Xperience by KenticoAdministration interface basicsCustomer journeysDigital marketingConfigurationDevelopmentArchitectureUpgrade to Xperience by Kentico
  • Training
    For AdminsFor Business usersFor DevelopersFor Solution architects
  • API Examples
    ConfigurationContent managementDevelopmentDigital marketing
  • Changelog
    Documentation updatesSecurity advisories
  1. Home
  2. Developers and admins
  3. Customization
  4. Extend the administration interface

Extend the administration interface


Was this page helpful?

Send us feedback Go back to top
  • Community Questions & Answers (opens in a new tab)
  • Contact support (opens in a new tab)

The Xperience administration interface exposes a comprehensive customization framework that enables developers to

  • add new functionality to existing applications and pages,
  • add entirely new pages with custom functionality to applications in the system,
  • create new applications with dedicated UI and functionality, and
  • create new UI form components to manage user input when editing objects and configuring other components.

The administration consists of two main parts:

  • Client application – the front-end (client-side) part of the administration interface implemented as a single-page browser application using the React JavaScript library⁠ (opens in a new tab). Provides a graphical abstraction over various management APIs that is suitable for business user interaction with the system.

  • Back end – sits in the ASP.NET Core web application as a set of API endpoints called by the client application. The back-end implementation is responsible for interacting with Xperience APIs and other business logic to perform database operations (typically CRUD⁠ (opens in a new tab) over system objects), calling specific management APIs according to instructions received from the client application, and various other tasks.

    All admin UI components (pages, applications) must contain a corresponding back-end definition and registration. For example, every page in the admin UI is registered on the back end using the following metadata:

    • React component used to render the page
    • the type that implements the page on the back end (handles requests from user interaction, provides data to display)
    • the page's parent
    • the URL slug under which it's accessible. A similar registration process is used for every admin UI element. With this approach, the back end drives the layout, appearance, and functionality of the entire administration application. The main benefit is that you can introduce new pages and other elements to the UI without writing any front-end code, assuming you reuse React components already available to the client application.

The following simplified diagram illustrates the described structure:

Both parts of the application communicate using a set of API endpoints. As a general rule, every action available in the client application has a corresponding handler on the back end that processes the request and ensures propagation to the database, if necessary. Typical examples are responding to user interactions (such as form submissions, button clicks) or during page requests to retrieve the data to display.

Before you get started

  1. Take a look at Admin UI customization model overview for a brief overview of the available customization options.
  2. Follow the instructions on Prepare your environment for admin development to set up an environment needed for admin development. Depending on the type and scope of the planned customizations, you may need to write custom JavaScript modules for the client application, which requires additional tooling.
  3. Read the pages in this section to learn more about individual extensions.

Related pages

  • Prepare your environment for admin development
  • UI pages
  • UI page extenders
  • UI application pages