IMAP

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

Integrate the IMAP API with the GitHub API

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

Create Issue with GitHub API on New Email from IMAP API
IMAP + GitHub
 
Try it
Search Issues and Pull Requests with GitHub API on New Email from IMAP API
IMAP + GitHub
 
Try it
Create Branch with GitHub API on New Email from IMAP API
IMAP + GitHub
 
Try it
Create Issue Comment with GitHub API on New Email from IMAP API
IMAP + GitHub
 
Try it
Create or update file contents with GitHub API on New Email from IMAP API
IMAP + GitHub
 
Try it
New Email from the IMAP API

Emit new event for each new email in a mailbox

 
Try it
New Branch (Instant) from the GitHub API

Emit new events when a new branch is created

 
Try it
New Card in Column (Classic Projects) from the GitHub API

Emit new event when a (classic) project card is created or moved to a specific column. For Projects V2 use New Issue with Status trigger. More information here

 
Try it
New Collaborator (Instant) from the GitHub API

Emit new events when collaborators are added to a repo

 
Try it
New Commit (Instant) from the GitHub API

Emit new events on new commits to a repo or branch

 
Try it
Create Issue with the GitHub API

Create a new issue in a Gihub repo. See docs here

 
Try it
Search Issues and Pull Requests with the GitHub API

Find issues and pull requests by state and keyword. See docs here

 
Try it
Create Branch with the GitHub API

Create a new branch in a Github repo. See docs here

 
Try it
Create Issue Comment with the GitHub API

Create a new comment in a issue. See docs here

 
Try it
Create or update file contents with the GitHub API

Create or update a file in a repository. This will replace an existing file. See docs here

 
Try it

Overview of IMAP

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:

  • A web-based email client
  • A desktop email client
  • A mobile email client
  • A command-line email client
  • A script to automatically delete old emails
  • A script to automatically forward emails to another address
  • A script to automatically save attachments to your computer

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");
  },
})

Connect GitHub

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: {
    github: {
      type: "app",
      app: "github",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://api.github.com/user`,
      headers: {
        Authorization: `Bearer ${this.github.$auth.oauth_access_token}`,
        "X-GitHub-Api-Version": `2022-11-28`,
      },
    })
  },
})