Multiple email addresses in one field

Hi, I wondered if anyone could help.

I have a scenario, that runs when there is a new field appearing in a query.

Then it emails the person in that record. All works well until…

sometimes there is more than one email address in this field (for complicated legacy reasons!) they are separated by a semi-colon.

This obviously confuses the scenario and it then fails.

Can i get the gmail module to either read just the first email address? or preferably take each email and add it to the email that is going to be sent?

thanks,

ian

image
you can split the string by the semicolon.
copy and paste the semicolon from any other text editor into Make for it to work.


Full solution to access each email

In Reality this can be done in one step:
image
Like so

Hope this helps.

2 Likes

Hi JugaadiTech,

Many thanks for your reply, it is much appreciated.

I followed your instruction and put this in the To: field

{{split(3.email; "; ")}}

it actually looks like this:

image

I still get an error message - * Invalid email address in parameter ‘to’.

I did try and put in another semi-colon in case that would work as there are 3 emails on this particular record. but i also deleted on eof the emails and tried that but no luck.

Any more thoughts?

Thanks
Ian

Use text parser and try a regular expression like /^(.*);/ this retrieve everything up to the first semi-colon.

Though you should use a router before and make sure a filter is setup where the Email “contains” “;” on the route which you need to separate and “does not contain”“;” on the route with just one email and then just map that normally.

I hope this helps solve your issue

2 Likes

can you provide a sample of the data coming in, anonymized? (replace real emails or names with random text in the same structure, e.g. "bob@bobsburgers.com" to "name@domain.tld"

along with a top-down screenshot of your scenario flow.

Hi William

the field that is the problem has:

plumxxxx@hotxxx.com;clare_xxxxx@hotmail.com;treasurer@xxxx.uk

I am currently trying Anthonys answer above, but being a relative novice this is advanced for me!

Any help appreciated.

Thanks, Ian

how to copy the bundles.

example copy json

:warning: Reminder to redact the personal data, in both the json copy paste, and the module config screenshot.

when pasting the Json Bundle from the make editor to make community, put it between a pair of triple backticks


:information_source: The backtick key is next to 1 and above tab on most keyboards.

1 Like

woah thanks! I’ll try to do this as you have instructed…

the query


[
    {
        "NAME": "Liz xxxx",
        "VENUE": "xxxxxVillage Hall",
        "datefield": "2022-11-08T00:00:00.000Z",
        "flicksfeedbackleft": false,
        "film name": "Belfast",
        "EventID": 45510,
        "ReminderSent": false,
        "cancelled": false,
        "email": "plumxxx@xxxx.com;clarexxxx@xxx.com;treasurer@xxxx.uk",
            }
]
2 Likes

I now have a router - and the single email address worked.

error message is

BundleValidationError

Validation failed for 1 parameter(s).

  • Invalid email address in parameter ‘to’.

and this is the bit i suspect i need to get the text correct:

image

woops seems i shouldnt have replied several times, sorry, learning fast!

2 Things.

This is not splitting a string into a list.

image

The Grey Background behind the semicolon indicates that :make: make is interpreting the semicolon as IML (:make: makes "scripting/formula language"), and not as a “character” to split the string by.

A single Email, is the only thing accepted in the “email address 1 slot”,

a list of emails would not be accepted as valid here.
image

To Fix This: Toggle the map switch,

Map lets you inject a “complete data structure”,which allows for a variable-length list of emails.

Without Map Enabled: You would have to assign a single email to each field separately.

  • email address 1 is "xxx@xxx.xxx",
  • email address 2 is "xxx@xxx.xxx",
  • email address 3 is "xxx@xxx.xxx",
    etc, etc.

:warning: you may have to adjust a bit, depending on what "JSON structure" google apps expects to receive from :make: Make.

If you haven’t nailed the structure via mapping the “to” field by later today when I become a bit more free ill create a quick example and post it here.

1 Like

Thanks very much for all the help, guys. The rogue semi colon was part of the issue.

it also helped me to put in a Router, and I added two set variables.

When I ran the scenario, it worked well.

Thanks again,

Ian