Skip to main content
copyparty provides flexible download capabilities including direct file downloads, folder archives, thumbnails, and streaming.

Download Files

Direct Download

Download a file directly:

Force Download (Don’t Display in Browser)

Add ?dl to force download instead of browser display:
boolean
Force download with Content-Disposition: attachment header

Partial Downloads (Range Requests)

copyparty supports HTTP range requests for resumable downloads:

Archive Downloads

Download entire folders as compressed archives.

TAR Archives

Download folder as tar file:
string
default:"gnu"
Archive format. Options:
  • (empty) - Plain GNU tar
  • pax - PAX format (futureproof)
  • gz or gz:N - Gzip compressed (level 0-9, default 3)
  • xz or xz:N - XZ/LZMA compressed (level 0-9, default 1)
  • bz2 or bz2:N - Bzip2 compressed (level 1-9, default 2)

Examples

ZIP Archives

Download folder as zip file:
string
default:"utf8"
ZIP format variant:
  • (empty) - Modern UTF-8 filenames
  • dos - CP437 encoding (Windows XP compatibility)
  • crc - CP437 with early CRC32 (MS-DOS PKZIP v2.04g compatibility)

Selective Archives

Download only selected files/folders as archive:

Archive Modifiers

Transcode Audio

Convert audio files on-the-fly while archiving:
boolean
Transcode all audio (except aac/m4a/mp3/ogg/opus/wma) to 128kbps Opus
boolean
Transcode all audio (except aac/m4a/mp3/ogg/opus/wma) to MP3

Generate Thumbnails

Replace media files with thumbnails:
boolean
Include JPEG thumbnails instead of original images/videos
boolean
Include WebM thumbnails for videos
boolean
Include PNG waveforms for audio files

Exclude Dotfiles

boolean
Exclude dotfiles and dotfolders from archive

File Listings

Get folder contents as structured data.

JSON Listing

array
List of subdirectories with metadata
array
List of files with size, modification time, and permissions

Plaintext Listing

string
Listing format:
  • (empty) - JSON format
  • t - Plaintext (one per line)
  • v - Terminal-formatted (with colors)

Include Dotfiles in Listings

boolean
Include dotfiles in listing (requires dot permission)
boolean
Use symlink timestamps instead of target file timestamps

Directory Tree

Get nested directory structure:
string
Tree depth:
  • . - One level of subdirectories
  • (empty) - Full tree from root to current path

Thumbnails

Get image/video thumbnails:
string
Thumbnail size:
  • (empty) - Auto size
  • w{N} - Width in pixels (e.g., w256)
  • h{N} - Height in pixels (e.g., h256)

Audio Transcoding

Transcode audio files:
string
Audio transcoding:
  • opus - 128kbps Opus in WebM container
  • caf - Opus in iOS CAF container
  • mp3 - MP3 format

Text File Streaming

Stream growing log files:
integer
Stream file continuously:
  • (empty) - Start from beginning
  • Positive number - Start from byte offset
  • Negative number - Start N bytes from end

View Text Files

Get text files with specific encoding:
string
default:"utf-8"
Text encoding (e.g., iso-8859-1, cp1252, shift-jis)

ZIP File Access

Access files inside ZIP archives without extracting:
boolean
List contents of ZIP file
string
Extract and download specific file from ZIP

Markdown Rendering

Render markdown files as HTML:
boolean
Render markdown as HTML, or open media files in player

Media Player

Open media in browser player:

MIME Type Override

Force specific MIME type:
string
Override MIME type in response headers

Recent Uploads

List recent uploads:
boolean
Show recent uploads from your IP
boolean
Show all recent uploads (requires admin permission)
string
Filter uploads by path substring

Shares

List your shared files/folders:
boolean
List temporary share links you’ve created

Active Downloads

View active downloads (admin only):
boolean
Show currently active downloads (requires admin permission)

Response Headers

Common response headers:

Performance Notes

  • Use ?tar instead of ?zip for files > 4 GiB
  • Plain ?tar is fastest for large archives (no compression)
  • ?tar=gz:3 is good balance of speed and compression
  • Range requests support resumable downloads
  • Streaming tar works with curl | tar -xv for extraction on-the-fly
  • ?zip=crc requires reading each file twice (slower)
  • Dotfiles excluded from archives unless you have dot permission
  • up2k.db and dir.txt always excluded from archives
  • Audio transcoding requires FFmpeg on server