<?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: Clarification on AppFunctions limitation in Developer Q&amp;A Forum</title>
    <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280694#M1484</link>
    <description>&lt;P&gt;You can only send data to AppFunction via payload. In fact, if your script has access to headers before the request is sent, you can send them via payload.&lt;/P&gt;</description>
    <pubDate>Thu, 03 Jul 2025 11:50:18 GMT</pubDate>
    <dc:creator>imsingh</dc:creator>
    <dc:date>2025-07-03T11:50:18Z</dc:date>
    <item>
      <title>Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/218506#M410</link>
      <description>&lt;P&gt;With reference to &lt;A href="https://developer.dynatrace.com/develop/functions/" target="_self"&gt;https://developer.dynatrace.com/develop/functions/&lt;/A&gt;, what does it mean for following items:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Functions are deployed in an environment with 256 MB RAM (Regardless of how many AppFunction created, all will run within 256 MB RAM?)&lt;/LI&gt;&lt;LI&gt;Functions can't send binary responses (AppFunction can only return JSON ?)&lt;/LI&gt;&lt;/UL&gt;</description>
      <pubDate>Wed, 19 Jul 2023 09:41:46 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/218506#M410</guid>
      <dc:creator>william_cher</dc:creator>
      <dc:date>2023-07-19T09:41:46Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/218555#M414</link>
      <description>&lt;P&gt;Hi there&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Each App function runs in its own environment with 256MB RAM. If you have two App functions in your application, both will get 256MB RAM separately.&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;You can't return binary data like images or videos from a function. You can send text back in either &lt;STRONG&gt;JSON&lt;/STRONG&gt;&amp;nbsp;or &lt;STRONG&gt;plain text&lt;/STRONG&gt;.&amp;nbsp;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Let me know if it answers your question. Thanks &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 19 Jul 2023 14:58:06 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/218555#M414</guid>
      <dc:creator>imsingh</dc:creator>
      <dc:date>2023-07-19T14:58:06Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280393#M1470</link>
      <description>&lt;P&gt;&lt;!--  StartFragment   --&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Subject:&lt;/STRONG&gt; Clarification on Log Ingest via AppFunction with Api-Token&lt;/P&gt;&lt;P&gt;Hi imsingh,&lt;/P&gt;&lt;P&gt;First off, I just wanted to compliment you on the excellent and informative videos you created on Dynatrace University — they’ve been a huge help.&lt;/P&gt;&lt;P&gt;While building my first AppFunction, I ran into a limitation that I hope you might be able to clarify.&lt;/P&gt;&lt;P&gt;I was trying to call the v2/logs/ingest API from within an AppFunction using an Api-Token. This call works perfectly when made externally (e.g. from Python or Postman), but inside the AppFunction I received the following error:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;"Unsupported authorization scheme 'Api-Token'. Dynatrace platform APIs require the authorization scheme 'Bearer'."&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here’s the full error payload, in case it helps:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;{ "error": { "code": 401, "message": "Unsupported authorization scheme 'Api-Token'. Dynatrace platform APIs require the authorization scheme 'Bearer'.", "details": { "traceId": "c25be4adefbbb1296f15adf13a275196" } } }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I now understand that AppFunctions operate within the Dynatrace Platform context, which requires Bearer authentication — but unfortunately, the v2/logs/ingest endpoint doesn’t currently support Bearer tokens or OAuth clients. This caught me off guard and was admittedly a bit frustrating, as I expected parity between external and platform-internal API usage.&lt;/P&gt;&lt;P&gt;I also explored the Developer Portal and came across &lt;a href="https://community.dynatrace.com/t5/user/viewprofilepage/user-id/64071"&gt;@dynatrace&lt;/a&gt;-sdk/client-classic-environment-v2, but I wasn’t sure if this is the right approach for ingesting logs from within an AppFunction. I wasn’t able to install the package or find a working example using the logsClient.&lt;/P&gt;&lt;P&gt;Given that my use case is quite simple — just forwarding a small set of JSON events into Dynatrace&amp;nbsp; from within an AppFunction — could you please recommend the best-supported method to do this from inside the platform? A sample the proper SDK or HTTP call would be extremely helpful.&lt;/P&gt;&lt;P&gt;Really appreciate your time and guidance.&lt;/P&gt;&lt;P&gt;Best regards,&lt;BR /&gt;MarwanC&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;!--  EndFragment   --&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 28 Jun 2025 14:58:38 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280393#M1470</guid>
      <dc:creator>MarwanC</dc:creator>
      <dc:date>2025-06-28T14:58:38Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280502#M1473</link>
      <description>&lt;P&gt;You should use the&amp;nbsp;&lt;a href="https://community.dynatrace.com/t5/user/viewprofilepage/user-id/64071"&gt;@dynatrace&lt;/a&gt;-sdk/client-classic-environment-v2 sdk from the AppFunction without using an extra tokens. The platform and sdk will take care of authentication.&lt;/P&gt;</description>
      <pubDate>Tue, 01 Jul 2025 08:09:17 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280502#M1473</guid>
      <dc:creator>imsingh</dc:creator>
      <dc:date>2025-07-01T08:09:17Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280504#M1474</link>
      <description>&lt;P&gt;Thank you which function is in&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;@&lt;/SPAN&gt;&lt;SPAN&gt;dynatrace&lt;/SPAN&gt;&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;sdk&lt;/SPAN&gt;&lt;SPAN&gt;/&lt;/SPAN&gt;&lt;SPAN&gt;client&lt;/SPAN&gt;&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;classic&lt;/SPAN&gt;&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;environment&lt;/SPAN&gt;&lt;SPAN&gt;-&lt;/SPAN&gt;&lt;SPAN&gt;v2&lt;/SPAN&gt; &lt;SPAN&gt;sdk&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;I installed it like this. What functions is used in the API calls to extract tokens etc...&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;-----------------------------------------------------------------&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;install &lt;a href="https://community.dynatrace.com/t5/user/viewprofilepage/user-id/64071"&gt;@dynatrace&lt;/a&gt;-sdk/client-classic-environment-v2 sdk&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;-----------------------------------------------------------------&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;&lt;A class="" title="Ctrl + Click to open https://developer.dynatrace.com/develop/sdks/ in a new tab" href="https://developer.dynatrace.com/develop/sdks/" target="_blank" rel="noopener noreferrer"&gt;&lt;SPAN&gt;https://developer.dynatrace.com/develop/sdks/&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;npm install &lt;a href="https://community.dynatrace.com/t5/user/viewprofilepage/user-id/64071"&gt;@dynatrace&lt;/a&gt;-sdk/client-classic-environment-v2 sdk&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;|(node:35476) Warning: Setting the NODE_TLS_REJECT_UNAUTHORIZED environment variable to '0' makes TLS connections and HTTPS requests insecure by disabling certificate verification.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;(Use `node --trace-warnings ...` to show where the warning was created)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;npm warn deprecated node-uuid@1.4.8: Use uuid module instead&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;npm warn deprecated hawk@1.1.1: This module moved to @hapi/hawk. Please make sure to switch over as this distribution is no longer supported and may contain bugs and critical security issues.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;npm warn deprecated request@2.37.0: request has been deprecated, see &lt;/SPAN&gt;&lt;SPAN&gt;&lt;A class="" title="Ctrl + Click to open https://github.com/request/request/issues/3142 in a new tab" href="https://github.com/request/request/issues/3142" target="_blank" rel="noopener noreferrer"&gt;&lt;SPAN&gt;https://github.com/request/request/issues/3142&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;npm warn deprecated swig@1.4.1: This package is no longer maintained&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;npm warn deprecated boom@0.4.2: This version has been deprecated in accordance with the hapi support policy (&lt;/SPAN&gt;&lt;SPAN&gt;&lt;A class="" title="Ctrl + Click to open http://hapi.im/support in a new tab" href="http://hapi.im/support" target="_blank" rel="noopener noreferrer"&gt;&lt;SPAN&gt;hapi.im/support&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;SPAN&gt;). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (&lt;/SPAN&gt;&lt;SPAN&gt;&lt;A class="" title="Ctrl + Click to open http://hapi.im/commercial in a new tab" href="http://hapi.im/commercial" target="_blank" rel="noopener noreferrer"&gt;&lt;SPAN&gt;hapi.im/commercial&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;SPAN&gt;).&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;npm warn deprecated cryptiles@0.2.2: This version has been deprecated in accordance with the hapi support policy (&lt;/SPAN&gt;&lt;SPAN&gt;&lt;A class="" title="Ctrl + Click to open http://hapi.im/support in a new tab" href="http://hapi.im/support" target="_blank" rel="noopener noreferrer"&gt;&lt;SPAN&gt;hapi.im/support&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;SPAN&gt;). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (&lt;/SPAN&gt;&lt;SPAN&gt;&lt;A class="" title="Ctrl + Click to open http://hapi.im/commercial in a new tab" href="http://hapi.im/commercial" target="_blank" rel="noopener noreferrer"&gt;&lt;SPAN&gt;hapi.im/commercial&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;SPAN&gt;).&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;npm warn deprecated sntp@0.2.4: This module moved to @hapi/sntp. Please make sure to switch over as this distribution is no longer supported and may contain bugs and critical security issues.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;npm warn deprecated hoek@0.9.1: This version has been deprecated in accordance with the hapi support policy (&lt;/SPAN&gt;&lt;SPAN&gt;&lt;A class="" title="Ctrl + Click to open http://hapi.im/support in a new tab" href="http://hapi.im/support" target="_blank" rel="noopener noreferrer"&gt;&lt;SPAN&gt;hapi.im/support&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;SPAN&gt;). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (&lt;/SPAN&gt;&lt;SPAN&gt;&lt;A class="" title="Ctrl + Click to open http://hapi.im/commercial in a new tab" href="http://hapi.im/commercial" target="_blank" rel="noopener noreferrer"&gt;&lt;SPAN&gt;hapi.im/commercial&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;SPAN&gt;).&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;added 43 packages, and audited 581 packages in 12s&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;80 packages are looking for funding&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;run `npm fund` for details&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;18 vulnerabilities (1 moderate, 13 high, 4 critical)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;To address all issues, run:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;SPAN&gt;npm audit fix&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 01 Jul 2025 08:25:41 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280504#M1474</guid>
      <dc:creator>MarwanC</dc:creator>
      <dc:date>2025-07-01T08:25:41Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280505#M1475</link>
      <description>&lt;P&gt;You need to use logsClient to ingest logs into Dynatrace. Here is an example code snippet that you can use for inspiration:&amp;nbsp;&lt;A href="https://developer.dynatrace.com/develop/data/ingest-data/" target="_blank"&gt;https://developer.dynatrace.com/develop/data/ingest-data/&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 01 Jul 2025 08:34:06 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280505#M1475</guid>
      <dc:creator>imsingh</dc:creator>
      <dc:date>2025-07-01T08:34:06Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280567#M1476</link>
      <description>&lt;P&gt;&lt;!--  StartFragment   --&gt;&lt;/P&gt;&lt;P&gt;Thank you for the clarification. I understand that this scenario involves a direct invocation of the Dynatrace API, which allows for native calls without explicitly requiring an API token in the request path.&lt;/P&gt;&lt;P&gt;However, my current use case involves system-to-system communication, where an external system triggers a Dynatrace AppFunction. While I'm able to successfully extract and parse the payload (via JSON.stringify()), I critically require access to the HTTP headers forwarded from the calling system — specifically for purposes such as validation, routing, or custom authorization.&lt;/P&gt;&lt;P&gt;The problem is that, within the AppFunction runtime, I have not found a documented or programmatic method to access the original request headers. My assumption is that this information is available internally, possibly via the execution context or a specific SDK helper, but I have yet to identify the proper pattern or API surface to expose those headers.&lt;/P&gt;&lt;P&gt;For reference, here is the function signature I’m currently working with:&amp;nbsp;export default async function handler(request: AppFunctionRequest): Promise&amp;lt;AppFunctionResponse&amp;gt; {&lt;BR /&gt;// logic here&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;!--  StartFragment   --&gt;&lt;/P&gt;&lt;P&gt;The request object does expose the payload/body as expected, but there is no explicit .headers or similar metadata surface that I can access in this context.&lt;/P&gt;&lt;P&gt;Any guidance on how to extract custom headers (e.g., X-Correlation-ID, Authorization, etc.) from the incoming request within the AppFunction environment would be greatly appreciated — especially if there is an SDK-based or officially supported mechanism.&lt;/P&gt;&lt;P&gt;Thanks again for your assistance and kudo to the videos that you publish regularly.&lt;/P&gt;&lt;P&gt;Marwan...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;!--  EndFragment   --&gt;&lt;/P&gt;&lt;P&gt;&lt;!--  EndFragment   --&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 02 Jul 2025 08:40:12 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280567#M1476</guid>
      <dc:creator>MarwanC</dc:creator>
      <dc:date>2025-07-02T08:40:12Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280656#M1482</link>
      <description>&lt;P&gt;Hi Marwan&lt;BR /&gt;&lt;BR /&gt;Let me understand your challenge.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;You have a script that run outsides Dynatrace. This script is executing App function. You're trying to pass authentication headers from your external script to app function right?&lt;BR /&gt;&lt;BR /&gt;If the answers to above question is yes. Then I think you just need to use OAuth Client with your external script as mentioned here&amp;nbsp;&lt;A href="https://developer.dynatrace.com/develop/access-platform-apis-from-outside/" target="_blank"&gt;https://developer.dynatrace.com/develop/access-platform-apis-from-outside/&lt;/A&gt;&amp;nbsp;You don't need to handle authentication in AppFunction then. Just use the DT SDK for ingesting data.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;If that's not what you want. Unfortunately, you can't extract custom headers in App function.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 03 Jul 2025 07:16:19 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280656#M1482</guid>
      <dc:creator>imsingh</dc:creator>
      <dc:date>2025-07-03T07:16:19Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280684#M1483</link>
      <description>&lt;P&gt;Thanks once more, now you confirmed that headers can not be passed to an AppFunctions. This is clear now and I will handle the logic inside the AppFunction.&lt;/P&gt;&lt;P&gt;One last question, is there a way to pass an argument(s) to the AppFunction, can data pass only via payload?&lt;/P&gt;&lt;P&gt;I appreciate a quick answer.&lt;/P&gt;</description>
      <pubDate>Thu, 03 Jul 2025 10:57:56 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280684#M1483</guid>
      <dc:creator>MarwanC</dc:creator>
      <dc:date>2025-07-03T10:57:56Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280694#M1484</link>
      <description>&lt;P&gt;You can only send data to AppFunction via payload. In fact, if your script has access to headers before the request is sent, you can send them via payload.&lt;/P&gt;</description>
      <pubDate>Thu, 03 Jul 2025 11:50:18 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280694#M1484</guid>
      <dc:creator>imsingh</dc:creator>
      <dc:date>2025-07-03T11:50:18Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280701#M1485</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Hi Marwan, Function invocations are not tied to HTTP calls and can be called via other means as well. This is why there is currently no information on HTTP headers available. Also, currently, calls via HTTP run over the public API Gateway and are stripped of all information that is not relevant to a function invocation. The relevant information is available within the `globalThis.dtRuntime` object. I see that some use cases might benefit from additional information that is stored in headers, and I'll take that back with my Architect colleagues to discuss further.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 03 Jul 2025 12:53:53 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280701#M1485</guid>
      <dc:creator>stefan_baumgart</dc:creator>
      <dc:date>2025-07-03T12:53:53Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280755#M1486</link>
      <description>&lt;P&gt;&lt;!--  StartFragment   --&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you, Stefan — I appreciate your response.&lt;/P&gt;&lt;P&gt;This is a critical discussion point for many Dynatrace users, particularly in enterprise environments where integrations are driven by external systems beyond our control. In such scenarios, it’s impractical to ask customers to modify their outbound payload structure to conform to Dynatrace-specific expectations. They often need to emit data &lt;EM&gt;as-is&lt;/EM&gt;, without reshaping their systems around the receiver’s constraints.&lt;/P&gt;&lt;P&gt;When invoking AppFunctions, this becomes especially problematic. There is currently no straightforward way to extract parameters passed via the URL — such as ?particular=xyz — for contextual routing or logic shaping inside the function. These kinds of query parameters are foundational in many API-driven ecosystems and are widely used to encode dynamic context, versioning, filtering, and feature toggling.&lt;/P&gt;&lt;P&gt;To that end, I would like to understand whether it's possible — or planned — to expose the globalThis.dtRuntime object or a similar execution context API that allows developers to introspect headers, query parameters, or invocation metadata within an AppFunction. This would significantly enhance the flexibility and integrability of the platform for system-to-system automation scenarios.&lt;/P&gt;&lt;P&gt;I intend to raise this idea in the community for discussion and voting. Do you believe DT would support enabling secure access to invocation metadata from within AppFunctions? I’d be keen to hear your thoughts — and those of the product team — on its architectural implications and viability.&lt;/P&gt;&lt;P&gt;&lt;!--  EndFragment   --&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 03 Jul 2025 19:35:30 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280755#M1486</guid>
      <dc:creator>MarwanC</dc:creator>
      <dc:date>2025-07-03T19:35:30Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280758#M1487</link>
      <description>&lt;P&gt;I raised this as an idea to DT Development team, kindly vote for it as well.&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.dynatrace.com/t5/Product-ideas/Expose-Invocation-Metadata-Query-Parameters-amp-Headers-in/idi-p/280757#M52725" target="_blank"&gt;https://community.dynatrace.com/t5/Product-ideas/Expose-Invocation-Metadata-Query-Parameters-amp-Headers-in/idi-p/280757#M52725&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 03 Jul 2025 19:44:55 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280758#M1487</guid>
      <dc:creator>MarwanC</dc:creator>
      <dc:date>2025-07-03T19:44:55Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280859#M1490</link>
      <description>&lt;P&gt;Thank you. I hit another limitations today (see error below), would you be kind to tell me the maximum size&amp;nbsp; limit that is allowed allowed by AppFunction?&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Parsed JSON Response: &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{ &amp;nbsp;"error": { &amp;nbsp; &amp;nbsp;"code": 541, &amp;nbsp; &amp;nbsp;"message": "Execution crashed", &amp;nbsp; &amp;nbsp;"details": { &amp;nbsp; &amp;nbsp; &amp;nbsp;"logs": "", &amp;nbsp; &amp;nbsp; &amp;nbsp;"type": "RESPONSE_TOO_LARGE", &amp;nbsp; &amp;nbsp; &amp;nbsp;"message": "The response of the called function exceeded the size-limit" &amp;nbsp; &amp;nbsp;} &amp;nbsp;} }&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 04 Jul 2025 14:57:35 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/280859#M1490</guid>
      <dc:creator>MarwanC</dc:creator>
      <dc:date>2025-07-04T14:57:35Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/281033#M1492</link>
      <description>&lt;P&gt;Hi Marwan!&lt;/P&gt;&lt;P&gt;The size limit for responses in a serverless function is roughly 5MB.&lt;BR /&gt;Please refer to&amp;nbsp;&lt;A href="https://docs.dynatrace.com/docs/shortlink/workflows-action-javascript#run-javascript-action-requirements" target="_blank"&gt;https://docs.dynatrace.com/docs/shortlink/workflows-action-javascript#run-javascript-action-requirements&lt;/A&gt;&amp;nbsp;and&amp;nbsp;&lt;A href="https://developer.dynatrace.com/develop/app-functions/#runtime-limitations" target="_blank"&gt;https://developer.dynatrace.com/develop/app-functions/#runtime-limitations&lt;/A&gt;&amp;nbsp;for further information on limitations.&lt;/P&gt;</description>
      <pubDate>Tue, 08 Jul 2025 09:01:20 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/281033#M1492</guid>
      <dc:creator>dominik_gruber</dc:creator>
      <dc:date>2025-07-08T09:01:20Z</dc:date>
    </item>
    <item>
      <title>Re: Clarification on AppFunctions limitation</title>
      <link>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/281138#M1493</link>
      <description>&lt;P&gt;&lt;SPAN&gt;​I would like to share this factsheet about AppFunction, hope it helps everyone before deciding on the usage widely within your project.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN&gt;AppFunction Runtime Limitations&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;I&gt;&lt;SPAN&gt;A Technical Fact Sheet for Platform API&lt;/SPAN&gt;&lt;/I&gt;&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN&gt;Runtime Environment&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Language Support&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;TypeScript / JavaScript&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;Execution Engine&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;Deno Container&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;Memory Allocation&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;256 MB per function&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;Maximum Execution Time&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;120 seconds&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;Payload Format&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;JSON only — for both input and output&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;Input Interface&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;No support for parameters or headers&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;Payload Size Limit&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;5 MB maximum (combined input/output)&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;HTTP Status on Breach&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;541 — Error triggered when payload exceeds limit&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;Licnse Consumption&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN&gt;There is a cost associated with each call on the license consumption.&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN&gt;Security &amp;amp; Access Control&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;Fully sandboxed execution&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;Scoped strictly to user context&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;No external network access unless explicitly configured&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN&gt;Architectural Limitations&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;&lt;span class="lia-unicode-emoji" title=":cross_mark:"&gt;❌&lt;/span&gt; No support for binary uploads, file streaming, or multi-format data&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;&lt;span class="lia-unicode-emoji" title=":cross_mark:"&gt;❌&lt;/span&gt; Stateless — no persistent storage or session retention&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;&lt;span class="lia-unicode-emoji" title=":cross_mark:"&gt;❌&lt;/span&gt; Limited extensibility without advanced setup&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;&lt;span class="lia-unicode-emoji" title=":warning:"&gt;⚠️&lt;/span&gt; Runtime crash (541) if payload exceeds 5 MB&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN&gt;Usage Guidance&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;AppFunction is best suited for lightweight, single-purpose, deterministic logic.&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;Not recommended for heavy computation, external API integration (without setup), or long-running processes.&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;SPAN&gt;Developer Note&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;This document is intended to inform teams and stakeholders of critical limitations in AppFunction architecture before integration. Please assess functional scope carefully and run stress tests on payload volume when developing new functions.&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 09 Jul 2025 09:42:39 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Developer-Q-A-Forum/Clarification-on-AppFunctions-limitation/m-p/281138#M1493</guid>
      <dc:creator>MarwanC</dc:creator>
      <dc:date>2025-07-09T09:42:39Z</dc:date>
    </item>
  </channel>
</rss>

