This Privacy Policy describes what data Kamado ("the bot", "we", "us") collects, why we collect it, how it is stored and protected, and your rights regarding that data. By using Kamado, you agree to the practices described here.
Kamado stores only the minimum data required to provide its features. All identifiers are Discord-issued numeric IDs. We never collect passwords, email addresses, real names, or IP addresses.
| Feature | Data Stored |
|---|---|
| Leveling | User ID, guild ID, XP, level, optional profile bio, last activity timestamp |
| Reminders | User ID, channel ID, reminder content, scheduled trigger time |
| AFK | User ID, guild ID, optional AFK status message, timestamp |
| Birthdays | User ID, guild ID, birth month and day, optionally birth year |
| Todos | User ID, to-do content, completion status |
| Trivia | User ID, guild ID, correct answers, total attempts, streak, total points |
| Impostors | User ID, guild ID, games played, wins, impostor game stats |
| Reputation | User ID, reputation score, transaction history (giver, receiver, optional reason) |
| User Settings | User ID, DM preference for moderation notifications |
| Economy (Server) | User ID, guild ID, server coin balance, per-command cooldown timestamps |
| Economy (Global) | User ID, global coin balance, daily claim streak, global cooldown timestamps |
| Shop Inventory | User ID, guild ID, item IDs owned and quantities purchased |
| Profile Customization | User ID, rank card accent color, custom title, and (premium) an uploaded rank card background image |
| Highlights | User ID, guild ID, keywords you asked to be notified about |
| Confessions | User ID, guild ID, confession number and content, kept privately for moderation (see note below) |
| Applications | User ID, guild ID, your submitted answers, and application status |
| ToS Acceptance | User ID and the time you accepted the Terms of Service and Privacy Policy |
| Feature | Data Stored |
|---|---|
| Moderation | Guild ID, user IDs, moderator ID, action type, reason, timestamps |
| Moderation Cases | Guild ID, user IDs, moderator ID, action, reason, duration, appeal status |
| Audit Logs | Guild ID, user IDs, action type, reason, change details |
| Warnings | Guild ID, user ID, moderator ID, reason, timestamp |
| Starboard | Guild ID, message IDs, author ID, reaction count |
| Counting | Guild ID, channel ID, current count, high score, last user ID |
| FRC Tracker | Guild ID, channel ID, subscribed team numbers |
| Reaction Roles | Guild ID, channel ID, message ID, emoji, role ID |
| Guild Settings | Guild ID, feature configuration values |
| Leveling Settings | Guild ID, XP multiplier, excluded channels, level-up channel, role rewards |
| Birthday Settings | Guild ID, announcement channel ID |
| Auto-roles | Guild ID, role IDs |
| Economy Settings | Guild ID, per-command enable/disable flags, reward amount configuration, cooldown values |
| Server Shop | Guild ID, item names, descriptions, prices, item types, optional role IDs, stock levels |
| Giveaways | Guild ID, channel and message IDs, prize, entrants' user IDs, winners, settings |
| Welcome / Goodbye | Guild ID, channel IDs, message templates and settings |
| Auto-moderation | Guild ID, filter configuration and thresholds |
| Suggestions | Guild ID, channel ID, suggestion content, author ID, vote counts, status |
| Tickets | Guild ID, channel IDs, opener ID, status, and (premium) transcripts of ticket conversations |
| Temp Voice | Guild ID, channel configuration |
| Auto-responder | Guild ID, trigger phrases and their responses |
| Button Role Menus | Guild ID, channel and message IDs, role IDs, button labels |
| Verification | Guild ID, verification role, mode, and settings |
| Logging | Guild ID, log channel, and which event types are logged |
| Sticky Messages | Guild ID, channel ID, sticky content |
| Stat Counters | Guild ID, channel IDs, counter type and label |
| Scheduled Announcements | Guild ID, channel ID, message content, and schedule |
| Temp Roles | Guild ID, user ID, role ID, expiry time |
| Application Forms | Guild ID, form name, questions, review channel, optional role to grant |
| Reports | Guild ID, report channel configuration (report contents are delivered to that channel) |
| Confessions | Guild ID, confessions channel, optional private mod-log channel, confession counter |
| Auto-reactions | Guild ID, channel ID, configured emojis |
| Member Appeals | Guild ID, appeal configuration |
| Auto-publish | Guild ID, enabled state |
| Snipe | Guild ID and whether snipe is enabled. Recovered deleted/edited messages are kept only in memory (never written to the database) and are dropped after a couple of hours. |
| Quotes | Guild ID, saved quote text, the quoted user's ID (if set), and who saved it |
If you use the premium rank card background feature, the image you upload is stored on our host's persistent storage (Railway) so your rank card can be rendered. You can remove it any time by running /profile background with no image.
Confessions are shown without your name to other members, but they are not anonymous to server staff. The bot records which user sent each confession, and may post it to a private staff log, so abuse can be handled. Before a confession is sent you must confirm a notice acknowledging this. Do not share anyone's private or personal information through confessions or any other field, doing so is prohibited and may result in a permanent blacklist.
Data collected by Kamado is used solely to operate and improve the bot's features. We do not:
To prevent ban evasion, defend against fraudulent refund claims, and maintain the integrity of the bot's enforcement process, blacklist records are exempt from standard data deletion requests. Blacklist records are used solely for enforcement purposes and are not shared publicly or with third parties. This retention is based on our legitimate interest in enforcing our Terms of Service and protecting the bot, its users, and its infrastructure from abuse.
When a user is blacklisted specifically for storing sensitive information in a bot field (see Section 4 of the Terms of Service), the following data is deleted:
The following data is retained regardless of the reason for blacklisting:
These lists are not exhaustive. Any deletion request submitted after a blacklist has been issued may be partially or fully rejected if the data cannot be cleanly removed without affecting other users' records, server data, or the integrity of our enforcement history.
If you believe a blacklist record about you is factually incorrect, you may contact us at painsjonas@gmail.com to request a review.
Additionally, transaction records associated with Premium subscriptions may be retained for as long as required by applicable financial regulations or payment processor policies, regardless of any other deletion request.
You have the right to request access to or deletion of your personal data at any time. To do so, contact us at painsjonas@gmail.com with your Discord user ID and what you would like deleted. We will fulfill requests within a reasonable timeframe.
Server administrators may also request deletion of all data associated with their server by contacting us with their server's guild ID. Note that deleting economy settings or shop items will also remove any associated user inventory for that server.
Deletion requests may be partially or fully rejected in the following circumstances:
In cases of partial rejection, we will inform you of what was deleted and what was retained and why.
Your data is stored in a managed PostgreSQL database hosted on Railway. We take reasonable steps to protect stored data from unauthorized access. However, no system is entirely secure, and we cannot guarantee absolute data security.
You are prohibited from storing sensitive personal information in any bot text field (reminder content, AFK messages, profile bios, to-do items, moderation reasons, reputation notes, shop item names or descriptions, confessions, application answers, suggestions, sticky messages, scheduled announcements, auto-responder text, tags, welcome messages, custom embeds, report reasons, saved quotes, etc.). Doing so is a violation of our Terms of Service and may result in a permanent blacklist. See Section 4 of the Terms of Service for the full enforcement policy.
Kamado interacts with the following external services. In all cases, no personal data is sent to these services unless explicitly noted.
| Service | Purpose | Data Shared |
|---|---|---|
| Railway | Bot hosting and database | Hosts all stored data; subject to Railway's Privacy Policy |
| Discord | Platform the bot operates on | Discord's Privacy Policy applies to all platform interactions |
| Discord's payment system | Payment processing for Premium subscriptions | Billing information (name, email, payment method) is handled directly by Discord's payment system and subject to Discord's Privacy Policy — we do not store raw payment details |
| top.gg | Bot listing, voting, and global economy vote rewards | Vote data (user ID, vote timestamp) is received when a user votes for the bot and is used to award global coins; subject to top.gg's privacy policy |
These services are queried with FRC team or event identifiers only. No user data is transmitted.
| Service | Purpose |
|---|---|
| The Blue Alliance | FRC team, event, and match data |
| Statbotics | FRC EPA and performance statistics |
| FIRST Inspires API | Official FRC event and team data |
These services are queried to retrieve random public content. No user data is transmitted.
| Service | Purpose |
|---|---|
| Open Trivia Database | Trivia questions for /trivia |
| Advice Slip | Random advice for /advice |
| The Cat API | Random cat images for /cat |
| Dog CEO | Random dog images for /dog |
| Catfact Ninja | Random cat facts for /catfact |
| icanhazdadjoke | Dad jokes for /dadjoke |
| Official Joke API | Jokes for /joke |
| Useless Facts API | Random facts for /fact |
| Meme API | Random memes for /meme |
Kamado does not knowingly collect data from users below the minimum age required by Discord. If you believe a minor's data has been collected without appropriate consent, please contact us at painsjonas@gmail.com and we will promptly remove it.
We may update this policy at any time. When we do, the "Last updated" date at the top will be revised. Continued use of Kamado after changes are posted constitutes acceptance of the revised policy. For significant changes, we will make reasonable efforts to provide notice via our support server.
For privacy questions, data requests, or concerns, contact us at painsjonas@gmail.com.