Requires 5.2+ SDK

This feature requires Mobile SDK 5.2+ for iOS.


Requires Client Developer to Build Their own Feedback Badge or Button

To enable this feature you must create a type of button or Feedback badge to deploy the Feedback survey from your mobile app. The badge configuration in the CX Suite is not applicable to the mobile app version.


With the version 5.2+ release of the SDK for iOS, ForeSee offers the ability to launch Feedback surveys from an app. Previously, Feedback could only be launched on a mobile device from a browser.

ForeSee® Feedback is a self-serve survey development tool for typically small, context-specific surveys that are designed and developed within CX Suite. In contrast, CX Measure surveys are typically comprehensive surveys based on ForeSee Methodology.

Feedback surveys are activated using API commands, which are specified in this article. These commands allow you to launch a survey when appropriate to your mobile application. You must manually launch the survey as there is no tracking for eligibility criteria.

Feedback surveys launch as an overlay in a WebView. Once the survey has been completed, it can auto-close based on the settings specified in the Configuration file.

All default and configured CPPs are captured for Feedback surveys (same as with CX Measure surveys).

Creating a Feedback Survey

Feedback surveys are created on the Surveys page in CX Suite. Once you create and publish the survey, you need to add the Feedback ID to the SDK Configuration file. The Feedback ID is the last part of the Web Link Production Survey URL, which displays on the Publishing Settings page as highlighted with a red box in the following image.


Updating the Configuration File

You can add any number of Feedback IDs to the Configuration file and provide each with a descriptive name. See the feedback block applies to Mobile SDK 5.2+ section of the Configuration file example.

Launching a Feedback Survey

The next step is to include the command to launch the survey on the appropriate part of the application. This is performed using one of these commands:

  • showFeedback() Launches the default Feedback survey, which is the first survey listed in the Configuration file.
  • showFeedbackForName(…) Launches a specific survey, using the name specified in the Configuration file. Example: showFeedbackForName(Sample 2).

In the case where the survey is disabled, the survey does not load and no error message displays to the user. This works well when the survey is automatically loaded on a particular page.

In cases where the survey is connected to a link or action button, it is recommended to check if the survey is enabled before launching. This can be done using some of the features specified in the following section.

Other Commands

The following commands are available for managing Feedback surveys:

  • checkIfFeedbackEnabled() Checks if the default Feedback survey (first survey listed in the Configuration file) is enabled.
  • checkIfFeedbackEnabledForName(…) Checks if the named Feedback survey is enabled.
  • getAvailableFeedbackNames() Returns a list of all Feedback surveys.
  • setFeedbackListener(…) Sets the named Listener.

Event Listeners

  • onFeedbackPresented (String feedbackName).
  • onFeedbackNotPresentedWithNetworkError(String feedbackName) called when a survey is not presented due to a network error, e.g. 5xx.
  • onFeedbackNotPresentedWithDisabled(String feedbackName) called when a survey is not presented because it's disabled or an invalid code provided (404).
  • onFeedbackSubmitted(String feedbackName) called when a survey is submitted.
  • onFeedbackNotSubmittedWithAbort(String feedbackName) called when a survey is not submitted due to user aborting.
  • onFeedbackNotSubmittedWithNetworkError(String feedbackName) called when a survey is not submitted due to a network error.
  • onFeedbackStatusRetrieved (String feedbackName, boolean enabled) called when the checkIfFeedbackEnabled(…) method retrieves the status of a specific Feedback name.


If the feedback status cannot be retrieved due to a network error, the enabled parameter is set to false.