Get all members of a Discord server with a specific role

Go to Workflow
3,244 views
Built by Niklas Hatje Niklas Hatje
Created on June 05, 2026

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
Add your Google Sheets and Discord credentials.
Create a Google Sheets document that contains ID as a column. We're using this to remember which member we received last.
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.
Link to your Discord server in the Discord nodes
Activate the workflow
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

Nodes Used (2)

Discord
n8n-nodes-base.discord
Google Sheets
n8n-nodes-base.googleSheets