Selecting Multi-Select Field options via Integromat Automation

Hi,

I’m trying to update a record and select specific options in a multi-select field via Integromat and need some help. One of my preceding modules in Integromat gives me an array of destinations. Something like this:

Destinations = [Africa, Asia, Australia and South Pacific, Central America and Caribbean, Europe, Middle East, North America, Polar Regions, South America]

In Airtable I have a multi-select field with these exact options

I referred to this thread, but can’t get Integromat to put the original multi-select values directly into the multi-select field as suggested by @ScottWorld. When I try this, I keep getting a “Cannot parse value for field Destination Options”.

As you can see from the image above, I am using an iterator to iterate through each value in the Array and pass on the Update Airtable Record module hoping that on each iteration, the next item from the Array, i.e. one destination at a time, will get ‘checked’ in the multi-select field in Airtable. Am I going about this the wrong way?

Thanks in advance.

@Burner918

What is the actual contents of “42. Value” that you are trying to send into the multi-select field in Airtable?

You would either need to send an array or a single value to Airtable, so using the iterator beforehand is probably unlikely to yield the results you’re looking for, since it will iterate values over & over again and will overwrite the previous value that you just sent to it.

You could potentially use Integromat’s Array Aggregator to create an array to send to Airtable.

Also, if you’re trying to send values to Airtable that don’t already exist, be sure to turn on “Smart Links” in Integromat.

Thanks Scott. That’s good to know. Below is the actual output of module 42.

I’ll try passing in the whole array into the Airtable Update record module, to have it select the correct options (the multi-select in Airtable already has all possible values defined as options).

I tried this solution and it works when the array being passed in contains all of the options in the multi-select. However if the array passed only contains, say, “Africa” and “Asia”. Integromat throws an error “Cannot parse value for field Destination Options”. This happens when Smart Links is unchecked. If I check Smart Links, then what happens is that Integromat creates a new option in the multi-select field called “Africa, Asia” instead of selecting both those options separately.

destination-options

What that means is that you are not sending the options as an array, but rather as a string of text that has commas within it.

So you will either need to use the Array Aggregator to create a valid array, or you can manually piece together your own array like I previously outlined for you in your previous post on this same topic here:

Depending on how your incoming data is setup, you may also be able to achieve success by combining the iterator with the array aggregator. The iterator would loop through all the values and then the aggregator would combine the iterated values into an array.

1 Like

Thanks, Scott. The thing is that I was sending an array – or at least I’m pretty sure that I was.

And yet Integromat was sending this to the Airtable multi-select as “Africa, Asia”. The one nuance I noticed in the reference to my previous post that you helped me with, was that the ‘map’ option was turned on in that example. I noticed that in my current scenario, map was turned off. So I kept everything the same as I had and simply set ‘map’ to on and ran the scenario

map

…and it successfully selected two of the options from the multi-select in Airtable.

success

I’m not sure what that map option does, but that seemed to be the key.

Thanks a ton once again for all your patience and help, Scott. Really appreciate it.

That’s great that you got it working! :slight_smile:

No, you should be able to send arrays into Airtable without enabling the Map button. In fact, I just tested it out on my end right now (sending an array into an Airtable multi-select field), and it works just fine with the Map button turned off.

But notice that your newest screenshot shows that you are actually sending an array (because of the square brackets after the name). The square brackets indicate that you have chosen an array. I don’t see those square brackets in your previous screenshots, so that is likely what the problem was instead of the mapping function.

Thanks, Scott. Hmm, that’s really strange. When I turn off the Map button. It does send it to Airtable, but it sends it as a string “Africa, Asia, Europe” and if Smart Links is turned off, it returns an error and if Smart Links is turned on, then it creates a new option in the multiple-select called “Africa, Asia, Europe”. If I leave everything as is and turn on the Map button, it correctly selects “Africa”, “Asia”, and “Europe” as the three distinct multiple select options. So I definitely need to dig deeper into this. I’m glad it’s working by keeping the Map button on, so I guess that’s what I’ll have to do for now. But I’m curious to understand what the Map button turned on or off is actually doing behind the scenes. I couldn’t find any documentation on that specifically, but that seems to be more of an Integromat thing to figure out than an Airtable thing. Thanks once again, Scott. Really appreciate it. :+1:

Very bizarre. Yeah, if it’s working properly, I probably wouldn’t worry about it, but you might want to send an email to Integromat Tech Support to ask them why it only works in your scenario with the “Map” button turned on. I would be very curious to hear what they have to say about this! So if you email them, please post back here with their response! :slight_smile:

1 Like

Great idea. Sure thing, Scott. I’ll be sure to let you know.

1 Like

This topic was solved and automatically closed 3 days after the last reply. New replies are no longer allowed.