How to call pipeline (Have rest get snap) recursively

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’.

Attached response screenshot

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.

1 Like

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.

@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

1 Like

Can you please share export of both of the pipeline

@Rahul

I am attaching only the skeleton of the pipelines. You should adjust them according your scenario:

  1. Parent pipeline

    Community_Parent_2021_12_30.slp (10.6 KB)

  2. Child pipeline

    Community_Child_2021_12_30.slp (5.6 KB)

Regards,
Spiro Taleski