Configuration via app.json

The example configuration shows all app.json parameters.

manifest.json
"mapapps_etl": {

      "MapappsETLTools": [
       {
          "fmeServerConfig": {
            "fmeServerUrl": "https://<FME Server URL>",
            "workspaceName": "<Workspace Name>.fmw",
            "repositoryName": "<Repository Name>",

            // deactivate to use the URL without the map.apps proxy. Required if the FME Server is called directly or via FME Proxy Servlet or security.manager
            "useProxy": true,

            // true if uploads should be sent to a validation Workspace before continuing with the main process
            "useAnalyzeWorkspace": false,

            // analyzeWorkspace and hiddenAnalyzeColumns are only required if useAnalyzeWorkspace is set to true.
            // Has to be a Workspace in the same Repository as the main Workspace.
            "analyzeWorkspace": "<Analyze Workspace Name>.fmw",
            // Hide columns of the analysis for output in the result table, i.e. "coordinate_system", "format_long", "attributes", "geometry_types"
            "hiddenAnalyzeColumns": ["format_long"]

            // Optional, timeout for http requests. Defaults to 600000 ms
            "timeout": 600000
          },
          "fmeTool": {

            // can be an empty array or any of the given values. The parameter window is always shown if the parameters aren't hidden (see fmeParameterOpts.hiddenParameters)
            "inputs": [
              "upload", "extent", "mapfeatures"
            ],

            // in comparison to the inputs, only one output is allowed. Can be "map", "status" or "download"
            "output": "map",

            // specifiy width and height in pixels of the tool.
            "marginBox": {"w": 550, "h": 500, },
            // marign box used for ifram reports (see "message" property in the FME response)
            "iframeMarginBox": {"w": 550, "h": 500, }
          },
          "fmeParameterOpts": {

            // list of FME Published Parameters. If all parameters of the Workspace are selected, the parameter dialog will be hidden.
            "hiddenParameters": [],

            "mapappsParameters": {
                // only required if the input methods is set to "extent". Can be "rectangle", "polygon", "polyline", "line" or "point"
                "extentType": "rectangle",

                // Max size for the input type extent in Km²
                "maxExtentArea": "100"

                // only required if the input method is set to "mapfeatures". Can be "rectangle" or "polygon"
                "mapSelectionExtentType": "rectangle",

                // only required if the input method is set to "upload" and analyze is configured. If false, feature types are collapsed/hidden initially.
                "showFeatureTypes": true,

                // optional for input method "upload". Allowed file extensions can specified as a comma separated list. If missing, all files will be allowed.
                "allowedFileExtensions": ".kml,.dwg",

                // optional: for input method "upload". Maximum file size in Mb.
                "maxUploadSize": "10",

                // optional: to overwrite the configuration of additional files to uploaded files. Main extension -> auxiliary extension -> mandatory true/false. With this example PNG without world file are accepted but Shapefiles without projection file are not.
                "uploadExtensionDependencies": {
                  "shp": {
                    "prj": true
                  },
                  "png": {
                    "pgw": false
                  }
                },

                // optional: run the process asynchronously even if now mail adress is provided. This option should also be used, if the mail adress is appended by the FME Proxy Servlet in the backend.
                "runAsynchronously": false

                // optional: for output methods "status" and "download". The parameter opt_requestermail will be set to mandatory
                "emailIsMandatory": false,

                // optional: mail address of currently logged in user is attached to workspace call as opt_requesteremail
                "provideMapappsEmail": false,

                // optional: user name of currently logged in user is attached to workspace call as mapapps_etl_user
                "provideMapappsUser": false,

                // optional: maximum number of features per layer allowed while drawing the result on the map. All excess features will be omitted
                "maxFeaturesPerLayer": 10000,

                // otpional: group layer name (visible in toc), defaults to "ETL"
                "groupLayerName": "Data Upload",

                // optional: popup type
                "popupType": "default"
            },

            // optional: the user has to accept the terms of use before starting the Workspace
            "acceptTermsOfUse":  false,

            // IDs of layers that should not be shown in the "Download features from map" dialog
            "mapFeaturesHiddenLayers": [
                "layerIdToBeHidden"
            ],

            "resultCenterDownload": {
              // default is "selected". With "all" everything will be downloaded even if now individual entries in the resultcenter are selected
              "downloadMode": "all"
            }

          },
          "title": "Tool Title",
          "tooltip": "Tooltip",
          "iconClass": "icon-upload",

          // tool id used to configure tool in the toolsets
          "id": "mapapps_tool_id",

           // optional: specify i18n values for each tool individually if necessary.
          "i18n": {
            "en": {
              "title": "Title - EN",
              "uploadExplanation": "Upload Explanation - EN",
              "uploadExplanationFooter": "Footer -EN",
              "extentExplanation": "Choose your area of interest on the map.",
              "mapFeaturesExplanation": "Choose layers from which vector graphics should be chosen. Then select elements on the map.",
              "furtherInformation": "Further information",

               // Error messages can be created from within the FME Workspace. Append your i18n strings here for custom error messages.
              "transformationErrors": {
                    "NO_FEATURE_WRITTEN": "The process didn't result in any outputs.",
                    "FILE_COULD_NOT_BE_READ": "The file ${0} could not be read.",
                    "TOO_MANY_FEATURES": "The maximum number of features for one layer was reached ${0}. Some features were omitted."
                },
               // optional: localize/overwrite prompt of published parameters. The key is the parameter name in FME
                "fme_published_parameter": {
                    "opt_requesteremail": "Enter Mail Address"
                }
            },
            "de": {
              "title": "Title - DE",
              "uploadExplanation": "Upload Erklärung - DE",
              "uploadExplanationFooter": "Footer - DE"
            }
          }
        }
    ]
}