Software Development

How to Iterate Over Items and Create a New List (or How to Use the List – Map Card)

Okta Workflows how-to guides are questions and answers from weekly community office hours, MacAdmins Workflows Slack channel, and other places. Read all other how-to guides

On to the question. 

How to take data list, modify each record in a list, and continue to use the new list in the flow?

You have a list of users and need a new list where each user is listed as lastname.firstname. Perhaps you need this name format to create an account in another system.

To start, this is the main flow:

Using List – Map card
  • The first card, Okta – List Group Members, gets all members (users) from the specified group
  • The List – Map card, calls a helper flow to process the user list. The entire record (User) is passed to the helper flow. And, it returns a list (new list) that you can use in the rest of the flow
    • This is different from the For Each action that also processes a list, but doesn’t return a list back)
  • In this example, the Flow Control – Assign card is used to display the returned list. It is used to show that you have a list that you can use in the rest of the flow

This is the helper flow:

Helper flow that returns a value
  • In the first Helper Flow card, the input is the current record (User)
  • The Get Multiple card retrieves the First Name and the Last Name of the current user. You can also retrieve other fields
  • The Text Concatenate card, concatenates the First Name, a period (.) and the Last Name
  • The Flow Control – Return card, receives a new name in the lastname.firstname format and adds it to the new list. Once all the items were processed, the List – Map card (main flow) returns a new list. This new list is now available in the main flow

This screenshot shows one run of the helper flow where it returns one name in the lastname.firstname format:

Helper flow run

This screenshot shows the main flow execution:

Main flow run

The new list (from Assign card):

The new list with last.first format

If you are familiar with the List – For Each card, it processes list item but doesn’t return a value back to the main flow. The List – Map card, processes a list of items and returns a new list to the main flow.

Published on Java Code Geeks with permission by Max Katz , partner at our JCG program. See the original article here: How to Iterate Over Items and Create a New List (or How to Use the List – Map Card)

Opinions expressed by Java Code Geeks contributors are their own.

Notify of

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Inline Feedbacks
View all comments
Back to top button