cancel
Showing results for 
Search instead for 
Did you mean: 

How to call pipeline (Have rest get snap) recursively

Rahul
New Contributor III

image

I am having a child pipeline calling rest get snap and we have a status column values (0 or 1) in response we need to check status until status comes ‘0’.

6 REPLIES 6

Rahul
New Contributor III

Attached response screenshot
image

Hi @Rahul,

If the $entity.exports will always be an array of a single object then you can check the status with the following expression: $entity.exports[0].status or jsonPath($, "$entity.exports[*].status").toString(). If the exports array can have multiple objects with multiple statuses, then that depends which status you want to check.

Rahul
New Contributor III

If status comes 1 for the first API hit then we need to retry until status comes 0.

Note: The status column can have two values (1 or 0). 1 indicates a report in progress and 0 indicates a report in progress.

SpiroTaleski
Valued Contributor

@Rahul

There are two ways that I can think of at the moment, of how you can implement the retry:

  1. Handling the retry on the parent pipeline

    • After pipeline execute, check the status using Router Snap. If its 1 then call the child pipeline again. If its 0 then proceed with post - processing steps.

image

  1. Handling retry on child pipeline level:

    • After the REST Call, to have a check for the status. If its 1 then self-call the child pipeline until the status comes to 1.

image

You can also implement a counter, where you will specify the number of retries.

Regards,
Spiro Taleski