Create new app

To create a new app, click + Create in the Apps tab.


Next, enter a title for your app. If you use the default layout, this title is displayed to users within the app and is also used as the title for the browser window.

Based on the title, an app ID is suggested. This ID is used in the URL with which the app is started. You can customize the ID.

Do not create apps with IDs that only differ in their case from already existing apps.

New apps can be created through one of the following three modes:

  • Default app

  • Use app template

  • Upload app

Default app

Select Default App to create a new app with the most commonly used features. Contents and further functions can be added to the app afterwards. For more information, see configuration of apps.

The template for the default app is located in map.apps data directory ( The app can be modified there or replaced by other apps so that they are used as default apps.

Use app template

If apps are created on the basis of an app template, all properties of the template are transferred to the app as a basic configuration. Subsequently, contents and functions can be changed in the concrete app.

Upload app

An app can be uploaded directly as a zip file.

Publish app

Apps can have various states:

  • Draft (default)

  • Edited

  • Verified

  • Published

  • Deprecated

Users can only view and start published apps. Administrators and editors have access to all apps.

If map.apps is used in combination with map.apps User Management , security.manager or ArcGIS Online/Portal for ArcGIS, access to published apps can be restricted to certain roles.

Follow these steps to protect an app:

  1. Open the app publication dialog and set the app’s state to published:

    publish app

  2. Step forward to the sharing screen and select the roles the app is usable for. For security reasons, an administrator/editor can only authorize apps for roles that they themselves own.

    select roles

  3. Complete the dialog and save the app.

The app is now protected and invisible for non-authenticated users. Users can click Login in the app overview to sign in. After authentication, all public (non-protected) apps and all apps accessible for the user are shown. Protected apps can then be started without a separate login.

When opening an app directly with the app’s URL, a login dialog is shown. After a successful verification, the app is started.

To display user information as well as the logout-button inside the app, add the bundle authentication to the app configuration.

Delete app

An administrator or editor can delete apps in map.apps Manager. These apps are removed from the database and cannot be restored. Set an app to the "Deprecated" state to make it no longer accessible without deleting it.

If an app is registered as an element in ArcGIS Online/Portal for ArcGIS, this element is removed when the app is deleted.

Export app

Apps can be exported as a zip file. In this file, all data of the app (including for example images or CSS files) is stored. Export an app to upload it as an app template, archive it or share it with others.

Register apps in ArcGIS Online or Portal for ArcGIS

Using map.apps Manager, an app can be registered as portal item. Title, description and preview image are copied from the app metadata to the portal item. The map.apps dialog contains a link to the corresponding portal element. The used portal instance can be defined in the configuration.

When creating a portal element, a login to the portal is necessary. This step is not necessary if map.apps is connected to the user management of the portal (see Integrated Named User Login). Portal authentication can also be activated in the dialog. This means that users must log in using their portal identity when starting the app.

The status of the portal registration is represented by the following symbols in map.apps Manager:

App is not registered

no symbol

App is registered as Portal Item


App is registered as Portal Item, portal user management is active (OAuth)

not registered

The display in the app overview is not updated if you remove the registration in the app editor or delete the item directly in ArcGIS Online or Portal for ArcGIS. Open the Portal Registration dialog to update the status.

Set bundle versions for an app

Bundles used in an app must be used in compatible versions. Make sure that all product bundles correspond to either line 3 or line 4.

The "Manage product version in selected apps" tool lets you change the versions of all bundles used for a product (such as map.apps or a product extension) at the same time. To do this, you must first select the product and the corresponding version.

In addition to selecting the minimum version, one of the following update guidelines can be selected:

Choice Description

No updates

The app is only compatible with the exact version specified.


The app is compatible with all bugfix versions starting with the defined version.

Minor Updates

The app is compatible with all minor versions from the defined version onwards.

Manually define bundle versions

The versions of bundles used can also be defined in the App Editor. The bundle name must be separated from the version by a @. Example: toc@1.2.3. The version number can be defined according to the Semantic Versioning specification .

The map.apps system is configured independently of the versions of individual bundles. To define the version of the map.apps system, set the following property in the properties section of the app.json file:

    "properties": {
        "amdPackages": "apprt@1.2.3"

Export app for native app

The Export for native app tool lets you export any app, including all resources, as a zip file. The app configuration and the bundles used in the app are analyzed and made available for download. Compared to the Export App tool, these results can be used as a basis for creating a native app.

native de

To export all required JavaScript files, the tool integrates all AMD modules of the configured bundles. If an app uses its own bundles, it must be ensured that these are optimized and that a dependencies.json file exists. Use the appropriate input field to add further modules or files.

Use absolute URLs in an app, because the use of protocol-relative URLs like // in native apps can lead to problems.

JavaScript files are sometimes loaded during the runtime of an app. When exporting in map.apps Manager, these are not determined in advance and are therefore not integrated into the zip file. The missing files can either be added manually in the expert settings or loaded in separate bundles. If the bundles map-preload-2D and map-preload-3D are added to the app, the files are already loaded at the start of the app and also integrated into the zip file during export.

Pre-optimize app (beta)

This feature is in beta and therefore subject to change. Pre-optimization improves the startup performance in dedicated cases, but it is not necessary for apps to run productively.

Your feedback on this feature is highly appreciated!

Enable pre-optimization

To make the start of an app faster, click Enable pre-optimization in the app configuration window. The pre-optimization process might take several minutes.

pre optimization confirmation en

Apps that are pre-optimized can be recognized in the apps table of the manager.

pre optimization manager flag en

To disable pre-optimization, click the same button in the app configuration window again.

In which cases is performance improved?

Pre-optimization improves the startup performance of an app in the following cases:

In case of repeated visits to an app by a user over a longer period of time

Without pre-optimization, static files are no longer loaded from the users browser cache after half a day (unless the expires setting is changed in the configuration), but are loaded from the server again. For pre-optimized apps, certain files that are required to run the app are given a static ID as the file name. These files are loaded from the browser cache indefinitely, which significantly reduces the amount of data and thus the loading time when an app is called again.

When many simultaneous calls are made by different users

Without pre-optimization, the different dependencies of bundles used in an app are analyzed each time an app is started to ensure that all required bundles are loaded. In pre-optimized apps, the bundle composition is considered complete and static, and this dependency analysis is omitted. This significantly reduces database queries and server-side processing operations, which provides a performance benefit, especially when there are many concurrent accesses.

What needs to be considered after activation?

Pre-optimized apps are detached from dynamic dependency resolution. This results in the fact that updated bundles or newly uploaded bundles of a pre-optimized app are not known.

Improvements or bug fixes in a bundle are thus not visible in the app. Furthermore, depending on the changes made to the bundles, the app may not launch at all or may not launch correctly. To ensure that changes in pre-optimized apps take effect, you must disable pre-optimization and then re-enable it. Pre-optimization is disabled if an app is uploaded, again, or synchronized with an app template.

Live configuration is not available for pre-optimized apps.

Therefore, enable pre-optimization only for apps that are considered final and ready for production use.

When map.apps is updated to a newer version, pre-optimized apps are no more able to detect required bundles, because they are not present in the system anymore. Global settings referenced by bundles from manifest.json files via @@key@@ expressions are not updated anymore. Pre-optimization has to be disabled and enabled again.