# Validating Emails using Service Suite Scripts

1. Create a Script in Service suite as shown below:
    
     ![](https://docs.appvance.net/uploads/images/gallery/2026-07/scaled-1680-/Ut7KUVbVwYyBR4fe-f665db7dcdc9.png)
2. Please refer the below document if the outlook account as 2FA authentication:
    
    [How to create an App Password for an Outlook account and use in service suite script to login to account with 2FA enabled. ](/books/services-workbench-knowledge-base/page/create-an-app-password-for-an-outlook-account-and-use-in-service-suite-script-to-login-to-account-with-2fa-enabled)
 
Note: Below is the spec on AIQ mail client

### Mail Client

&gt;createMailClient(String host, String userMail, String password, String protocol)

returns a MailService object.

&gt;MailService object has the following available methods:

- login()
- setFromFolder(String:folder)
- logout()
- getLastUnreadMessages(int:quantity)
- getAllRecipients();
- getFrom();
- message.getSentDate();
- message.getFolder()
- MailMessage byte\[\] getAttachedFile(String fileName)
 
· List&lt;String&gt; getAttachments() //You can get a list with all the names of the attachments from a MailMessage and you can get the file (byte\[\]) using the file name.

### Sample code snippet

<div class="codeSnippet" id="bkmrk-copy-var-mailclient-"><div class="codeSnippetBody">```
var mailClient = <span style="color:#795da3;">createMailClient</span><span style="color:#000000;">(</span><span style="color:#df5000;">"imap.gmail.com"</span><span style="color:#000000;">,</span> <span style="color:#df5000;">"myEmail@gmail.com"</span><span style="color:#000000;">,</span> <span style="color:#df5000;">"App Password"</span><span style="color:#000000;">,</span> <span style="color:#df5000;">"IMAP"</span><span style="color:#000000;">)</span>;<br></br><br></br><span style="color:#0086b3;font-weight:bold;">try</span><span style="color:#000000;">{</span><br></br>  mailClient<span style="color:#000000;">.</span><span style="color:#795da3;">login</span><span style="color:#000000;">()</span>;<br></br><span style="color:#000000;">}</span><br></br><span style="color:#0086b3;font-weight:bold;">catch</span> <span style="color:#000000;">(</span>e<span style="color:#000000;">){</span><br></br>  mailClient<span style="color:#000000;">.</span><span style="color:#795da3;">login</span><span style="color:#000000;">()</span>;<br></br><span style="color:#000000;">}</span><br></br><span style="color:#795da3;">log</span><span style="color:#000000;">(</span><span style="color:#df5000;">"Login Outlook Account"</span><span style="color:#000000;">)</span>;<br></br>mailClient<span style="color:#000000;">.</span><span style="color:#795da3;">setFromFolder</span><span style="color:#000000;">(</span><span style="color:#df5000;">"Inbox"</span><span style="color:#000000;">)</span>;<br></br><span style="color:#795da3;">log</span><span style="color:#000000;">(</span><span style="color:#df5000;">"Navigate to the Inbox folder"</span><span style="color:#000000;">)</span>;<br></br><span style="color:#969896;">//mailClient.setFromFolder("Junk Email");</span><br></br><br></br>var lastUnreadMails = mailClient<span style="color:#000000;">.</span><span style="color:#795da3;">getLastUnreadMessages</span><span style="color:#000000;">(</span><span style="color:#008080;">5</span><span style="color:#000000;">)</span>;<br></br>var url;<br></br>var attachments;<br></br><br></br><span style="color:#969896;">//log(lastUnreadMails.size());</span><br></br><br></br><span style="color:#a71d5d;font-weight:bold;">for</span><span style="color:#000000;">(</span>var i = <span style="color:#008080;">0</span>; i <span style="color:#000000;"><</span> lastUnreadMails<span style="color:#000000;">.</span><span style="color:#795da3;">size</span><span style="color:#000000;">()</span>; i<span style="color:#000000;">++){</span><br></br>  <span style="color:#a71d5d;font-weight:bold;">if</span><span style="color:#000000;">(</span>lastUnreadMails<span style="color:#000000;">.</span><span style="color:#795da3;">get</span><span style="color:#000000;">(</span>i<span style="color:#000000;">).</span> <span style="color:#795da3;">getFrom</span><span style="color:#000000;">().</span>  <span style="color:#795da3;">contains</span><span style="color:#000000;">(</span><span style="color:#df5000;">"Appvance"</span><span style="color:#000000;">)){</span><br></br>      <span style="color:#795da3;">log</span><span style="color:#000000;">(</span><span style="color:#df5000;">"Fetch the url from this subject"</span> <span style="color:#000000;">+</span> lastUnreadMails<span style="color:#000000;">.</span><span style="color:#795da3;">get</span><span style="color:#000000;">(</span>i<span style="color:#000000;">).</span><span style="color:#795da3;">getSubject</span><span style="color:#000000;">())</span>;<br></br>      <span style="color:#795da3;">log</span><span style="color:#000000;">(</span><span style="color:#df5000;">"From "</span><span style="color:#000000;">+</span>lastUnreadMails<span style="color:#000000;">.</span><span style="color:#795da3;">get</span><span style="color:#000000;">(</span>i<span style="color:#000000;">).</span><span style="color:#795da3;">getFrom</span><span style="color:#000000;">())</span>;  <br></br>      <span style="color:#795da3;">log</span><span style="color:#000000;">(</span><span style="color:#df5000;">"Date "</span><span style="color:#000000;">+</span>lastUnreadMails<span style="color:#000000;">.</span><span style="color:#795da3;">get</span><span style="color:#000000;">(</span>i<span style="color:#000000;">).</span><span style="color:#795da3;">getSentDate</span><span style="color:#000000;">())</span>;<br></br>      <span style="color:#795da3;">log</span><span style="color:#000000;">(</span><span style="color:#df5000;">"Folder "</span><span style="color:#000000;">+</span>lastUnreadMails<span style="color:#000000;">.</span><span style="color:#795da3;">get</span><span style="color:#000000;">(</span>i<span style="color:#000000;">).</span><span style="color:#795da3;">getFolder</span><span style="color:#000000;">())</span>;<br></br>      <span style="color:#795da3;">log</span><span style="color:#000000;">(</span><span style="color:#df5000;">"getRecipients "</span><span style="color:#000000;">+</span>lastUnreadMails<span style="color:#000000;">.</span><span style="color:#795da3;">get</span><span style="color:#000000;">(</span>i<span style="color:#000000;">).</span><span style="color:#795da3;">getRecipients</span><span style="color:#000000;">())</span>;<br></br>      <span style="color:#795da3;">log</span><span style="color:#000000;">(</span><span style="color:#df5000;">"Fetch the url from this body"</span> <span style="color:#000000;">+</span> lastUnreadMails<span style="color:#000000;">.</span><span style="color:#795da3;">get</span><span style="color:#000000;">(</span>i<span style="color:#000000;">).</span><span style="color:#795da3;">getBody</span><span style="color:#000000;">())</span>;<br></br>      attachments = lastUnreadMails<span style="color:#000000;">.</span><span style="color:#795da3;">get</span><span style="color:#000000;">(</span>i<span style="color:#000000;">).</span><span style="color:#795da3;">getAttachments</span><span style="color:#000000;">()</span>;<br></br>      <span style="color:#a71d5d;font-weight:bold;">for</span><span style="color:#000000;">(</span>var j = <span style="color:#008080;">0</span>; j <span style="color:#000000;"><</span> attachments<span style="color:#000000;">.</span><span style="color:#795da3;">size</span><span style="color:#000000;">()</span>; j<span style="color:#000000;">++){</span><br></br>          <span style="color:#795da3;">log</span><span style="color:#000000;">(</span><span style="color:#df5000;">"Attachment name: "</span><span style="color:#000000;">+</span>attachments<span style="color:#000000;">.</span><span style="color:#795da3;">get</span><span style="color:#000000;">(</span>j<span style="color:#000000;">))</span>;<br></br>          var bytes =  lastUnreadMails<span style="color:#000000;">.</span><span style="color:#795da3;">get</span><span style="color:#000000;">(</span>i<span style="color:#000000;">).</span><span style="color:#795da3;">getAttachedFile</span><span style="color:#000000;">(</span>attachments<span style="color:#000000;">.</span><span style="color:#795da3;">get</span><span style="color:#000000;">(</span>j<span style="color:#000000;">))</span>;<br></br>          locker<span style="color:#000000;">.</span><span style="color:#795da3;">put</span><span style="color:#000000;">(</span><span style="color:#df5000;">"bytes"</span><span style="color:#000000;">,</span>bytes<span style="color:#000000;">)</span>;<br></br>          <span style="color:#795da3;">writeBytes</span><span style="color:#000000;">(</span><span style="color:#df5000;">"newBytes.pdf"</span><span style="color:#000000;">,</span> bytes<span style="color:#000000;">)</span>;<br></br>      <span style="color:#000000;">}</span><br></br>    <span style="color:#969896;">//code = urlify(lastUnreadMails.get(i).getBody());</span><br></br>  <span style="color:#000000;">}</span><br></br> <span style="color:#969896;">// log("Fetch the url from this body" + lastUnreadMails.get(i).getSubject());</span><br></br><span style="color:#000000;">}</span><br></br>mailClient<span style="color:#000000;">.</span><span style="color:#795da3;">logout</span><span style="color:#000000;">()</span>;
```

 </div> </div>Note: Replace the valid Email account to test the above methods.

### Outlook Sample

<div class="codeSnippet" id="bkmrk-copy-var-mailclient--1"><div class="codeSnippetBody">```
var mailClient = <span style="color:#795da3;">createMailClient</span><span style="color:#000000;">(</span><span style="color:#df5000;">"imap.outlook.com"</span><span style="color:#000000;">,</span> <span style="color:#df5000;">"aiqtest@outlook.com"</span><span style="color:#000000;">,</span> <span style="color:#df5000;">"password"</span><span style="color:#000000;">,</span> <span style="color:#df5000;">"IMAP"</span><span style="color:#000000;">)</span>;<br></br><br></br>mailClient<span style="color:#000000;">.</span><span style="color:#795da3;">login</span><span style="color:#000000;">()</span>;<br></br><br></br>mailClient<span style="color:#000000;">.</span><span style="color:#795da3;">setFromFolder</span><span style="color:#000000;">(</span><span style="color:#df5000;">"Inbox"</span><span style="color:#000000;">)</span>;<br></br><br></br>var lastUnreadMails = mailClient<span style="color:#000000;">.</span><span style="color:#795da3;">getLastUnreadMessages</span><span style="color:#000000;">(</span><span style="color:#008080;">1</span><span style="color:#000000;">)</span>;<br></br><br></br>var url = <span style="color:#df5000;">""</span>;<br></br><br></br>var from=lastUnreadMails<span style="color:#000000;">.</span><span style="color:#795da3;">get</span><span style="color:#000000;">(</span><span style="color:#008080;">0</span><span style="color:#000000;">).</span><span style="color:#795da3;">getFrom</span><span style="color:#000000;">().</span><span style="color:#795da3;">contains</span><span style="color:#000000;">(</span><span style="color:#df5000;">"Appvance"</span><span style="color:#000000;">)</span>;<br></br><br></br><span style="color:#795da3;">log</span><span style="color:#000000;">(</span>from<span style="color:#000000;">)</span>;
```

 </div> </div><div id="bkmrk-last-updated%3A-june-0">---

Last updated: <span class="mc-variable General.NewDateTimeVariable variable">June 02, 2023</span>

If you have any feedback on this topic, please contact us at <documentation@appvance.ai>

</div>