Get started today

Register below for a free, 14-day test instance of formsflow.ai.

Please note: the test instance lacks the advanced analytics environment that comes with all formsflow.ai product packages. Also, some premium features like multitenancy and ‘Native Connectors Pro’ package are not available in the trial version.

Want to upgrade to premium features and cloud hosting?

formsflow.ai developer resources
X
X
X
X
X
X
X
X
X
X
const configFile = { authenticationType : 'anonymous', formioUrl: 'https://forms-flow-forms-prod.aot-technologies.com/form', webApiUrl : 'https://forms-flow-api-prod.aot-technologies.com' } document.querySelector('formsflow-wc').setAttribute('configFile',JSON.stringify(configFile)); (function() { var proxied = window.XMLHttpRequest.prototype.send; window.XMLHttpRequest.prototype.send = function() { // console.log( arguments ); //Here is where you can add any code to process the request. //If you want to pass the Ajax request object, pass the 'pointer' below var pointer = this; var payloads = []; if(arguments[0]){ payloads = arguments[0]; } var intervalId = window.setInterval(function(){ if(pointer.readyState != 4){ return; } //Target only our event if(pointer.responseURL == "https://forms-flow-forms-prod.aot-technologies.com/formsflowmaster-sandbox/submission"){ if(pointer.status == 201){ jQuery('.tacbox').hide(); let newPayload = JSON.parse(payloads) newPayload.data.action = 'track_landing_submissions' ; // console.log('sending data'); jQuery.ajax({ method: 'POST', url: 'https://formsflow.ai/wp-admin/admin-ajax.php', data: newPayload.data, success: function ( responce ) { // console.log(responce) }, error: function( error ) { console.error('Error while track landing submission.'); console.log(error) }, complete() { window.location.href = 'https://formsflow.ai/try-it-now-complete'; } }); } } //Here is where you can add any code to process the response. //If you want to pass the Ajax request object, pass the 'pointer' below clearInterval(intervalId); }, 1);//I found a delay of 1 to be sufficient, modify it as you need. return proxied.apply(this, [].slice.call(arguments)); }; })();