FDK9 is now generally available

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.
6 Likes

This topic was automatically closed after 60 days. New replies are no longer allowed.