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.

Subscribe
Notify of
guest

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

0 Comments
Inline Feedbacks
View all comments
Back to top button