What do you want to automate

with IMAP and Filter?

Prompt, edit and deploy AI agents that connect to IMAP, Filter and 2,500+ other apps in seconds.

Trusted by 1,000,000+ developers from startups to Fortune 500 companies

Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo
Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo
New Email from the IMAP API

Emit new event for each new email in a mailbox

 
Try it
Integrate the IMAP API with the Filter API
Setup the IMAP API trigger to run a workflow which integrates with the Filter API. Pipedream's integration platform allows you to integrate IMAP and Filter remarkably fast. Free for developers.

Overview of IMAP

Using Pipedream's IMAP API, developers can automate interactions with their email inbox, enabling serverless workflows that perform actions based on incoming emails. This could include parsing email contents, triggering events upon receiving emails from specific senders, attaching labels, and much more. By leveraging IMAP, Pipedream can act as a bridge between your email and other services, streamlining processes that would otherwise require manual intervention.

Connect IMAP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
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");
  },
})

Overview of Filter

The Filter API in Pipedream allows for real-time data processing within workflows. It's designed to evaluate data against predefined conditions, enabling workflows to branch or perform specific actions based on those conditions. This API is instrumental in creating efficient, targeted automations that respond dynamically to diverse datasets. Using the Filter API, you can refine streams of data, ensuring that subsequent steps in your Pipedream workflow only execute when the data meets your specified criteria. This cuts down on unnecessary processing and facilitates the creation of more intelligent, context-aware systems.

Connect Filter

1
2
3
4
5
6
7
8
9
10
export default defineComponent({
  async run({ steps, $ }) {
    let condition = false
    if (condition == false) {
      $.flow.exit("Ending workflow early because the condition is false")
    } else {
        $.export("$summary", "Continuing workflow, since condition for ending was not met.")
    }
  },
})

Trusted by 1,000,000+ developers from startups to Fortune 500 companies

Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo
Adyen logo
Appcues logo
Bandwidth logo
Checkr logo
ChartMogul logo
Dataminr logo
Gopuff logo
Gorgias logo
LinkedIn logo
Logitech logo
Replicated logo
Rudderstack logo
SAS logo
Scale AI logo
Webflow logo
Warner Bros. logo