Manage and build apps
Apps are groups of preconfigured objects that bundle best practices. They are point-in-time snapshots stored in a shared repository. Apps are built to be as self-contained as possible, but often must include core objects that are shared (for example, language field). The quality of the reporting structure or the utilization of Experience programs can significantly streamline the application development and release process.
Manage apps screen
The Manage Apps screen lists all of the apps you have created, provides general information for those apps, and allows you to manually configure them. This screen lists all of the apps available for that particular company instance. Apps are sorted by the date the app was last modified and can be filtered by name or description. Use the search bar at the top of the list to search for a particular app. For example, if you follow a naming convention for apps based on their vertical, search can help you locate those connectors more quickly.
For example, in this image, the Retail Store Experience app is selected. The details pane to the right of the list provides a summary of that app.
- Details pane
- Details pane menu
- Details pane tabs
Details pane
Click on an app to reveal its details pane, which shows:
-
Details tab — Summarizes the most important information of the app, such as:
-
App ID — Unique identifier of the app.
-
Status — Apps are typically in one of the following states:
-
Development — Apps that have no released versions.
-
Available — Apps that have completed versions that are available to be installed.
-
-
Versions — Number of versions the app has.
-
Created — Date and time the app was created and the user who created it.
-
Last modified — Date and time the app was last modified and the user who modified it.
-
Icon — Icon used in the app's tile on the Install Apps screen.
-
-
Installations tab — Lists all app installations and shows each installation's version, client and date.
-
Grants tab — Lists all released apps entitled to companies, and grant additional entitlements. For information, see Grant an entitlement to a company.
Details pane menu
For the selected app, click the details pane menu to:
- Edit app settings
- Edits the app details such as name, type, icon, and upgrade policy.
- Delete
- Only for apps with Development status. Deletes the app. Deleted apps are removed completely.
- Deprecate
- Only for apps with Available status. Deprecates the app. Deprecated apps are no longer available to be installed but continue to be listed in the Manage Apps screen.
- Decommission
- Decommissions the app. Use this when an app is no longer needed.
Versions
Additionally, apps contain one or more versions, which in turn contain the configuration entities you want bundled for distribution. Expand the app line item to view previously released versions of the app. Click on any version to reveal its own details pane, which shows:
-
Details tab — Summarizes the most important information of the version, such as:
-
Version number
-
Type — Versions can be:
-
Major versions — For the initial version of an app and subsequent versions that have major enhancements.
-
Minor versions — For subsequent versions tied specifically to a major version that needs minor fixes.
-
Patches — For subsequent versions tied to a released version, to update a small subset of an released version's entities and send it to clients on previous versions of the app.
-
-
Status — Versions have one of these statuses:
-
Draft — Versions that are in progress. They may be edited many times before being released.
-
Released — Completed versions that are available to be installed.
-
Deprecated — Versions that have been replaced by a subsequent release or are no longer supported. Deprecated versions are not available to be installed.
Restriction: For any individual app, you can have only one major version in the Draft state. After releasing a major version, you can create another major version of that app for editing. Additionally, for any individual app, having any version (major or minor) in the "Draft" state locks its parent version from being used simultaneously in another draft. For example, if you have released major version 1.0 of an app, you can use that version as the parent of either another major version (such as 2.0) or a minor version (such as 1.1), but not both.
-
-
Created — Date and time the version was created and the user who created it.
-
Last modified — Date and time the version was last modified and the user who modified it.
-
Snapshots — Number of snapshots of the version. When you add configuration entities to a version initially, those entities are merely references to the actual entities in your instance. Creating a new snapshot of a version captures the current state of the referenced entities.
-
Last snapshot — Date and time the last snapshot was created and the user who did it.
-
Release notes — Typically, release notes are brief descriptions of the latest changes, improvements and error fixes done to a version.
Restriction: Release notes are visible only to app administrators.
-
-
Items tab — Lists all configuration entities added to that version. App versions directly include specific items, but also include those item dependencies and prerequisites. An app does not install when it doesn't have all the objects it needs. For information, see Supported configuration entities in apps.
Tip: Items that are reused from app to app or across versions of the same app have the same name and ID. -
Installations tab — Lists all version installations and shows each installation's version, client, and date.
Version details pane menu
For the selected version, click the details pane menu to:
- Create a new version
- Update a released app with major versions to add new functionality, or create a minor version to fix existing functionality.
- Send patch
- Send updates to a small subset of an app's entities to any or all clients on a previous version.Restriction: This option is disabled for the oldest version of an app, since there would be no available previous versions as target versions for the patch.
- Deprecate and delete
-
When an app version is no longer needed, consider deprecating or deleting that version. Deprecated versions are no longer available to be installed but continue to be listed in the Manage Apps screen. Deleted versions are removed completely. You can deprecate versions in the "Released" state. You can delete versions in the "Draft" and "Deprecated" states.
Tip: While deprecated versions can no longer be installed, consider keeping them in this state because you can still create minor versions of deprecated versions. For example, when you release version 2.0 of an app, you might want to deprecate version 1.0. After much time has passed and you are sure you no longer need to patch version 1.0, you might then delete that version
Build apps
As an app developer, you might want to build your own apps to distribute and publish on the Medallia marketplace, Medallia Xchange. To build a new app, create its initial version and then add configuration entities to that version.
To build an app:
- Click New App in the top right corner of the Manage Apps screen.
- On the App Settings section:
-
Enter a name for the app.
Select a Type for the app, which determines the icon and label used in the app's tile on the Install Apps screen. You can also use your own icon by selecting Upload my own Icon and uploading your image file. Types include: Topic Library, Program, Connector, Enhancement, Base, Demo, and Internal.
- Set the app Upgrade Policy, which determines how an app will behave if a newer version is created. Select:
-
No upgrade — This app is not eligible to be upgraded and no upgrade button appears.
-
Pull only — The upgrade option appears only on the instance where this app is installed, and updates cannot be pushed by the app developer.
-
Push and pull — This app can be upgraded from the instance on which it is installed (pull), or updates can be pushed by the app developer with no action needed by an instance administrator.
Restriction: This feature is inactive by default. Ask your Medallia expert to file a Feature activation request with Medallia Support.
-
- Enter the Initial Version Name. For example, you might identify versions of a package by release number (such as 1.0.0), and date (such as Spring 2020).
-
Define whether it was created by Medallia or by a partner.
-
Define whether the app can be installed by:
-
All MEC sandboxes — All published versions of these apps are available to install on any client sandbox connected to the same repository, and do not require a grant for their client key. These are known as "open apps".
Restriction: This feature is inactive by default. Ask your Medallia expert to file a Feature activation request with Medallia Support. -
Instances granted with permission — Only available for instances whose client keys have been added to a grant.
-
- Click Create, then select the Content section to add descriptive content to your app version.
-
- On the Version Details section:
-
Enter the Version Name for the first version. The content of this field is auto-completed with the value entered for the Initial Version Name, but you can edit it. We recommend following a standard version naming rubric to identify versions. The Version Name for published apps is visible in Experience Cloud, both on the tile on the Install apps screen and throughout the installation screens.
Select the version Type. The content of this field is locked to Major version for the first version.
-
Provide a Short Summary of the app.
-
Optionally, provide a Detailed Description of the app with additional information.
-
Enter a brief list of its contents. For information, see Supported configuration entities in apps.
-
Select the Industry, Suite, Target Users, Business Impact, and Languages that apply.
-
Enter the Documentation URL for the app.
Tip: Use a link that is accessible to the right audiences: make sure it has permissions set up so people can view it. -
Enter the Cost of the app.
Optionally, complete the Internal content section with Launch date, Internal description, Prerequisites, Installation notes, Post-install steps, Version release notes, and Internal documentation URL. These fields are visible to administrators installing the app, but will not appear on the public Medallia marketplace, Medallia Xchange.
-
Click Save and continue. The first version of your app will now appear in the Manage Apps list in the "Draft" state
-
-
On the Items section:
-
Make a selection from the Category selected dropdown and then the Entity selected dropdown. Select the Add checkbox for each configuration entity you want to add to your app. As you add entities, they appear in the Items section of the details pane. For a complete list of the entity types you can add, see Supported configuration entities in apps.
Open the Dependencies section of the details pane to calculate the additional configuration entities that are included in your app. These additional entities are required by the entities that you selected.
If you add new entities while the Dependencies section is already open, click Calculate Dependencies to recalculate the list. We recommend that you add entities in a top-down fashion: selecting the top-most level object and letting Experience Cloud calculate the dependencies, rather than trying to pick dependencies manually.
If you determine that an entity should be excluded from the app, click the Exclude icon next to that entity. Open the Excluded section to view excluded entities.
Warning: Exclude entities only when you are certain they are not needed on instances that might install the package; otherwise, the app might not work as expected or fail to install. The best practice is to include all entities calculated by Medallia Experience Cloud as dependent.-
If you have completed language translations for any of the entities you selected, use the Advanced section of the details pane to select the translated languages you want to include in the app.
For more information, see Translations.
-
When you are done working in the new app, click Save and continue. This automatically sends you to the Snapshots section.
-
-
On the Snapshots section:
When you are ready to update the app with the current configuration of the entities you added, click Create Snapshot.
The details pane for the version is updated to include the latest snapshot.
Tip: Changes to any of the entities included in an app do not automatically update: if any entity in the app is changed, take a new snapshot for those changes to be included in the app itself. Also note that, if any included entity has been changed for any reason since the app was built, the snapshot captures it the way it is configured at the moment the snapshot is created.
-
Creating a snapshot adds the app to the Install Apps screen of your own instance. Apps cannot be installed on other instances until they are released and entitled. Test the app version before you release it.
Manage apps
To manage an app, click Edit to modify details such as name, type, icon, and upgrade policy.
Release apps
Releasing an app locks its version. You can continue work in the app by creating a new version.
You must release an app before entitling that package on another Experience Cloud instance:
- On the Manage Apps screen, select the version of the app to release.
- Optionally, add release notes to that version of the app. Release notes are visible only to app administrators. To do this:
- Click Edit on the Details pane of the version.
- Enter notes in Version Release Notes.
- Click Save and continue until you get to the Snapshots screen.
Click Release.
- On the Release Version dialog, select the snapshot of that version to use.
- Click Release.Warning: When you release a version, its contents cannot be edited. This action cannot be undone.
- In the confirmation dialog, click OK.
The status of the version changes to "Released".
Grant an entitlement to a company
While all apps that you create appear automatically on your own Install Apps screen when you create a snapshot, only open apps are available by default on other instances, the rest need to be entitled for those instances. This enables you to transact the sale of an app before making it available to the company for installation:
Before you begin, learn the client key of the company. If you have access to the company's instance, you can see the key by clicking Get Client Key on the Install Apps screen of that instance.
You can entitle apps to more than one company. Additionally, you can entitle a previously released version of the app:
- On the Manage Apps screen, select the app to grant to a company.
- In the Details pane, open the Grants section.
- Click Add key.
- In the Add Installation dialog, enter the company's client key, select the released version to grant, and then click Add. Note: You can only entitle released versions. Deprecated versions of an app are not available for entitlement.
- In the confirmation dialog, click OK. The app is now available on the company's Install Apps screen.
