# Discord Fetch
<!-- WARNING: THIS FILE WAS AUTOGENERATED! DO NOT EDIT! -->
## Why Discord Fetch?
Discord conversations contain valuable knowledge, but Discord’s UI makes
it hard to: - Export community discussions for analysis - Archive
important conversations before they’re lost
- Process messages with LLMs or data tools - Search across multiple
channels efficiently
Discord Fetch solves this by providing a simple interactive CLI that
exports Discord messages to clean JSON files, removing all the
complexity of Discord’s API.
## Installation
``` bash
pip install discord-fetch
```
Or install from source:
``` bash
git clone https://github.com/hamelsmu/discord_fetch.git
cd discord_fetch
pip install -e .
```
> [!NOTE]
>
> ### Discord Bot Setup
>
> Before using this tool, you need to create a Discord bot and obtain a
> token:
>
> ### 1. Create a Discord Application
>
> 1. Go to the [Discord Developer
> Portal](https://discord.com/developers/applications)
> 2. Click “New Application” and give it a name
> 3. Navigate to the “Bot” section in the sidebar
> 4. Click “Add Bot”
> 5. Under the “Token” section, click “Copy” to get your bot token
>
> ### 2. Required Bot Permissions
>
> Your bot needs the following permissions: - **View Channels** - To see
> the channels in the server - **Read Message History** - To fetch
> historical messages - **Read Messages/View Channels** - Basic read
> access
>
> ### 3. Bot Scopes and OAuth2
>
> When inviting your bot to a server, use these scopes: - `bot` - Basic
> bot permissions - `applications.commands` (optional) - If you plan to
> add slash commands
>
> ### 4. Invite the Bot to Your Server
>
> 1. In the Discord Developer Portal, go to “OAuth2” \> “URL Generator”
> 2. Select the `bot` scope
> 3. Select the required permissions listed above
> 4. Copy the generated URL and open it in your browser
> 5. Select the server you want to add the bot to
>
> ### 5. Environment Setup
>
> Create this environment variable
>
> ``` env
> DISCORD_TOKEN=your_bot_token_here
> ```
## Getting Started in 2 Minutes
Once you’ve set up your Discord bot (see setup section below), using
Discord Fetch is simple:
``` bash
# Install the tool
pip install discord-fetch
# Set your bot token
export DISCORD_TOKEN=your_bot_token_here
# Run the interactive CLI
discord-fetch
```
The CLI will guide you through:
1. **Selecting a Discord server** from your bot’s servers
2. **Choosing channels** to export (one, multiple, or all)
3. **Picking output format** (single combined file or separate files)
4. **Watching progress** with live progress bars
That’s it! Your Discord messages are now in clean JSON files ready for
processing.
**Live example**
## What You Can Do With Discord Fetch
### 🎯 For Quick Channel Exports
Use the interactive CLI when you want to: - Export specific channels
from a Discord server - Archive channels before they’re deleted - Get
data for one-time analysis
**Example**: Export your project’s \#general and \#dev channels
``` bash
discord-fetch
# Select your server, choose specific channels, export to JSON
```
### 📊 For Bulk Server Exports
Perfect when you need to: - Archive an entire Discord server - Migrate
community knowledge to another platform - Create regular backups of all
channels
**Example**: Export all 84 channels from a large community
``` bash
discord-fetch
# Select server, choose "ALL CHANNELS", save to directory
```
### 🔧 For Custom Integrations
Use the Python API when you need: - Automated exports on a schedule -
Custom filtering or processing - Integration with other Python tools
**Example**: Auto-export new messages daily
``` python
from discord_fetch.core import fetch_messages_since_date
from datetime import datetime, timedelta
# Fetch only messages from last 24 hours
yesterday = datetime.now() - timedelta(days=1)
messages = await fetch_messages_since_date(channel_id, yesterday)
```
## See It In Action
Here’s what the interactive CLI looks like:
$ discord-fetch
Discord Channel Fetcher
Available Guilds:
1. AI Evals For Engineers & Technical PMs (84 channels)
2. LangChain Community (126 channels)
3. OpenAI DevDay (45 channels)
Select guild number [1]: 1
Channels in AI Evals For Engineers & Technical PMs:
┏━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━┓
┃ # ┃ Channel ┃ Category ┃ ID ┃
┡━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━┩
│ 0 │ ALL CHANNELS │ — │ — │
│ 1 │ general │ Text Channels │ 136866639069682...│
│ 2 │ announcements │ Text Channels │ 137615200096996...│
│ 3 │ introductions │ Text Channels │ 137655886438386...│
│ 4 │ course-discussions │ Course │ 138234567891234...│
└────┴────────────────────────────────┴──────────────────┴───────────────────┘
Select channel number (0 for all) [0]: 0
Selected: All 84 channels
Output Options:
1. Concatenate to single file
2. Separate files in directory
Select output option [1]: 2
Enter output directory [./discord_output]: ./ai-evals-export
#general ⠸ ████████████████████████████████████████ 100/100 ✓ Complete
#announcements ⠼ ████████████████████████████████████████ 100/100 ✓ Complete
#introductions ⠴ ████████████████████████████████████████ 100/100 ✓ Complete
#course-discussions ⠦ ██████████████████░░░░░░░░░░░░░░░░░░░░░ 47/100 Fetching...
Total ⠧ ██████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 4/84 4/84 completed
✓ Saved 84 files to ./ai-evals-export
Successfully fetched 84 out of 84 channels!
## Which Tool Should I Use?
### Use `discord-fetch` (Interactive CLI) when:
✅ You want a guided experience with visual feedback
✅ You’re exporting channels for analysis or archival
✅ You need to browse and select from available channels
✅ You’re not familiar with Discord channel IDs
### Use [`fetch_discord_msgs`](https://hamelsmu.github.io/discord_fetch/core.html#fetch_discord_msgs) (Direct CLI) when:
✅ You know the exact channel ID to export
✅ You want to pipe output directly to another tool
✅ You’re scripting or automating exports
✅ You need stdout output for processing
### Use the Python API when:
✅ You need custom filtering or processing logic
✅ You’re building a larger application
✅ You want to fetch only new messages since a date
✅ You need programmatic access to the data
**Quick decision**: If you’re unsure, start with `discord-fetch` - it’s
the easiest way to get started!
## Advanced Python API
For developers who need programmatic access:
### Basic Channel Export
``` python
from discord_fetch.core import fetch_discord_msgs
import asyncio
# Export a single channel
channel_id = 1369370266899185746
original, simplified = await fetch_discord_msgs(
channel_id,
save_original=False, # Don't save to file
save_simplified=False, # Don't save to file
print_summary=False # Silent operation
)
```
### List All Available Channels
``` python
from discord_fetch.core import list_all_channels
# Get all channels your bot can see
channels = await list_all_channels()
for ch in channels:
print(f"{ch['guild_name']} - #{ch['channel_name']} ({ch['channel_id']})")
```
### Fetch Only New Messages
``` python
from discord_fetch.core import fetch_messages_since_date
from datetime import datetime, timedelta
# Get messages from last 7 days
last_week = datetime.now() - timedelta(days=7)
recent = await fetch_messages_since_date(channel_id, last_week)
```
### Find Active Channels
``` python
from discord_fetch.core import list_channels_with_new_messages
# Find channels with activity since a date
active = await list_channels_with_new_messages("01-01-2024")
for guild, data in active.items():
for ch in data['channels_with_new_messages']:
print(f"{ch['channel_name']}: {ch['new_message_count']} new messages")
```
## Understanding the Output Format
Discord Fetch simplifies complex Discord data into clean JSON:
### Original Format (with metadata)
``` json
{
"channel_info": {...},
"messages": [
{
"id": "123456789",
"author": {...},
"content": "Message text",
"timestamp": "2024-01-15T10:30:00",
"attachments": [...],
"reactions": [...],
"reply_to": {...}
}
],
"threads": {...}
}
```
### Simplified Format (for processing)
``` json
{
"channel": "general",
"conversations": [
{
"main_message": {
"author": "alice",
"content": "Has anyone tried the new API?"
},
"replies": [
{
"author": "bob",
"content": "Yes! It's much faster now"
},
{
"author": "charlie",
"content": "Agreed, the response time improved by 50%"
}
]
}
]
}
```
The simplified format: - Groups related messages into conversations -
Removes IDs, timestamps, and metadata - Reduces file size by ~75% -
Perfect for LLMs and analysis tools
Raw data
{
"_id": null,
"home_page": "https://github.com/hamelsmu/discord_fetch",
"name": "discord-fetch",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "nbdev jupyter notebook python",
"author": "Hamel Husain",
"author_email": "hamel.husain@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/9e/19/de3242700002c428adc07fe52842c3175daa5b014b853c620b9c82f1a8a1/discord_fetch-0.0.10.tar.gz",
"platform": null,
"description": "# Discord Fetch\n\n\n<!-- WARNING: THIS FILE WAS AUTOGENERATED! DO NOT EDIT! -->\n\n## Why Discord Fetch?\n\nDiscord conversations contain valuable knowledge, but Discord\u2019s UI makes\nit hard to: - Export community discussions for analysis - Archive\nimportant conversations before they\u2019re lost \n- Process messages with LLMs or data tools - Search across multiple\nchannels efficiently\n\nDiscord Fetch solves this by providing a simple interactive CLI that\nexports Discord messages to clean JSON files, removing all the\ncomplexity of Discord\u2019s API.\n\n## Installation\n\n``` bash\npip install discord-fetch\n```\n\nOr install from source:\n\n``` bash\ngit clone https://github.com/hamelsmu/discord_fetch.git\ncd discord_fetch\npip install -e .\n```\n\n> [!NOTE]\n>\n> ### Discord Bot Setup\n>\n> Before using this tool, you need to create a Discord bot and obtain a\n> token:\n>\n> ### 1. Create a Discord Application\n>\n> 1. Go to the [Discord Developer\n> Portal](https://discord.com/developers/applications)\n> 2. Click \u201cNew Application\u201d and give it a name\n> 3. Navigate to the \u201cBot\u201d section in the sidebar\n> 4. Click \u201cAdd Bot\u201d\n> 5. Under the \u201cToken\u201d section, click \u201cCopy\u201d to get your bot token\n>\n> ### 2. Required Bot Permissions\n>\n> Your bot needs the following permissions: - **View Channels** - To see\n> the channels in the server - **Read Message History** - To fetch\n> historical messages - **Read Messages/View Channels** - Basic read\n> access\n>\n> ### 3. Bot Scopes and OAuth2\n>\n> When inviting your bot to a server, use these scopes: - `bot` - Basic\n> bot permissions - `applications.commands` (optional) - If you plan to\n> add slash commands\n>\n> ### 4. Invite the Bot to Your Server\n>\n> 1. In the Discord Developer Portal, go to \u201cOAuth2\u201d \\> \u201cURL Generator\u201d\n> 2. Select the `bot` scope\n> 3. Select the required permissions listed above\n> 4. Copy the generated URL and open it in your browser\n> 5. Select the server you want to add the bot to\n>\n> ### 5. Environment Setup\n>\n> Create this environment variable\n>\n> ``` env\n> DISCORD_TOKEN=your_bot_token_here\n> ```\n\n## Getting Started in 2 Minutes\n\nOnce you\u2019ve set up your Discord bot (see setup section below), using\nDiscord Fetch is simple:\n\n``` bash\n# Install the tool\npip install discord-fetch\n\n# Set your bot token\nexport DISCORD_TOKEN=your_bot_token_here\n\n# Run the interactive CLI\ndiscord-fetch\n```\n\nThe CLI will guide you through:\n\n1. **Selecting a Discord server** from your bot\u2019s servers\n2. **Choosing channels** to export (one, multiple, or all) \n3. **Picking output format** (single combined file or separate files)\n4. **Watching progress** with live progress bars\n\nThat\u2019s it! Your Discord messages are now in clean JSON files ready for\nprocessing.\n\n**Live example**\n\n## What You Can Do With Discord Fetch\n\n### \ud83c\udfaf For Quick Channel Exports\n\nUse the interactive CLI when you want to: - Export specific channels\nfrom a Discord server - Archive channels before they\u2019re deleted - Get\ndata for one-time analysis\n\n**Example**: Export your project\u2019s \\#general and \\#dev channels\n\n``` bash\ndiscord-fetch\n# Select your server, choose specific channels, export to JSON\n```\n\n### \ud83d\udcca For Bulk Server Exports\n\nPerfect when you need to: - Archive an entire Discord server - Migrate\ncommunity knowledge to another platform - Create regular backups of all\nchannels\n\n**Example**: Export all 84 channels from a large community\n\n``` bash\ndiscord-fetch\n# Select server, choose \"ALL CHANNELS\", save to directory\n```\n\n### \ud83d\udd27 For Custom Integrations\n\nUse the Python API when you need: - Automated exports on a schedule -\nCustom filtering or processing - Integration with other Python tools\n\n**Example**: Auto-export new messages daily\n\n``` python\nfrom discord_fetch.core import fetch_messages_since_date\nfrom datetime import datetime, timedelta\n\n# Fetch only messages from last 24 hours\nyesterday = datetime.now() - timedelta(days=1)\nmessages = await fetch_messages_since_date(channel_id, yesterday)\n```\n\n## See It In Action\n\nHere\u2019s what the interactive CLI looks like:\n\n $ discord-fetch\n\n Discord Channel Fetcher\n\n Available Guilds:\n 1. AI Evals For Engineers & Technical PMs (84 channels)\n 2. LangChain Community (126 channels)\n 3. OpenAI DevDay (45 channels)\n\n Select guild number [1]: 1\n\n Channels in AI Evals For Engineers & Technical PMs:\n \u250f\u2501\u2501\u2501\u2501\u2533\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2533\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2533\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2513\n \u2503 # \u2503 Channel \u2503 Category \u2503 ID \u2503\n \u2521\u2501\u2501\u2501\u2501\u2547\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2547\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2547\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2529\n \u2502 0 \u2502 ALL CHANNELS \u2502 \u2014 \u2502 \u2014 \u2502\n \u2502 1 \u2502 general \u2502 Text Channels \u2502 136866639069682...\u2502\n \u2502 2 \u2502 announcements \u2502 Text Channels \u2502 137615200096996...\u2502\n \u2502 3 \u2502 introductions \u2502 Text Channels \u2502 137655886438386...\u2502\n \u2502 4 \u2502 course-discussions \u2502 Course \u2502 138234567891234...\u2502\n \u2514\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n\n Select channel number (0 for all) [0]: 0\n\n Selected: All 84 channels\n\n Output Options:\n 1. Concatenate to single file\n 2. Separate files in directory\n\n Select output option [1]: 2\n\n Enter output directory [./discord_output]: ./ai-evals-export\n\n #general \u2838 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 100/100 \u2713 Complete\n #announcements \u283c \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 100/100 \u2713 Complete \n #introductions \u2834 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 100/100 \u2713 Complete\n #course-discussions \u2826 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 47/100 Fetching...\n Total \u2827 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 4/84 4/84 completed\n\n \u2713 Saved 84 files to ./ai-evals-export\n\n Successfully fetched 84 out of 84 channels!\n\n## Which Tool Should I Use?\n\n### Use `discord-fetch` (Interactive CLI) when:\n\n\u2705 You want a guided experience with visual feedback \n\u2705 You\u2019re exporting channels for analysis or archival \n\u2705 You need to browse and select from available channels \n\u2705 You\u2019re not familiar with Discord channel IDs\n\n### Use [`fetch_discord_msgs`](https://hamelsmu.github.io/discord_fetch/core.html#fetch_discord_msgs) (Direct CLI) when:\n\n\u2705 You know the exact channel ID to export \n\u2705 You want to pipe output directly to another tool \n\u2705 You\u2019re scripting or automating exports \n\u2705 You need stdout output for processing\n\n### Use the Python API when:\n\n\u2705 You need custom filtering or processing logic \n\u2705 You\u2019re building a larger application \n\u2705 You want to fetch only new messages since a date \n\u2705 You need programmatic access to the data\n\n**Quick decision**: If you\u2019re unsure, start with `discord-fetch` - it\u2019s\nthe easiest way to get started!\n\n## Advanced Python API\n\nFor developers who need programmatic access:\n\n### Basic Channel Export\n\n``` python\nfrom discord_fetch.core import fetch_discord_msgs\nimport asyncio\n\n# Export a single channel\nchannel_id = 1369370266899185746\noriginal, simplified = await fetch_discord_msgs(\n channel_id, \n save_original=False, # Don't save to file\n save_simplified=False, # Don't save to file \n print_summary=False # Silent operation\n)\n```\n\n### List All Available Channels\n\n``` python\nfrom discord_fetch.core import list_all_channels\n\n# Get all channels your bot can see\nchannels = await list_all_channels()\nfor ch in channels:\n print(f\"{ch['guild_name']} - #{ch['channel_name']} ({ch['channel_id']})\")\n```\n\n### Fetch Only New Messages\n\n``` python\nfrom discord_fetch.core import fetch_messages_since_date\nfrom datetime import datetime, timedelta\n\n# Get messages from last 7 days\nlast_week = datetime.now() - timedelta(days=7)\nrecent = await fetch_messages_since_date(channel_id, last_week)\n```\n\n### Find Active Channels\n\n``` python\nfrom discord_fetch.core import list_channels_with_new_messages\n\n# Find channels with activity since a date\nactive = await list_channels_with_new_messages(\"01-01-2024\")\nfor guild, data in active.items():\n for ch in data['channels_with_new_messages']:\n print(f\"{ch['channel_name']}: {ch['new_message_count']} new messages\")\n```\n\n## Understanding the Output Format\n\nDiscord Fetch simplifies complex Discord data into clean JSON:\n\n### Original Format (with metadata)\n\n``` json\n{\n \"channel_info\": {...},\n \"messages\": [\n {\n \"id\": \"123456789\",\n \"author\": {...},\n \"content\": \"Message text\",\n \"timestamp\": \"2024-01-15T10:30:00\",\n \"attachments\": [...],\n \"reactions\": [...],\n \"reply_to\": {...}\n }\n ],\n \"threads\": {...}\n}\n```\n\n### Simplified Format (for processing)\n\n``` json\n{\n \"channel\": \"general\",\n \"conversations\": [\n {\n \"main_message\": {\n \"author\": \"alice\",\n \"content\": \"Has anyone tried the new API?\"\n },\n \"replies\": [\n {\n \"author\": \"bob\",\n \"content\": \"Yes! It's much faster now\"\n },\n {\n \"author\": \"charlie\",\n \"content\": \"Agreed, the response time improved by 50%\"\n }\n ]\n }\n ]\n}\n```\n\nThe simplified format: - Groups related messages into conversations -\nRemoves IDs, timestamps, and metadata - Reduces file size by ~75% -\nPerfect for LLMs and analysis tools\n",
"bugtrack_url": null,
"license": "Apache Software License 2.0",
"summary": "Fetch message history from discord for LLMs",
"version": "0.0.10",
"project_urls": {
"Homepage": "https://github.com/hamelsmu/discord_fetch"
},
"split_keywords": [
"nbdev",
"jupyter",
"notebook",
"python"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "88f5a2d3c2e64579c34098a34ab524c3138d7319c0d429811c58ddad1a4526bc",
"md5": "ecc514f829a4198c15ba70174e44cc62",
"sha256": "194c988bc7cbad35805d4f5632d3f143a88c77e5753a1051a8bf4197726469ca"
},
"downloads": -1,
"filename": "discord_fetch-0.0.10-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ecc514f829a4198c15ba70174e44cc62",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 17879,
"upload_time": "2025-07-14T20:51:12",
"upload_time_iso_8601": "2025-07-14T20:51:12.138064Z",
"url": "https://files.pythonhosted.org/packages/88/f5/a2d3c2e64579c34098a34ab524c3138d7319c0d429811c58ddad1a4526bc/discord_fetch-0.0.10-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "9e19de3242700002c428adc07fe52842c3175daa5b014b853c620b9c82f1a8a1",
"md5": "6d02620407737353cb490d717bbaea6a",
"sha256": "c5fc1c892786dcc94d9385a88845d93bb5081ba787a4235ebefbd61ea11bbe20"
},
"downloads": -1,
"filename": "discord_fetch-0.0.10.tar.gz",
"has_sig": false,
"md5_digest": "6d02620407737353cb490d717bbaea6a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 22190,
"upload_time": "2025-07-14T20:51:13",
"upload_time_iso_8601": "2025-07-14T20:51:13.105178Z",
"url": "https://files.pythonhosted.org/packages/9e/19/de3242700002c428adc07fe52842c3175daa5b014b853c620b9c82f1a8a1/discord_fetch-0.0.10.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-14 20:51:13",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "hamelsmu",
"github_project": "discord_fetch",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "discord-fetch"
}