Mailgun

Mailgun is an email automation service built for developers. Powerful transactional email APIs enable you to send, receive, and track emails.

Integrate the Mailgun API with the Data Stores API

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

Add or update a single record with Data Stores API on New Bounce from Mailgun API
Mailgun + Data Stores
 
Try it
Add or update a single record with Data Stores API on New Click from Mailgun API
Mailgun + Data Stores
 
Try it
Add or update a single record with Data Stores API on New Complaint from Mailgun API
Mailgun + Data Stores
 
Try it
Add or update a single record with Data Stores API on New Delivery Failure from Mailgun API
Mailgun + Data Stores
 
Try it
Add or update a single record with Data Stores API on New Delivery from Mailgun API
Mailgun + Data Stores
 
Try it
New Bounce (Instant) from the Mailgun API

Emit new event when the email recipient could not be reached.

 
Try it
New Click (Instant) from the Mailgun API

Emit new event when the email recipient clicked on a link in the email. Open tracking must be enabled in the Mailgun control panel, and the CNAME record must be pointing to mailgun.org. See more at the Mailgun User's Manual Tracking Messages section

 
Try it
New Complaint (Instant) from the Mailgun API

Emit new event when the email recipient clicked on the spam complaint button within their email client. Feedback loops enable the notification to be received by Mailgun.

 
Try it
New Delivery (Instant) from the Mailgun API

Emit new event when an email is sent and accepted by the recipient email server.

 
Try it
New Delivery Failure (Instant) from the Mailgun API

Emit new event when an email can't be delivered to the recipient email server.

 
Try it
Create Mailing List Member with the Mailgun API

Add to an existing mailing list. See the docs here

 
Try it
Add or update a single record with the Data Stores API

Add or update a single record in your Pipedream Data Store.

 
Try it
Create Route with the Mailgun API

Create a new route. See the docs here

 
Try it
Add or update multiple records with the Data Stores API

Add or update multiple records to your Pipedream Data Store.

 
Try it
Delete Mailing List Member with the Mailgun API

Delete a mailing list member by address. See the docs here

 
Try it

Overview of Mailgun

The Mailgun API on Pipedream is a potent tool for automating email operations without the overhead of managing a full-fledged email server. It offers capabilities to send, receive, track, and store emails with ease. With Pipedream's serverless platform, you can trigger workflows using Mailgun events, such as inbound emails or delivery status changes, and connect them to hundreds of other services to streamline communication, marketing, and notification systems within your ecosystem.

Connect Mailgun

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: {
    mailgun: {
      type: "app",
      app: "mailgun",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://${this.mailgun.$auth.region && this.mailgun.$auth.region === "EU" ? "api.eu" : "api"}.mailgun.net/v3/domains`,
      auth: {
        username: `api`,
        password: `${this.mailgun.$auth.api_key}`,
      },
    })
  },
})

Overview of Data Stores

Data Stores are a key-value store that allow you to persist state and share data across workflows. You can perform CRUD operations, enabling dynamic data management within your serverless architecture. Use it to save results from API calls, user inputs, or interim data; then read, update, or enrich this data in subsequent steps or workflows. Data Stores simplify stateful logic and cross-workflow communication, making them ideal for tracking process statuses, aggregating metrics, or serving as a simple configuration store.

Connect Data Stores

1
2
3
4
5
6
7
8
9
10
11
export default defineComponent({
  props: {
    myDataStore: {
      type: "data_store",
    },
  },
  async run({ steps, $ }) {
    await this.myDataStore.set("key_here","Any serializable JSON as the value")
    return await this.myDataStore.get("key_here")
  },
})