

Upload from your workflow, get a live URL
One HTTP call turns a generated HTML report or a zipped site into a hosted page with its own URL. Works from n8n, Zapier, Make, Pipedream, or plain curl.
Drop your file here
Anyone with the link · images, audio, video, docs, text & data, or .zip
By uploading, you agree to our Terms and Data Processing Terms and confirm you have the right to share this content.
One call. One URL.
No SDK and no configuration. POST a file to the upload endpoint with your API key and read the finished URL out of the JSON response. Any language or tool that can send an HTTP request can use it.
- Single endpoint: POST your file, get a URL back
- API key auth with one header: x-api-key
- JSON response with the URL, slug, and hosting state
# One call: POST the file, read back the live URLcurl -X POST https://upload.tf/api/v1/upload \ -H "x-api-key: $UPLOADTF_KEY" \ -F "file=@report.html" \ -F "name=weekly-report"Response
{
"success": true,
"data": {
"url": "https://weekly-report.upload.tf",
"slug": "weekly-report",
"hasHtml": true
}
}How it works
Create an API key
Sign in, open the dashboard, and create a key. API access is included with paid plans, and your key works immediately.
Add one HTTP step
Point your workflow's HTTP step at the upload endpoint, attach the file as form data, and send your key in the x-api-key header.
Use the returned URL
The response carries the live URL. Pass it to the next step: post it to Slack, save it to a sheet, or email it to a client.
Why upload through the API
No manual step
The file your automation just produced goes straight to a URL, with nobody dragging files into a browser at 2 a.m.
A stable, shareable URL
Every upload gets its own https address on your subdomain. It opens in any browser, with no login wall in front of your recipient.
Update in place
Send a PUT with the same name and the page updates at the same URL, so a weekly report keeps one permanent link.
Frequently asked questions
- What can I upload through the API?
- The upload endpoint accepts an HTML page or a ZIP of a static site and publishes it at its own URL. It is built for the reports, dashboards, and pages your workflow generates. Other file types work today through the browser uploader on this page.
- Do I need an SDK or a special node?
- No. Any tool that can send a multipart HTTP request works: n8n's HTTP Request node, Zapier's Webhooks action, Make's HTTP module, a Pipedream code step, or curl in a shell script.
- How do I authenticate?
- Create an API key in your dashboard and send it in the x-api-key header, or as a Bearer token if your tool prefers an Authorization header. Keys never go in the URL.
- Is the API free?
- The API is included with paid plans, which also raise size limits and keep links live longer. You can try everything manually first with the free uploader on this page, no account needed.
- Can I overwrite a page from my workflow?
- Yes. Give the upload a name and it publishes at that subdomain; send a PUT to the same name and the content is replaced while the URL stays the same. That makes recurring jobs idempotent.
Building on n8n? Or shipping Zaps? See uploading from Zapier.