AWS Step Function – Adding dynamic value to Pass state type

Question:

I have the following state defined in my state machine.

I expect the output of the state to be:

iteration property is added to the input with totalCount property to be set to count of items in fields array.

However, the output for “iteration” property is set as:

It looks like the value “$.newFieldsResponse.body.count” is not getting resolved and is output as is.

Is there something I am doing wrong ? Can someone please advice on how to make it work ?

Answer:

Looks like this may not be possible.
The workaround I did is to use “Parameters” property. From AWS documentation:
“For key-value pairs where the value is selected using a path, the key name must end in *.$. “.

So resolved the above by :

  1. Changing Pass state to remove any dynamic value reference

  1. creating a Parameters property where I need the values as below:

totalCount, currentCount and step all read the value from using a path in the state input. The key needs to be appended with a “.$” at the end.

Leave a Reply