Open Navigation

Basic working with data

Mapping Data Between Steps

When building workflows you will often want to use the data returned from previous steps as the input in new steps. This can be done by either using the Connector Snake or by changing the input type to JSON Path and typing a reference to the output data you wish to use.

Using the Connector Snake

To use the Connector Snake, first find the input property you want to connect up. Then click and drag the circle to the left of the properties label. You can drag the end of the Connector Snake and connect it to the step you wish to use the output data from. You will be presented with a list of output properties to choose from and selecting one will map the output data you selected to the current input property.




Manually Mapping Data Between Steps

Sometimes using the connector snake to map data from a previous step is not possible, such as when you use the HTTP Client and the exact data schema is not known. In this case you can change the input type to JSON Path and manually enter a reference to another step's output data. The JSON Path reference should start with $.steps.STEPNAME but the properties panel will suggest any known JSON Path properties that are known to it.


Interpolated mode

It's also possible to do more advanced mapping using interpolated mode. Interpolated mode is used when the destination input requires a string and can do things like:

  • Concatenate multiple variables into one input, for example "first name" and "last name" both into a name field
  • Mix one (or more) variables with other static text, for example adding some data driven details to the body of a standard email template.
  • Converting other types into a string, for example numbers and booleans can be converted into a string by setting the input to just the interpolated variable.

To pass variables in interpolated mode, wrap the JSONPath variable in curly bracket and use it anywhere within the input, like so: {$.steps.STEPNAME} (Note: The input property type should always be "string")

For example, if you were naming an Asana project based on the name of a Salesforce record you could use: My new project: {$.steps.salesforce-1.records[0].Name} as per the following screenshot:


Passing variables with spaces

If a variable contains spaces then it must be passed inside ['']

For example a body response such as:

"body": {
"Primary User Email": "email_address"

Would be passed as $.steps.trigger.body['Primary User Email'] if the body had come from the output of the workflow trigger.

Please see this JSON Path reference for more information on how to use JSON Path.

Was this article helpful?