Store and share files securely with self-destructing links
Files are automatically deleted after download
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 contentfilename (required) - Original filename with extensionencrypt (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
}
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:
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"
}
Common Status Codes:
400 - Invalid request/missing fields403 - Invalid secret key404 - File not found410 - File expired/deleted429 - Rate limit exceeded (100 requests/sec)Example Error Response:
{
"error": "Missing required field: filename",
"code": 400
}