Secure File Storage

Store and share files securely with self-destructing links

Available Storage Space: 5.05 GB

📤 Upload File

Minimum 8 characters

📥 Download File

Files are automatically deleted after download

🗂 Your Files

👁️
Security Features
  • 🔒 AES-256 Encryption for all files
  • 🛡️ Brute-force protection with rate limiting
  • 🔑 Client-side key derivation (PBKDF2-SHA256)
  • 💣 Automatic file deletion after download
  • 📛 Strict Content Security Policy (CSP)
API Documentation v1.1
📤 Upload File
POST /api/v1/upload

Request Body (JSON):

{
    "file": "base64_encoded_data",
    "filename": "example.txt",
    "encrypt": true,
    "secret_key": "your_password",
    "expire_days": 15,
    "delete_after": true
}

Parameters:

  • file (required) - Base64 encoded file content
  • filename (required) - Original filename with extension
  • encrypt (required) - Enable encryption (true/false)
  • secret_key - 8+ character password (required if encrypt=true)
  • expire_days - Days until expiration (1-30, default: 30)
  • delete_after - Auto-delete after download (true/false, default: true)

Success Response (201):

{
    "id": "a1b2c3d4e5",
    "download_url": "https://files.tuxmacg1v.me/api/v1/download/a1b2c3d4e5",
    "original_filename": "example.txt",
    "expires_at": "2023-12-31T23:59:59.999999",
    "delete_after_download": true,
    "encrypted": true
}
📥 Download File
GET /api/v1/download/{file_id}

Parameters:

  • key - Secret key (required for encrypted files)

Example Request:

# Encrypted file
curl -OJ "https://files.tuxmacg1v.me/api/v1/download/a1b2c3d4e5?key=MySecurePass123"

# Public file
curl -OJ "https://files.tuxmacg1v.me/api/v1/download/b2c3d4e5f6"

Response:

  • File download with original filename
  • Auto-deletes file if delete_after=true
  • Returns 410 Gone for expired/deleted files
🗄️ File Management
GET/DELETE /api/v1/files/{file_id}

Get File Info:

GET https://files.tuxmacg1v.me/api/v1/files/a1b2c3d4e5

Delete File:

DELETE https://files.tuxmacg1v.me/api/v1/files/a1b2c3d4e5?key=MySecurePass123

Response Format:

{
    "id": "a1b2c3d4e5",
    "encrypted": true,
    "expires_at": "2023-12-31T23:59:59.999999",
    "status": "active" // or "expired"
}
🚨 Error Responses

Common Status Codes:

  • 400 - Invalid request/missing fields
  • 403 - Invalid secret key
  • 404 - File not found
  • 410 - File expired/deleted
  • 429 - Rate limit exceeded (100 requests/sec)

Example Error Response:

{
    "error": "Missing required field: filename",
    "code": 400
}
🔒 Security Features
  • AES-256 encryption for protected files
  • Automatic file deletion after download
  • Mandatory 8+ character passwords
  • Rate limiting (100 requests/second)