ImapEmails is wrapping "imap" and "mailparser" library and exposes simple interface to fetch your latest emails from Gmail or any other inbox supporting IMAP
npm install imap-emails
or
yarn add imap-emails
Typescript types are already there, no need to install additional @types/...
package.
Fetching gmail emails since 1st of September 2022:
const imapEmails = new ImapEmails({
username: 'example@gmail.com',
password: 'example-gmail-app-password',
});
await imapEmails.connect();
const emails = await imapEmails.getEmails({
since: new Date('2022-09-01T00:00:00.000Z'),
});
await imapEmails.disconnect();
If you want to tweak IMAP settings or connect to some other inbox then Gmail you can provide imapConfig
prop in the constructor:
const imapEmails = new ImapEmails({
username: 'example@gmail.com',
password: 'example-gmail-app-password',
imapConfig: {
host: 'imap.gmail.com',
port: 993,
tls: true,
tlsOptions: {
servername: 'imap.gmail.com',
},
},
});
If you're using Gmail you need to set up "App Password". You will not be able to use your regular Gmail password.
Check out this for example:
https://support.google.com/accounts/answer/185833?hl=en
This project was generated using nx
.