Google Sheets node
Merge node
+7

Get all members of a Discord server with a specific role

Published 8 months ago

Created by

nik8n
Niklas Hatje

Template description

Use Case

This workflow retrieves all members of a Discord server or guild who have a specific role.

Due to limitations in the Discord API, it only returns a limited number of users per call. To overcome this, the workflow uses Google Sheets to track which user we received last to return all Members (of a certain role) from a Discord server in batches of 100 members.

Setup

  1. Add your Google Sheets and Discord credentials.
  2. Create a Google Sheets document that contains ID as a column. We're using this to remember which member we received last.
  3. Edit the fields in the setup node Setup: Edit this to get started. You can read up on how to get the Discord IDs via this link.
  4. Link to your Discord server in the Discord nodes
  5. Activate the workflow
  6. Call the production webhook URL in your browser

Requirements

  • Admin rights in the Discord server and access to the developer portal of discord
  • Google Sheets
  • Minimum n8n version 1.28.0

Potential Use cases

  • Writing a direct message to all members of a certain role
  • Analysing user growth on Discord regularly
  • Analysing role distributions on Discord regularly
  • Saving new members in a Discord
  • ...

Keywords

Discord API, Getting all members from Discord via API, Google Sheets and Discord automation, How to get all Discord members via API

Share Template

More Building Blocks workflow templates

Webhook node
Respond to Webhook node

Creating an API endpoint

Task: Create a simple API endpoint using the Webhook and Respond to Webhook nodes Why: You can prototype or replace a backend process with a single workflow Main use cases: Replace backend logic with a workflow
jon-n8n
Jonathan
Customer Datastore (n8n training) node

Very quick quickstart

Want to learn the basics of n8n? Our comprehensive quick quickstart tutorial is here to guide you through the basics of n8n, step by step. Designed with beginners in mind, this tutorial provides a hands-on approach to learning n8n's basic functionalities.
deborah
Deborah
HTTP Request node
Item Lists node

Pulling data from services that n8n doesn’t have a pre-built integration for

You still can use the app in a workflow even if we don’t have a node for that or the existing operation for that. With the HTTP Request node, it is possible to call any API point and use the incoming data in your workflow Main use cases: Connect with apps and services that n8n doesn’t have integration with Web scraping How it works This workflow can be divided into three branches, each serving a distinct purpose: 1.Splitting into Items (HTTP Request - Get Mock Albums): The workflow initiates with a manual trigger (On clicking 'execute'). It performs an HTTP request to retrieve mock albums data from "https://jsonplaceholder.typicode.com/albums." The obtained data is split into items using the Item Lists node, facilitating easier management. 2.Data Scraping (HTTP Request - Get Wikipedia Page and HTML Extract): Another branch of the workflow involves fetching a random Wikipedia page using an HTTP request to "https://en.wikipedia.org/wiki/Special:Random." The HTML Extract node extracts the article title from the fetched Wikipedia page. 3.Handling Pagination (The final branch deals with handling pagination for a GitHub API request): It sends an HTTP request to "https://api.github.com/users/that-one-tom/starred," with parameters like the page number and items per page dynamically set by the Set node. The workflow uses conditions (If - Are we finished?) to check if there are more pages to retrieve and increments the page number accordingly (Set - Increment Page). This process repeats until all pages are fetched, allowing for comprehensive data retrieval.
jon-n8n
Jonathan

Implement complex processes faster with n8n

red icon yellow icon red icon yellow icon