In this tutorial, let us see how iparam callbacks can be used to enhance validation and make the standard installation parameters (iparams.json) much more dynamic. This approach cuts the need for custom installation parameters and leverages the simplicity and robustness of standard iparams out of the box

What we’ll learn today

  1. Understanding Installation Parameters and dive into Dynamic installation parameters
  2. Defining dynamic installation parameter with iparams.json with iparams.js.
  3. Get / Set properties of iparams fields with utility methods.
  4. Dyanmically validating fields by making third-party API calls.

What is Installation Parameters and Dynamic Installation Parameters

Installation parameters , as the name suggests, allows us to obtain certain values during the time of App Installation. Conceptually, these values are configuration details that the app requires to function properly. This is similar to how cab-hailing apps (E.g. Uber, Ola) require user's contact & location details or how social media apps (E.g. Instagram, Twitter) require us to choose topics that we are interested in before we start using them. Installation parameters (iparams) can range from simple text inputs to complex UI components.

Freshworks Developer Platform offers simplicity and sophistication when it comes to installation pages.

  • iparams.json offers a declarative syntax for defining iparam fields. It abstracts the UI and offers a simple JSONic interface for effortless development.
  • iparams.html allows complete customization of installation pages. However, the development and maintenance effort also increases.

When using iparams.json, the dynamic installation parameters can be leveraged to make the installation parameter dynamic using the callback functions.

What we’ll need

  1. A modern web browser like Google Chrome, Firefox, Edge, or Safari.
  2. A text editor like Visual Studio Code, Sublime Text, or Notepad++.
  3. Basic knowledge of HTML, CSS, JavaScript, CLI, and Browser DevTools
  4. Freshworks Developer Kit (FDK) installed.

Prerequisite Knowledge

  1. Read the Getting Started guide .
  2. Boiler plate code with fdk create and common_starter_template.