Survata integration for Mediabrix

Survata integration for Mediabrix

Overview

To integrate a Survata surveywall:

  1. Include the Survata JavaScript snippet within the <head> tag. 
  2. Create a surveywall object: Survata.createSurveywall()
  3. Trigger a Survata interview: surveywallObj.startInterview()

Instructions

1. Add the Survata snippet to your page

Add the following JavaScript snippet to the head section of your page.

<script>
(function(w, v) {
    w[v] = w[v] || {}; w[v].qr = []; w[v].qf = [];
    var got = 0, g = function() {
        if (got) { return; } got = 1;
        w[v].ft = setTimeout(function() {
            for (var i = 0; i < w[v].qf.length ; i++) { w[v].qf[i][0].call(w[v]); }
            w[v].f = 1; w[v].qf = [];
            w[v].fail = function(fn) { fn.call(w[v]); return w[v];};
        }, 5000);
    };
    w[v].ready = function() { g(); w[v].qr.push(arguments); return w[v]; };
    w[v].fail = function() { g(); w[v].qf.push(arguments); return w[v]; };
    w[v].publisher = "0e7d4cd8-9f40-4896-bffa-147263f0dc74";
}(window, 'Survata'));
</script>
<script src="https://api.survata.net/latest/js/survata.js"></script>

Notes

  • We guarantee that we will not introduce "breaking changes" within a major API version.  So, if your snippet references a major API version (e.g. v3), then your integration will continue to work as the API is upgraded.  Minor version upgrades (e.g. v3.1) include bug fixes and feature additions but no breaking changes.  Any change that breaks compatibility will result in a major version number upgrade (e.g. to v4).
  • We do occasionally require that publishers upgrade to a new major API version, which might require code changes.

2. Create the Survata surveywall object and wait for "load" event

Register any code that uses the Survata library inside the Survata.ready callback, which will be executed when Survata library is ready for execution. Within this call, create a surveywall object by calling Survata.createSurveywall, which accepts an (optional) object with the following parameters:

  • brand - the brand name for your site (default: your domain name)
  • explainer - a short sentence that explains the surveywall to your users

Attach an event handler to the surveywall object and wait for the "load" event, which will occur when the surveywall is loaded. If an interview is available for the user, the survey wall will appear and will block the content until completed.

Add the snippets below at the bottom on your page.  This will embed the Survata surveywall into the #survey-box DIV on your site. 

<script>
(function() {
  	Survata.ready(function() {
    	var s = Survata.createSurveywall({
        	parent: '#survey-box', // to attach the surveywall to a particular div
        	hideHeader: true, // these hide a number of optional elements, which make the surveywall smaller for mobile
        	hideFooter: true,
        	hideProgress: true,
        	verticalLayout: true,
        	disallowClose: true,
    	});
 
		// on surveywall load
    	s.on('load', function(data) {
        	if (data.status === 'monetizable') {
            	s.startInterview();
        	}
        	else {
				// no survey available for the user
            	// insert your code to handle
        	}
    	});
	
		// when respondent finishes interview
    	s.on('interviewComplete', function() {
        	// insert your code to handle complete interview
   	 	});
  }, true);
})();
</script>

 

For additional information, here is a link to our general publisher integration document: 

Publisher API documentation