BashUpload

One-time file sharing service for the command line

GitHub Deploy to Cloudflare Workers

If you find this useful, please give my project a ⭐ Star on GitHub!

⚠️ Files can only be downloaded once, unless an expiration time is set

Quick Start

$ curl bashupload.app -T file.txt
$ curl bashupload.app -d "your text content"

Browser Upload

📁

Drag & Drop files here

or click to select files

Max: --

Features

🔐 One-time download: Files are deleted after first access (unless expiration is set)
🛡️ Maximum privacy: Files automatically deleted after expiration
Simple command-line interface
Quick text sharing: Use curl -d to share text snippets
Browser-based drag & drop upload
No registration required
Privacy-focused: Random filenames
Secure temporary storage with Cloudflare R2
Supports files up to -- in size
Optional password protection for uploads

How It Works

  1. Use curl with the -T flag to upload your file
  2. (Optional) Set expiration time with -H 'X-Expiration-Seconds: 3600' for time-limited access
  3. Receive a unique download URL
  4. Share the URL - works once without expiration, or multiple times until expiration!
  5. File is automatically deleted after download or expiration
🔒 Password Protection: When password protection is enabled, you must enter the server's configured PASSWORD in the upload form and include the same password in the Authorization header when downloading. Download with: curl -H 'Authorization: yourpassword' [URL]
⚠️ Download Notice: By default, files can only be downloaded ONCE. After the first download, the file is automatically and permanently deleted from our servers. If you set an expiration time, the file can be downloaded multiple times until it expires. This ensures maximum privacy and security for your shared files.