CDN file hosting API for workflow handoffs
The job is not to build storage. The job is to make a workflow file fetchable, return the fields the next step maps, and end public access when the job is done.
- Reviewed by
- GetFileURL technical team
- Updated
- Input
- file, expiry, optional metadata
- Output
- url, file_id, content_type, expires_at
- Use for
- OCR, AI, social, CRM, document, webhook workflows
What this page answers
It is positioned as a focused file URL layer for workflow handoffs: upload a file, get a direct CDN URL, and keep lifecycle controls visible.
- Reviewed by
- GetFileURL technical team
- Last updated
One request in, a URL and JSON out
curl -X POST https://api.getfileurl.com/v1/files \
-H 'Authorization: Bearer $GETFILEURL_KEY' \
-F 'file=@workflow-output.pdf' \
-F 'visibility=public'{
"file_id": "file_8ks41p",
"url": "https://cdn.getfileurl.com/f/file_8ks41p/workflow-output.pdf",
"content_type": "application/pdf",
"expires_at": "2026-05-29T10:30:00Z"
}Some teams need CDN URLs, not a full storage platform.
Object storage and media platforms are useful, but many workflow builders only need a reliable URL handoff with lifecycle controls.
Direct delivery
The destination API should fetch file bytes from a public HTTPS URL with predictable headers.
JSON response
Workflow builders need fields they can map: URL, file ID, type, size, expiry, and metadata.
Lifecycle included
Expiry and deletion belong in the same workflow that created the public URL.
Storage primitives are flexible, but they shift every edge case to your team.
A hosted file URL API is narrower. It handles the repeated handoff job so builders can focus on the destination workflow.
S3 or R2
Use object storage when buckets, IAM, regions, and custom lifecycle policy are part of your product.
GetFileURL
Use a file URL API when the file is generated by a workflow and another API simply needs a direct URL.
Media platforms
Use a transformation platform when image or video manipulation is the central job.
Keep the first integration small and observable.
Start with one upload request, log the returned fields, pass `url` onward, then delete or expire the file after the destination finishes.
Copy the same upload shape into code
curl -X POST https://api.getfileurl.com/v1/files \
-H 'Authorization: Bearer $GETFILEURL_KEY' \
-F 'file=@workflow-output.pdf' \
-F 'visibility=public'Common questions
Is GetFileURL a CDN file hosting API?
It is positioned as a focused file URL layer for workflow handoffs: upload a file, get a direct CDN URL, and keep lifecycle controls visible.
Should I use this instead of S3?
Use S3 or R2 when you need full storage control. Pick GetFileURL for a smaller upload-to-URL handoff for APIs and automations.
Are hosted files permanent?
Not by default for the product direction. Workflow files should use expiry, deletion, or account retention policy.