Dead-simple, encrypted, super-fast, temporary file transfer/piping server, for your browser, code and terminal.
Drop a file anywhere on the page to instantly upload,
or click this box to browse, or copy and paste a file or text with
⌘/Ctrl+V
curlcurl --upload-file ./file.txt https://transfr.one
Once the file is uploaded, the endpoint will return the uploaded file URL.
https://transfr.one/3f1c9b27d4e0-68d0f3a2/file.txt
curl --upload-file ./file.txt https://transfr.one/my-file.txt
gpgFiles should be encrypted before upload to ensure privacy.
gpg -c -o- file.txt | curl https://transfr.one/file.txt.pgp --data-binary @-
This will prompt for a passphrase before starting the upload, that can then be used to decrypt the file.
Once the file is uploaded, the endpoint will return the uploaded file URL which can then be downloaded and decrypted with gpg, or in the browser if the extension is .pgp
curl -L https://transfr.one/3f1c9b27d4e0-68d0f3a2/file.txt.pgp | gpg --pinentry-mode loopback -d -o decrypted.txt
javascript/typescriptfetch('https://transfr.one/file.txt', {
method: 'PUT',
body: new File(['<data goes here>'], 'file.txt')
});
pythonimport requests
with open('file.txt', 'rb') as f:
data = f.read()
response = requests.put('https://transfr.one/file.txt', data=data)
The file can simply be downloaded with the link returned from the endpoint. The link can be opened in a web browser to download the file, alternatively:
curlcurl -L https://transfr.one/3f1c9b27d4e0-68d0f3a2/file.txt > file.txt
javascript/typescriptfetch('https://transfr.one/3f1c9b27d4e0-68d0f3a2/file.txt');
pythonimport requests
response = requests.get('https://transfr.one/3f1c9b27d4e0-68d0f3a2/file.txt')
24 hours.95 MB
(20 MB for a streamed upload without a Content-Length,
like curl -T -, and for form uploads, like curl -F).curl https://transfr.one prints them. Send Accept: application/json with an upload to
get the link, size and expiry as JSON.