The Internet Message Access Protocol (IMAP) is a mail protocol used for accessing email on a remote web server.
IMAP provides a way to access email stored on a server, allowing you to read, write, and delete emails from your account.
IMAP is a popular protocol for accessing email, and is supported by most email providers.
Here are some things you can build using the IMAP API:
import { once } from "events";
import imaps from "imap-simple";
import cycle from "cycle";
export default defineComponent({
props: {
imap: {
type: "app",
app: "imap",
}
},
async run({steps, $}) {
const { host, port, email, password } = this.imap.$auth;
const connection = await imaps.connect({
imap: {
host,
port,
user: email,
password,
tls: true,
tlsOptions: { servername: host },
authTimeout: 3000
},
});
const boxes = await connection.getBoxes();
// Filter out circular references to parents
const filteredBoxes = cycle.decycle(boxes);
$.export("results", filteredBoxes);
connection.end();
await once(connection.imap, "end");
},
})
IMAP uses API keys for authentication. When you connect your IMAP account, Pipedream securely stores the keys so you can easily authenticate to IMAP APIs in both code and no-code steps.
Below are the required fields to connect your IMAP account to Pipedream:
host
: Enter the host Pipedream should connect to. Refer to your email provider's IMAP instructions if you aren't sure what to enter.email
: Enter the email address you use to sign in to the account you'd like to connect.password
: This is the password you use to sign in to your email account. Note: in order to connect a Gmail account, you must use an App Password.port
: Specify the port number, either 143
(default) or 993
. Refer to your email provider's IMAP instructions if you aren't sure which to use.For Gmail accounts, refer to these instructions.