IMAP

Connect Pipedream to any IMAP email provider to trigger custom workflows.

Integrate the IMAP API with the Notion API

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

Append Block to Parent with Notion API on New Email from IMAP API
IMAP + Notion
 
Try it
Create a Page with Notion API on New Email from IMAP API
IMAP + Notion
 
Try it
Create Page from Database with Notion API on New Email from IMAP API
IMAP + Notion
 
Try it
Duplicate Page with Notion API on New Email from IMAP API
IMAP + Notion
 
Try it
Find a Page with Notion API on New Email from IMAP API
IMAP + Notion
 
Try it
New Email from the IMAP API

Emit new event for each new email in a mailbox

 
Try it
New Database from the Notion API

Emit new event when a database is created. Note: Databases must be shared with your Pipedream Integtration to trigger event.

 
Try it
New Page in Database from the Notion API

Emit new event when a page in a database is created

 
Try it
Page or Subpage Updated from the Notion API

Emit new event when a page or one of its sub-pages is updated.

 
Try it
Updated Page ID from the Notion API

Emit new event when a selected page is updated

 
Try it
Append Block to Parent with the Notion API

Creates and appends blocks to the specified parent. See the documentation

 
Try it
Create Page with the Notion API

Creates a page from a parent page. The only valid property is title. See the documentation

 
Try it
Create Page from Database with the Notion API

Creates a page from a database. See the docs

 
Try it
Duplicate Page with the Notion API

Creates a new page copied from an existing page block. See the docs

 
Try it
Find a Page with the Notion API

Searches for a page by its title. See the docs

 
Try it

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 Notion

Notion's API allows for the creation, reading, updating, and deleting of pages, databases, and their contents within Notion. Leveraging Pipedream's platform, you can build workflows that connect Notion with a myriad of other services to automate tasks such as content management, task tracking, and data synchronization. With Pipedream's serverless execution, you can trigger these workflows on a schedule, or by external events from other services, without managing any infrastructure.

Connect Notion

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import { axios } from "@pipedream/platform"
export default defineComponent({
  props: {
    notion: {
      type: "app",
      app: "notion",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://api.notion.com/v1/users/me`,
      headers: {
        Authorization: `Bearer ${this.notion.$auth.oauth_access_token}`,
        "Notion-Version": `2021-08-16`,
      },
    })
  },
})