I want to run the API until the expected result is achieved with some delay
but getting this error
var expectedStatus = "FINISHED";
var maxIterations = 10;
function runRequest(iteration) {
var url = pm.environment.get("betaUrl");
var token = pm.environment.get("token");
console.log(token);
var Url = "{{$url}}?authorization={{$token}}";
console.log(`url: ${Url}`)
pm.sendRequest(' https://mintapi.beta.thesilverlabs.com/graphql?authorization=23ec24bf1a722c0e92c049146fef63bd14ce1cccb25e37e9e8210a804a495c2b', function (err, response) {
console.log(`response: ${JSON.stringify(response)}`)
console.log(err)
var responseBody = response.json();
var currentStatus = responseBody.data.dominoTemplateVideoById.status;
if (currentStatus === expectedStatus) {
pm.visualizer.set(`
<p>Iteration: ${iteration}</p>
<p>Status: ${currentStatus}</p>
`);
return;
}
if (iteration === maxIterations) {
pm.visualizer.set(`
<p>Reached maximum iterations of ${maxIterations}</p>
<p>Last checked status: ${currentStatus}</p>
`);
return;
}
pm.visualizer.set(`
<p>Iteration: ${iteration}</p>
<p>Status: ${currentStatus}</p>
<p>Waiting for ${expectedStatus}...</p>
`);
setTimeout(function () {
runRequest(iteration + 1);
}, 2000);
});
}
runRequest(1);