Skip to main content
https://raw.githubusercontent.com/ankit-chaubey/uploady/main/logo.png

pip-rating badge Latest Tests CI build status Latest PyPI version Python versions Code Climate Test coverage Github stars

Uploady

Why uploady? While telegram-upload is great, Uploady offers additional features (currently in development):

  • Support for multiple bots/accounts with floodwait handling

  • Scheduled uploads for hands-off management

  • Gallery synchronization for up-to-date media

  • Posting with inline button and much more

  • Something even more unexpected 😄 is coming soon!

Uploady enhances flexibility, automation, and control, making it the ultimate solution for Telegram file management.


Telegram-upload uses your personal Telegram account to upload and download files up to 4 GiB (2 GiB for free users). Turn Telegram into your personal ☁ cloud!

To install 🔧 uploady, run this command in your terminal:

$ sudo pip3 install -U uploady

This is the preferred method to install uploady, as it will always install the most recent stable release. 🐍 Python 3.7-3.12 are tested and supported. There are other installation ways available like Docker. More info in the 📕 documentation but make sure to use uploady instead of telegram-upload in all respective methods.

https://raw.githubusercontent.com/ankit-chaubey/uploady/main/uploady-demo.gif

❓ Usage

To use this program you need a Telegram account and your App api_id & api_hash (get it in my.telegram.org). The first time you use uploady it requests your 📱 telephone, api_id and api_hash. Bot tokens can not be used with this program (bot uploads are limited to 50MB).

To send ⬆️ files (by default it is uploaded to saved messages):

$ uploady file1.mp4 file2.mkv

You can download ⤵️ the files again from your saved messages (by default) or from a channel. All files will be downloaded until the last text message.

$ telegram-download

Read the documentation for more info about the options availables.

Interactive mode

The interactive option (--interactive) allows you to choose the dialog and the files to download or upload with a terminal 🪄 wizard. It even supports mouse!

$ uploady --interactive    # Interactive upload
$ telegram-download --interactive  # Interactive download

More info in the documentation

Set group or chat

By default when using uploady without specifying the recipient or sender, uploady will use your personal chat. However you can define the 👨 destination. For file upload the argument is --to <entity>. For example:

$ uploady --to telegram.me/joinchat/AAAAAEkk2WdoDrB4-Q8-gg video.mkv

You can download files from a specific chat using the –from <entity> parameter. For example:

$ telegram-download --from username

You can see all the possible values for the entity in the documentation.

Split & join files

If you try to upload a file that exceeds the maximum supported by Telegram by default, an error will occur. But you can enable ✂ split mode to upload multiple files:

$ uploady --large-files split large-video.mkv

Files split using split can be rejoined on download using:

$ telegram-download --split-files join

Find more help in the uploady documentation.

Delete on success

The --delete-on-success option allows you to ❌ delete the Telegram message after downloading the file. This is useful to send files to download to your saved messages and avoid downloading them again. You can use this option to download files on your computer away from home.

Configuration

Credentials are saved in ~/.config/uploady.json and ~/.config/uploady.session. You must make sure that these files are secured. You can copy these 📁 files to authenticate uploady on more machines, but it is advisable to create a session file for each machine.

More options

Telegram-upload has more options available, like customizing the files thumbnail, set a caption message (including variables) or configuring a proxy. Read the documentation for more info.

💡 Features

  • Upload and download multiples files (up to 4 GiB per file for premium users).

  • Interactive mode.

  • Add video thumbs.

  • Split and join large files.

  • Delete local or remote file on success.

  • Use variables in the caption message.

  • … And more.

🐋 Docker

Run uploady without installing it on your system using Docker. Instead of uploady and telegram-download you should use upload and download. Usage:

$ docker run -v <files_dir>:/files/
             -v <config_dir>:/config
             -it ankit-chaubey/uploady:main
             <command> <args>
  • <files_dir>: upload or download directory.

  • <config_dir>: Directory that will be created to store the uploady configuration. It is created automatically.

  • <command>: upload and download.

  • <args>: uploady and telegram-download arguments.

For example:

$ docker run -v /media/data/:/files/
             -v $PWD/config:/config
             -it ankit-chaubey/uploady:main
             upload file_to_upload.txt

❤️ Thanks

This project developed by Nekmo & collaborators would not be possible without Telethon, the library used as a Telegram client.

This project is maintained by Ankit Chaubey & The enhancements and customizations for Uploady are coming soon.

Telegram-upload is licensed under the MIT license.

Metadata

Release files for uploady 0.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for uploady 0.0.3
File Size Uploaded Provenance
uploady-0.0.3.tar.gz 282.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for uploady 0.0.3
File Interpreter ABI Platform
uploady-0.0.3-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 330.9 kB

Release files / uploady-0.0.3.tar.gz

Download URL uploady-0.0.3.tar.gz
Size 282.6 kB
Tags Source
SHA-256 checksum
How to use checksums
217c6136eb0bd87522b4d25593c7c882e226a54ba3ab40f19e01082dd6be6c05
BLAKE2b-256 checksum
How to use checksums
d66857a6cd7e9c4857871ac87e9c0030a4f50085425d005ef5caf0a1fd93cedc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.9.21

Release files / uploady-0.0.3-py2.py3-none-any.whl

Download URL uploady-0.0.3-py2.py3-none-any.whl
Size 48.2 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
49a4c0a77fdb69941c536e73755824d0a6767bef70a9adccf07fd11be167e88c
BLAKE2b-256 checksum
How to use checksums
27e415e82346e1841f3b8e5e1d8b2dc48c0515bf13451c037da0d2134ff556c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.9.21

Security for uploady 0.0.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page