Skip to main content
Version: Flutter SDK

Start a survey programmatically

How to start a survey programmatically?โ€‹

In most cases, you should let the Screeb targeting engine start the survey. But sometimes, you may want to run a survey on user action.

tip

You can find the SURVEY_ID in the Manual section of the survey editor. You can also find it in the survey editor URL, after the /surveys/ part.

PluginScreeb.startSurvey("<survey-id>");

You will find survey id in Screeb platform.

Prevent multiple displays?โ€‹

If current user already replied to your survey and you would rather not display it many times, please add the allowMultipleResponses argument:

PluginScreeb.startSurvey("<survey-id>", allowMultipleResponses: false);

Respect survey status?โ€‹

By default, using manual survey start will ignore the survey status. If you want to respect the survey status, you can add the ignoreSurveyStatus argument and set it to false:

PluginScreeb.startSurvey("<survey-id>", ignoreSurveyStatus: false);

Contextualize responseโ€‹

The startSurvey command accepts a list of hidden fields. Values passed as parameters will be listed alongside the responses, on the Screeb platform.

PluginScreeb.startSurvey("<survey-id>", properties: <String, dynamic>{
'color': "red",
'size': 42,
});

Force languageโ€‹

If you want to force the survey language, you can pass the language parameter: Here is the order of priority for the language: survey.start param > init param > user property > browser language.

PluginScreeb.startSurvey("<survey-id>", ignoreSurveyStatus: false, language: "en");