Privacy Policy
Placeholder still in this document: [HOSTING-STANDORT EINTRAGEN, z. B. „in Deutschland"], [INSERT HOSTING LOCATION] — this must be filled in before the site is published.
Deutsch
1. Grundsatz
Ledra ist so gebaut, dass er so wenig wie möglich speichert. Der Inhalt von
Discord-Nachrichten wird nicht in der Datenbank des Bots gespeichert.
Gespeichert werden die Konfiguration eines Servers, dessen Moderationshistorie
sowie diejenigen Texte, die Nutzerinnen und Nutzer dem Bot selbst und bewusst
über einen Befehl übergeben — konkret Erinnerungen (/remind) und geplante
Ankündigungen (/announce). Diese Texte sind nicht mitgelesen, sondern
absichtlich zur späteren Zustellung hinterlegt; ohne Speicherung könnte der Bot
sie nicht zum gewünschten Zeitpunkt ausliefern.
Verantwortlich für die Verarbeitung im Sinne der DSGVO ist der oben genannte Betreiber. Daneben ist der jeweilige Server-Betreiber für die von ihm konfigurierte Nutzung des Bots auf seinem Server mitverantwortlich.
2. Welche Daten gespeichert werden
Die Datenbank (SQLite) enthält:
| Kategorie | Inhalt | Zweck |
|---|---|---|
| Server-Stammdaten | Server-ID, Erstell-/Änderungszeitpunkt, ob Strafen per DM zugestellt werden | Zuordnung aller Einstellungen zum Server |
| Rechtevergabe | Rollen-IDs und die ihnen zugewiesene Berechtigungsstufe | Prüfung, wer welche Befehle ausführen darf |
| Log-Konfiguration | Kanal-IDs je Log-Kategorie | Zustellung der Log-Meldungen |
| Begrüßungen | Nachrichtentexte, Kanal-IDs, Farbwerte, Bild-URLs | Welcome-/Goodbye-Nachrichten |
| Join-Rollen | Rollen-IDs | Automatische Rollenvergabe beim Beitritt |
| AutoMod-Konfiguration | Schwellwerte, Aktionen, Wortfilter-Einträge, erlaubte Domains, ausgenommene Kanal-/Rollen-IDs | Betrieb des AutoMod |
| Rollenmenüs | Kanal-ID, Nachrichten-ID, Titel, Beschreibung, Rollen-IDs, Beschriftungen | Persistente Button-Rollenmenüs |
| Moderationshistorie | User-ID der betroffenen Person, User-ID des ausführenden Moderators, Art der Maßnahme, der eingegebene Grund als Freitext, Zeitstempel, Ablaufzeitpunkt, Status sowie ggf. wer die Maßnahme wann und mit welcher Begründung aufgehoben hat | Nachvollziehbarkeit von Moderationsentscheidungen, automatisches Aufheben befristeter Strafen |
| Erinnerungen | Der selbst eingegebene Erinnerungstext, die User-ID der Person, die ihn angelegt hat, Kanal-ID, Erstell- und Fälligkeitszeitpunkt | Zustellung der Erinnerung zum gewünschten Zeitpunkt |
| Geplante Ankündigungen | Der vom Server-Team eingegebene Nachrichtentext, Kanal-ID, Intervall und ggf. Uhrzeit, nächster Ausführungszeitpunkt, User-ID der anlegenden Person | Wiederkehrendes Veröffentlichen der Ankündigung |
| Zeitzone | IANA-Zeitzone des Servers (z. B. Europe/Berlin) |
Ankündigungen mit fester Uhrzeit korrekt terminieren |
Personenbezogene Daten fallen dabei in den hervorgehobenen Zeilen an: Discord-User-IDs, der von einem Moderator frei eingegebene Grund sowie die Freitexte aus Erinnerungen und Ankündigungen. Alle übrigen Einträge sind Server-Konfiguration.
Hinweis zu Freitexten: Der Bot wertet diese Texte nicht aus und durchsucht sie nicht. Sie werden ausschließlich gespeichert, um sie später unverändert auszuliefern.
3. Welche Daten nicht gespeichert werden
- Keine Inhalte von Discord-Nachrichten, weder von Nachrichten allgemein
noch von per AutoMod erfassten Nachrichten. Das gilt für alles, was der Bot
mitliest. Texte, die du ihm über
/remindoder/announcebewusst übergibst, sind davon zu unterscheiden — siehe Abschnitt 2. - Keine Anhänge, Bilder oder Dateien.
- Keine Profildaten wie Benutzernamen, Avatare, E-Mail-Adressen oder IP-Adressen.
- Keine Sprach- oder Videodaten — der Bot ist gar nicht erst für Sprachkanäle berechtigt.
- Keine Direktnachrichten von Nutzern; ausgenommen sind Prefix-Befehle des Bot-Betreibers, die verarbeitet, aber nicht gespeichert werden.
4. Verarbeitung ohne Speicherung
Zwei Funktionen benötigen Nachrichteninhalte, verarbeiten sie aber ausschließlich flüchtig im Arbeitsspeicher:
AutoMod. Beim Eingang einer Nachricht wird ihr Text auf die aktivierten Regeln geprüft (Spam, Massen-Mentions, Einladungen, Links, CAPS, Wortfilter). Danach wird er verworfen. Für die Spam-Erkennung merkt sich der Bot lediglich Zeitstempel der letzten Nachrichten pro Nutzer und Kanal — nicht deren Inhalt; diese Zeitstempel verfallen nach wenigen Sekunden und gehen bei einem Neustart verloren.
Nachrichten-Logging. Hat ein Server die Log-Kategorie messages aktiviert,
sendet der Bot bei bearbeiteten oder gelöschten Nachrichten eine Meldung mit dem
betroffenen Text in den vom Server-Betreiber festgelegten Log-Kanal. Diese
Meldung ist eine normale Discord-Nachricht in eurem eigenen Server — sie
liegt bei Discord, nicht beim Bot. Der Bot legt davon keine eigene Kopie an.
Discord.py hält zusätzlich einen flüchtigen Nachrichten-Cache von maximal 5.000 Nachrichten im Arbeitsspeicher vor, damit gelöschte Nachrichten überhaupt protokolliert werden können. Dieser Cache wird nicht auf die Festplatte geschrieben und ist nach einem Neustart leer.
5. Rechtsgrundlage
Die Verarbeitung stützt sich auf Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse): Server-Betreiber haben ein berechtigtes Interesse daran, ihre Community zu moderieren, Regelverstöße nachvollziehbar zu dokumentieren und Spam sowie Missbrauch abzuwehren. Für die Bereitstellung der vom Server betreiber angeforderten Funktionen gilt zudem Art. 6 Abs. 1 lit. b DSGVO.
6. Empfänger und Weitergabe
Die Daten werden nicht verkauft, nicht vermietet, nicht zu Werbe- oder Analysezwecken ausgewertet und nicht an Dritte weitergegeben. Es findet keine automatisierte Entscheidungsfindung im Sinne von Art. 22 DSGVO mit rechtlicher Wirkung gegenüber Personen außerhalb des jeweiligen Discord-Servers statt.
Der Bot kommuniziert ausschließlich mit der Discord-API. Für alles, was über Discord läuft, gilt zusätzlich die Discord Privacy Policy.
Zugriff auf die Datenbank hat allein der Betreiber, und zwar ausschließlich zu Zwecken des Betriebs, der Fehlersuche und der Bearbeitung von Auskunfts- und Löschanfragen.
7. Speicherort und Sicherheit
Die Daten liegen in einer lokalen SQLite-Datei auf einem vom Betreiber
kontrollierten Server ([HOSTING-STANDORT EINTRAGEN, z. B. „in Deutschland"]).
Der Zugriff auf das System ist auf den Betreiber beschränkt. Betriebsprotokolle
(logs/) enthalten technische Ereignisse und Fehlermeldungen; sie rotieren
automatisch und werden nach spätestens fünf Dateiwechseln überschrieben.
8. Speicherdauer
- Server-Konfiguration wird gespeichert, solange der Bot auf dem Server ist. Verlässt der Bot einen Server, bleibt die Konfiguration zunächst erhalten — bewusst, damit ein versehentlicher Kick nicht die gesamte Einrichtung vernichtet. Sie kann jederzeit auf Anfrage vollständig gelöscht werden.
- Moderationseinträge werden aufbewahrt, solange sie für die
Nachvollziehbarkeit von Moderationsentscheidungen erforderlich sind.
Zurückgenommene Einträge bleiben als aufgehoben markiert erhalten, damit die
Fallnummerierung lückenlos bleibt. Einzelne Warnungen können jederzeit über
/unwarnbzw./clearwarnsdurch das Server-Team entwertet werden. - Erinnerungen werden im Moment der Zustellung gelöscht — auch dann,
wenn die Zustellung fehlschlägt, etwa weil der Kanal nicht mehr existiert und
auch die DM nicht ankommt. Es gibt keine Kopie einer bereits zugestellten
Erinnerung. Vorher kann sie jederzeit selbst über
/reminders cancelentfernt werden. Pro Person und Server sind höchstens zehn Erinnerungen gleichzeitig offen, die längste Vorlaufzeit beträgt ein Jahr. - Geplante Ankündigungen bleiben gespeichert, bis das Server-Team sie über
/announce removelöscht oder der Bot den Server verlässt und die Server-Daten gelöscht werden. - Flüchtige Daten (Spam-Zeitstempel, Nachrichten-Cache) verfallen innerhalb von Sekunden bzw. spätestens beim nächsten Neustart.
9. Deine Rechte
Nach DSGVO stehen dir zu: Auskunft (Art. 15), Berichtigung (Art. 16), Löschung (Art. 17), Einschränkung der Verarbeitung (Art. 18), Datenübertragbarkeit (Art. 20) und Widerspruch (Art. 21).
So machst du sie geltend: Schreibe an support@ledra.xyz und gib deine Discord-User-ID sowie — falls es um einen bestimmten Server geht — die Server-ID an. Anfragen werden innerhalb von 30 Tagen bearbeitet. Zur Identitätsprüfung kann ein Nachweis über den betreffenden Discord-Account verlangt werden.
Löschung durch dich selbst: Deine offenen Erinnerungen kannst du jederzeit
ohne Anfrage über /reminders list einsehen und mit /reminders cancel
löschen.
Löschung durch den Server-Betreiber: Das Team deines Servers kann deine
Verwarnungen jederzeit selbst über /clearwarns zurücknehmen. Die vollständigen
Daten eines Servers kann der Bot-Betreiber per l!purgeguild <server-id>
unwiderruflich löschen.
Du hast außerdem das Recht, dich bei einer Datenschutz-Aufsichtsbehörde zu beschweren (Art. 77 DSGVO).
10. Minderjährige
Der Bot richtet sich nicht an Personen unterhalb des von Discord vorgeschriebenen Mindestalters (13 Jahre, in einigen Ländern höher). Wird bekannt, dass Daten einer jüngeren Person gespeichert wurden, werden diese auf Hinweis hin gelöscht.
11. Änderungen
Diese Datenschutzerklärung kann angepasst werden, etwa wenn neue Funktionen hinzukommen. Maßgeblich ist die jeweils an dieser Stelle veröffentlichte Fassung; das Datum unter „Stand" weist die letzte Änderung aus.
Kontakt: support@ledra.xyz
English
1. Principle
Ledra is built to store as little as possible. The content of Discord messages
is never written to the Bot's database. What is stored is a server's
configuration, its moderation history, and the texts users hand to the Bot
themselves, on purpose, through a command — namely reminders (/remind) and
scheduled announcements (/announce). Those texts are not overheard; they are
deliberately deposited for later delivery, and without storing them the Bot
could not deliver them at the requested time.
The operator named above is the controller under the GDPR. In addition, each server operator is jointly responsible for how they configure and use the Bot on their own server.
2. Data We Store
The database (SQLite) contains:
| Category | Content | Purpose |
|---|---|---|
| Server record | Server ID, creation/update timestamps, DM-on-punishment flag | Anchor for all settings |
| Permissions | Role IDs and their assigned permission level | Deciding who may run which command |
| Log configuration | Channel ID per log category | Delivering log messages |
| Greetings | Message templates, channel IDs, colours, image URLs | Welcome/goodbye messages |
| Join roles | Role IDs | Automatic role assignment on join |
| AutoMod configuration | Thresholds, actions, word filter entries, allowed domains, exempt channel/role IDs | Running AutoMod |
| Role menus | Channel ID, message ID, title, description, role IDs, labels | Persistent button role menus |
| Moderation history | User ID of the affected member, user ID of the acting moderator, action type, the free-text reason entered, timestamps, expiry, status, and who revoked the action, when, and why | Accountability for moderation decisions; automatic expiry of temporary punishments |
| Reminders | The reminder text the user typed, the user ID of the person who created it, channel ID, creation and due timestamps | Delivering the reminder at the requested time |
| Scheduled announcements | The message text entered by server staff, channel ID, interval and optional time of day, next run timestamp, user ID of the creator | Posting the announcement repeatedly |
| Time zone | The server's IANA time zone (e.g. Europe/Berlin) |
Scheduling fixed-time announcements correctly |
Personal data arises in the highlighted rows: Discord user IDs, the reason text a moderator types, and the free text of reminders and announcements. Everything else is server configuration.
About free text: the Bot does not analyse or search these texts. They are stored solely so they can be delivered later, unchanged.
3. Data We Do Not Store
- No Discord message content, neither in general nor for messages caught by
AutoMod. This covers everything the Bot reads along. Text you deliberately
hand it via
/remindor/announceis a different matter — see section 2. - No attachments, images or files.
- No profile data such as usernames, avatars, email addresses or IP addresses.
- No voice or video data — the Bot has no voice permissions at all.
- No direct messages from users; owner prefix commands are processed but not stored.
4. Processing Without Storage
Two features need message content but handle it transiently, in memory only:
AutoMod. On arrival, a message's text is checked against the enabled rules (spam, mass mentions, invites, links, caps, word filter) and then discarded. For spam detection the Bot keeps only timestamps of recent messages per user and channel — not their content; these expire within seconds and are lost on restart.
Message logging. If a server enables the messages log category, edits and
deletions are reported — including the affected text — to the log channel that
server chose. That report is an ordinary Discord message inside your own
server; it lives at Discord, not with the Bot. The Bot keeps no copy of it.
discord.py additionally maintains a volatile cache of at most 5,000 messages in memory so that deleted messages can be logged at all. This cache is never written to disk and is empty after a restart.
5. Legal Basis
Processing is based on Art. 6(1)(f) GDPR (legitimate interests): server operators have a legitimate interest in moderating their community, documenting rule violations verifiably, and defending against spam and abuse. Art. 6(1)(b) GDPR additionally applies to providing the functions a server operator has requested.
6. Recipients and Disclosure
Data is never sold, rented, mined for advertising or analytics, or disclosed to third parties. No automated decision-making within the meaning of Art. 22 GDPR takes place with legal effect on persons outside the Discord server concerned.
The Bot communicates solely with the Discord API. Everything that travels through Discord is additionally covered by the Discord Privacy Policy.
Only the operator can access the database, and only for operating the service, debugging, and handling access or deletion requests.
7. Storage Location and Security
Data resides in a local SQLite file on a server controlled by the operator
([INSERT HOSTING LOCATION]). System access is restricted to the operator.
Operational logs (logs/) contain technical events and error messages; they
rotate automatically and are overwritten after at most five rotations.
8. Retention
- Server configuration is kept while the Bot is on the server. If the Bot leaves, the configuration is deliberately retained so an accidental kick does not destroy an entire setup. It can be deleted in full on request at any time.
- Moderation records are retained as long as they are needed for
accountability. Revoked entries are kept flagged as revoked so that case
numbering stays gapless. Server staff can void warnings at any time via
/unwarnor/clearwarns. - Transient data (spam timestamps, message cache) expires within seconds or at the next restart.
9. Your Rights
Under the GDPR you have the rights of access (Art. 15), rectification (Art. 16), erasure (Art. 17), restriction (Art. 18), data portability (Art. 20) and objection (Art. 21).
How to exercise them: write to support@ledra.xyz stating your Discord user ID and, if the request concerns a specific server, the server ID. Requests are handled within 30 days. Proof of control over the Discord account in question may be required.
Deletion by your server staff: your server's team can void your warnings
themselves via /clearwarns. A server's data can be irreversibly deleted by the
Bot operator via l!purgeguild <server-id>.
You also have the right to lodge a complaint with a supervisory authority (Art. 77 GDPR).
10. Minors
The Bot is not directed at persons below Discord's minimum age (13, higher in some countries). If we learn that data of a younger person has been stored, it will be deleted upon notice.
11. Changes
This Privacy Policy may be updated, for example when new features are added. The version published here is authoritative; the "Last updated" date indicates the most recent change.
Contact: support@ledra.xyz