cs-icon.svg

App Config Location

The App Config UI Location allows you to manage all the settings for your app centrally. You need to configure it once and all the other locations (where the app is installed) can access these configurations.

The app configuration page is a separate entity that allows you to configure your application.
Setting up an app configuration page allows you to store all the config settings for your application and secure their access from a single location.

Types of configurations

There are two types of configurations that Contentstack supports:

  1. App Config:
    The app config type of configuration is a public configuration that you can share with all locations. You can view these configurations in your API response.

    Note: It is recommended not to store any sensitive data in the app config as anyone can access it via the APIs.

  2. Server Config:
    The server config contains sensitive configurations of your app. It is directly shared with the backend server.

    Suppose you register a webhook to capture app installation update events. After the installation is updated, the information is directly sent to the backend apps via the webhook.

    Note: It is recommended to use server config for configurations that should be kept private and can be accessed only by the admins.

Best Practices for Building an App Config Page

Your app config page should be straightforward, giving the users a clear idea of the details they need to provide to set up an application. It would be best if you have a simple interface so users can easily interact with your app.

Your app should allow users to manage all the other UI locations from your app. You should capture sensitive information using the server configuration type. Capture non-sensitive details using the app configuration type.

Note: The UI need not show the difference between server and app configurations.

Create an App Config Page

Let's see how to add app config location to your app:

  • Via the Developer Hub Console:
    To add the app config location to your app via the Developer Hub console, login to your Contentstack Account and follow the steps given below:

    1. Click the Developer Hub icon on the left navigation panel.
    2. Select the application for which you want to set up the configuration page.
    3. Click the UI Locations tab. To set the App URL, click the View Hosting Settings link. You will be redirected to the Hosting tab.
      View_Hosting_Settings.png
    4. In the Hosting tab, you can select Hosting with Launch or Custom Hosting options. Select the Custom Hosting option to enter the hosted URL of your application. Click the Save button to save your hosting configuration.
      App_URL.png
    5. Navigate to the UI Locations tab to configure the App Config UI location.
    6. Hover over the App Configuration location, and click the + Add button.
      Add_UI_Locations.png
    7. On the resulting Configuration page, set up the configurations for your application by providing details such as Path, and Description. You can also enable the configuration using the Enabled toggle button.
      You can configure any UI location as mandatory using the Required toggle. If the toggle is enabled, the location becomes mandatory and cannot be disabled. Whereas, if the toggle is disabled, the UI location is available to use but not mandatory.

      Additional Resource: Refer to the Marketplace App Manifest documentation for comprehensive details.

      Config_Screen.png
    8. Finally, click the Save button to save the configuration details.

      You will see the details of the configured UI location on the UI Locations tab in the App Configuration screen after installing the app.

      You can enable or disable the non-required UI locations.

      Apps which have the App Config location configured will be visible in the configuration screen.

      App_Configuration.png

Note: Each app can have only one app config location.

You can create custom app config locations by writing your custom code, or you can use the prebuilt boilerplate and modify the given code to suit your requirements.

Was this article helpful?
^