Discourse

Conversation platform

Integrate the Discourse API with the Amazon SES API

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

Create Email Template with Amazon SES API on New Posts from Discourse API
Discourse + Amazon SES
 
Try it
Create Email Template with Amazon SES API on New Topics from Discourse API
Discourse + Amazon SES
 
Try it
Create Email Template with Amazon SES API on New Users from Discourse API
Discourse + Amazon SES
 
Try it
Get Email Template with Amazon SES API on New Posts from Discourse API
Discourse + Amazon SES
 
Try it
Get Email Template with Amazon SES API on New Topics from Discourse API
Discourse + Amazon SES
 
Try it
New Posts (Instant) from the Discourse API

Emit new posts added to a topic in one of your chosen categories

 
Try it
New Topics (Instant) from the Discourse API

Emit new topics posted to your chosen categories

 
Try it
New Users (Instant) from the Discourse API

Emit new event every time a new user is created on your instance

 
Try it
Create Post with the Discourse API

Creates a post. See docs here

 
Try it
Create Email Template with the Amazon SES API

Create a HTML or a plain text email template. See the docs

 
Try it
Create Topic with the Discourse API

Creates a topic. See docs here

 
Try it
Get Email Template with the Amazon SES API

Get an email template. See the docs

 
Try it
Send Email with the Amazon SES API

Send an email using Amazon SES. Supports simple email messaging. See the docs

 
Try it

Overview of Discourse

The Discourse API empowers developers to interact programmatically with Discourse forums, allowing for a myriad of automations and integrations. Using Pipedream, you can harness this API for tasks such as syncing forum data with other platforms, automating user management, or triggering workflows based on forum activity. The key is in creatively coupling Discourse events with Pipedream's capabilities to streamline community interactions and administration.

Connect Discourse

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: {
    discourse: {
      type: "app",
      app: "discourse",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://${this.discourse.$auth.domain}/admin/users/list/active.json`,
      headers: {
        "Api-Username": `${this.discourse.$auth.api_username}`,
        "Api-Key": `${this.discourse.$auth.api_key}`,
      },
    })
  },
})

Overview of Amazon SES

Amazon Simple Email Service (SES) is a powerful cloud-based email sending service designed to help digital marketers and application developers send marketing, notification, and transactional emails. With the SES API, you can reliably send emails at scale, manage sender reputations, view email sending statistics, and maintain a high deliverability rate. Leveraging Pipedream's capabilities, you can integrate SES seamlessly into serverless workflows, automate email responses based on triggers from other apps, and analyze the effectiveness of your email campaigns by connecting to data analytics platforms.

Connect Amazon SES

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
36
37
38
39
40
41
42
43
44
module.exports = defineComponent({
  props: {
    amazon_ses: {
      type: "app",
      app: "amazon_ses",
    }
  },
  async run({steps, $}) {
    const AWS = require("aws-sdk")
    const { accessKeyId, secretAccessKey } = this.amazon_ses.$auth
    
    const ses = new AWS.SES({
      accessKeyId, 
      secretAccessKey,
      region: 'us-east-1',
    })
    
    const sesParams = {
      Destination: {
        ToAddresses: ["<your email here>"],
      }, 
      Message: {
        Body: {
          Html: {
            Charset: "UTF-8", 
            Data: "<h1>This is a test</h1>",
          }, 
            Text: {
            Charset: "UTF-8", 
            Data: "This is a test",
          }
        }, 
        Subject: {
          Charset: "UTF-8", 
          Data: "Test email",
        }
      },
      Source: "<your from address here", 
    };
    
    this.resp = await ses.sendEmail(sesParams).promise()
  },
})