Skip to content
← All concepts

Messaging & flow

Pre-signed uploads

Let clients upload large files straight to object storage using a short-lived signed URL.

Streaming gigabytes through your API servers wastes bandwidth and CPU. Instead the API returns a signed URL that allows one upload to one location for a few minutes; the client sends the file directly to storage.

See it in action

Step through the scenarios on the diagram.

Laying out diagram…

1/3The app asks the API for permission to upload; the API checks the user and returns a URL signed for one object, valid for 10 minutes.

App
— Has a 200 MB video to upload
API
— Authorises and signs URLs
Object storage
— Accepts the signed upload
Processor
— Runs when the upload lands

How it works

  • Multipart/resumable uploads for big files; chunk hashes enable dedupe.
  • A storage event or client callback triggers processing afterwards.

Trade-offs

  • The server must validate the file after upload (type, size, malware).

Seen in

Components involved

Related concepts