Is it possible to get the Sent Email List ,if we send email form SMTP server in UIPath

Hi Team,

We have an requirement to send emails to customers from SMTP server,after that we have requirement to get the list of Sent Emails(To whom we send the emails).
Is it possible to do from UI Path?
Appreciate your inputs!

1 Like

Appreciate your inputs. @lakshman @sarathi125 @Palaniyappan @KarthikByggari @Deepak94

1 Like

Hi @RajeshT,
I think the best way is to keep record of each email in the excel/datatable
As you mentioned you have to send emails to the multiple customers and probably you will be using for each (list of customer email ID’s) and SMTP inside for each.
So, inside for each you can append each customer email and other contents in the excel/datatable.

Thank you.

1 Like

Hi @Deepak94 ,

There may be possibility some of the emails are wrong and some of the emails are expired.
In this case ,i want to know to whom it delivered ,which emails are not.

Yah that’s absolutely possible buddy
—to make a bit in how

We can send mail with smtp access via SEND SMTP MAIL ACTIVITY

And

We can get the list of mails from Sent Item folder box using GET IMAP MAIL ACTIVITY or GET POP3 MAIL ACTIVITY
And store them in a list variable named list_mails
—before using this activity we should have stored the value of the recipients to whom we have sent the mail in a list variable
—usually to send mails to multiple person we will be using just semicolon in between the recipients name like this
recipientname1;recipientname2;recipientname3

—now store these recipient name in a string variable like this
Str_input = ”recipientname1;recipientname2;recipientname3”

—Then use a assign activity like this to split them
list_recipients = Split(Str_input,”;”).ToList()
Where list_recipients is variable of type system.collections.generic.list(of string) with default value as new list(of string) defined in the variable panel

Now use a for each loop and pass the above variable list_recipients as input and change the type argument as string in the property panel
—and use another for each loop inside this loop with input as list_mails and change the variable name from item to mails and ch age the type argument as system.net.mails.mailmessage
—now use a if condition within this inner for each loop and mention the condition like this
item.ToString.Equals(mails.Sender.Address.ToString)
If this is true it will go to THEN part where we can use a assign activity like this
Bool_sent = True
And followed by this assign activity use a BREAK activity so that it will come out of loop once match is found
Or it will go to ELSE part where we can we can use another assign activity
Bool_sent = FALSE

Cheers @RajeshT

1 Like

Hi @Palaniyappan,

Thank you for the detailed explanation,I will work on this and will get back to you with my workflow.
Thanks a ton!!

1 Like

Hi @Palaniyappan ,

I have tried the work flow based on your inputs ,but am getting below error.Could you pleas check my workflow and revert back with your solution.
SMTP Email_Sent Email Validation.xaml (10.7 KB)

Appreciate your help @Palaniyappan

Hi @Palaniyappan,

If you have please check the xaml i have attached and appreciate your solution.