Script data API

Use the same settings as our script to collect data and show surveys to your users.

The script that runs on your website uses all settings you can do in our platform to decide how to behave and what data to collect. If you want to collect data in an environment where its not possible to run our script directly, for example a native mobile app or a desktop application you can use our API to get these settings and use it in your own code.

The API endpoint is the same as your script but instead of a ".min.js" ending you use the /data/<key> format. The response is in JSON format.

Script URL

https://script.extellio.com/<key>.min.js

API URL

https://script.extellio.com/data/<key>

Root properties

Property Description
key The key used to make the request, each data source has its own key.
dists Survey distributions with settings how and when to show each survey. A survey usually have three distributions, one for each device type (desktop, tablet, mobile) but can have any number of distributions.
websites All websites connected to this data source. Usually only one but it can have multiple urls.
publicPath The base url for our script servic if more resources needs to be loaded or sent.
trackerBaseUrl The base url for our analytics, heatmaps  and session recordings. This is where events are sent to track page views, custom events and record sessions.
autoStart If the script should start automatically when its loaded, default is true.

Distribution properties

Only used properties are included so there might be properties missing in the response.

Property Description
id Unique ID of the distribution.
surveyId  Unique ID of the survey being distributed.
groupSurveyId Unique ID of the group this survey belongs to, used to now show similar surveys. A group contains languages and versions of surveys.
surveyTitle Title of the survey being distributed.
surveyLanguage The language of the survey being distributed, can be matched against the website language.
surveyUrl The url to show the survey.
excludedIPs  List of IPs to exclude.
includedUrls  List of URL patterns to include.
excludedUrls  List of URL patterns to exclude.
websiteId  What website this distribution is used on. This website exists in the "websites" root property. 
websiteLanguageId If the website has multiple languages it references the language to use.
status

 Status of distribution, only active distributions are shown. Possible values:

ACTIVE: Survey is collecting data.
LICENSE_LIMIT: License does not allow more surveys.
MISSING_LICENSE: There is no license active that allow surveys.
MISSING_POLICY: There is no privacy policy.
SCHEDULED: The survey has not yet started.
EXPIRED: The survey has ended.
INACTIVE: The survey has no start date set.
deviceTypes  List of devices to display the survey to, possible values: DESKTOP, TABLET, MOBILE
portion Percentage of visitors to show the survey to.
delay Number of seconds to wait until showing the survey, across all visits.
sessionDelay Number of seconds to wait until showing the survey for the current visit.
frequency Number of seconds until showing the survey again when it was answered.
declineFrequency Number of seconds until showing the survey again when it was declined (closed without answering)
startDate When the survey should start collecting data.
endDate When the survey should stop collecting data.
designSetting  What settings to use for design of the survey, possible values: DEFAULT, DESKTOP, MOBILE, TABLET, PRIMARY, CUSTOM, DISABLED
behaviorSetting  What settings to use for behaviour (when and how) of the survey, possible values: DEFAULT, DESKTOP, MOBILE, TABLET, PRIMARY, CUSTOM, DISABLED
container Type of container to show the survey in. Possible values: popupWindow, popupLayer, embed, newWindow
popupWidth Width in pixels of the survey window
popupHeight Height in pixels of the survey window
quizMode Survey should present one question at a time.
useToggleButtons Survey should have buttons instead of radio options when answering questions.
showProgress Show progress bar when answering survey.
logoSource  What logo to use, possible values: CUSTOMER, URL, NONE
logoHeight Desired height when displaying the logo.

 

Website properties

id Unique ID of the website.
url The primary url of the website.
additionalUrls List of other urls that can be used for testing and preview.
language The primary language of the website.
additionalLanguages List of other urls for language variants of the website, like a subdomain or path.
matomoId ID used for analytics, heatmaps and session recording.
excludedUrls List of patterns of urls to exclude running the script on.
customCSS Add custom styles to the website, used primarily to style survey trigger button and container.
useCookies When to start using cookies. Possible values: NEVER, WITH_CONSENT, ALWAYS
cookiePrefix Prefix for all cookies and data in local storage.
trackPageViews When to automatically track page views. Possible values: URL_CHANGE, NEVER, PAGE_LOAD
trackVisitors When to send tracking data. Possible values: NEVER, WITH_CONSENT, ALWAYS
surveys True if website has an active license for surveys.
analytics True if website has an active license for analytics.
hsr True if website has an active license for heatmaps and recordings.
formAnalytics True if forms should be tracked.
mediaAnalytics True if audio and video should be tracked.
crashAnalytics True if javascript errors should be tracked.
linkTracking True if outbound links and downloads should be tracked.
heatmaps List of configured heatmaps.
sessionRecordings List of configured session recordings.