<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Custom App deployment in Developer Q&amp;A Forum</title>
    <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298345#M1662</link>
    <description>&lt;P&gt;If using the&amp;nbsp;&lt;SPAN&gt;settingsObjectsClient inside *.function.ts file is what you refer by app function, then yes I was using it that way only. It looks like the invalid peer certificate error comes at the time of sending request itself before it looks for any authentication/token.So seems to be something at the network layer. Any opinions/suggestions would be of great help.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 24 Apr 2026 14:27:38 GMT</pubDate>
    <dc:creator>AjithaN</dc:creator>
    <dc:date>2026-04-24T14:27:38Z</dc:date>
    <item>
      <title>Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/295331#M1630</link>
      <description>&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;I was trying to create a Custom App which is having functionality to create Dynatrace workflows based on the data provided in the application. I was able to run the application successfully , but not able to deploy it even in lower tenants.&lt;/P&gt;&lt;P&gt;When trying to deploy it using npm run deploy command, I'm getting the error as below&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;✔ Creating bundles...&lt;BR /&gt;✔ Built the app&lt;BR /&gt;✔ Validating manifest&lt;BR /&gt;✔ Compressed app artifact&lt;BR /&gt;✖ Failed to deploy the app&lt;BR /&gt;Error: Failed to install the app&lt;BR /&gt;HTTP 400 Bad Request&lt;/P&gt;&lt;P&gt;Manifest of app 'my.workflow.app' violates schema&lt;/P&gt;&lt;P&gt;Only apps that are provided by Dynatrace can use the 'automation:workflows:write' scope.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I believe that its related to the workflow.write scope been added in the appconfig, but since the functionality involves creation of workflows, I cannot remove this scope as well. Is there any workaround to bypass this issue and deploy the app successfully. Please suggest&lt;/P&gt;</description>
      <pubDate>Thu, 26 Feb 2026 12:22:17 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/295331#M1630</guid>
      <dc:creator>AjithaN</dc:creator>
      <dc:date>2026-02-26T12:22:17Z</dc:date>
    </item>
    <item>
      <title>Re: Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/295344#M1631</link>
      <description>&lt;P&gt;Hi&amp;nbsp;AjithaN,&lt;BR /&gt;This restriction can't be bypassed, as it's an important measure to prevent a custom app from doing more than it should.&lt;BR /&gt;&lt;BR /&gt;While your app can't create the workflow programmatically, you can still let users of your app create workflows by using intents. You can find more about this here:&amp;nbsp;&lt;A href="https://developer.dynatrace.com/develop/guides/workflows/use-intents/" target="_blank"&gt;https://developer.dynatrace.com/develop/guides/workflows/use-intents/&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 26 Feb 2026 14:25:28 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/295344#M1631</guid>
      <dc:creator>doesterr</dc:creator>
      <dc:date>2026-02-26T14:25:28Z</dc:date>
    </item>
    <item>
      <title>Re: Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/295405#M1632</link>
      <description>&lt;P&gt;Thanks for the response. Let me have a look at this&amp;nbsp; and come back&lt;/P&gt;</description>
      <pubDate>Fri, 27 Feb 2026 12:26:19 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/295405#M1632</guid>
      <dc:creator>AjithaN</dc:creator>
      <dc:date>2026-02-27T12:26:19Z</dc:date>
    </item>
    <item>
      <title>Re: Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/297315#M1650</link>
      <description>&lt;P&gt;I was able to fulfill the requirement and create the workflow this way(Just that I made the Deploy functionality of the workflow to be done from Workflows UI itself to bypass the&amp;nbsp;&lt;SPAN&gt;automation:workflows:write scope.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Now I am trying to improve the app by trying to build the capability to create Anomaly Rules based on the input provided in the App. From the developer documentation, I understand that this is possible with Settings API /Dynatrace SDK. I tried some of the below approaches , but didnt get a successful outcome.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;1) Create Anomaly Rules Directly from the App using Settings API&lt;/P&gt;&lt;P&gt;The app backend could not communicate securely with the Dynatrace tenant API ---&amp;gt; invalid peer certificate: UnknownIssuer&lt;/P&gt;&lt;P&gt;2) Create Anomaly Rules from the App backend using Dynatrace SDK --&amp;gt;no equivalent methods found for creation of Anomaly rules&lt;/P&gt;&lt;P&gt;3)Use Dynatrace Workflows HTTP action to call Settings API --&amp;gt; NotCapable: Blocked request to 'els27805'&lt;BR /&gt;(host not in allowlist)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Can you suggest if there is a reliable/feasible approach to fulfill this requirement,or this again has limitations.?&lt;/P&gt;</description>
      <pubDate>Tue, 07 Apr 2026 06:48:58 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/297315#M1650</guid>
      <dc:creator>AjithaN</dc:creator>
      <dc:date>2026-04-07T06:48:58Z</dc:date>
    </item>
    <item>
      <title>Re: Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/297361#M1651</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.dynatrace.com/t5/user/viewprofilepage/user-id/86234"&gt;@AjithaN&lt;/a&gt;&amp;nbsp;,&lt;BR /&gt;For host not in allow list, you can go to settings (New) -&amp;gt; General -&amp;gt; External requests and add patterns like &amp;lt;tenant-id&amp;gt;.apps.dynatrace.com and &amp;lt;tenant-id&amp;gt;.live.dynatrace.com&lt;/P&gt;</description>
      <pubDate>Wed, 08 Apr 2026 07:45:15 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/297361#M1651</guid>
      <dc:creator>Maheedhar_T</dc:creator>
      <dc:date>2026-04-08T07:45:15Z</dc:date>
    </item>
    <item>
      <title>Re: Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/297382#M1652</link>
      <description>&lt;P&gt;Thanks for jumping in,&amp;nbsp;&lt;a href="https://community.dynatrace.com/t5/user/viewprofilepage/user-id/76275"&gt;@Maheedhar_T&lt;/a&gt;&amp;nbsp;!&lt;BR /&gt;&lt;BR /&gt;&lt;a href="https://community.dynatrace.com/t5/user/viewprofilepage/user-id/86234"&gt;@AjithaN&lt;/a&gt;&amp;nbsp;, here is more info:&amp;nbsp;&lt;A href="https://developer.dynatrace.com/develop/guides/app-functions/allow-outbound-connections/" target="_blank"&gt;https://developer.dynatrace.com/develop/guides/app-functions/allow-outbound-connections/&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 08 Apr 2026 12:18:42 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/297382#M1652</guid>
      <dc:creator>doesterr</dc:creator>
      <dc:date>2026-04-08T12:18:42Z</dc:date>
    </item>
    <item>
      <title>Re: Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/297518#M1653</link>
      <description>&lt;P&gt;Thanks for the response. But May I ask you one thing. How the&amp;nbsp;&lt;SPAN&gt;&amp;lt;tenant-id&amp;gt;.apps.dynatrace.com&amp;nbsp; comes as a external request.. Its in this same tenant and link that we are running the workflow or the custom App. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Any hints on the Settings API error if we wanted to have the API call from a custom App&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 10 Apr 2026 10:13:27 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/297518#M1653</guid>
      <dc:creator>AjithaN</dc:creator>
      <dc:date>2026-04-10T10:13:27Z</dc:date>
    </item>
    <item>
      <title>Re: Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/297529#M1655</link>
      <description>&lt;P&gt;&lt;STRONG&gt;About the external requests:&lt;/STRONG&gt;&lt;BR /&gt;After some testing myself with doing HTTP Requests from a Workflow to your own tenant, I could spot a difference, depending on the API you're accessing:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;A request to the Hub API, e.g.&amp;nbsp;&lt;A href="https://&amp;lt;tenant-id&amp;gt;.apps.dynatrace.com/platform/hub/v1/catalog/apps" target="_blank"&gt;https://&amp;lt;tenant-id&amp;gt;.apps.dynatrace.com/platform/hub/v1/catalog/apps&lt;/A&gt;&amp;nbsp;succeeds&lt;/LI&gt;
&lt;LI&gt;A request to the Environment API v2, e.g.&amp;nbsp;&lt;A style="font-family: inherit; background-color: #ffffff;" href="https://&amp;lt;tenant-id&amp;gt;.dynatrace.com/api/v2/settings/objects" target="_blank"&gt;https://&amp;lt;tenant-id&amp;gt;.live.dynatrace.com/api/v2/settings/objects&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;fails with the "host not in allowlist" error.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;SPAN&gt;But notice the difference, the domain of the Environment API v2 is different than your normal tenant domain (it's ".live." instead of ".apps."). After adding&amp;nbsp;&lt;A style="font-family: inherit; background-color: #ffffff;" href="https://&amp;lt;tenant-id&amp;gt;.dynatrace.com/api/v2/settings/objects" target="_blank"&gt;&amp;lt;tenant-id&amp;gt;.live.dynatrace.com&lt;/A&gt;&amp;nbsp;to the allow list, the HTTP Request in my workflow succeeded.&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;About the Invalid peer certificate: UnknownIssuer error:&lt;/STRONG&gt;&lt;BR /&gt;If you're not using the Classic Environment V2 SDK yet for your request to the API from your app, I'd recommend giving this a try.&lt;BR /&gt;&lt;A href="https://developer.dynatrace.com/develop/sdks/client-classic-environment-v2/#settingsobjectsclient" target="_blank"&gt;https://developer.dynatrace.com/develop/sdks/client-classic-environment-v2/#settingsobjectsclient&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 10 Apr 2026 11:44:21 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/297529#M1655</guid>
      <dc:creator>doesterr</dc:creator>
      <dc:date>2026-04-10T11:44:21Z</dc:date>
    </item>
    <item>
      <title>Re: Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298138#M1657</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Thanks again for responding. While, I guess I tried this approach as well using DYnatrace SDk.&lt;/P&gt;&lt;P&gt;Basically, I tried 2 approaches now .&lt;/P&gt;&lt;DIV&gt;1) Settings API (direct API calls )&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Calling Dynatrace’s Settings API endpoints directly&lt;/DIV&gt;&lt;DIV&gt;const url =&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; "https://{environmentid}.apps.dynatrace.com/api/v2/settings/objects";&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; const response = await fetch(url, {&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; method: "POST",&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; headers: {&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "Content-Type": "application/json",&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; "Authorization": `Bearer ${process.env.DT_API_TOKEN}`&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; },&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;--&amp;gt;Received invalid peer certificate&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;2) Using Dynatrace SDK (settingsObjectsClient)&lt;/DIV&gt;&lt;DIV&gt;Here I saw , two types of errors: settingsObjectsClient.postSettingsObjects(...)&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Method-related errors, e.g.:&lt;/DIV&gt;&lt;DIV&gt;TypeError: settingsObjectsClient.createSettingsObjects is not a function&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;And later, even with the correct method: settingsObjectsClient.postSettingsObjects(...)&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;invalid peer certificate: UnknownIssuer&lt;/DIV&gt;</description>
      <pubDate>Wed, 22 Apr 2026 12:46:19 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298138#M1657</guid>
      <dc:creator>AjithaN</dc:creator>
      <dc:date>2026-04-22T12:46:19Z</dc:date>
    </item>
    <item>
      <title>Re: Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298314#M1659</link>
      <description>&lt;P&gt;Using the Dynatrace SDK from within an app function is the correct approach. Are you maybe trying to use it from the UI rather than an app function?&lt;/P&gt;</description>
      <pubDate>Fri, 24 Apr 2026 11:35:20 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298314#M1659</guid>
      <dc:creator>doesterr</dc:creator>
      <dc:date>2026-04-24T11:35:20Z</dc:date>
    </item>
    <item>
      <title>Re: Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298345#M1662</link>
      <description>&lt;P&gt;If using the&amp;nbsp;&lt;SPAN&gt;settingsObjectsClient inside *.function.ts file is what you refer by app function, then yes I was using it that way only. It looks like the invalid peer certificate error comes at the time of sending request itself before it looks for any authentication/token.So seems to be something at the network layer. Any opinions/suggestions would be of great help.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 24 Apr 2026 14:27:38 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298345#M1662</guid>
      <dc:creator>AjithaN</dc:creator>
      <dc:date>2026-04-24T14:27:38Z</dc:date>
    </item>
    <item>
      <title>Re: Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298652#M1669</link>
      <description>&lt;P&gt;Can you share the code of your app function? (the *.function.ts) file.&lt;BR /&gt;And have you added "&amp;lt;tenant-id&amp;gt;.live.dynatrace.com" to Settings → General → External Requests?&lt;/P&gt;</description>
      <pubDate>Wed, 29 Apr 2026 13:50:45 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298652#M1669</guid>
      <dc:creator>doesterr</dc:creator>
      <dc:date>2026-04-29T13:50:45Z</dc:date>
    </item>
    <item>
      <title>Re: Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298711#M1671</link>
      <description>&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;here is my createRule.function.ts file using settingsObjectClient.&amp;nbsp;&amp;lt;tenant-id&amp;gt;.live.dynatrace.com is already there in the external requests host pattern.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;import&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;SPAN&gt;settingsObjectsClient&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;from&lt;/SPAN&gt; &lt;SPAN&gt;"@dynatrace-sdk/client-classic-environment-v2"&lt;/SPAN&gt;&lt;SPAN&gt;;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;export&lt;/SPAN&gt; &lt;SPAN&gt;default&lt;/SPAN&gt; &lt;SPAN&gt;async&lt;/SPAN&gt; &lt;SPAN&gt;function&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;payload&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;any&lt;/SPAN&gt;&lt;SPAN&gt;) {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;try&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;!&lt;/SPAN&gt;&lt;SPAN&gt;payload&lt;/SPAN&gt;&lt;SPAN&gt;) {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;success&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;false&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;error&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;"Payload missing"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; };&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; }&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;// &lt;span class="lia-unicode-emoji" title=":white_heavy_check_mark:"&gt;✅&lt;/span&gt; IMPORTANT:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;// postSettingsObjects expects an ARRAY, not { objects: [...] }&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;const&lt;/SPAN&gt; &lt;SPAN&gt;result&lt;/SPAN&gt; &lt;SPAN&gt;=&lt;/SPAN&gt; &lt;SPAN&gt;await&lt;/SPAN&gt; &lt;SPAN&gt;settingsObjectsClient&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;postSettingsObjects&lt;/SPAN&gt;&lt;SPAN&gt;({&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;body&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;SPAN&gt; [&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;schemaId&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;"builtin:davis.anomaly-detectors"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;scope&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;"environment"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;value&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;title&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;payload&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;ruleName&lt;/SPAN&gt;&lt;SPAN&gt;, &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;// &lt;span class="lia-unicode-emoji" title=":white_heavy_check_mark:"&gt;✅&lt;/span&gt; correct field for your tenant&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;enabled&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;true&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;cpuUsage&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;enabled&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;true&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;threshold&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;payload&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;threshold&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; },&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;memoryUsage&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;enabled&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;false&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; },&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;tagFilters&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;payload&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;entityTags&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; },&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; },&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ],&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; });&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;success&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;true&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;result&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; };&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; } &lt;/SPAN&gt;&lt;SPAN&gt;catch&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;SPAN&gt;err&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;any&lt;/SPAN&gt;&lt;SPAN&gt;) {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;console&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;error&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;"ERROR:"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;err&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;message&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;return&lt;/SPAN&gt;&lt;SPAN&gt; {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;success&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;false&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;error&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;err&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;message&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; };&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; }&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Wed, 29 Apr 2026 18:32:56 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298711#M1671</guid>
      <dc:creator>AjithaN</dc:creator>
      <dc:date>2026-04-29T18:32:56Z</dc:date>
    </item>
    <item>
      <title>Re: Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298792#M1676</link>
      <description>&lt;P&gt;Thanks! There's nothing wrong with that implementation.&lt;BR /&gt;&lt;BR /&gt;Are you hitting the certificate error when running locally (npm run dev) or when the app and it's app function is deployed to the tenant?&lt;BR /&gt;&lt;BR /&gt;If locally, then maybe something in your corporate network is in the way. In that case, talking to your IT team to obtain the right CA cert and setting it via&amp;nbsp;NODE_EXTRA_CA_CERTS might do the trick.&lt;BR /&gt;&lt;BR /&gt;If deployed, that would mean that something is not right on your tenant - in that case please open a support ticket so they can have a closer look.&lt;BR /&gt;&lt;BR /&gt;I hope this helps to get you closer to the real solution&amp;nbsp;&lt;span class="lia-unicode-emoji" title=":crossed_fingers:"&gt;🤞&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 30 Apr 2026 15:25:40 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298792#M1676</guid>
      <dc:creator>doesterr</dc:creator>
      <dc:date>2026-04-30T15:25:40Z</dc:date>
    </item>
    <item>
      <title>Re: Custom App deployment</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298932#M1677</link>
      <description>&lt;P&gt;&lt;SPAN&gt;NODE_EXTRA_CA_CERTS is already in place in environment variable where the path to certificate.pem file(CA) is already added. I was getting the certificate error at running the application not deployment.. npm run start is the command used.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;As I said, I was trying to create an anomaly detection rule using the App and the error comes up after providing the input and while submitting using the below type button..&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN&gt;button&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;type&lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt;"submit"&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;style&lt;/SPAN&gt;&lt;SPAN&gt;=&lt;/SPAN&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;padding&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;"12px 0"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;background&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;"var(--dt-color-action-primary)"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;color&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;"white"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;borderRadius&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;8&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;border&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;"none"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;cursor&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;"pointer"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;fontSize&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt; &lt;SPAN&gt;16&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/SPAN&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&amp;gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Create Rule (If needed)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN&gt;button&lt;/SPAN&gt;&lt;SPAN&gt;&amp;gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;Also, currently, I get this error in the app UI now after I tweaked few things in the code&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;'Rule creation failed: Failed. Schema validation failed.'&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Mon, 04 May 2026 11:50:15 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Custom-App-deployment/m-p/298932#M1677</guid>
      <dc:creator>AjithaN</dc:creator>
      <dc:date>2026-05-04T11:50:15Z</dc:date>
    </item>
  </channel>
</rss>

