Developer storage glossary
Plain-English definitions of the file storage and delivery terms developers run into — presigned URLs, CDNs, object storage, egress, CORS, and more. Each entry is a tight answer plus the practical details that actually matter when you build.
Uploads & access
How files get into storage, and how access is granted safely.
A presigned URL is a temporary, signed link that grants time-limited permission to upload or download a specific object in cloud storage without exposing account credentials. The signature encodes the allowed operation, object key, and an expiry, so whoever holds the URL can perform exactly that action until it expires.
A signed URL is a web address with a cryptographic signature and expiry appended as query parameters, granting temporary access to a private resource. Servers and CDNs validate the signature before serving the file, so the link works only until it expires and cannot be altered without breaking the signature.
A direct upload sends a file straight from the browser or client to storage, bypassing your application server. The backend issues a presigned URL, then the client PUTs the bytes to it. This avoids proxying large files through your server, cutting load, memory use, and latency.
Multipart upload splits a large file into smaller parts that are uploaded independently — often in parallel — then reassembled into one object on the server. It improves throughput, survives flaky networks by retrying only failed parts, and is the standard way to move large files into object storage reliably.
CORS (Cross-Origin Resource Sharing) is a browser security mechanism that controls whether a web page on one origin may request resources from another. The server returns Access-Control-Allow-Origin and related headers; if they don't permit the requesting origin, the browser blocks the response. It governs cross-domain fetch, XHR, and direct uploads.
Delivery & caching
How files get to users fast, and what it costs to serve them.
A CDN (content delivery network) is a globally distributed set of servers that cache copies of your files close to users. When someone requests an asset, the nearest edge location serves it instead of your origin, cutting latency and offloading traffic. CDNs speed up images, video, downloads, and static sites worldwide.
A content delivery network works by caching your files at edge locations worldwide and routing each user to the nearest one, usually via anycast DNS. The edge serves cached copies directly; on a cache miss it fetches from your origin once, stores the result, then serves every later request locally.
Cache-Control is an HTTP header that tells browsers and CDNs how to cache a response — for how long, and whether they may store it at all. Directives like max-age, public, private, no-cache, and immutable set freshness, control revalidation, and decide how aggressively an asset is reused.
An ETag (entity tag) is an identifier a server assigns to a specific version of a resource, often a hash of its contents. Clients send it back via the If-None-Match header so the server can reply 304 Not Modified when nothing has changed, saving bandwidth. It also helps detect mid-update conflicts.
Egress is the data that leaves a cloud provider's network — typically the bytes served to users when they download files or load assets. Most object-storage providers bill egress per gigabyte, so a popular file or a busy CDN can make bandwidth, not storage, the dominant line on your bill.
Storage concepts
The building blocks of cloud file storage.
Object storage is a way to store data as discrete objects — the file bytes plus metadata and a unique key — in a flat namespace instead of a file-system hierarchy. It scales to billions of objects, is accessed over HTTP APIs, and underpins most cloud file storage, backups, and static assets.
Blob storage holds binary large objects — images, video, backups, or any unstructured file — as opaque chunks of bytes accessed by key over HTTP. "Blob" is Microsoft Azure's name for what other providers call object storage. It's built for massive scale and direct delivery, not relational queries.
A bucket is a top-level container that holds objects in cloud storage, identified by a globally unique name. It's an Amazon S3 term — since adopted by many S3-compatible services — that sets a namespace and boundary for permissions, region, and configuration. Every stored object belongs to exactly one bucket.
File hosting is a service that stores your files and serves them over the internet at a URL, so you can share or embed them without running your own server. It ranges from simple link-sharing tools to developer platforms with upload APIs, access control, and CDN-backed delivery.
HTTP & integration
Protocol details and event plumbing you'll meet along the way.
A MIME type (media type) is a standardized label like image/png or application/json that tells clients what kind of data a file contains. Sent in the Content-Type header, it tells browsers whether to render, download, or parse a response, and lets servers validate uploads by format.
A webhook is an automated HTTP callback: when an event happens in one system, it sends a POST request with a payload to a URL you control. Unlike polling, webhooks push data the moment something occurs, making them the standard way services notify your app of events in real time.
Skip the storage plumbing
files.link is developer-first file storage with a global CDN built in — an upload API, public links and private signed URLs, and no buckets or IAM to manage. Prepaid and pay-as-you-go: you pay only for what you use.