This Privacy Policy explains what data Nami Bot ("Nami", "the bot", "we") collects from Discord users, why it is collected, how it is stored, and how you can request its deletion. By using Nami's features, you acknowledge this policy.
Nami is a multi-purpose Discord bot developed and operated independently. For questions or data requests, contact us through our official support server.
We only collect data necessary to provide the bot's features. No message content is ever stored. The table below summarizes each category:
| Data | Purpose | Type | Stored where |
|---|---|---|---|
| Discord User ID | Primary key to link all user data | Required | All databases |
| Profile data (pronouns, bio, country, timezone, age, sexuality, MBTI, conditions, languages) | Render the visual profile card and web editor | Optional | Encrypted SQLite (profiles.db) |
| Custom display name (nickname) | Shown on the profile card if set by the user. If not set, the user's current Discord display name is fetched in real-time and never stored on the bot's server. | Optional | Encrypted SQLite (profiles.db) |
| Custom profile images (avatar, banner, background, cover — user-uploaded) | These are images the user explicitly uploads through the profile editor to replace their Discord avatar on the profile card. They are entirely optional and independent from the user's actual Discord avatar. If no custom avatar is uploaded, the user's current Discord avatar is fetched in real-time for rendering and is never stored on the bot's server. | Optional | Encrypted file storage (server filesystem) |
| Last.fm username | Now-playing and listening stats commands | Optional | Encrypted SQLite (profiles.db) |
| Birthday (day/month; year optional) and timezone | Automated birthday announcements in servers | Optional | Encrypted SQLite (birthdays.db) |
| XP, level, and message count (aggregate counter only) | Leveling system; no message text is ever stored | Required | Encrypted SQLite (levels.db) |
| Social interaction counters (hugs given/received, etc.) | Interaction command statistics | Required | Encrypted SQLite (interactions.db) |
| Aggregated voice activity (total time per user per guild) | Server Rewind analytics. NO audio is recorded — only total duration in milliseconds is stored. | Required | Encrypted SQLite (guilds.db) |
| Bot behavior preferences (embed style, silent mode, language) | Personalize the bot's response format and language | Optional | Encrypted SQLite (profiles.db) |
| API keys (name, key, created_at) | Authorizing access to Meku API endpoints | Optional | Encrypted SQLite (apikeys.db) |
All databases containing user data are encrypted at rest using SQLCipher with AES-256-CBC encryption at the page level. Encryption keys are derived via PBKDF2-HMAC-SHA512 with a unique salt and are never stored alongside the database files. Database files are unreadable without the correct key, even with direct filesystem access.
Profile images and uploaded assets are stored in an access-controlled directory on the host server and are only accessible via authenticated API requests.
Data is retained for as long as you actively use the bot's features. There is no fixed expiry window, as features like leveling, profile cards, and birthday reminders are inherently long-term. You can permanently delete your data at any time — see How to delete your data.
We do not sell, rent, or share your data with any third party. The only external service involved is Last.fm's API, which is only queried when you have voluntarily linked your Last.fm account and triggered a music command. We do not share your Discord ID or any other data with Last.fm beyond what is needed to fulfill that specific request.
No data collected by Nami is used to train machine learning models, AI systems, or any automated decision-making system.
Nami is not directed at children under 13. We do not knowingly collect data from users under 13 years of age. Discord's own Terms of Service require users to be at least 13. If you believe a minor has submitted data, contact us immediately for removal.
We may update this policy occasionally. Significant changes will be announced in the official support server. Continued use of Nami after changes constitutes acceptance of the updated policy. The "Last updated" date at the top of this page always reflects the most recent revision.