Discord

Use this app to create a Discord source that emits messages from your guild to a Pipedream workflow.

Integrate the Discord API with the MongoDB API

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

Create New Document with MongoDB API on New Message from Discord API
Discord + MongoDB
 
Try it
Delete a Document with MongoDB API on New Message from Discord API
Discord + MongoDB
 
Try it
Find Document by Id with MongoDB API on New Message from Discord API
Discord + MongoDB
 
Try it
Search Documents with MongoDB API on New Message from Discord API
Discord + MongoDB
 
Try it
Update a Document with MongoDB API on New Message (Instant) from Discord API
Discord + MongoDB
 
Try it
New Message (Instant) from the Discord API

Emit new event for each message posted to one or more channels in a Discord server

 
Try it
Message Deleted (Instant) from the Discord API

Emit new event for each message deleted

 
Try it
New Command Received (Instant) from the Discord API

Emit new event for each command posted to one or more channels in a Discord server

 
Try it
New Guild Member (Instant) from the Discord API

Emit new event for each new member added to a guild

 
Try it
New Collection from the MongoDB API

Emit new an event when a new collection is added to a database

 
Try it
Create New Document with the MongoDB API

Create a new document in a collection of your choice. See the docs here

 
Try it
Delete a Document with the MongoDB API

Delete a single document by ID. See the docs here

 
Try it
Find Document by Id with the MongoDB API

Retrieves a single document by ID. See the docs here

 
Try it
Send Message with the Discord API

Send a simple message to a Discord channel

 
Try it
Send Message (Advanced) with the Discord API

Send a simple or structured message (using embeds) to a Discord channel

 
Try it

Overview of Discord

The Pipedream Discord app enables you to build event-driven workflows that interact with the Discord API. When you authorize the Pipedream app's access to your guilds, you can use Pipedream workflows to perform common Discord actions, or write your own code against the Discord API.

Connect Discord

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: {
    discord: {
      type: "app",
      app: "discord",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://discord.com/api/users/@me`,
      headers: {
        Authorization: `Bearer ${this.discord.$auth.oauth_access_token}`,
        "accept": `application/json`,
      },
    })
  },
})

Overview of MongoDB

Assuming you want a few paragraph about the MongoDB API:

MongoDB offers a powerful API that allows developers to interact with their
databases in a variety of ways. The API provides methods for performing
standard CRUD (create, read, update, delete) operations, as well as more
specialized methods like bulk write operations and aggregate queries. MongoDB
also offers a rich set of indexing options that allow developers to optimize
their queries for maximum performance. With the MongoDB API, developers can
build a wide variety of applications, from simple data-driven apps to complex
event-driven systems.

Connect MongoDB

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
import mongodb from 'mongodb'

export default defineComponent({
  props: {
    mongodb: {
      type: "app",
      app: "mongodb",
    },
    collection: {
      type: "string"
    },
    filter: {
      type: "object"
    }
  },
  async run({steps, $}) {
    const MongoClient = mongodb.MongoClient
    
    const {
      database,
      hostname,
      username,
      password,
    } = this.mongodb.$auth
    
    const url = `mongodb+srv://${username}:${password}@${hostname}/test?retryWrites=true&w=majority`
    const client = await MongoClient.connect(url, { 
      useNewUrlParser: true, 
      useUnifiedTopology: true 
    })
    
    const db = client.db(database)

    const results = await db.collection(this.collection).find(this.filter).toArray();
    $.export('results', results);
    
    await client.close()
  },
})