FDK 9.0.0 comes with major updates to the NodeJS runtime. It also redefines how apps make HTTP Requests with the new templated Request Method. As part of FDK 9, we are also upgrading the platform version.
NodeJS runtime
FDK 9 apps will be running on NodeJS 18 runtime, which brings in changes to app creation, testing, validation, and packing.
To begin, ensure to upgrade your local development environments with Node18
nvm install 18.12.0
Delete FDK user-level directory
rm -rf ~/. fdk
Then, install the FDK 9.0.0
For more information on how to migrate to the latest FDK version, see the migration guide.
Platform version
The platform version has been upgraded to version 2.3, which will be reflected in the manifest.json file of the app. To start using the new Request Method, ensure to migrate the apps to platform version 2.3. For information on how to migrate to the latest platform version, see the migration guide.
Request templates
We have redefined the way an app can make an HTTP request with the introduction of the templated request method that is more secure and prevents arbitrary construction of requests through a mandatory request snapshot. This entails,
- A new configuration file to add HTTP request configurations/templates -
config/requests.json
. - A new property in the app manifest for each product to explicitly describe which templates defined in the configuration file are used in the app code - requests.
- A new runtime API to work with request templates -
client.request.invokeTemplate()
(for front-end) and$request.invokeTemplate()
(for serverless). - Deprecation of the
whitelisted-domains
property from the app manifest as the request template explicitly declares the host.
Read more about the Request templates here.
Note: Platform version 2.2 (FDK 8) is scheduled to be deprecated by September 30th, 2023.
For a demonstration of the templated request method, see request-method-samples, which uses request templates in front-end, serverless, and SMI components.
Migrating to FDK9 involves changes in the App Code; read more about it in Migration guide > App code changes.
CLI updates
- A search command is introduced to enable searching the developer community for content related to a specified query string. For information on syntax, usage, and description of the command, see Freshworks CLI > Search.
- The content displayed on our command line interface is enhanced to provide a better viewing experience.
- The FDK is upgraded to use npm Commander as the FDK’s command line argument parser. As a result of this, the CLI now provides an enhanced developer experience.