Discourse

Conversation platform

Integrate the Discourse API with the Bash API

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

Run Bash Code with Bash API on New Posts from Discourse API
Discourse + Bash
 
Try it
Run Bash Code with Bash API on New Topics from Discourse API
Discourse + Bash
 
Try it
Run Bash Code with Bash API on New Users from Discourse API
Discourse + Bash
 
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
Run Bash Code with the Bash API

Run any Bash in a Pipedream step within your workflow. Refer to the Pipedream Bash docs to learn more.

 
Try it
Create Topic with the Discourse API

Creates a topic. See docs here

 
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}`,
      },
    })
  },
})

Connect Bash

1
2
3
4
5
6
7
# $PIPEDREAM_STEPS file contains data from previous steps
cat $PIPEDREAM_STEPS | jq .trigger.context.id

# Write data to $PIPEDREAM_EXPORTS to return it from the step
# Exports must be written as key=value
echo foo=bar >> $PIPEDREAM_EXPORTS