01 Feb 2026 07:59 PM
Hi all,
I would like to upgrade my app to use the Gen3 settings instead of the "settings classic" for my application specific configuration.
What should I change to move to the new app?
(as you can see, behind the [MMM] app, there is still an outgoing link symbol, instead of just opening the settings here)
Solved! Go to Solution.
23 Feb 2026 06:38 AM
Has anyone already done this?
24 Feb 2026 11:40 AM
Hi SjoerdB,
Are you creating your settings using https://developer.dynatracelabs.com/develop/sdks/client-app-settings-v2/ with schemas?
10 Mar 2026 10:37 PM
Yes. We define our app settings via a schema in settings/schemas (schemaId com.company.app.settings) and access them using App Settings V2.
In the UI we use useSettingsV2 from @dynatrace-sdk/react-hooks, and for direct settings object access we use appSettingsObjectsClient from @dynatrace-sdk/client-app-settings-v2.
const { data: settingsData, isLoading, error } = useSettingsV2({ schemaId: "com.company.app.settings", });14 Mar 2026 03:07 PM
With this, it still remains a gen2 settings (classic)
19 Mar 2026 09:22 AM
Hi SjoerdB,
We're working on AI support for app creation and it will have a widget skill. However, this will take time until it's released.
Right now there's no low effort way to migrate schemas to widgets and you will have to create them on your own.
19 Mar 2026 05:18 PM
So, the answer to my question is: convert schema based settings to widget based then it will automatically pop up in the new GEN3 settings (and also be available in Gen2)?
I guess there is a small sample project available somewhere on github to show this works 😉
25 Mar 2026 11:07 AM
Why do you want the settings for your 3rd gen app to be available in Gen2?
There is currently no sample project available. However, we do have on our roadmap the creation of sample apps to be hosted on github for developers to have a reference or starting point on different features.
26 Mar 2026 06:55 AM
I don’t need them in gen2, unless that would be required for managed…
i just want to be sure to cope with all types of tenants, including the gen3-only tenants.
27 Mar 2026 03:10 PM - edited 27 Mar 2026 03:30 PM
I did some additional testing and can now reproduce the behavior consistently.
What I tested:
I then added a custom settings widget for the same schema, to see whether this would provide a native GEN3 settings experience.
Observed behavior:
Example symptom:
So from my perspective, the main question is:
Are custom app settings widgets currently expected to work inside GEN3 Settings, or is this flow not yet supported?
Right now it looks like:
If helpful, I can also share a minimal repro repository.
27 Mar 2026 03:52 PM - edited 27 Mar 2026 03:55 PM
Additional observation:
GEN3 does resolve the app correctly through the App Engine registry and retrieves the isolated app URL successfully.
Example:
GET /platform/app-engine/registry/v1/apps/my.biz.ictcore.testbed?add-fields=isolatedUri
The response contains:
So the issue does not seem to be app discovery or app registration.
GEN3 appears to resolve the app and its widget host correctly, but rendering the settings widget still results in an empty page.
This suggests the problem is more likely in the GEN3 settings widget loading/integration path, for example:
---
Additional technical observation:
The settings widget HTML is actually being loaded. The /widgets/settings/testbed/ page returns a valid HTML document with:
So the issue is not that the widget entry page is missing.
It appears that GEN3 does reach the widget HTML, but the page still ends up blank during or after runtime bootstrapping.
This suggests the problem is likely in the GEN3 widget embedding/runtime initialization path rather than in the existence of the widget bundle itself.
02 Apr 2026 02:57 PM - edited 02 Apr 2026 03:00 PM
Hi,
Our team is working on the Settings app and we are currently in the process of creating customer facing documentation and how-to guides for customers building their own settings. It will take a bit longer to get everything finished and published tho.
In the meantime, I can offer some help if building a settings widget is important and time relevant for you! If integrating into the Settings app is not so important and you can wait until the official documentation and tooling is released, I would suggest that you build the UI for your settings as part of your application. If this is done in a decoupled way, it can then be reused for the Settings app.
The first thing to note is that the new Settings app no longer provides an auto generated UI. This means that every app must build the relevant settings UI according to the schema they have.
The entries in the Settings app are called "settings widgets".
The first step is to create the files and then register the widget:
1. Files:
<app-root>/settings/your-settings.widget.tsx
2. app.config.json:
"app": {
"settings": {
"your-settings": {
"name": "<Your-Widget-Name>",
"description": "<User-Friendly-Description>",
"schemaIds": ["<Your-Settings-Schema-Ids>"]
}
}
}
The file `your-settings.widget.tsx` can look something like this:
import { AppRoot } from '@dynatrace/strato-components/core';
import React from 'react';
import { YourSettingsFormContainer } from '../<your-app-code>';
const YourWidget = () => {
return (
<>
<ToastContainer />
<YourSettingsFormContainer />
</>
);
};
const rootElement = document.getElementById('root');
if (rootElement) {
const root = ReactDom.createRoot(rootElement);
root.render(
<AppRoot>
<YourWidget />
</AppRoot>,
);
} else {
console.error('the root element is not defined');
}
Everything in terms of permissions, validation, errors, navigation, etc must be handled. There will be some tooling to offer a consistent look & feel as well as some out of the box functionality.
I'll stop here for now. Please try the above suggestions and let me know if there's any other questions.
Featured Posts